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

下載本文檔

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

文檔簡介

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

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

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

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

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

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

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

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

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

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

溫馨提示

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

評(píng)論

0/150

提交評(píng)論