国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

軟件開發(fā)項目成本估算方法應(yīng)用與實踐

2016-04-26 11:54:58劉振光1羅志恒2李紅昌31中國中元國際工程有限公司2中國機械工業(yè)集團有限公司3北京交通大學(xué)
消費導(dǎo)刊 2016年3期
關(guān)鍵詞:乘數(shù)工作量規(guī)模

劉振光1 羅志恒2 李紅昌31.中國中元國際工程有限公司 2中國機械工業(yè)集團有限公司 3北京交通大學(xué)

?

軟件開發(fā)項目成本估算方法應(yīng)用與實踐

劉振光1羅志恒2李紅昌3
1.中國中元國際工程有限公司2中國機械工業(yè)集團有限公司3北京交通大學(xué)

摘要:軟件開發(fā)項目成本估算是軟件項目管理的關(guān)鍵所在,本文結(jié)合實例提出了基于COCOMOII和功能點法(FPA)軟件項目估算方法,在軟件開發(fā)項目前期咨詢報告的編制和評審方面具有實用價值。

關(guān)鍵詞:COCOMOII功能點法開發(fā)規(guī)模成本驅(qū)動因子比例因子

由于工作原因,筆者參與了一些國家大科學(xué)裝置項目前期咨詢報告編制和評審工作,在投資組成中軟件編制費占較大比例,金額多的可以達到數(shù)億元,最為棘手的就是軟件開發(fā)項目的成本估算。與一般建設(shè)工程項目相比軟件開發(fā)項目具有開發(fā)需求可變性強,設(shè)計和開發(fā)往往同時進行,缺少相應(yīng)定額標準等特點,這就導(dǎo)致了軟件開發(fā)成本估算難度非常之高,尤其對于一些大型復(fù)雜,需要多個項目團隊協(xié)作完成的軟件開發(fā)項目更是如此。以往軟件開發(fā)成本估算多是基于經(jīng)驗,而本文嘗試結(jié)合當今國際上較為流行的COCOMOII和功能點法(FPA)為軟件開發(fā)項目前期咨詢報告的編制和評審工作提供借鑒。

一、模型的提出

(一) COCOMO模型

COCOMO模型是當今世界上應(yīng)用最廣泛的軟件成本估算模型。1981年,Barry Boehm教授在其著作《軟件工程經(jīng)濟學(xué)》(Software Engineering Economics)中發(fā)表了早期的構(gòu)造性成本模型COCOM0 (Constructive Cost Model)模型,標志著COCOMO的產(chǎn)生。早期的COCOMO是基于瀑布式開發(fā)的靜態(tài)單變量模型,它用一個以已交付的源指令行數(shù)為自變量的經(jīng)驗函數(shù)計算軟件開發(fā)工作量。

后來為適應(yīng)軟件開發(fā)在生命周期、技術(shù)、組件和技術(shù)等方面的快速發(fā)展,Bochm和南加州大學(xué)USC軟件工程中心不斷對COCOMO(81版)模型進行了改進和優(yōu)化,于1997年發(fā)布了COCOMO II模型,并分別于1998、1999、2000年發(fā)布了COCOMO II的校正版。之后世界各國開始使用該模型,該模型以其較好的可操作性和估算的相對準確性得到業(yè)內(nèi)的認可,目前是世界上應(yīng)用最廣泛的軟件成本估算模型。

(二)功能點法

COCOMO模型要求有類似軟件開發(fā)的經(jīng)驗方能較準確的估計將開發(fā)軟件的規(guī)模,但對于首次開發(fā)的軟件的規(guī)模很難估計,功能點法恰恰可以彌補COCOMO模型的不足。FPA(Function Point Analysis)即功能點法,是Albrecht于1979年提出來的,該方法是第一個從系統(tǒng)功能的角度來度量軟件規(guī)模的方法。由于該法能在早期度量軟件的規(guī)模,很多組織紛紛采用了該方法。1984年,出現(xiàn)了一個稱為“國際功能點用戶組” (IFPUG,International Function Point Users Group)的非贏利性聯(lián)盟,繼承和發(fā)展了這種方法。最早使用這種方法進行軟件規(guī)模測算的是IBM公司,使得這種估算方法迅速流行起來。目前有四種FPA方法已經(jīng)被國際標準組織(ISO)接受成為國際標準測算方法。

本文提出采用COCOMO II(2000版)結(jié)合國際標準IFPUG(4.1版)對軟件開發(fā)成本進行估算。

二、模型的使用

本文中介紹的軟件工程量估算方法以COCOMO II模型為主,主要用于估算軟件開發(fā)工作量。功能點法作為輔助方法,主要用于沒有開發(fā)經(jīng)驗的軟件規(guī)模(size)的確定。

(一)模型構(gòu)成

