1. 程式人生 > >第七周讀書筆記

第七周讀書筆記

由於 大量 問題 十分 團隊溝通 我們 size 重要 解決

這周閱讀的書目是傳說中的《人月神話》的部分章節,首先終於懂了這個充滿玄幻小說色彩的名字是什麽意思,人月指的是一個人一個月的工作量;然後對於團隊項目開發的效率和構成有了新的認識,果然這本書的見解十分的獨特也很精辟。

關於工程量估算方面,對於新手尤其是初學者,往往認為主要時間在於編程的實現,其實恰恰相反,主要時間多應該放在“寫代碼之前和寫代碼之後”,這裏指的是關於程序架構的合理規劃構思、算法實現以及工作的合理劃分,最後是所有工作的整合測試,這些往往需要占到一大半的時間,這些我們現在也深有體會,雖然現在的工程量都非常小,但是“一天編程,三天debug”的體驗也是刻骨銘心。作者把對時間的不合理估計看作是過度的樂觀主義,導致我們在物理戒指和思路上不夠完善,最後出現問題是往往也會歸咎於這些物理介質,如硬件和人員效率上等,所以管理者也往往會從錯誤的角度出發來解決這些出現的問題,殊不知讓問題變得更加糟糕,比如會在工作不能按時完成時就增加人手,其實適得其反,因為軟件編程不像是收割稻谷采摘棉花這種不需要交流可以各自獨立的簡單工作,軟件編程是一個高度依賴於團隊溝通協作的項目,而且未完成的工作往往也高度依賴於已完成的工作,所以一個項目中新加進來的人員需要大量的時間去熟悉項目和別人溝通交流然後才能從事一些簡單的工作增減效率的目的完全沒有實現。所以當任務由於次序的限制不能分解的時候,人手的添加對進度沒有幫助。

對於項目量和人手安排上書中也給出了合理地規劃方式,並稱之為外科手術隊伍,主要描述了一個高效的團隊應該怎樣的組成,包括豐富經驗的行業資深者,包括編程者,維護人員等都進行了詳細的描述,我覺得更為重要的是書中關於這樣的團隊應當怎樣的工作的描述, 在十個人中,其中七個專業人士在解決問題,系統是三個人的思考的產物,這樣在概念上能達到客觀的一致,每個團隊由“外科醫生”(經驗資深者)總攬大局,必須了解所有的設計和全部的代碼,確保工作概念上的完整性,然後當團隊出現問題沖突的時候,要由“外科醫生”和副手來進行抉擇,避免了大家七嘴八舌的進行討論,降低效率。總得來說就是,這種不分解問題並對團隊進行分級的團隊組建使隊伍能達到客觀的一致性。

第七周讀書筆記