人月是神話

拜讀完這本74年的大作奥此,我產生了兩個想法:

  • 人和月并不能相互轉化到腥,因為工程周期并不能隨意更改账锹。
  • silver bullet更像倚天劍屠龍刀,無堅不摧坷襟,對軟件開發(fā)造成的巨大障礙和困難都是所向披靡奸柬。然后現(xiàn)實中并不存在。

這本書開頭講了一些很輕松的話題:
編程是一種創(chuàng)造性的有趣活動婴程。這種快樂首先來自于創(chuàng)造事物廓奕。其次,快樂來自于開發(fā)一些對他人有用的東西档叔。這讓我想到小孩子從小就有的桌粉,對拼裝玩具的興趣。而編程也像這個一樣衙四,他能將互相嚙合的零部件組裝在一起铃肯,讓他們以一種精妙的方式運行。

而且編程是一種持續(xù)學習届搁,且大部分時間缘薛,都是單純的思考的腦力活動。就像詩人一樣卡睦,程序員可以憑空利用自己的想象來建造自己的城堡宴胧。

然而這個職業(yè)也有,同樣的也有一些煩惱表锻。
完美主義在編程行業(yè)中備受推崇恕齐,但達到這個目標是非常困難的。另外持續(xù)與人交流瞬逊,尋找bug显歧,以及追求最新的技術,這些都造就了所謂的焦油坑确镊,使從業(yè)人員深陷其中士骤。

人月神話

在這個章節(jié)中,Brooks首先提出蕾域,

所有的編程人員都是樂觀主義者拷肌,他們往往都相信,一切都將運作良好旨巷,每一項任務僅花費它所應該花費的時間巨缘。

然而現(xiàn)實往往不盡如人意,構建軟件概念以后采呐,在實現(xiàn)過程中往往會遇到許多困難若锁,并且造成一定的延遲。

人月這個名詞斧吐,是一個衡量勞動量的單位又固。它有一個很大的迷惑性仲器,就是

“ 用人月作為衡量一項工作的規(guī)模,是一個危險和帶有欺騙性的神話仰冠÷χ埽”

在這種思維下,人員數(shù)量和時間看上去是可以置換的沪停。然而在實際的工作中這是難以實現(xiàn)的,因為這種置換只有在人員之間不需要相互交流的情況下裳涛,這才有可能會成立木张。
一個最典型的例子就是Brooks原則:

“為進度落后的項目增加人手,只會使進度更加落后端三∠侠瘢”

Brooks他認為,一支優(yōu)秀的軟件開發(fā)團隊應該是由一流人才組成的郊闯,小型精干的隊伍妻献。
曾經有一組針對具有經驗的程序員,進行測量的調查团赁。發(fā)現(xiàn)最好的和最差的表現(xiàn)在生產率上相差將近十倍育拨。

然而對于一些大型項目來說,如此的人員配置欢摄,會使有真正意義的大型系統(tǒng)進度過慢熬丧。
這就造成了一種進退兩難的境地,Mills為此提出了一個嶄新的怀挠,具有創(chuàng)造性的解決方案析蝴。那就是建議把大項目分成若干個部分,每個部分由一支類似于外科手術人員構成的開發(fā)團隊負責绿淋。

外科手術人員

Mills的理念就是讓編程進行 從個人藝術到公共視線 這樣的觀念轉變闷畸,并且將所有的程序和數(shù)據看作團隊的所有物,而非私人財產吞滞。

Brooks主張在系統(tǒng)設計中佑菩,概念完整性應該是最重要的考慮因素。在這種情況下冯吓,為了反映一系列連貫的設計思路倘待,寧可省略一些不規(guī)則的特性和改進。
另外他認為

功能與概念復雜程度的比值组贺,才是衡量系統(tǒng)設計的易用性的最終測試標準凸舵。

為了確保概念的完整性,他要求設計必須由一個人失尖,或者非常少數(shù)互有默契的人員來實現(xiàn)啊奄。

這種理念付諸于大型項目中渐苏,就是將設計方法、體系結構方面的工作菇夸,與具體實現(xiàn)相分離琼富,這是獲得概念完整性的強有力方法。

而且為了達到這個目的庄新,必須有人控制這些概念鞠眉,這實際上是一種合理的專制統(tǒng)治。他相信依據和規(guī)則择诈,對行業(yè)是有益的械蹋,正所謂“沒有規(guī)矩不成方圓”

結構師是計算機編程過程中一個很重要的角色羞芍,實際情況中哗戈,盡早和持續(xù)溝通能使結構師具有較好的成本意識,以及使開發(fā)人員獲得對設計的信心荷科,并且不會混淆各自的責任分工唯咬。但是這并不是說結構師能夠支配開發(fā)人員,他能做的只是建議畏浆。

沒有銀彈

銀彈是西方傳說中胆胰,用于對付人狼的特效藥。本書中全度,brook把進度落后煮剧,缺陷很多的軟件系統(tǒng)比喻為人狼。并且斷言:

在未來的十年內将鸵,無論在技術上還是管理方式上勉盅,都看不出來有任何突破性的進步,能夠保證在十年內大幅度地提高軟件生產率的可靠性和簡潔性顶掉。

Brooks在這篇文章中提出了軟件活動的兩個概念草娜,一個是根本任務,即打造軟件實體的抽象概念.另外一個是次要任務痒筒,也就是通過編程實現(xiàn)這個軟件概念宰闰。

