Frederick P. Brooks, Jr. 於 IBM System/360 開發階段任職專案經理,OS/360設計階段任職軟體專案經理。在他管理的軟體專案經驗中,他將經歷寫成一本著名的軟體開發管理書本,名為「人月神話」。
在人月神話中,他提出一個觀念:在一個進度已經落後的專案再增加人手時,只會讓這個專案進度拖延更久。
在軟體專案管理中,有一些重要的事項,就是開發人力跟耗費的時間。這些估算工作,很多時候只能用經驗法則來判斷,由於這個估算無法非常準確,而且會隨著時間的前進,一直不斷地變化。
多數的管理人員都會用很單純的人月互換法則,來進行工作的估算,例如一個 10 人月的工作量,要直接分配給 5 個人用 2 個月的時間開發。
這是因為工作項目在切割的同時,就發生了項目的先後關係,且每一個項目在不同人員開發時,得到的成果跟品質不同,最後也會在整合階段,發生不同的問題,導致實際上不可能發生 10 人月 = 5 人 x 2 月。
一般在遇到進度延遲的狀況時,第一個反應會是增加人手,就像是蓋房子蓋到一半趕進度,就會想要從別的地方調派人力過來幫忙。但軟體專案沒有辦法依照這種想法處理,任意增加人手,很有可能會讓專案問題更亂更複雜。
造成這種現象的原因可能有:
專業工作無法任意切割
溝通成本大幅增加
新人無法快速融入團隊開發
舊人要暫停工作,做新人的教育訓練,需要更多時間,這些時間無法反映到實際的專案進度上
最明顯的實例,就是一個女人生小孩需要耗費 10 個月的時間,但十個女人生小孩,一樣需要 10 個月,因為這是一項專業工作,無法任意切割。
References
又delay了...為什麼人手增加後,專案進度反而死更慘? - Project Club 專案管理輕鬆學