COCOMOII是對大量已開發(fā)項目進行統(tǒng)計分析后得到的經(jīng)驗?zāi)P?,該模型主要由一個核心指標(軟件規(guī)模size)和兩個因子(比例因子和成本驅(qū)動因子)組成。其中,軟件規(guī)模以千行代碼(KSLOC)表示;比例因子包括5個子因子,成本驅(qū)動因子包括17個子因子。詳見下文。

(二)計量標準

在COCOMOII中,工作量用人月(person—months,PM)表示,即一個人完成該項目需要的時間(月)。一個人月的標準值為152小時。

人月數(shù)不同于完成項目要花費時間,開發(fā)項目所花費的時間稱之為開發(fā)進度(Time to Develop,TDEV)。

(三)計量公式

1.工作量計量公式

A為常數(shù),該數(shù)值的取值與軟件開發(fā)類型有關(guān)。如嵌入軟件取值為2.58,電子商務(wù)軟件取值3.6,Web開發(fā)取值3.3,軍事開發(fā)取值2.77等。COCOMO II(2000版)模型中A值綜合取值為2.94;

Size為類似軟件開發(fā)的規(guī)模,用千行代碼(KSLOC)表示,1個KSLOC包括編寫代碼行和注釋行,不包括空行;

E為規(guī)模影響系數(shù)。其中,B取值為0.91;SF為5個比例因子值。E的取值也與軟件類型有關(guān),COCOMO II(2000版)E值綜合取值為1.052;

EM為17個成本驅(qū)動因子工作量乘數(shù)。

2.開發(fā)進度經(jīng)驗公式

PM為工作量(人月);

C為常數(shù),COCOMO II(2000版)C值綜合取值為3.67;

F為進度影響系數(shù)。其中,D為常數(shù),COCOMO II(2000版)D值為0.28;SF為5個比例因子值。F的取值也與軟件類型有關(guān),COCOMO II(2000版)F值綜合取值為0.3;

(四)功能點法確定軟件規(guī)模

在沒有類似開發(fā)經(jīng)驗的情況下,不能通過歷史數(shù)據(jù)對新開發(fā)軟件規(guī)模(Size)進行估算時,就要通過功能點法對新開發(fā)軟件規(guī)模進行估算。

IFPUG(4.1版)是較成熟的FPA方法,IFPUG功能點估算方法原理為把擬開發(fā)軟件/模塊劃分為外部輸入(EI)、外部輸出(EO)、外部查詢(EQ)、內(nèi)部邏輯文件(ILF)和外部接口文件(EIF)五類功能點。軟件規(guī)模與5個功能點數(shù)量、轉(zhuǎn)化系數(shù)以及編程語言系數(shù)有關(guān)。其中,每個功能點的數(shù)量由專家集體討論確定。

三、估算流程

(一)首先根據(jù)需求分解軟件開發(fā)任務(wù)為不同的子模塊。

(二)確定各軟件模塊的規(guī)模。根據(jù)是否具有開發(fā)經(jīng)驗編制成本驅(qū)動乘數(shù)計算表(有開發(fā)經(jīng)驗)和功能點法軟件規(guī)模測算表(無開發(fā)經(jīng)驗)。

(三)組織各模塊項目團隊填寫COCOMOII模型成本因子工作量乘數(shù)測算表及功能點法軟件規(guī)模測算表。

(四)根據(jù)COCOMO II模型計算工作量。

(五)專家組根據(jù)計算結(jié)果,優(yōu)化調(diào)整工作量。

(六)結(jié)合當?shù)厝嗽缕骄袌鰞r格估算軟件開發(fā)費用。

四、操作范例

通過以上分析,我們可以看出本文介紹的方法中作為核心的指標為軟件規(guī)模(Size)、成本驅(qū)動因子(EMi)和比例因子(SFj)。下面以有類似開發(fā)經(jīng)驗和無類似開發(fā)經(jīng)驗項目為例對本估算方法進行示范。

(一)有類似開發(fā)經(jīng)驗項目

1.確定軟件開發(fā)規(guī)模

例如已經(jīng)開發(fā)完成的某電子商務(wù)類軟件/模塊規(guī)模為10 KSLOC。

2.確定成本驅(qū)動乘數(shù)

成本驅(qū)動因子包括4類,17項因子,按照不同等級有不同的乘數(shù)與之對應(yīng)。

產(chǎn)品屬性工作乘數(shù)包括:軟件可靠性、數(shù)據(jù)庫規(guī)模、產(chǎn)品復(fù)雜性、復(fù)用性要求、文檔編制需求;

計算機屬性工作量乘數(shù)包括:執(zhí)行時間約束、主存儲約束、平臺易變性;

