您的位置:軟件測(cè)試 > 軟件項(xiàng)目管理 > 開發(fā)管理 >
軟件開發(fā)過程的定量監(jiān)理
作者:網(wǎng)絡(luò)轉(zhuǎn)載 發(fā)布時(shí)間:[ 2013/5/16 14:38:50 ] 推薦標(biāo)簽:

下面將以某個(gè)計(jì)算機(jī)輔助設(shè)計(jì)(CAD)應(yīng)用為例,估算開發(fā)的軟件包的輸入、輸出、查詢、文件及外部接口。為了達(dá)到這個(gè)估算目的,我們假設(shè)復(fù)雜度加權(quán)因子都是平均的。根據(jù)對(duì)軟件范圍的敘述,對(duì)軟件功能進(jìn)行分解,識(shí)別出主要的幾個(gè)功能:用戶界面和控制功能、二維幾何分析、三維幾何分析、數(shù)據(jù)庫管理、計(jì)算機(jī)圖形顯示功能、外設(shè)控制以及設(shè)計(jì)分析模塊。后可得到如表2所示的估算表。

由表2得到總計(jì)數(shù)值為318

接著,估算14個(gè)復(fù)雜度加權(quán)因子(Fi,根據(jù)問題對(duì)項(xiàng)目的影響取值范圍是0~5),表3給出了因子值。

FP=總計(jì)數(shù)值×[0.65+0.01×ΣFi]=366

第二種方法是采用類比的方法,根據(jù)歷史數(shù)據(jù)來進(jìn)行估算。

如果有一個(gè)以前做過的類似項(xiàng)目并且掌握它的規(guī)模,可以把新項(xiàng)目的各個(gè)主要部分與原有項(xiàng)目的相應(yīng)部分進(jìn)行比較,得出一個(gè)比例關(guān)系,將各部分相對(duì)于原項(xiàng)目規(guī)模比例相加,計(jì)算出新項(xiàng)目的規(guī)模。如果估算者的經(jīng)驗(yàn)豐富并且新項(xiàng)目與老項(xiàng)目具有足夠的相似性,能夠得到合理的估算值。

但是采用類比法,往往還要解決可重用代碼的估算問題。估計(jì)可重用代碼量的好辦法是由程序員或系統(tǒng)分析員詳細(xì)地考查已存在的代碼,估算出新項(xiàng)目可重用的代碼中需重新設(shè)計(jì)的代碼百分比、需重新編碼或修改的代碼百分比以及需重新測(cè)試的代碼百分比。根據(jù)這三個(gè)百分比,可用下面的計(jì)算公式計(jì)算等價(jià)新代碼行:

等價(jià)代碼行 = [(重新設(shè)計(jì)% +重新編碼% +重新測(cè)試%)/3]× 已有代碼行

比如:有10,000行代碼,假定35%需要重新設(shè)計(jì),55%需要重新編碼,75%需要重新測(cè)試,那么其等價(jià)的代碼行可以計(jì)算為:

[(30% + 50% + 70%)/3]×10,000= 5,500 等價(jià)代碼行。即:重用這10000代碼相當(dāng)于編寫5500代碼行的工作量。

2、工作量估算

估算出軟件規(guī)模并且對(duì)軟件的開發(fā)周期進(jìn)行定義后,開始估算軟件項(xiàng)目的工作量。軟件規(guī)模的估算結(jié)果是代碼量,但是軟件項(xiàng)目的開發(fā)、實(shí)施過程并不是只有編碼的工作,實(shí)際上編碼的工作量在這個(gè)過程中是小的。編寫文檔、架構(gòu)設(shè)計(jì)、系統(tǒng)設(shè)計(jì)、測(cè)試以及實(shí)施發(fā)布等將占用大量的工作時(shí)間。因此,對(duì)軟件項(xiàng)目工作量的估算是確定、估算這樣一個(gè)代碼量的項(xiàng)目所需的各種工作,相加得到項(xiàng)目的工作量。從軟件規(guī)模(代碼量)估算出項(xiàng)目工作量主要采用下述的兩個(gè)方法:

(1)好的方法是利用歷史數(shù)據(jù),根據(jù)以前做過的類似項(xiàng)目規(guī)模與新項(xiàng)目規(guī)模的比例關(guān)系,對(duì)照以前項(xiàng)目的工作量求出新項(xiàng)目的工作量。

采用這個(gè)方法的前提是:a.對(duì)以前項(xiàng)目規(guī)模和工作量的計(jì)量是正確的;b.至少有一個(gè)以前的項(xiàng)目的規(guī)模和新項(xiàng)目類似;c.新項(xiàng)目的開發(fā)周期、使用的開發(fā)方法、開發(fā)工具與以前項(xiàng)目的類似,而且開發(fā)人員的技能和經(jīng)驗(yàn)也不能與原來的人員相差太大。

(2)如果沒有歷史數(shù)據(jù)可用,或者新項(xiàng)目與以前做過的項(xiàng)目差別較大,那么可以使用一個(gè)成熟的估算模型,如采用IBM模型、COCOMO模型或Putnam方法論,將軟件項(xiàng)目規(guī)模轉(zhuǎn)換成工作量。

這些模型通過對(duì)大量不同類型組織已完成項(xiàng)目進(jìn)行研究,得出的項(xiàng)目規(guī)模與工作量之間的關(guān)系和轉(zhuǎn)換方法。這些行業(yè)性的模型可能不如自己的歷史數(shù)據(jù)精確,但是非常有效。目前,還沒有一種估算模型能夠適用于所有的軟件類型和開發(fā)環(huán)境,在監(jiān)理活動(dòng)中,從這些模型得到的結(jié)果必須根據(jù)項(xiàng)目的實(shí)際情況慎重使用,或者采用多個(gè)模型進(jìn)行估算、掌握工作量的基本范圍并與實(shí)際的工作量計(jì)劃比較。

下面以IBM模型為例來進(jìn)行計(jì)算。 為了計(jì)算,我們應(yīng)當(dāng)利用逆向法將功能點(diǎn)轉(zhuǎn)化成一個(gè)等價(jià)的SLOC數(shù)值。這一步可以使用表4的語言等價(jià)表來完成:

所以,使用java 2完成上述項(xiàng)目(366功能點(diǎn))時(shí),將大約需要下列SLOC數(shù):

L = 366×46 = 16386行 = 16.386KLOC

E = 5.2×L0.91 = 5.2×16.3860.91 = 66人/月

DOC = 49×L1.01 = 49×16.3861.01 = 826頁

上一頁123下一頁
軟件測(cè)試工具 | 聯(lián)系我們 | 投訴建議 | 誠聘英才 | 申請(qǐng)使用列表 | 網(wǎng)站地圖
滬ICP備07036474 2003-2017 版權(quán)所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd