人月神話-55030104-李瑞_第1頁
人月神話-55030104-李瑞_第2頁
人月神話-55030104-李瑞_第3頁
人月神話-55030104-李瑞_第4頁
人月神話-55030104-李瑞_第5頁
已閱讀5頁,還剩21頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

第3章外科手術(shù)隊伍3.1問題的提出:效率高和效率低的實施者之間具體差別非常大,經(jīng)常達到了數(shù)量級的水平年輕的軟件經(jīng)理聲稱他們喜歡由頭等人才組成的小型、精干的隊伍如何在有意義的時間進度內(nèi)創(chuàng)建大型的系統(tǒng)?2006.11.6Sackman、Erikson和Grand的試驗

Sackman,Erikson和Grand曾對一組具有經(jīng)驗的程序人員進行測量,結(jié)論:

最好的和最差的表現(xiàn)在生產(chǎn)率上平均為10:1.

在運行速度和空間上具有5:1的驚人差異.經(jīng)驗和實際的表現(xiàn)沒有相互聯(lián)系.2006.11.6一個觀點需要協(xié)作溝通的人員的數(shù)量影響著開發(fā)成本原因:成本的主要組成部分是相互的溝通和交流,以及更正溝通不當(dāng)所引起的不良結(jié)果(系統(tǒng)調(diào)試)結(jié)論:系統(tǒng)應(yīng)該由盡可能少的人員開發(fā).一擁而上的開發(fā)方法是高成本的,速度緩慢的,不充分的,開發(fā)出的是無法在概念上進行集成的產(chǎn)品.2006.11.6一個例子一個200人的項目中,有25個最能干和最有開發(fā)經(jīng)驗的項目經(jīng)理,那么開除剩下的175名程序員,讓項目經(jīng)理來編程開發(fā)以一當(dāng)十精悍2006.11.6驗證原開發(fā)隊伍不是理想的小型強有力的團隊(通常小于10人)至少要5名管理人員需要額外的支持(財務(wù),機器)若采用一擁而上的開發(fā)方法,原有200人的隊伍仍然不足以開發(fā)真正的大型系統(tǒng)

2006.11.6驗證(cont)原因舉例:考慮OS/360項目在頂峰時,有超過1000人在為它工作——程序員、文檔編制人員、操作人員、職員,秘書、管理人員、支持小組等等。從1963年到1966年,設(shè)計、編碼和文檔工作花費了大約5000人年如果人月可以等量置換的話,我們所假設(shè)的200人隊伍需要25年的時間,才能使產(chǎn)品達到現(xiàn)有的水平2006.11.6小型、精干隊伍概念上的問題對于真正意義上的大型系統(tǒng),它太慢了對于效率和概念的完整性來說,最好由少數(shù)干練的人員來設(shè)計和開發(fā)對于大型系統(tǒng),則需要大量的人手,使產(chǎn)品在時間上滿足要求如何調(diào)和這兩方面的矛盾呢?

2006.11.63.2Mills的建議嶄新的、創(chuàng)造性大型項目的每一個部分由一個團隊解決類似外科手術(shù)的方式,而并非一擁而上2006.11.6外科手術(shù)隊伍角色分工(10人)外科醫(yī)生Mills稱之為首席程序員。他親自定義功能和性能技術(shù)說明書,設(shè)計程序,編制源代碼,測試以及書寫技術(shù)文檔。他使用例如PL/I的結(jié)構(gòu)化編程語言,擁有對計算機系統(tǒng)的訪問能力;該計算機系統(tǒng)不僅僅能進行測試,還存儲程序的各種版本,以允許簡單的文件更新,并對他的文檔提供文本編輯能力。首席程序員需要極高的天分、十年的經(jīng)驗和應(yīng)用數(shù)學(xué)、業(yè)務(wù)數(shù)據(jù)處理或其他方面的大量系統(tǒng)和應(yīng)用知識。2006.11.6外科手術(shù)隊伍角色分工(10人)cont1副手外科醫(yī)生的后備,能完成任何一部分工作,但是相對具有較少的經(jīng)驗。他的主要作用是作為設(shè)計的思考者、討論者和評估人員。外科醫(yī)生試圖和他溝通設(shè)計,但不受到他建議的限制。副手經(jīng)常在與其他團隊的功能和接口討論中代表自己的小組。他需要詳細了解所有的代碼,研究設(shè)計策略的備選方案。顯然,他充當(dāng)外科醫(yī)生的保險機制。他甚至可能編制代碼,但針對代碼的任何部分,不承擔(dān)具體的開發(fā)職責(zé)。2006.11.6外科手術(shù)隊伍角色分工(10人)cont2管理員外科醫(yī)生是老板,他必須在人員、加薪等方面具有決定權(quán),但他決不能在這些事務(wù)上浪費任何時間。因而,他需要一個控制財務(wù)、人員、工作地點安排和機器的專業(yè)管理人員,該管理員充當(dāng)與組織中其他管理機構(gòu)的接口。Baker建議僅在項目具有法律、合同、報表和財務(wù)方面的需求時,管理員才具有全職責(zé)任。否則,一個管理員可以為兩個團隊服務(wù)2006.11.6外科手術(shù)隊伍角色分工(10人)cont3編輯外科醫(yī)生負責(zé)產(chǎn)生文檔——出于最大清晰度的考慮,他必須書寫文檔。對內(nèi)部描述和外部描述都是如此。而編輯根據(jù)外科醫(yī)生的草稿或者口述的手稿,進行分析和重新組織,提供各種參考信息和書目,對多個版本進行維護以及監(jiān)督文檔生成的機制。2006.11.6外科手術(shù)隊伍角色分工(10人)cont4兩個秘書

