代碼行LOC;周期:月;工作量: 人月;費用元。
理由:
圖2-2 Delphi法規(guī)模估計迭代表樣例
方法二:類比法
類比法適合評估一些與歷史項目在應用領域、環(huán)境和復雜度相似的項目,通過新項目與歷史項目的比較得到規(guī)模估計。類比法估計結果的精確度取決于歷史項目數(shù)據(jù)的完整性和準確度,因此,用好類比法的前提條件之一是組織建立起較好的項目后評價與分析機制,對歷史項目的數(shù)據(jù)分析是可信賴的。
其基本步驟是:
(1) 整理出項目功能列表和實現(xiàn)每個功能的代碼行;
(2) 標識出每個功能列表與歷史項目的相同點和不同點,特別要注意歷史項目做得不夠的地方;
(3) 通過步驟(1)和(2)得出各個功能的估計值;
(4) 產生規(guī)模估計。
軟件項目中用類比法,往往還要解決可重用代碼的估算問題。估計可重用代碼量的最好辦法就是由程序員或系統(tǒng)分析員詳細地考查已存在的代碼,估算出新項目可重用的代碼中需重新設計的代碼百分比、需重新編碼或修改的代碼百分比以及需重新測試的代碼百分比。根據(jù)這三個百分比,可用下面的計算公式來計算等價新代碼行:
等價代碼行 = [(重新設計% +重新編碼% +重新測試%)/3]× 已有代碼行
例如,有10 000行代碼,假定30%需要重新設計,50%需要重新編碼,70%需要重新測試,那么其等價的代碼行可以計算為:
[ (30% + 50% + 70%)/3 ]× 10 000 = 5 000 等價代碼行
也就是說,重用這10 000代碼相當于編寫5 000代碼行的工作量。
方法三:功能點估計法
功能點測量是在需求分析階段基于系統(tǒng)功能的一種規(guī)模估計方法。通過研究初始應用需求來確定各種輸入、輸出、計算和數(shù)據(jù)庫需求的數(shù)量和特性。通常的步驟如下:
(1) 計算輸入、輸出、查詢、主控文件和接口需求的數(shù)目。
(2) 將這些數(shù)據(jù)進行加權相乘。如表2-1所示就是一個典型的權值表。
表2-1 權值表舉例
功 能 類 型權值
輸入4
輸出5
查詢4
主控文件10
接口10
(3) 估計者根據(jù)對復雜度的判斷,總數(shù)可以用+25%、0、或 25%調整。
統(tǒng)計發(fā)現(xiàn),對一個軟件產品的開發(fā),功能點對項目早期的規(guī)模估計很有幫助。然而,在了解產品越多后,功能點可以轉換為軟件規(guī)模測量更常用的LOC方法。