软件项目管理(四)
上一篇介紹了軟件項目的需求分析和任務分解,即軟件項目的范圍計劃,那么對于一個軟件項目來說,我們還需要知道它需要多少時間多少成本,如何得到這些數據就是這次要解決的問題,即項目的成本計劃
在項目未完成之前誰也不能準確地得到項目所需要的成本,但是卻可以通過估算得到大致的成本
對于軟件項目估算來說:估算不是很準確,有誤差;不要太迷信某些數學模型;項目經驗數據非常重要
軟件項目成本由軟件項目規模決定,軟件項目規模即工作量,一般的單位有LOC(lines of code有效代碼行數)、FP(function point系統功能數量)、人月、人天、人年…
軟件項目成本包括:完成軟件規模相應付出的代價、待開發的軟件項目需要的資金、人的勞動所消耗付出的成本是軟件產品的主要成本、貨幣單位
估算的基本方法:
代碼行估算法:從軟件程序量的角度定義軟件項目的規模
功能點估算法:與現實的技術語言沒有關系,從系統的功能數量來測量其規模,通過評估、量化、加權得出功能點。功能點計算公式:FP=UFCTCF(UFC:未調整功能點計數。TCF:技術復雜度因子。)UFC包括:外部輸入、外部輸出、內部邏輯文件、外部接口文件、外部查詢
用例點估算法:UCP =UUCP×TCF×ECF UUCP=UAW+UUCW (UCP: UUCP: 計算為調整的用例點 UAW: 計算未調整的角色的權值 UUCW:計算未調整的用例的權值 TCF:計算技術因子 ECF:計算環境因子)
類比 (自頂向下)估算法:估算人員根據以往項目的總成本來推算將要開發的項目的總成本。 適用情況:有類似的歷史數據、信心不足的時候、要求不是非常精確估算的時候。
自下而上估算法:利用任務分解圖(wbs),對各個具體工作包進行詳細的成本估算,然后把成本加起來,得到總的項目成本。 相對比較準確,但是花費時間。
參數估算法:通過項目數據,進行回歸分析,得出回歸模型,根據參數模型估算成本。使用條件:存在成熟的項目估算模型、有良好的項目數據作為基礎。 整體公式 E=a+bS^c (E:以人月表示的工作量 a,b,c:經驗導出的系數 S:主要的輸入參數(通常是LOC,FP等))
專家估算法:由多位專家進行估算,綜合得到估算值。
敏捷項目估算:story point,故事點用來度量一個story需要付出的工作成本。
成本預算:成本預算是將項目的總成本按照項目的進度分攤到各個工作單元中去。成本預算的目的是產生基線。
分配項目成本預算包括三種情況:給任務分配固定資源成本、給任務分配固定成本、給任務分配資源成本
給任務分配資源成本:與資源的基本費率緊密相連,設置資源費率
給任務分配固定資源成本:當一個項目的資源需要固定數量的資金時,可以向任務分配固定資源成本。例如:項目中的一個兼職人員成本
給任務分配固定成本:有些任務是固定成本的類型的任務,也就是說,管理者知道某項任務的成本不變,不管任務的工期有多長,或不管任務使用了那些資源。在這種情況下,管理者向任務直接分配成本。例如:某外包任務、培訓任務
總結
- 上一篇: 在ES6类中绑定事件
- 下一篇: python2发送http不编码_[转]