質量與進度關系
通常,項目管理的前提是保證在預算內、滿足質量的前提下,按進度完成項目。因此,可以看到,保證質量是前提。那么,如何在滿足質量的前提下管理進度呢?單純從項目管理理論知識中并沒有一種有效的方式。筆者通過實踐,推薦一種較實用的方法。具體步驟為:
首先,盡量利用歷史數據。在本案例中,Henry應該調查之前的項目情況,將會發現可以類比的情況,事先可以知道需要管理質量和進度的關系。
其次,由于此項目是軟件外包項目,Henry不能完全掌握項目的資源調度情況,因此缺乏對質量的控制。這也是大多數外包工程中令人難以掌握的地方。在這里,可以采用對進度管理計劃添加質量參數的方法,也是通過參數調整進度和質量的關系。
這一做法的前提是要有一定的歷史數據。比如,從歷史數據中得知,完成子項目的時間是5天,測試后有15個問題;完成同樣子項目的時間是7天,測試后有10個問題;完成同樣子項目的時間是8天,測試后有5個問題,……以此類推。
隨著數據的不斷增多的,采用兩維坐標圖,會得到一些離散的點(不考慮資源的差異),并形成一條曲線,見圖1。考慮項目允許的質量范圍,對照圖中的數據,找出相應的參數。根據得到的參數,確定一個合適的進度計劃。
進度與成本的關系
在本案例中,Henry發現東方公司進度一直拖后,成本卻居高不下。這里需要了解軟件外包項目中進度與成本的關系。很多時候,此類工程大多采用固定總價合同。但由于軟件項目的修改比較多,實際上此類合同很像是固定總價加獎勵費用,其中獎勵費用一般會采用單價合同,即若干元/人天的合同,也是說,承包商的成本是建立在人力成本估算上的。這樣,一些承包商會傾向于拖延進度(或者減少實際投入,造成質量下降)。因此,項目經理需要了解整個合同的情況,好參與合同的制定。在此案例中,Henry試圖通過引入競爭來提高整個項目的效率,滿足項目目標,也是出于同樣的原因。尤其值得注意的是,有時候,出于競爭的需要,承包商會提供低廉的價格,此時對于進度管理更應該謹慎和完善。
還要指出的一點是,要對學習曲線有深刻地認識。在軟件開發工程中,學習曲線(learning curve)有很大的用途。通常情況,承包商在接到同樣類型的軟件項目后,第二次會比第一次節省15%-20%的時間。項目經理好要了解一下以前類似項目的情況。