管理員和編輯每個人需要一個秘書。管理員的秘書負責(zé)項目的協(xié)作一致和非產(chǎn)品文件。2006.11.6外科手術(shù)隊伍角色分工(10人)cont5程序職員

他負責(zé)維護編程產(chǎn)品庫中所有團隊的技術(shù)記錄。該職員接受秘書性質(zhì)的培訓(xùn),承擔(dān)機器碼文件和可讀文件的相關(guān)管理責(zé)任。

程序職員的專業(yè)化分工,使程序員從書記的雜事中解放出來,同時還可以對那些雜事進行系統(tǒng)整理,確保了它們的質(zhì)量,并強化了團隊最有價值的財富——工作產(chǎn)品。例42006.11.6外科手術(shù)隊伍角色分工(10人)cont6工具維護人員現(xiàn)在已經(jīng)有很多文件編輯、文本編輯和交互式調(diào)試等工具,因此團隊很少再需要自己的機器和機器操作人員。但是這些工具使用起來必須毫無疑問地令人滿意,而且需要具備較高的可靠性。外科醫(yī)生則是這些工具、服務(wù)可用性的唯一評判人員。他需要一個工具維護人員,保證所有基本服務(wù)的可靠性,以及承擔(dān)團隊成員所需要的特殊工具(特別是交互式計算機服務(wù))的構(gòu)建、維護和升級責(zé)任。即使已經(jīng)擁有非常卓越的、可靠的集中式服務(wù),每個團隊仍然要有自己的工具人員。因為他的工作是檢查他的外科醫(yī)生所需要的工具。工具維護人員常常要開發(fā)一些實用程序、編制具有目錄的過程庫以及宏庫2006.11.6外科手術(shù)隊伍角色分工(10人)cont7測試人員外科醫(yī)生需要大量合適的測試用例,用來對他所編寫的工作片段,以及對整個工作進行測試。因此,測試人員既是為他的各個功能設(shè)計系統(tǒng)測試用例的對頭,同時也是為他的日常調(diào)試設(shè)計測試數(shù)據(jù)的助手。他還負責(zé)計劃測試的步驟和為測試搭建測試平臺2006.11.6外科手術(shù)隊伍角色分工(10人)cont8語言專家隨著Algol語言的出現(xiàn),人們開始認(rèn)識到大多數(shù)計算機項目中,總有一兩個樂于掌握復(fù)雜編程語言的人。這些專家非常有幫助,很快大家會向他咨詢。這些天才不同于外科醫(yī)生,外科醫(yī)生主要是系統(tǒng)設(shè)計者以及考慮系統(tǒng)的整體表現(xiàn)。而語言專家則尋找一種簡潔、有效的使用語言的方法來解決復(fù)雜、晦澀或者棘手的問題。他通常需要對技術(shù)進行一些研究(兩到三天)。通常一個語言專家可以為兩個到三個外科醫(yī)生服務(wù)。

2006.11.63.3如何運作概念的一致性:外科醫(yī)生開發(fā)團隊在很多方面滿足了迫切性的需要。十個人,其中七個專業(yè)人士在解決問題,而系統(tǒng)是一個人或者最多兩個人思考的產(chǎn)物2006.11.6傳統(tǒng)的兩人隊伍與外科醫(yī)生—副手隊伍架構(gòu)之間的區(qū)別:傳統(tǒng)的團隊將工作進行劃分,每人負責(zé)一部分工作的設(shè)計和實現(xiàn)。外科手術(shù)團隊中,外科醫(yī)生和副手都了解所有的設(shè)計和全部的代碼。節(jié)省了空間分配、磁盤訪問等的勞動量,同時也確保了工作概念上的完整性傳統(tǒng)的隊伍中大家是平等的,出現(xiàn)觀點的差異時,不可避免地需要討論和進行相互的妥協(xié)和讓步。在外科手術(shù)團隊中,不存在利益的差別,觀點的不一致由外科醫(yī)生單方面來統(tǒng)一。這兩種團隊組建上的差異——對問題不進行分解和上下級的關(guān)系——使外科手術(shù)隊伍可以達到客觀的一致性2006.11.6成員間的交流模式2006.11.63.4團隊的擴建面臨的挑戰(zhàn):如何完成5000人年的項目,而不是20或30人年規(guī)模的系統(tǒng)?如果整個工作能控制在范圍之內(nèi),10人的團隊無論如何組織,總是比較高效的。但是,當(dāng)我們需要面對幾百人參與的大型任務(wù)時,如何應(yīng)用外科手術(shù)團隊的概念呢?2006.11.6擴建的思想擴建的思想:擴建過程的成功依賴于這樣一個事實,即每個部分的概念完整性得到了徹底的提高——決定設(shè)計的人員是原來的七分之一或更少。所以,可以讓200人去解決問題,而僅僅需要協(xié)調(diào)20個人,即那些“外科醫(yī)生”的思路

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論