這些模型通過對大量不同類型組織已完成項目進行研究,得出的項目規模與工作量之間的關系和轉換方法。這些行業性的模型可能不如自己的歷史數據精確,但是非常有效。目前,還沒有一種估算模型能夠適用于所有的軟件類型和開發環境,在監理活動中,從這些模型得到的結果必須根據項目的實際情況慎重使用,或者采用多個模型進行估算、掌握工作量的基本范圍并與實際的工作量計劃比較。
下面以IBM模型為例來進行計算。 為了計算,我們應當利用逆向法將功能點轉化成一個等價的SLOC數值。這一步可以使用表4的語言等價表來完成:
所以,使用java 2完成上述項目(366功能點)時,將大約需要下列SLOC數:
L = 366×46 = 16386行 = 16.386KLOC
E = 5.2×L0.91 = 5.2×16.3860.91 = 66人/月
DOC = 49×L1.01 = 49×16.3861.01 = 826頁
3、制定計劃
對軟件項目進行估算的第三步是根據工作量制定項目計劃,包括人員安排、工作量分解、開始和完成時間等等?梢愿鶕约旱臍v史數據或行業模型決定所需的資源并落實到項目計劃?梢圆捎蒙鲜龅腎BM模型或McConnell給出的方法粗略地給出項目持續時間(以IBM模型為例):
項目需要的人員S=0.54×E0.6 =0.54×660.6=7人
項目持續時間D=4.1×L0.36 =4.1×16.3860.36=11月
4、成本估算