|
如何評估軟件項目規(guī)模大小
|
|
來源:名易軟件軟件項目的規(guī)模估算歷來是比較復(fù)雜的事,因為軟件本身的復(fù)雜性、歷史經(jīng)驗的缺乏、估算工具缺乏以及一些人為錯誤,導(dǎo)致軟件項目的規(guī)模估算往往和實際情況相差甚遠。因此,估算錯誤已被列入軟件項目失敗的四大原因之一。 軟件工程師經(jīng)常會被問到,編一個什么什么樣的軟件需要多長時間、多少錢。面對這個問題,有不少人很犯難,因為,第一用戶的需求太不具體,第二,自己缺乏一個科學(xué)的估計方法。這里向大家介紹幾種軟件項目規(guī)模的估計方法。概念介紹先介紹一個衡量軟件項目規(guī)模最常用的概念--LOC(LineofCode),LOC指所有的可執(zhí)行的源代碼行數(shù),包括可交付的工作控制語言(JCL:JobControlLanguage)語句、數(shù)據(jù)定義、數(shù)據(jù)類型聲明、等價聲明、輸入輸出格式聲明等。一代碼行(1LOC)的價值和人月均代碼行數(shù)可以體現(xiàn)一個軟件生產(chǎn)組織的生產(chǎn)能力。組織可以根據(jù)對歷史項目的審計來核算組織的單行代碼價值。例如,某軟件公司統(tǒng)計發(fā)現(xiàn)該公司每一萬行C語言源代碼形成的源文件(.c和.h文件)約為250K。某項目的源文件大小為3.75M,則可估計該項目源代碼大約為15萬行,該項目累計投入工作量為240人月,每人月費用為10000元(包括人均工資、福利、辦公費用公灘等),則該項目中1LOC的價值為:(240×10000)150000=16元LOC改項目的人月均代碼行數(shù)為:150000240=625LOC人月方法一、Delphi法Delphi法是最流行的專家評估技術(shù),在沒有歷史數(shù)據(jù)的情況下,這種方式適用于評定過去與將來,新技術(shù)與特定程序之間的差別,但專家"專"的程度及對項目的理解程度是工作中的難點,盡管Delphi技術(shù)可以減輕這種偏差,專家評估技術(shù)在評定一個新軟件實際成本時通常用得不多,但是,這種方式對決定其它模型的輸入時特別有用。Delphi法鼓勵參加者就問題相互討論。這個技術(shù),要求有多種軟件相關(guān)經(jīng)驗人的參與,互相說服對方。Delphi法的步驟是:1、協(xié)調(diào)人向各專家提供項目規(guī)格和估計表格; 2、協(xié)調(diào)人召集小組會各專家討論與規(guī)模相關(guān)的因素; 3、各專家匿名填寫迭代表格; 4、協(xié)調(diào)人整理出一個估計總結(jié),以迭代表的形式返回專家; 5、協(xié)調(diào)人召集小組會,討論較大的估計差異; 6、專家復(fù)查估計總結(jié)并在迭代表上提交另一個匿名估計; 7、重復(fù)4-6,直到達到一個最低和最高估計的一致。
方法二、類比法類比法適合評估一些與歷史項目在應(yīng)用領(lǐng)域、環(huán)境和復(fù)雜度的相似的項目,通過新項目與歷史項目的比較得到規(guī)模估計。類比法估計結(jié)果的精確度取決于歷史項目數(shù)據(jù)的完整性和準確度,因此,用好類比法的前提條件之一是組織建立起較好的項目后評價與分析機制,對歷史項目的數(shù)據(jù)分析是可信賴的。其基本步驟是:1、整理出項目功能列表和實現(xiàn)每個功能的代碼行; 2、標識出每個功能列表與歷史項目的相同點和不同點,特別要注意歷史項目做得不夠的地方; 3、通過步驟1和2得出各個功能的估計值; 4、產(chǎn)生規(guī)模估計。軟件項目中用類比法,往往還要解決可重用代碼的估算問題。估計可重用代碼量的最好辦法就是由程序員或系統(tǒng)分析員詳細地考查已存在的代碼,估算出新項目可重用的代碼中需重新設(shè)計的代碼百分比、需重新編碼或修改的代碼百分比以及需重新測試的代碼百分比。根據(jù)這三個百分比,可用下面的計算公式計算等價新代碼行:等價代碼行=[(重新設(shè)計%+重新編碼%+重新測試%)3]×已有代碼行比如:有10,000行代碼,假定30%需要重新設(shè)計,50%需要重新編碼,70%需要重新測試,那么其等價的代碼行可以計算為:[(30%+50%+70%)3]×10,000=5,000等價代碼行。意即:重用這10000代碼相當于編寫5000代碼行的工作量。方法三、功能點估計法功能點測量是在需求分析階段基于系統(tǒng)功能的一種規(guī)模估計方法。通過研究初始應(yīng)用需求來確定各種輸入、輸出、計算和數(shù)據(jù)庫需求的數(shù)量和特性。通常的步驟是:1、計算輸入,輸出,查詢,主控文件,和接口需求的數(shù)目。 2、將這些數(shù)據(jù)進行加權(quán)乘。下表為一個典型的權(quán)值表。功能類型權(quán)值 輸入4 輸出5 查詢4 主控文件10 接口103、估計者根據(jù)對復(fù)雜度的判斷,總數(shù)可以用+25%、0、或-25%調(diào)整。據(jù)發(fā)現(xiàn),對一個軟件產(chǎn)品的開發(fā),功能點對項目早期的規(guī)模估計很有幫助。然而,在了解產(chǎn)品越多后,功能點可以轉(zhuǎn)換為軟件規(guī)模測量更常用的LOC。方法四、PERT估計法PERT對各個項目活動的完成時間按三種不同情況估計:一個產(chǎn)品的期望規(guī)模,一個最低可能估計,一個最高可能估計。用這三個估計用來得到一個產(chǎn)品期望規(guī)模和標準偏差的Pert統(tǒng)計估計。Pert估計可得到代碼行的期望值E,和標準偏差SD.(sysvs)
信息發(fā)布:廣州名易軟件有限公司 http://www.jetlc.com
|
|
|
|