版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、軟件開發(fā)成本估算軟件開發(fā)成本估算主要指軟件開發(fā)過程中所花費(fèi)的工作量及相應(yīng)的代價。 不同與傳統(tǒng)的工業(yè)產(chǎn)品,軟件的成本不包括原材料和能源的消耗,主要是人的勞動的消耗。另外,軟件也沒有一個明顯的制造過程,它的開發(fā)成本是以一次性開發(fā)過程所花費(fèi)的代價來計算的。因此,軟件開發(fā)成本的估算,應(yīng)是從軟件計劃、需求分析、設(shè)計、編碼、單元測試、集成測試到認(rèn)證測試,整個開發(fā)過程所花費(fèi)的代價作為依據(jù)的。軟件開發(fā)成本估算的經(jīng)驗?zāi)P?. Putnam 模型 1978年P(guān)utnam提出的,一種動態(tài)多變量模型。L = Ck * K1/3 * td4/3其中: L-源代碼行數(shù)(以LOC計)K-整個開發(fā)過程所花費(fèi)的工作量(以人年計
2、)td-開發(fā)持續(xù)時間(以年計)Ck-技術(shù)狀態(tài)常數(shù),它反映“妨礙開發(fā)進(jìn)展的限制”,取值因開發(fā)環(huán)境而異,見下表Ck的典型值開發(fā)環(huán)境開發(fā)環(huán)境舉例2000差沒有系統(tǒng)的開發(fā)方法,缺乏文檔和復(fù)審8000好有合適的系統(tǒng)的開發(fā)方法,有充分的文檔和復(fù)審11000優(yōu)有自動的開發(fā)工具和技術(shù)從上述方程加以變換,可以得到估算工作量的公式: K = L3/(Ck3*td4)還可以估算開發(fā)時間: td = L3/(Ck3*K)1/42. COCOMO模型(constructive cost model) 這是由TRW公司開發(fā),Boehm提出的結(jié)構(gòu)化成本估算模型。是一種精確的、易于使用的成本估算方法。COCOMO模型中用到以
3、下變量:DSI-源指令條數(shù)。不包括注釋。1KDSI = 1000DSI。MM-開發(fā)工作量(以人月計) 1MM = 19 人日 = 152 人時 =1/12 人年TDEV-開發(fā)進(jìn)度。(以月計)COCOMO模型中,考慮開發(fā)環(huán)境,軟件開發(fā)項目的類型可以分為3種:1. 組織型(organic): 相對較小、較簡單的軟件項目。開發(fā)人員對開發(fā)目標(biāo)理解比較充分,與軟件系統(tǒng)相關(guān)的工作經(jīng)驗豐富,對軟件的使用環(huán)境很熟悉,受硬件的約束較小,程序的規(guī)模不是很大(<50000行) 2. 嵌入型(embedded): 要求在緊密聯(lián)系的硬件、軟件和操作的限制條件下運(yùn)行,通常與某種復(fù)雜的硬件設(shè)備緊密結(jié)合在一起。對接口,
4、數(shù)據(jù)結(jié)構(gòu),算法的要求高。軟件規(guī)模任意。如大而復(fù)雜的事務(wù)處理系統(tǒng),大型/超大型操作系統(tǒng),航天用控制系統(tǒng),大型指揮系統(tǒng)等。 3. 半獨(dú)立型(semidetached): 介于上述兩種軟件之間。規(guī)模和復(fù)雜度都屬于中等或更高。最大可達(dá)30萬行。 估算公式:基本COCOMO模型估算工作量和進(jìn)度的公式如下工作量: MM = r*(KDSI)c 進(jìn)度: TDKV = a(MM)b其中經(jīng)驗常數(shù) r, c, a, b 取決于項目的總體類型。COCOMO模型按其詳細(xì)程度可以分為三級:基本COCOMO模型,中間COCOMO模型,詳細(xì)COCOMO模型。其中基本COCOMO模型是是一個靜態(tài)單變量模型,它用一個以已估算出
5、來的原代碼行數(shù)(LOC)為自變量的經(jīng)驗函數(shù)計算軟件開發(fā)工作量。 中級COCOMO模型在基本COCOMO模型的基礎(chǔ)上,再用涉及產(chǎn)品、硬件、人員、項目等方面的影響因素調(diào)整工作量的估算。詳細(xì)COCOMO模型包括中間COCOMO模型的所有特性,但更進(jìn)一步考慮了軟件工程中每一步驟(如分析、設(shè)計)的影響。基本COCOMO模型通過統(tǒng)計63個歷史項目的歷史數(shù)據(jù),得到如下計算公式??傮w類型工作量進(jìn)度組織型MM = 10.4*(KDSI)1.05TDKV = 10.5(MM)0.38半獨(dú)立型MM = 3.0*(KDSI)1.12TDKV = 10.5(MM)0.35嵌入型MM = 3.0*(KDSI)1.20TD
6、KV = 10.5(MM)0.32項目策劃任務(wù)集: 1.明確項目范圍 2.確定可行性 3.分析風(fēng)險 4.確定需要的資源 a.確定需要的
7、人力資源 b.確定可復(fù)用的軟件資源 c.標(biāo)識環(huán)境資源 5.估算成本和工作量 a.分解問題
8、0; b.使用規(guī)模,功能點(diǎn),過程任務(wù)或用例等方法進(jìn)行兩種以上的估算 c.調(diào)和不同的估算 6.制定項目進(jìn)度計劃 a.建立一組有意義的任務(wù)集合
9、60; b.定義任務(wù)網(wǎng)絡(luò) c.使用進(jìn)度計劃工具制定時間表 d.定義進(jìn)度跟蹤機(jī)制 在項目策劃任務(wù)集中,每一步都涉及到軟件開發(fā)成本.對人員,環(huán)境,可復(fù)用軟件的資源的統(tǒng)一調(diào)度,將直接影響成本.其中受軟件開發(fā)的特殊行,人力資源成本是最不好控制的.相對來說環(huán)境資源就容易控制得多.
10、; 環(huán)境資源包括軟件工具,硬件,網(wǎng)絡(luò)資源等,當(dāng)然還要包括公司的日常費(fèi)用(刨除開發(fā)團(tuán)隊傭金與開支,因為這部分屬于人力資源成本).這些無非是買來或者維持,成本是很容易計算的. 可復(fù)用軟件資源就要考慮到軟件的具體設(shè)計,功能模塊的關(guān)系以及系統(tǒng)架構(gòu)等具體信息.專家建議是將軟件資源分為如下四部分: 1.成品構(gòu)件:指能夠從第三方直接購買的商品構(gòu)件.或者以前項目中完全相同的構(gòu)件. 2.具有完全經(jīng)驗的構(gòu)件:以前項目開發(fā)過的,與當(dāng)前需求相似的功能構(gòu)件.
11、; 3.具有部分經(jīng)驗的構(gòu)件:為以前項目開發(fā),與當(dāng)前項目要構(gòu)造的軟件有關(guān)的已有規(guī)格,設(shè)計,代碼或測試數(shù)據(jù).但是需要從新架構(gòu). 4.新構(gòu)件 開發(fā)的成本可像而知,是升序排列的.所以在軟件開發(fā)的一開始就應(yīng)該考慮的使用以后技術(shù),對可復(fù)用軟件資源進(jìn)行整理,不能在開發(fā)過程中才考慮,要知道一個關(guān)鍵構(gòu)件的重用會為軟件開發(fā)帶來多大的效益.不過凡事也不是必然,不已有構(gòu)件的擴(kuò)展要考慮到原構(gòu)件設(shè)計,開發(fā)文檔的完整性等因素. 還是就人力資源進(jìn)行分析,由于跟人能力與技術(shù)方向的不同,programmer不可
12、能像一般意義上的工人或者機(jī)器一樣有效地預(yù)期成本.我們可以開發(fā)一個原型,利用原型數(shù)據(jù)來對應(yīng)分析每個人的價值與成本.但是應(yīng)該考慮的是,隨著程序員的個人因素的變更(年齡,職務(wù),時間,身體狀況等),原型數(shù)據(jù)只能作為一個一般參考.例如SARS期間,或流行性感冒的傳播,人力成本就會變得不好控制.(極限情況下,這將使一個項目面臨流產(chǎn)) 目前流行的估算模式大致可分為如下幾類: 分解估算: 1.軟件規(guī)模估算. &
13、#160; 2.基于問題的估算. 3.基于loc估算.(loc:代碼行數(shù)) 4.基于fp估算.(fp:functionpoint 功能點(diǎn)) 5.基于過程估算. 6.基于用例估算. . 經(jīng)驗估算:
14、; 典型的經(jīng)驗估算模型是通過回歸分析從以往的軟件項目中收集的數(shù)據(jù)得來的.這種模型的總體結(jié)構(gòu)表現(xiàn)為下面的形式: E=A+B*(e)C 其中A,B,C都是經(jīng)驗常量.E是工作量(單位:人*月),e是估算變量(loc或者fp).除了公式表達(dá)的方式以外,還有一些形式的項目調(diào)整成分,如問題的復(fù)雜程度,開發(fā)人員經(jīng)驗,開發(fā)環(huán)境等,一下列出些常用的調(diào)整系數(shù):Personnel Attributes A
15、nalyst capability(ACAP) Programmer capability(PCAP) Applications experience (AEXP) Virtual machine Experience(VEXP) Programming language experience(LEXP)Project Attributes Modern programming practices(MODP) Software Tools (TOOL) Required Development schedule(SCED)這些系數(shù)都應(yīng)該應(yīng)該根據(jù)具體的項目進(jìn)行調(diào)整和設(shè)計. cocomo
16、:(constructive cost model) 目前,有三種基本的軟件項目成本估算方法:自頂向下、自底向上和差別估算法。自頂向下的方法是對整個項目的總開發(fā)時間和總工作量做出估算,然后把它們按階段、步驟和工作單元進(jìn)行分配;自底向上的方法是分別估算個工作單元所需的開發(fā)時間,然后匯總得出總的工作量和開發(fā)時間;差別估算是將開發(fā)項目與一個或多個已完成的類似項目進(jìn)行比較,找出與某個類似項目的若干不同之處,并估算每個不同之處對成本的影響,導(dǎo)出開發(fā)項目的總成本。專家估算法專家估算法是依靠一個或多個專家對項目做出估計,它要求專家具有專門知識和豐富的經(jīng)驗,是一種近似的猜測。Delphi法是最流行的
17、專家評估技術(shù),在沒有歷史數(shù)據(jù)的情況下,這種方式適用于評定過去與將來,新技術(shù)與特定程序之間的差別,但專家"專"的程度及對項目的理解程度是工作中的難點(diǎn),盡管Delphi技術(shù)可以減輕這種偏差,專家評估技術(shù)在評定一個新軟件實際成本時通常用得不多,但是,這種方式對決定其它模型的輸入時特別有用。Delphi法鼓勵參加者就問題相互討論,要求有多種軟件相關(guān)經(jīng)驗人的參與,互相說服對方。 類推估算法類推估算法是比較科學(xué)的一種傳統(tǒng)估算方法,它適合評估一些與歷史項目在應(yīng)用領(lǐng)域、環(huán)境和復(fù)雜度的相似的項目,通過新項目與歷史項目的比較得到規(guī)模估計。類推估算法估計結(jié)果的精確度取決于歷史項目數(shù)據(jù)的
18、完整性和準(zhǔn)確度,因此,用好類推估算法的前提條件之一是組織建立起較好的項目后評價與分析機(jī)制,對歷史項目的數(shù)據(jù)分析是可信賴的。這種方法的基本步驟是:(1) 整理出項目功能列表和實現(xiàn)每個功能的代碼行;(2) 標(biāo)識出每個功能列表與歷史項目的相同點(diǎn)和不同點(diǎn),特別要注意歷史項目做得不夠的地方;(3) 通過步驟1和2得出各個功能的估計值;(4) 產(chǎn)生規(guī)模估計。算式估算法算式估算法利用經(jīng)驗?zāi)P瓦M(jìn)行成本估算,它通常采用經(jīng)驗公式來預(yù)測軟件項目計劃所需要的成本、工作量和進(jìn)度數(shù)據(jù)。目前還沒有一種估算模型能夠適用于所有的軟件類型和開發(fā)環(huán)境,從這些模型中得到的結(jié)果必須慎重使用。(1
19、) Putnam模型Putnam模型是一種動態(tài)多變量模型,它是假定軟件開發(fā)的整個生存期中工作量的分布,如一個30人年以上的項目,其人力使用分布如圖7.3所示。然后根據(jù)曲線導(dǎo)出一個估算公式: (2) COCOMO模型結(jié)構(gòu)性成本模型COCOMO(COnstructive COst MOdel)是一種精確的、易于使用的成本估算方法,它分為基本COCOMO模型和中級COCOMO模型兩種類型。基本COCOMO模型是一個靜態(tài)單變量模型,它用一個以已估算出來的源代碼行數(shù)(LOC)為自變量的經(jīng)驗函數(shù)來計算軟件開發(fā)工作量。中間COCOMO模型則在用LOC為自變量
20、的函數(shù)計算軟件開發(fā)工作量的基礎(chǔ)上,再用涉及產(chǎn)品、硬件、人員、項目等方面屬性的影響因素來調(diào)整工作量的估算。更詳細(xì)的COCOMO模型除了包括中間COCOMO模型的所有特性外,還考慮了在需求分析、軟件設(shè)計等每一步的影響。* 基本COCOMO模型估算公式Eab(KLOC)exp(bb)Dcb(E)exp(db)其中,E為開發(fā)所需的人力(人月),D為所需的開發(fā)時間(月),KLOC為估計提交的代碼行,ab、bb、cb和db為不同軟件開發(fā)方式的值,見下表。方式abbbcbdb組織型2.41.052.50.38半獨(dú)立型3.01.122.50.35嵌入型 3.61.22.50.32
21、; 由以上公式可以導(dǎo)出生產(chǎn)率和所需人數(shù)的公式:生產(chǎn)率(KLOC)E(代碼行/人月)人數(shù)ED* 中級COCOMO模型估算公式中級COCOMO模型先產(chǎn)生一個基本COCOMO模型一樣形式的估算公式,然后對15個成本驅(qū)動屬性打分,定出乘法因子,對公式進(jìn)行修正。15個影響軟件工作量的因素見下表:工作量因素fi非常低低正常高非常高超高產(chǎn)品因素軟件可靠性數(shù)據(jù)庫規(guī)模產(chǎn)品復(fù)雜性0.750.881.001.151.40 0.941.001.081.16 0.700.851.001.151.301.65計算機(jī)因素執(zhí)行時間限制 存儲限制 虛擬機(jī)易變性 環(huán)境周轉(zhuǎn)時間 0.87
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年環(huán)境管理體系3篇
- 2024年果園景觀使用權(quán)合同
- 湄洲灣職業(yè)技術(shù)學(xué)院《數(shù)學(xué)建模1》2023-2024學(xué)年第一學(xué)期期末試卷
- 2024年度民辦學(xué)校校長任期綜合評價合同3篇
- 2024年度醫(yī)院醫(yī)療質(zhì)量管理員聘用協(xié)議3篇
- 2024年度水車租賃及環(huán)保技術(shù)應(yīng)用合同范本3篇
- 2024年權(quán)益讓渡協(xié)議全書
- 2025三方房屋租賃合同
- 2025年貨運(yùn)從業(yè)資格證在那里考
- 2024年度高速公路服務(wù)區(qū)充電停車位租賃合同模板3篇
- 小兒全麻患者術(shù)后護(hù)理
- 黑龍江省哈爾濱市2023-2024學(xué)年八年級上學(xué)期語文期末模擬考試試卷(含答案)
- 愚公移山英文 -中國故事英文版課件
- 國開經(jīng)濟(jì)學(xué)(本)1-14章練習(xí)試題及答案
- 項目工程質(zhì)量管理體系
- 家長進(jìn)課堂(課堂PPT)
- 定喘神奇丹_辨證錄卷四_方劑樹
- 貨物運(yùn)輸通知單
- 部編版一年級上冊形近字組詞(共3頁)
- 不知不覺也是牛仔元老了轉(zhuǎn)一篇日牛知識貼.doc
- 三相橋式有源逆變電路的仿真Word版
評論
0/150
提交評論