Menu

「轉」軟體開發報價的計算方法

http://2.bp.blogspot.com/_Lq20iNjlNrA/SSYMY9oqvPI/AAAAAAAAHAI/1FUMkRvYtts/s1600/%E8%BB%9F%E9%AB%94%E9%96%8B%E7%99%BC.jpg
 
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%(最高值)。
 

1.2開發費用/人·月
 軟件企業的商務成本、國家稅收、企業利潤、管理成本和質量成本。均可攤分到各個軟件開發人員頭上。
開發費用/人·月 =(P+Q+R)× S× τ
 
1.2.1 P(人頭費)
 人頭費主要是員工的工資、獎金和國家規定的各項按人計算的費用。其總量在軟件企業中的商務成本佔70%-80%。
P = B × 1.476
 國家規定的公積金 7%,醫療保險金12%,養老金22%,失業金 2%(即通常所說的四金),另外還有按工資總額計征的工傷保證金0.5%,生育保證金0.5%,殘疾基金1.6%,工會基金2%,累計為47.6%。
 B為平均工資,即企業支付給員工的工資、獎金、物質獎勵等多項總和,除以企業員工數,分攤到每個月。
 
1.2.2 Q(辦公費)
 辦公費包括企業辦公房屋租賃費和物業管理費、通信費、辦公消耗品、水電空調費、設備折舊、差旅費,另外也包括企業對員工的在職培訓所支付的費用,其總量在軟件企業中的商務成本佔20%-30%。
Q = B/3
 此處辦公費用按商務成本的25%計算。
 
1.2.3 R(國家稅收和企業利潤)
 由於國家實施發展軟件產業的優惠政策,故不單獨列出計算,但軟件企業仍需承擔繳納國家稅收的義務,可一併與企業利潤一起考慮。
 另外,軟件企業的員工不可能全年滿負荷地工作,即使一年十二個月都安排工作,但也需抽出時間進行在職培訓和提職的崗前培訓。據我們的瞭解,軟件企業的員工一年能有10個月到 11個月的工作也是正常的。
R = B/3
 此處為我們的建議方案,各軟件企業可視情況加以變更。
 
1.2.4 S(管理係數)
 通常每個機構的管理人員都會有一定的比例,參考一些機構的做法,按每十個軟件人員配備兩個管理人員即管理成本:
1 ≤ S ≤ 1.2
 
1.2.5 T(優質係數)
 提高軟件質量,必然有所開支,即質量成本,對於不同的軟件企業來說,其質量成本不盡相同。
 軟件企業與其他企業一樣,也有誠信和品牌等諸多因素,從而增加企業的開支。
 目前我們可以按通過 ISO9000質量體系認證和CMM或CMMI的認證來確定,分別取值1.05、1.1、1.15、1.2。
 今後建議可對軟件企業的資質分為四級。由軟件行業協會根據CMMI的認證、品牌、誠信程度等各種因素加以確定。此體系建設還有待進一步探索。
 據此,我們綜合上述各點:
開發費用/人·月 =(B × 1.476 + B/3 + B/3)× l.2 × T
                     = B ×(1.476 + 2/3)× 1.2 × T
                     = B × 2 .575 × T
                     = B × λ
 當T=1.05時,λ=2.7
 當T=1.2時,λ=3.09
 因此,2.7 ≤ λ ≤ 3.09
 對於承接國外軟件外包業務,一方面員工的工資較高,另外工作的安排也較難滿負荷工作,用此建議R=B/2。因此
開發費用/人·月 = B(1.476 + 1/3 + 1/2)× 1.2 × T
                     = B × 2.767 × T
                     = B × λ
 當T=1.05時,λ=2.906
 當T=1.2時,λ=3.32
 因此,2.9 ≤ λ ≤ 3.32
 結論:
軟件開發價格 = A × σ × τ × B × λ
 A:估算工作量經驗值
 B:軟件企業的平均工資/人·月
 Q:風險係數l ≤ Q ≤ 1.5
 T:復用係數0.25 ≤ τ ≤ 1
 λ:綜合係數2.7 ≤ λ ≤ 3.09
 
2. 軟件(系統)維護收費價格估算方法
 在完成信心工程項目的系統集成和應用軟件開發,並交付用戶正式運行的一年內,對軟件(系統)實行免費維護服務一年。
 在正式運行一年後,軟件企業應與用戶簽定軟件(系統)維護合同。該合同屬技術轉讓合同,也可屬技術開發合同。
 根據不同的用戶要求,可分四種級別進行軟件(系統)維護。
 
2.1 A級
 軟件企業派出技術人員常駐用戶,解決日常運行中發生的問題。
 
