9大理由戲說為什么Scrum不行
這篇文章的原文在這里(原文鏈接)(下文不是全譯,也不是部分譯,我只是把其總結(jié),有我自己的發(fā)揮,但是原意大致不變),這篇文章完全是在調(diào)侃Scrum的,作者第一段就是一個免費(fèi)聲明,其說他是Scrum和其它敏捷方法的big fan, 他也認(rèn)為Scrum 100% 對 軟件開發(fā)可行。作者使用Scrum 5年了,也公開作過幾次敏捷的分享會。他覺得寫這篇文章只是為了好玩,因?yàn)樗麄儙螮dward de Bono 的 black hat (黑禮帽 – 是6個思考之帽中的一種——負(fù)面思考,思考事物的負(fù)面因素,這樣才知道:它會起作用嗎?缺點(diǎn)是什么?它有什么問題?為什么不能做。)
因?yàn)楸救私?jīng)常站在Agile的風(fēng)口浪尖,所以我有必要也來一個“免責(zé)聲明”。Shit!其實(shí)我想來的是“不免責(zé)聲明” ——下文中的九大原因是對中國的各種Agile實(shí)踐者咨詢師不注重實(shí)際只重方法論的批判,本人必然要和那種只以流程方法論為中心的軟件開發(fā)斗爭到底。其實(shí)我沒有那么囂張,我只是想說,下面的這些東西相當(dāng)?shù)默F(xiàn)實(shí)。希望各種Scrum的實(shí)踐者們認(rèn)識到這些問題,從而可以讓你們明白軟件開發(fā)中的人的重要性。
Reason 1: Scrum 的基石是相信人。創(chuàng)造一個安全的環(huán)境,這樣每個人都能相互學(xué)習(xí),相互直言。但是,這是不行的,這世上有很多人并不關(guān)心這些,而且政治和競爭到處都是,辦公室里無小事,你和別人交心,你相信他們,最終受傷的你自己。你真的以為那里有空間讓你可以去犯錯,去冒險嗎?別天真了!你啊,too young, too simple, sometimes naive!
Reason 2: Scrum 認(rèn)為只要給員工足夠多的自由員工就能做得最好。這該死是理論是基于什么玩意?不可能,人的天性是懶惰的,他們才不會把事做好的,他們只會做相應(yīng)報酬的工作量,還可能基本還達(dá)不到其相應(yīng)的報酬,誰不想混日子啊。尤其是和經(jīng)理比起來,誰不想能盡快地成為經(jīng)理或Team leader啊,因?yàn)槟菢铀麄兙涂梢约床桓苫睿謷甑枚唷A硗猓憬o他們自由,你就會發(fā)現(xiàn),他們會只會做他們感興趣的事,要么聊QQ,要么打游戲,看閑書,反正不干正事。直到你催了,他們才動一動。
Reason 3: 因?yàn)榍懊娴脑颍裕覀內(nèi)匀灰岩粋€PM放在Scrum團(tuán)隊的上面做管理,這樣才會有產(chǎn)出。于是,PM給團(tuán)隊分配任何,管得細(xì)枝末節(jié),事無巨細(xì),天天讓你做進(jìn)度匯報,等等。直至把團(tuán)隊拖垮。
Reason 4: Scrum 只不過是一個流程。這世上有太多的流程,尤其是那那些操CMMi的公司。幾乎所有玩CMMi流程的公司,你都能看到的是員工都是那一副副苦逼的臉。所以,Scrum的流程同樣會這樣。因?yàn)檫@些都不是開發(fā)團(tuán)隊自發(fā)出來的,而是上面管你喜歡不喜歡按給你的。 Scrum 根本不可能增進(jìn)你的軟件質(zhì)量和技術(shù),只能是優(yōu)秀的人才才可能!使用Scrum的公司都是些吝嗇鬼,他們不愿花大錢招優(yōu)秀的人,他們妄圖使用Scrum這種東西讓現(xiàn)有的這些廉價勞動力發(fā)揮更大的生產(chǎn)效率,Scrum成了push程序員最有用的工具。
Reason 5: Scrum delivers ‘business value’。不是這樣的,實(shí)際上,Scrum不可能。這有很多原因。真正了解業(yè)務(wù)的那幫人根本不可能加入項目團(tuán)隊,那些人誰TMD愿意和苦逼的技術(shù)人員加班啊。 那些人喜歡和我們的用戶吃吃喝喝,花天酒地的,根本不會和你們那些奇怪的東西(如:backlog)或是那堆ugly的內(nèi)向古怪的技術(shù)人員打交道,更別說什么技術(shù)了。所以,你的團(tuán)隊就像一個客服團(tuán)隊或救火隊一樣疲于奔命。
Reason 6: 一個敏捷的團(tuán)隊?wèi)?yīng)該是持續(xù)進(jìn)步的。這就是為什么Scrum總是在問什么干得好,什么需要改進(jìn),并定義行動方案。你真的以為員工想進(jìn)步嗎?讓他們不得不去想想自己和團(tuán)隊怎么進(jìn)步,然后他們還不得不去執(zhí)行行動方案。別天真了,人的天性是不喜歡改變的,人的天性是習(xí)慣于一些按部就般的事的,也許那樣做令人討厭,但是人家還是能干出來。如果你逼著人家改變,你就是在壓迫人家,人家自然會反抗。
Reason 7: Product Owner 專注于 ‘what’ 和 ‘why’ 的問題,開發(fā)團(tuán)隊決定 ‘how’。很不錯的分工,于是可以造就一個即高速有重質(zhì)量的團(tuán)隊。然而,這根本不行。你的Product Owner馬上就想要這個功能,他才不管你的軟件開發(fā)的技術(shù)難題,人家只要快,要你meet deadline,要你給我們重要的客戶做出承諾。另外,你千萬不要以為你們可以哄走這個初級的product owner,因?yàn)樗暮笈_是直接匯報到高層管理。你作為一個程序員可能只是其個小部門的一個小嘍啰,或者只是外包公司,你覺得可能嗎?你覺得建立信任可能嗎?
Reason 8: 軟件質(zhì)量和生產(chǎn)率成正比。也就是說,質(zhì)量越高,生產(chǎn)率越高。如果質(zhì)量不高,你開發(fā)效率就會低下,但是誰管呢?我們朝九晚五的上班,質(zhì)量好了也是做8小時,質(zhì)量差了也是做8小時,無所為嘛。另外,我們的 project manager (或者是Scrum master!) 總是會批評我們沒有按計劃完成。所以,這根本 不可能。
Reason 9: “是的,如果我們只做需要的功能,那么我們就會最低的成本,對嗎?”,為什么這世上總是會有這些幼稚的人?這種事怎么可能啊。很多很多的銀行或保險公司的項目在你還沒有啟動項目前就談好了一個價格(可能還會有回扣),為了打單子,銷售什么都干得出來,讓你去做項目是因?yàn)槟闶橇畠r勞動力,而且,他們會不斷地加需求,因?yàn)檐浖贤労玫膬r格時候,連需求都沒有,你去做了才有,還是模糊和不確定或根本就是錯的,然后需求是越來越多,越改越多。等你精疲力盡的時候,你才意識到,銷售早就把你賣了。

爽啊,戴著黑禮帽思考問題比我想像中的要有趣得多,現(xiàn)在我必需要把它摘下來了。
看完這篇文章,你覺得是人的問題還是軟件開發(fā)方法的問題?
原文:http://coolshell.cn/articles/5044.html
【編輯推薦】