1. 程式人生 > 其它 >8.3 軟體專案估算

8.3 軟體專案估算

軟體專案估算

軟體專案估算

概念

專案啟動之前,軟體團隊應該估算將要做的工作、所需要的資源、成本、從開始到完成的時間,也即是對這些內容進行預測

策略

專案度量方法為專案估算提供了依據與有效輸入

儘量把估算推遲到專案的後期進行

根據已經完成的專案進行估算

專案估算方法

基於分解技術的專案估算方法

▪基於過程分解的估算

基於經驗的專案估算方法

▪COCOMO模型

三點期望值法

  • 在基於問題的分解估算方法中,通過估計最大值、最小值、最可能值的加權平均值作為期望值來估算

  • 估計期望值=(最大值+4×最可能值+最小值) / 6

  • 例如:如果估計系統×規模的最大值為 100KLOC ,最小值為 50KLOC ,最可能值為 60KLOC ,則其估計期望規模為(100+4×60+50)/6 = 65 KLOC

案例:基於問題分解的估算

1、軟體描述(CAD軟體)

  • CAD圖形軟體可接受來自使用者的二維和三維幾何資料,使用者通過介面與CAD軟體進行互動,並控制它,該軟體具有良好的人機介面設計的特徵。
  • 所有的幾何資料及其支援資訊存放在資料庫中。
  • 開發設計分析模組,以產生所需的輸出,這些輸出將顯示在各種不同的圖形化裝置上。
  • 軟體在設計中要考慮與外設進行互動並控制它們,包括滑鼠、數字化儀、印表機等。

2、軟體子系統劃分

3、基於LOC的估算

  • 估算出各個子系統的程式碼行,例如三維幾何分析功能的程式碼行估算範圍為:
  • 樂觀值a:4600
  • 可能值m:6900
  • 悲觀值b:8600
  • 估算值: e = (a + 4m + b)/6 = 6800

4、各個子系統程式碼數

5 歷史資料

  • 歷史資料

  • 平均生產率PM: 620 LOC/PM(620行程式碼/人月)

  • 每個人月的成本 C = 8000¥

  • 估算專案成本和工作量

  • 估算工作量 = 總程式碼行/PM= 33200/620=54人月

  • 估算成本 = 估算工作量 ×每個人月的成本 = 54人月× 8000 = 43 2000¥

6、計算成本與工作量

  • 計算出FP的估算值

    • ​ FP = (0.65 + 0.01×Fi)×CT = 372
  • 歷史資料

    • ​ 平均生產率 6.5 FP/PM
    • ​ 每個人月的成本 C = 8000¥(平均月薪)
  • 估算成本和工作量

    • ​ 工作量 58人月(基於LOC的估算值54人月 )
    • ​ 成本 457000¥(基於LOC的估算值43 2000¥ )
“朝著一個既定的方向去努力,就算沒有天賦,在時間的積累下應該也能稍稍有點成就吧。”