2.1.1 U(系統建設投資額)
 用戶需要軟件企業維護的系統,該系統建設的投資額。如用戶只需要軟件企業維護其所開發的應用軟件,U就是該應用軟件開發費;如用戶需要軟件企業維護整個系統,包括計算機硬件、軟件、網絡和應用軟件,則U就是該信息工程項目的總投資額。
 
2.1.2 N(技術人員數)
 軟件企業派出N個技術人員,常駐用戶,因此:
軟件(系統)維護費/年 = U × 15% 或 B × λ × N × 12
 
 B、λ參見1.
 
2.2 B級
 軟件企業每週七天,每天24小時(即7×24小時)響應,2小時到現場,且每天派技術人員到現場進行軟件(系統)性能調試,使之運行處於良好狀態。
軟件(系統)維護費/年 = U × 10%
 
2.3 C級
 軟件企業7×24小時響應,2小時到場。
軟件(系統)維護費/年=U × 5%
 
2.4 D級
 用戶的信息工程系統或應用軟件發生問題,由原承擔的軟件企業派人維護。
 
2.4.1 B’
 這種維護方式要求軟件企業需要保存所有的技術檔案,更需要軟件企業抽出專人來不斷熟悉和全面掌握該軟件(系統)的各項技術細節。因此,軟件企業的這項支出必然要在維護費用收入中得到回報。
 以1.1.3節中的B 作為參數,將其人·月單位改為人·天,以B’表示。
 
2.4.2 τ’
 軟件企業如果採用基於構件開發方法,並建立起構件庫,則會大大提高軟件維護的效率。另外,如果有多家用戶運行的系統大致類似,也可有所提高效率。
 以1.1.3節中的τ 作為參數,以τ’來表示。因此:
軟件(系統)維護費/次=B’ × τ’× n
 此次n表示所需要的人·天數。τ’的取值是0.2 ≤ τ’≤ 1。
 
 
3. 系統集成價格的估算方法
 將整個系統所涉及到的設備、軟件、網絡整和起來,並能正常地運行,其運行的結果能達到用戶建立該系統的目標。這就是系統集成的含義。因此,可以理解為單純的設備採購和供應並不涉及系統集成,以及單純的應用軟件開發也並不涉及系統集成。
 系統集成費應與整個系統的規模、整個系統的複雜程度等項有關。
 系統規模往往與系統建設費用密切相關。為了簡便計算,以系統建設費用(以U來表示)為參考坐標。複雜程度(以α來表示)可分四種級別來區分。
系統集成費 = U × α × T
 T參見1.2.5節
 
3.1 A級
 整個系統涉及到計算機硬件、軟件、局域網絡,且體系結構在三層次以下(含三層次)。
5% ≤ α ≤ 8%
 
3.2 B級
 整個系統涉及到計算機硬件、軟件、局域網絡、互聯網,且體系結構在三層以上(含三層次)。
7% ≤ α ≤ 10%
 
3.3 C級
 整個系統涉及到計算機硬件、軟件、局域網絡、互聯網以及多種網絡接口。
8% ≤ α ≤ 12%
 
3.4 D級
 整個系統涉及到計算機硬件、軟件、網絡、通信以及各種數據採集設備接口或者與用主系統有接口。
10% ≤ α ≤ 15%
 
 
4. 系統解決方案費用估算方法
 根據用戶所提出的初步需求,軟件企業根據以往的經驗為之提供整個系統建設的方案,包括需購買的計算機硬件、軟件、網絡設備和應用軟件開發的大體設想、費用估算、進度初步安排、信息化所涉及到的規章制度的一些規劃,有時還會涉及信息中心的建設等等。這就是系統解決方案所要完成的工作。
 目前國內市場對於系統解決方案是一種智力勞動成果的認識不足,以及國內多數招標公司並不熟悉信息技術,從而更加使得系統解決方案收費變得困難。因此,目前的收費處於過渡階段。
 系統解決方案費用與整個系統的規模、複雜程度等項有關。
 系統規模往往與系統建設費用密切相關,為了簡便計算,以系統建設的總投資(以U來表示)為參考坐標。
 複雜程度就是用戶的功能、性能要求複雜性、信息接口的類型和數量有關,以β來表示。
解決方案費用=U × β × T

 

 T參見 1.2.5節

 關於β我們參照第3節所列各級。
 A級: 0.7% ≤ β ≤ 1.2%
 B級:  1% ≤ β ≤ 1.8%
 C級: 1.5% ≤ β ≤ 2.2%
 D級:  2% ≤ β ≤ 3%