作為項目經(jīng)理,如何在滿足客戶需求,并在人力資源不足(員工成熟度不夠、隊伍不穩(wěn)定、工程師工作積極性不高)、工期緊的情況下,有效的制定和執(zhí)行項目計劃,是項目經(jīng)理一個重要的能力,而要完成這一進度人員的組織非常重要。一個軟件項目必須滿足:目標、時間進度和預(yù)算的要求。要完成這個項目而建立的軟件開發(fā)組織是一個復雜系統(tǒng)。表面上看起來目標、時間進度和預(yù)算,三者好像沒有任何一個單獨的問題會導致困難,每個都能被解決,但是當它們相互糾纏和累積在一起的時候,特別是在實際工作中團隊的行動就會變得越來越慢,往往可能導致項目進度的不可控制,使成本上升,甚至導致項目的失敗。
本文作者通過項目經(jīng)理培訓,并結(jié)合多年軟件行業(yè)從業(yè)之經(jīng)驗,來研究和探討項目執(zhí)行過程中任務(wù)的分解和執(zhí)行中人員組織方面的思路,希望與正從事軟件項目管理的同行分享與共勉,力圖對后續(xù)的工作提供一些指導。主要有下面幾個方面來談我的理解。
1.問題的提出:項目的進度度量
1.1進度不可控的原因
在實際的項目執(zhí)行過程中 ,缺乏合理的時間進度是造成項目滯后的最主要原因,原因是什么呢?首先,對估算技術(shù)缺乏有效的研究,很多項目經(jīng)理對項目進度過分樂觀的估計,它反映了不真實的假設(shè)——一切都將運作良好。第二,采用的估算技術(shù)隱含地假設(shè)人力和工作量可以互換,錯誤地將進度與工作量相互混淆。第三,對自己的估算缺乏信心,軟件經(jīng)理通常不會有耐心持續(xù)地進行估算這項工作。第四,對進度缺少跟蹤和監(jiān)督。跟蹤技術(shù)和常規(guī)監(jiān)督程序。第五,當意識到進度的偏移時,下意識的反應(yīng)是增加人力。只會使事情更糟。
對于創(chuàng)造者,只有在實現(xiàn)的過程中,才能發(fā)現(xiàn)我們構(gòu)思的不完整性和不一致性。在估計和進度安排中,某個任務(wù)可以分解給參與人員,他們之間需要相互的交流。子任務(wù)之間需要相互溝通和交流的任務(wù),必須在計劃工作中考慮溝通的工作量。溝通所增加的負擔由兩個部分組成,培訓和相互的交流。每個成員需要進行技術(shù)、項目目標以及總體策略上的培訓。因此工作量隨人員的數(shù)量呈線性變化:按照n(n-1)/2遞增。
1.2進度的經(jīng)驗性安排
項目進度和工作量的不同:工作量只是子任務(wù)的數(shù)量的簡單分解。項目進度依賴于順序上的限制,以及資源制約、培訓時間、管理成本等。這里有一個基于經(jīng)驗的時間安排尺度。假設(shè)以一個項目的總體執(zhí)行項目周期為1。對于軟件任務(wù)的進度安排的經(jīng)驗法則:
·1/3計劃
·1/6編碼
·1/4構(gòu)件測試和早期系統(tǒng)測試
·1/4系統(tǒng)測試,所有的構(gòu)件已完成
除了系統(tǒng)測試,進度基本能保證。不為系統(tǒng)測試安排足夠的時間簡直就是一場災(zāi)難。因為延遲發(fā)生在項目快完成的時候,問題才出現(xiàn)在客戶和項目經(jīng)理面前。延誤發(fā)布,將付出相當高的商業(yè)代價。上述的二次成本遠遠高于其他開銷。因此,在早期進度策劃時,允許充分的系統(tǒng)測試時間是非常重要的。開發(fā)并推行生產(chǎn)率圖表、缺陷率、估算規(guī)則等等,而整個組織最終會從這些數(shù)據(jù)的共享上獲益。項目經(jīng)理需要挺直腰桿,堅持他們的估計。
當一個軟件項目落后于進度時,加派人手可能產(chǎn)生的進度災(zāi)難。
·要及時聘請到多么能干的新員工;
·新員工需要接受培訓。有經(jīng)驗的職員將投入到原有進度安排以外的工作中;
·原先劃分為三個部分的工作,會重新分解成五個部分;
·更多的交流成本、管理的工作;
·某些已經(jīng)完成的工作必定會丟失,系統(tǒng)測試必須被延長。
2.團隊的組織
大型項目的每一個部分由一個團隊解