1.軟件開發價格估算方法 軟件開發價格與工作量、商務成本、國家稅收和企業利潤等項有關。為了便於計算,給出一個計算公式:
軟件開發價格 = 開發工作量 × 開發費用/人·月
1.1開發工作量 軟件開發工作量與估算工作量經驗值、風險係數和復用係數等項有關:
軟件開發工作量 = 估算工作量經驗值 × 風險係數 × 復用係數
1.1.1估算工作量經驗值(以A來表示)
軟什開發工作量的計算,曾有人提出以源代碼行或功能點來計算,這些方法實施起來均有不少難度。目前國際上仍舊按以往經驗的方式加以計算,國內各軟件企業也是採用經驗的方式加以估算工作量。
為了更好地規範估算方法,建議可按照國家標準“GB/T 8566-2001軟件生存週期過程”所規定的軟件開發過程的各項活動來計算工作量。
工作量的計算是按一個開發工作人員在一個月內(日曆中的月,即包括國家規定的節假日)能完成的工作量為單位,也就是通常所講的“人·月”。
特別要提醒的是軟件開發過程中既包括了通常所講的軟件開發,也應包括各類軟件測試的活動。
1.1.2風險係數(以σ來表示) 估算工作量經驗值亦會存在較大風險,造成軟件危機的因素很多,這也是一個方面的因素。特別當軟件企業對該信息工程項目的業務領域不熟悉或不太熟悉,而且用戶又無法或不能完整明白地表達他們的真實的需求,從而造成軟件企業需要不斷地完善需求獲取,修改設計等各項工作。因此:
l ≤ 風險係數 ≤ 1.5
根據我們對軟件企業的瞭解,超過估算工作量經驗值的一半,已是不可接受,所以我們確定“1.5”為極限值。當然這既要看企業的能力,也要看用戶能接受的程度。
1.1.3復用係數(以τ來表示) 估算工作量經驗值是軟件企業承擔一般項目來估算的,但如果軟件企業已經採用“基於構件的開發方法” ,並己建立起能夠復用的構件庫(核心資產庫),或者已有一些軟件產品,僅作二次開發,從而使軟件開發工作量減少。因此:
0.25 ≤ 復用係數 ≤ 1
根據國內外軟件企業在實施基於構件開發方法(軟件產品線)的經驗數據,提高工作效率達到25%(最高值)。
閱讀全文...