人員屬性工作量乘數(shù)包括:分析員能力、程序員能力、人員聯(lián)系性、應(yīng)用經(jīng)驗、平臺經(jīng)驗、語言和工具經(jīng)驗;

項目屬性和乘數(shù)包括:軟件工具使用、多點開發(fā)、開發(fā)進度。

3.確定比例因子乘數(shù)

比例因子工作量乘數(shù)(∑SFj)確定的方法為擬建項目各因子求乘數(shù)求和,一般該乘數(shù)經(jīng)驗值為14.2。

4.工作量及費用估算

(二)無類似開發(fā)經(jīng)驗項目

1.確定軟件規(guī)模

在沒有開發(fā)經(jīng)驗的項目中就需要利用功能點法確定軟件規(guī)模,軟件規(guī)模的確定除與5類功能點的數(shù)量有關(guān)外,還與轉(zhuǎn)化乘數(shù)以及編程語言乘數(shù)有關(guān),如下所示。

轉(zhuǎn)化乘數(shù):外部輸入(EI)為4;外部輸出(EO)為5;外部查詢(EQ)為4;內(nèi)部邏輯文件(ILF)為10,;外部接口文件(EIF)為7。

編程語言乘數(shù):C++為53;Cobel為107;Delphi5為18;HTML4為14;Visual Basic6為24;SQL default為13;Java2為46。

2.工作量及費用估算

把以上軟件開發(fā)規(guī)模代入公式1中,得到擬開發(fā)嵌入式軟件工作量為:2.58×6.621.052=18.84(人/月)。

把工作量以及相關(guān)參數(shù)代入公式2中,得到擬開發(fā)嵌入式軟件/模塊進度為:3.67×18.840.3=8.86(月)

假設(shè)當?shù)亻_發(fā)人員平均工資水平為10000元/月,那么擬開發(fā)項目費用為18.84萬元。

五、結(jié)論

本文針對在軟件項目前期咨詢和評審過程中遇到的問題,提出了基于COCOMOII和功能點法的軟件開發(fā)成本估算方法,為開展以上咨詢工作提供的借鑒。但正如上文所述,軟件開發(fā)成本估算的復(fù)雜性,決定了軟件開發(fā)成本估算不可能一蹴而就,要想提高軟件估算的準確性,必須更加客觀有效地對軟件開發(fā)情況加以跟蹤和分析, 并從中得到有價值的信息,不斷改進估算模型參數(shù),最終為決策部門提供參考。

參考文獻:

[1]Barr y W.Bo ehm .So ftwa re Co st Estimatio n With COCOMOII[M] .China Machine Pre ss .2005.

[2]Boehm B W.軟件工程經(jīng)濟學(xué)[M] .李師賢等譯.北京:機械工業(yè)出版社, 2004.

[3]David Garmus, David Herron,功能點風(fēng)險-成功軟件項目的測量實踐[M] .清華大學(xué)出版社, 2003.12.

[4]周海玲, 孫涌.關(guān)于基本COCOMO 模型參數(shù)校準的探討[J].微電子學(xué)與計算機, 2005,22(12):59-61.

[5]李明樹, 何梅, 楊達,等.軟件成本估算方法及應(yīng)用[J].Journal of Software, 2007,18(4):775 -795.

猜你喜歡
乘數(shù)工作量規(guī)模
應(yīng)用地表覆蓋數(shù)據(jù)估算LiDAR內(nèi)業(yè)工作量的方法研究
看錯了數(shù)字
規(guī)模之殤
能源(2018年7期)2018-09-21 07:56:14
Mentor Grpahics宣布推出規(guī)??蛇_15BG的Veloce Strato平臺
汽車零部件(2017年2期)2017-04-07 07:38:47
一個兼顧教學(xué)科研的高校教師績效考核模型及其應(yīng)用
思科發(fā)布云計算市場發(fā)展報告
理性認知西藏投資乘數(shù)小于1問題:以1996—2014年為例
西藏研究(2016年4期)2016-06-05 11:31:15
尋找突破角巧解算式謎
四月份我國規(guī)模以上工業(yè)增加值增長5.9%
網(wǎng)上互動教學(xué)工作量管理的困境及對策
万安县| 舒城县| 昭通市| 崇信县| 博客| 寿光市| 辰溪县| 通州区| 土默特左旗| 自贡市| 运城市| 漳州市| 城口县| 哈密市| 固阳县| 武乡县| 建阳市| 花垣县| 辰溪县| 黎川县| 河间市| 尼勒克县| 文山县| 绩溪县| 四平市| 商南县| 宝山区| 岳阳县| 含山县| 嘉黎县| 隆化县| 屏南县| 永兴县| 抚顺市| 潢川县| 揭西县| 百色市| 常宁市| 宝应县| 青阳县| 瓦房店市|