人月神話讀后感
、《人月神話》是預(yù)言了未來還是扼制了未來?
事實是:我們目前的許多工程知識,——無論是從書上看到的,還是從實踐中經(jīng)驗到的——大多未曾脫離《人月神話》之所言。
我在開篇中說《人月神話》“是一本可怕的書”。然而我感受懇摯的可怕之處在于:現(xiàn)今凡是論及工程(且不要讓人感受是離經(jīng)叛道),那么所解說的定然是Brooks的這么的經(jīng)驗以及由此推出的見解,可能在不違拗這些經(jīng)驗和見解上的一些翔實的實作措施!我們?nèi)徊活檿兴允羌傧螅是性質(zhì)的推論,可能只是假象歸納的一個(未必準(zhǔn)確的)答案。盡管這些答案大多數(shù)時候都好像預(yù)期地展目前你的切實工程中:
原文中還有眾多相仿的見解、假象和答案,都成為了切實工程中的既存假象。先民們所說的圣人以及通神者,皆因他們多數(shù)時候在準(zhǔn)確地預(yù)言自己的切實。只有當(dāng)這個“多數(shù)時候”變成半點的時候,先民們才會置疑圣人和通神者的力氣。其實我們懂得并未曾預(yù)言未來的人,大多數(shù)時候是兩種情形導(dǎo)致的假象:
他做出了準(zhǔn)確的推斷;
你主觀地跟隨了他對未來的設(shè)定。
后者是風(fēng)險的。大師們預(yù)言了未來也就改換了未來,即便未來未必“該當(dāng)”好像他所預(yù)言的那樣。
但萬一這種預(yù)言的前提不準(zhǔn)確,那么未來定然脫離這種波及而回到它該當(dāng)?shù)氖聭B(tài)上去。好像我們看到的另一些事實一樣,有許多假象闡明,我們正在歸來工程***的道路上摸索前進。我們也覺察,在大多數(shù)情形下,先哲們的預(yù)言在實踐中被檢討著,只是偶爾“不太靈光”。下表則列出一些不同的例子:
注1:我例舉了爽利的一些見解,并不闡明我是AP/XP的fans。AP/XP的'問題另論,在這里,我只是解釋存在一種不同的信念。
注2:Brooks爾后確認“定然丟棄原型”是一個不太準(zhǔn)確的見解。
注3:Brooks在這里未曾犯訛謬,只是他所談?wù)摰氖仟M義的流程圖,而我們例舉的時序圖則更廣義。
我們追憶上一細節(jié),在《人月神話》中的那“31%的答案”的前提——也即便那7%的性質(zhì)中,如下兩項是顯明猜忌的(也是重要置疑):
目標(biāo)的性質(zhì):是大型工程,是系統(tǒng)項目,而不是過程
個體的性質(zhì):是私利性的
其實早就有人意識到個體的性質(zhì)“未必全是私利的”,尊重這些個體就會帶來一些收獲。例如AP正是因為更尊重開發(fā)人員的稟性與力氣,以及互相間的配合而獲得了效率的晉級。
再進一步地說,既然Brooks設(shè)定了“大型工程或系統(tǒng)項目”這么的目標(biāo),并給出了一些答案。那么在“小那么一點點的”工程項目中,是不是這些答案就無須定了呢?例如Brooks的眾多提倡,對于某些目標(biāo)——例如你要用為期三個月的工夫開發(fā)一個的產(chǎn)品——就并不是很管用;可能大約無法厲行——例如你的群體總共只有6個人,連“外科手術(shù)式的群體”都組織不起來。
Brooks的答案對于同樣的目標(biāo),以及在他所述的“性質(zhì)”未能發(fā)生改換時,還是比擬管用(或有厲行的可能性)。因而上述一些例外,總是在上述的“7%的性質(zhì)”被抵賴或被改換的情形下獲得的。因而我們提出的問題是“如何抵賴或改換”這些難以撼動的性質(zhì)。然而在我看來,Brooks早曾經(jīng)在最佳位置上,給出了撬動它們的一個支點:
Brooks感受發(fā)生“自力更生小型過程”與“編程系統(tǒng)產(chǎn)品”是不同的問題。
Brooks談?wù)摰木幊滔到y(tǒng)產(chǎn)品的規(guī)模究竟有多大呢?我想起碼該當(dāng)是以IBM 360為參看的。不過書中在引用Joel Aron(IBM在馬里蘭州蓋茲堡的系統(tǒng)技巧主管)的例子時說,“大型意味著過程員的數(shù)目超過25人,將近30,000行的號召”。而按照《人月神話》的數(shù)據(jù):人均效率800號召/人年,則這個“大型項目”該當(dāng)必需1.5年能力告終。另外,還必需大約一倍的人工,來負責(zé)除開代碼之外的測驗、管教、文檔和溝通等工作。
好的,萬一你有一個“(起碼)50人,開發(fā)一年半”的項目,那么你能夠先接受Brooks的答案去實踐一下:起碼你能夠有工夫來談?wù)摴こ虇栴},也能夠組建那樣規(guī)模的群體。然而,難道只有這么的“大型工程”才算得工程,而“小那么一點點”的就不算嗎?切實是,我們一方面在做著“小那么一點點的”工程項目,另一方面在聽著全副業(yè)界嘈雜著“為更大規(guī)模的工程”而準(zhǔn)備的工程理論。我們總在實踐Brooks的“答案”可能“預(yù)言”,而淡忘這些答案的前提:
Brooks的經(jīng)驗源自對IBM 360等大型項目標(biāo)實踐與分析;
Brooks所述的工程是要獲得編程系統(tǒng)產(chǎn)品;
Brooks感受編程系統(tǒng)產(chǎn)品的工作量可能是自力更生小型過程的9倍(在告終大約雷同功能的情形下)。
事實上我們目前的軟件工程的進展是被駕駛了,而不是被預(yù)言了。從性質(zhì)上來說,Brooks在《人月神話》中只是談?wù)摿舜笮凸こ痰膮栃,以及相?yīng)規(guī)模下的群體創(chuàng)立。而我們,便按照這么的設(shè)定來擺開了全副軟件工作的工程化厲行。
促成這種現(xiàn)狀的,并不但僅是一本書的能力,還在于商業(yè)的能力。因為只有在這么擴展開來的工作環(huán)境中,才可能有商業(yè)時機!幢隳切┕こ填檰柵c厲行專家歷來未曾厲行過“50人,開發(fā)一年半”這么的項目,凡是他們能報出Brooks的名字,能談及某些工具在應(yīng)付“大型項目”中的獲勝經(jīng)驗,他們就曾經(jīng)獲勝了一半了。
為什么“爽利”之初頗受爭議?為什么爽利對一些中小型的群體顯得管用和可厲行?為什么當(dāng)這些爭議被擺在現(xiàn)在的獲勝平息爾后,傳統(tǒng)工程的理論家們卻不忘恨恨地評上一句:那是一種不能(或難以)利用于大型工程的措施呢?!
因為萬一大家都很“爽利”,都只做比這些大型工程“小那么一點點”的工程,那么傳統(tǒng)工程的專家們就失業(yè)了。反到來,只有把工程做大,大到“爽利”錯過了含義,而“宏偉”變成了性質(zhì)的時候,傳統(tǒng)工程就可感受任何失利找到借口:看啊,Brooks就說過“未曾銀彈”嘛。
【人月神話讀后感】相關(guān)文章:
人月神話的讀后感06-21
人月神話讀書筆記06-20
希臘神話讀后感06-21
希臘神話的讀后感06-21
締造蘋果神話讀后感06-21
神話傳說讀后感06-23
《希臘神話》讀后感06-20
蘇菲的世界神話讀后感04-19
希臘神話讀后感11-19