這也就帶來了根本困難和次要困難。根本困難在于此簿透,抽象是人類的思維活動移袍,而一個良好的軟件系統(tǒng),具有復雜度老充,一致性葡盗,可變性,不可見性等諸多困難啡浊。這些特性對抽象過程提出了很高的要求觅够,而且沒有太多的規(guī)則和模板可供開發(fā)人員參考胶背。也就造成了軟件開發(fā)中固有的困難。

而對于解決次要困難喘先,可能需要等待輔助條件的進步钳吟,欣慰的是,已經逐漸出現(xiàn)了一些突破窘拯,例如高級編程語言红且,分時理念和統(tǒng)一編程環(huán)境。

面對這兩種困難涤姊,Brooks在書中還提出了一些希望直焙,具體有高級編程語言,面向對象編程砂轻,人工智能(包括其子領域專家系統(tǒng)),還有圖形化編程斤吐,程序驗證搔涝,IDE。

沒有銀彈

后記感想

四年多年過去了和措,我們似乎仍然沒有看到銀彈的出現(xiàn)庄呈,軟件業(yè)的整體生產率也只有提高了1倍,Brooks的斷言一直成立派阱。
但也沒有必要灰心诬留,說不定在不久以后,會在軟件開發(fā)行業(yè)出現(xiàn)《三體》中的“降維打擊”贫母,這些“人狼”將會不戰(zhàn)而亡文兑。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市腺劣,隨后出現(xiàn)的幾起案子绿贞,更是在濱河造成了極大的恐慌,老刑警劉巖橘原,帶你破解...
    沈念sama閱讀 218,607評論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件籍铁,死亡現(xiàn)場離奇詭異,居然都是意外死亡趾断,警方通過查閱死者的電腦和手機拒名,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,239評論 3 395
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來芋酌,“玉大人增显,你說我怎么就攤上這事「舻眨” “怎么了甸怕?”我有些...
    開封第一講書人閱讀 164,960評論 0 355
  • 文/不壞的土叔 我叫張陵甘穿,是天一觀的道長。 經常有香客問我梢杭,道長温兼,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,750評論 1 294
  • 正文 為了忘掉前任武契,我火速辦了婚禮募判,結果婚禮上,老公的妹妹穿的比我還像新娘咒唆。我一直安慰自己届垫,他們只是感情好,可當我...
    茶點故事閱讀 67,764評論 6 392
  • 文/花漫 我一把揭開白布全释。 她就那樣靜靜地躺著装处,像睡著了一般。 火紅的嫁衣襯著肌膚如雪浸船。 梳的紋絲不亂的頭發(fā)上峡碉,一...
    開封第一講書人閱讀 51,604評論 1 305
  • 那天重挑,我揣著相機與錄音榆骚,去河邊找鬼蕉汪。 笑死,一個胖子當著我的面吹牛封字,可吹牛的內容都是我干的黔州。 我是一名探鬼主播,決...
    沈念sama閱讀 40,347評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼阔籽,長吁一口氣:“原來是場噩夢啊……” “哼流妻!你這毒婦竟也來了?” 一聲冷哼從身側響起笆制,我...
    開封第一講書人閱讀 39,253評論 0 276
  • 序言:老撾萬榮一對情侶失蹤合冀,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后项贺,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體君躺,經...
    沈念sama閱讀 45,702評論 1 315
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 37,893評論 3 336
  • 正文 我和宋清朗相戀三年开缎,在試婚紗的時候發(fā)現(xiàn)自己被綠了棕叫。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,015評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡奕删,死狀恐怖俺泣,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤伏钠,帶...
    沈念sama閱讀 35,734評論 5 346
  • 正文 年R本政府宣布横漏,位于F島的核電站,受9級特大地震影響熟掂,放射性物質發(fā)生泄漏缎浇。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,352評論 3 330
  • 文/蒙蒙 一赴肚、第九天 我趴在偏房一處隱蔽的房頂上張望素跺。 院中可真熱鬧,春花似錦誉券、人聲如沸指厌。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,934評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽踩验。三九已至,卻和暖如春商玫,著一層夾襖步出監(jiān)牢的瞬間晰甚,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,052評論 1 270
  • 我被黑心中介騙來泰國打工决帖, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人蓖捶。 一個月前我還...
    沈念sama閱讀 48,216評論 3 371
  • 正文 我出身青樓地回,卻偏偏與公主長得像,于是被迫代替她去往敵國和親俊鱼。 傳聞我的和親對象是個殘疾皇子刻像,可洞房花燭夜當晚...
    茶點故事閱讀 44,969評論 2 355

推薦閱讀更多精彩內容

  • 本文把程序員所需掌握的關鍵知識總結為三大類19個關鍵概念,然后給出了掌握每個關鍵概念所需的入門書籍并闲,必讀書籍细睡,以及...
    dle_oxio閱讀 11,119評論 6 244
  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 172,152評論 25 707
  • 人月神話讀書筆記 焦油坑 為什么兩個人的創(chuàng)業(yè)團隊可以超越大公司9倍以上的效率開發(fā)任何程序。而大公司的產業(yè)化團隊效率...
    陳浩要安靜閱讀 18,435評論 3 34
  • 一帝火、消除隱喻 1溜徙、隱喻 軟件開發(fā)這件事情,出現(xiàn)得很晚犀填。距今只有幾十年的時間蠢壹,關于它的定義,我們可以簡單地說:“就是...
    莊表偉閱讀 3,061評論 2 15
  • 01 今年3*15的那個周末,小A同學(小可爸爸)接到以前同事的電話,問他要不要出來疏日,大家一起聚一下偿洁。 他們所謂聚...
    莫摘花的詩詞情懷閱讀 977評論 16 18