科學(xué)統(tǒng)一的軟件造價評估成為有效進(jìn)行軟件工程項目管理的重要依據(jù),也是當(dāng)前軟件產(chǎn)業(yè)發(fā)展的迫切需要。
中科聯(lián)航依據(jù)國家標(biāo)準(zhǔn)《GB/T 36964-2018 軟件工程 軟件開發(fā)成本度量規(guī)范》,將軟件造價估算分為軟件規(guī)模估算、工作量估算、成本估算和確定軟件開發(fā)成本四個過程,層層遞進(jìn),逐步細(xì)化。通過精確的軟件造價評估,可以提供項目的成本預(yù)測、進(jìn)度規(guī)劃、資源分配和風(fēng)險管理等關(guān)鍵信息,從而實現(xiàn)項目的成功交付和可持續(xù)發(fā)展。
軟件開發(fā)成本估算過程可進(jìn)一步細(xì)分為軟件規(guī)模估算、工作量估算、成本估算和確定軟件開發(fā)成本等四個過程。其中成本估算需要對直接人力成本、間接人力成本、間接非人力成本及直接非人力成本分別進(jìn)行估算。
國家標(biāo)準(zhǔn)《GB/T 36964-2018 軟件工程 軟件開發(fā)成本度量規(guī)范》中建議的軟件成本估算基本流程如下圖所示:
國家標(biāo)準(zhǔn)中的四個估算過程,層層遞進(jìn),逐步細(xì)化,最終達(dá)到科學(xué)、一致的成本估算。
1.軟件規(guī)模估算
通常情況下,規(guī)模估算是軟件成本估算過程的起點。估算規(guī)模是后續(xù)計算軟件項目的工作量、成本和進(jìn)度的主要輸入,是項目范圍管理的關(guān)鍵,因此,在條件允許的情況下,應(yīng)首先進(jìn)行規(guī)模估算。在規(guī)模估算過程中,需要注意以下情況:
a) 在規(guī)模估算開始前,應(yīng)根據(jù)可行性研究報告或類似文檔明確項目需求及系統(tǒng)邊界。項目需求除包含最基本的業(yè)務(wù)需求外,還應(yīng)進(jìn)行初步的子系統(tǒng)/模塊劃分,并對每一子系統(tǒng)或模塊的基本用戶需求進(jìn)行說明,以保證可以根據(jù)項目需求進(jìn)行規(guī)模預(yù)估。
b) 依據(jù)項目特點和需求詳細(xì)程度不同,通常估算人員在選擇估算方法時應(yīng)采用納入國際標(biāo)準(zhǔn)的功能點方法進(jìn)行功能規(guī)模估算,在適用IFPUG或NESMA方法時,可以根據(jù)需求的粒度和管理需要,選擇預(yù)估功能點方法、估算功能點方法或者詳細(xì)功能點方法。
c) 若當(dāng)前的項目需求極其模糊或不確定,可不進(jìn)行規(guī)模估算,而直接采用類比法或類推法估算工作量和成本。
2.工作量估算
在完成規(guī)模估算后,應(yīng)當(dāng)開展工作量估算工作,若當(dāng)前項目未開展規(guī)模估算,也可直接啟動工作量估算工作。工作量估算時,可采用方程法、類比法和類推法。
方程法:即基于基準(zhǔn)數(shù)據(jù)建立參數(shù)模型,通過輸入各項參數(shù),確定估算值。
類比法:即將待估算項目的部分屬性與類似的一組基準(zhǔn)數(shù)據(jù)進(jìn)行比對,進(jìn)而確定估算值。
類推法:即將待估算項目的部分屬性與高度類似的一個或幾個已完成項目的數(shù)據(jù)進(jìn)行比對,并進(jìn)行適當(dāng)調(diào)整后確定估算值。
在開展工作量估算的過程中,需要注意以下情況:
a) 當(dāng)需求極其模糊或不確定時,如果此時具有高度類似的歷史項目,則可直接采用類推法,充分利用歷史項目數(shù)據(jù)來粗略估算工作量。
b) 當(dāng)需求極其模糊或不確定時,如果此時具有與本項目部分屬性類似的一組基準(zhǔn)數(shù)據(jù),則可直接采用類比法,充分利用基準(zhǔn)數(shù)據(jù)來粗略估算工作量。
c) 對于規(guī)模估算已經(jīng)開展的項目,可采用方程法,通過輸入各項參數(shù),確定帶估算項目的工作量。若客戶或高層對項目的工期有明確的要求時,在采用方程法估算工作量時,工期要求有可能是方程的參數(shù)之一。
d) 為追求估算的準(zhǔn)確性,建議在條件允許的情況下,可采用兩種估算方法,對估算結(jié)果進(jìn)行交叉驗證,若估算結(jié)果差別不大,可直接使用兩種估算結(jié)果的平均值或以某種估算結(jié)果為準(zhǔn),若差別較大,需進(jìn)行差異分析。
e) 工作量的估算結(jié)果宜為一個范圍而不是單一的值。
3.成本估算
在獲得了工作量估算結(jié)果后,可采用科學(xué)的方法進(jìn)行成本估算。在成本估算過程中,應(yīng)需要注意的情況:
a) 類比法和類推法,同樣適用于需求極其模糊或不確定時的成本估算;
b) 間接成本是否與工作量估算結(jié)果相關(guān)取決于間接成本分?jǐn)傆嬎惴绞?。在絕大多數(shù)組織,項目周期越長,項目組成員越多,其分?jǐn)偟拈g接成本就越高,此事項目的間接成本與工作量估算結(jié)果直接相關(guān);
c) 直接非人力成本通常與工作量估算結(jié)果無關(guān),宜單獨分項測算;
d) 成本估算結(jié)果,也通常為一個范圍,而不是單一的值。
4.確定軟件開發(fā)成本
在《軟件工程 軟件開發(fā)成本度量規(guī)范》中,將軟件開發(fā)成本分為四類,主要是為便于對成本構(gòu)成(即哪些成本屬于開發(fā)成本,哪些不屬于開發(fā)成本)進(jìn)行清晰界定。而在實際確定軟件開發(fā)成本時,通常并不是分別測定4類成本,加和后獲得總成本,而是通常采用以下兩種方式確定總成本:
a) 根據(jù)人力成本費率及工作量估算直接人力成本和間接成本之和,再加上直接非人力成本,獲得總成本;
b) 根據(jù)規(guī)模綜合單價和軟件規(guī)模,測算出直接人力成本和間接成本之和,再加上直接非人力成本,獲得總成本。
在進(jìn)行軟件的規(guī)模、工作量、成本估算時應(yīng)遵循以下原則:
a) 在規(guī)模估算時,應(yīng)根據(jù)項目特點和需求的詳細(xì)程度選擇合適的估算方法;
b) 充分利用基準(zhǔn)數(shù)據(jù),采用方程法、類比法或類推法,對工作量和成本進(jìn)行估算;
c) 工作量和成本的估算結(jié)果宜為一個范圍值;
d) 在進(jìn)行成本估算時,如有明確的工期要求,應(yīng)充分考慮工期對項目成本的影響,可以根據(jù)項目實際情況以及工期對項目的影響程度,對成本的估算結(jié)果進(jìn)行調(diào)整;
e) 成本估算過程中宜采用不同的方法分別估算并進(jìn)行交叉驗證。如果不同方法的估算結(jié)果產(chǎn)生較大差異,可采用專家評審方法確定估算結(jié)果,也可使用較簡單的加權(quán)平均方法;
f) 在軟件項目的不同場景下(如預(yù)算、招投標(biāo)、項目計劃和變更管理等)采用國家標(biāo)準(zhǔn)時,相關(guān)要求見國家標(biāo)準(zhǔn)中附錄A。
除了上述主要原則外,我們還需注意在使用基準(zhǔn)數(shù)據(jù)時:
a) 對于委托方和第三方,建議使用或參考行業(yè)基準(zhǔn)數(shù)據(jù)(由北京軟件造價評估技術(shù)創(chuàng)新聯(lián)盟每年發(fā)布的年度軟件行業(yè)基準(zhǔn)數(shù)據(jù)分析報告基于CSBMK?基準(zhǔn)數(shù)據(jù)庫的數(shù)據(jù)分析結(jié)果,該基準(zhǔn)數(shù)據(jù)庫是當(dāng)前國內(nèi)規(guī)模最大的行業(yè)基準(zhǔn)數(shù)據(jù)庫)進(jìn)行估算。估算模型的調(diào)整因子的增減或取值有可能隨著行業(yè)基準(zhǔn)數(shù)據(jù)的變化而變化。
b) 對于開發(fā)方,在引入行業(yè)基準(zhǔn)數(shù)據(jù)的基礎(chǔ)上,可逐步建立組織級基準(zhǔn)數(shù)據(jù)庫,以提高估算精度。組織級基準(zhǔn)數(shù)據(jù)定義應(yīng)與行業(yè)基準(zhǔn)數(shù)據(jù)定義保持一致,以便于與行業(yè)基準(zhǔn)數(shù)據(jù)進(jìn)行比對分析,并持續(xù)提升組織能力。
版權(quán)所有:中科聯(lián)航(江蘇)信息技術(shù)有限公司 蘇ICP備19028840號-1
地址:南京市玄武區(qū)蔣王廟4號驥谷產(chǎn)業(yè)園中試樓3樓 電話:025-83789952 技術(shù)支持:南京網(wǎng)站建設(shè)
我們智能化監(jiān)理業(yè)務(wù)能力強(qiáng),輻射范圍廣,實力強(qiáng),資質(zhì)全,標(biāo)準(zhǔn)高,高標(biāo)準(zhǔn),全流程,服務(wù)好