999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

COCOMO模型對軟件工程教學(xué)的影響

2009-01-14 09:12:18
群文天地 2009年16期
關(guān)鍵詞:成本方法模型

向 峰

COCOMO(構(gòu)造性成本模型,Constructive Cost Model)出現(xiàn)在軟件工程日趨成熟之際,它既是對該學(xué)科方法與技術(shù)等變化的反映,同時也是這些變化的指示器。COCOMO已經(jīng)并將繼續(xù)成為介紹、闡釋軟件工程方法與技術(shù)的不可或缺的工具。

一、引言

COCOMO由Barry Boehm在其1981年的論著《軟件工程經(jīng)濟(jì)學(xué)》一書中所提出,被描述成為一種用于估計軟件項目耗費(fèi)、成本、時間表等的模型。正如他所指出的,“COCOMO適用于對當(dāng)前軟件工程的指導(dǎo)方針以及該方針在整個軟件生命周期中的作用做出解釋” 。事實(shí)上,基于COCOMO的估計已經(jīng)成為當(dāng)今最為流行的估計方法,并對工業(yè)生產(chǎn)和軟件工程教學(xué)產(chǎn)生了深遠(yuǎn)的影響。

本文簡單介紹了COCOMO的最初模型,回溯了COCOMO的發(fā)展歷程,并對以COCOMO 81及其后續(xù)者作為軟件估計教學(xué)和軟件項目管理基礎(chǔ)的一些方法進(jìn)行了闡述。

二、COCOMO及其后續(xù)產(chǎn)品

在《軟件工程經(jīng)濟(jì)學(xué)》這一經(jīng)典教材中,有關(guān)COCOMO的內(nèi)容僅占全書33章中的13章,其他章節(jié)則是對成本效率分析,多目標(biāo)決策分析,解決不確定性、風(fēng)險、以及信息價值等的論述。然而,這并不妨礙COCOMO成為該書的靈魂,也正是由于包含了COCOMO,這本教科書式的論著才受到了長久的追捧。

(一)COCOMO 81 - 一種構(gòu)造性成本模型

COCOMO 81具有典型的開放式、構(gòu)造性特征,正如人們通常所認(rèn)為的,它既是一個估算模型,同時又是一個演示如何建立估算模型的詳細(xì)實(shí)例。COCOMO之所以被稱為“構(gòu)造性成本模型”,源于Barry Boehm最初利用它來說明如何構(gòu)建一個成本估算模型。早期的“黑盒”估算工具所依賴的模型,其細(xì)節(jié)被賣家認(rèn)為是私有的,盡管他們聲稱模型是建立在“數(shù)以千計的數(shù)據(jù)”基礎(chǔ)之上,但是卻沒有公開發(fā)表的論文對此做出印證。而與此相反的,開發(fā)COCOMO 81及其后續(xù)產(chǎn)品的目的,就是意圖建立一個完全開放式的、透明的模型。

Barry Boehm于1981年擔(dān)任TRW公司(Thompson Ramo Wooldrige Inc)的軟件開發(fā)與技術(shù)總監(jiān),COCOMO 81即建立在對該公司63個項目相關(guān)數(shù)據(jù)的分析基礎(chǔ)之上,采用當(dāng)時流行的瀑布式軟件開發(fā)模式。在月人工量(man-months)與基于交付源指令(DSI)的項目規(guī)模關(guān)系圖中,COCOMO數(shù)據(jù)大致形成三個集群,Boehm將它們分別稱為組織型的(Organic)、半分離型的(Semidetached)、以及嵌入式的(Embedded)模式,這三種模式下的軟件開發(fā)復(fù)雜性與困難程度呈逐步增加的趨勢。

COCOMO由三個不斷深入的層次組成,分別為“基本(Basic)COCOMO”、“中間(Intermediate)COCOMO”、以及“詳細(xì)(Detailed)COCOMO”。基本COCOMO是一種靜態(tài)的單值模型,它根據(jù)(由代碼行數(shù)來度量的)程序規(guī)模來計算軟件開發(fā)的工作量和成本。中間COCOMO 模型采用15個成本驅(qū)動改進(jìn)基本模型,是對產(chǎn)品、硬件、工作人員、項目特性等因素的主觀評估,其中,成本驅(qū)動的影響定為項目級。詳細(xì)COCOMO 模型是三種模型中最精確的,具有中間 COCOMO 模型的所有特性;它將軟件開發(fā)劃分為四個階段,并根據(jù)相應(yīng)的階段賦予成本因子不同的權(quán)重,此時的計算細(xì)化到子系統(tǒng)/模塊,更加符合軟件開發(fā)的真實(shí)情況。

(二)COCOMO 81中的施教時刻

施教時刻(Teachable moments)是指在就某一問題進(jìn)行討論或?qū)W習(xí)時,能夠產(chǎn)生大量與該問題相關(guān)的認(rèn)識、看法、理解等認(rèn)知的那段時間。施教時刻可以事先進(jìn)行安排和計劃,也可能隨機(jī)的、自發(fā)的產(chǎn)生。在施教時刻,人們把對某一問題的討論設(shè)置在特定的情境或條件之下,從而在這些前提不斷擴(kuò)大和深入時,有助于獲得對該問題更深層次、更廣泛的理解。比如,對COCOMO有關(guān)等式的推導(dǎo)附帶著線性回歸、統(tǒng)計密度函數(shù)、方差分析等方面的知識,選擇成本驅(qū)動及其參數(shù)則涉及了對工作效率、成本、時間表等的有關(guān)影響因子的分析;我們可以這樣認(rèn)為,施教時刻是將認(rèn)知擴(kuò)大到一個預(yù)先設(shè)定好的更廣泛領(lǐng)域的過渡階段。Richard E. (Dick) Fairley在其所教授的軟件項目管理課程中列舉的COCOMO中所包含的施教時刻如表1所示:

(三)Ada COCOMO與Ada過程模型

COCOMO 81是典型的基于瀑布式模型的批處理模式,它隨著軟件工程的日趨成熟而逐步發(fā)展起來,在第一時間反映并指示了了軟件工程方法與技術(shù)領(lǐng)域的諸多變化。Ada COCOMO是COCOMO 81的“增強(qiáng)版”,是專門針對嵌入式系統(tǒng)的估算模型,這類系統(tǒng)大多采用Ada編程語言開發(fā)(Boehm & Royce,1987)。TRW公司所采用的Ada過程模型集增量開發(fā)、風(fēng)險管理、結(jié)構(gòu)骨架、漸增測試、統(tǒng)一軟件度量等于一體(Royce,1990)。Ada COCOMO中增加了新的成本驅(qū)動,并對工作量乘數(shù)做出了相應(yīng)的調(diào)整,其對COCOMO 81最突出的兩點(diǎn)增強(qiáng)表現(xiàn)為,(a)整合了四個尺度因子以適應(yīng)嵌入式系統(tǒng)中工作效率和時間估計方程的指數(shù),(b)為軟件產(chǎn)品或系統(tǒng)的增量開發(fā)提供了一個估計程序。在COCOMO 81及其擴(kuò)展(包括Ada COCOMO)中,指數(shù)因子(> 1)都顯示出成本費(fèi)用因經(jīng)營規(guī)模擴(kuò)大而增加的一種趨勢,這與大規(guī)模產(chǎn)品中溝通費(fèi)用和整合工作量的非線性增加有關(guān)。乘數(shù)因子便是根據(jù)產(chǎn)品和項目的特性而非規(guī)模來調(diào)整對工作量的估計。

Ada COCOMO在COCOMO 81的基礎(chǔ)上進(jìn)一步引入了軟件安全性、復(fù)用性、基于新成本驅(qū)動的嵌入式系統(tǒng)等內(nèi)容,同時也在更廣泛的意義上對基于連續(xù)性數(shù)據(jù)采集與分析的模型參數(shù)改進(jìn)、軟件開發(fā)過程模型的特性、迭代式開發(fā)的軟件修訂等問題進(jìn)行了探討。Ada COCOMO中包含的施教時刻(表2)反映了對COCOMO 81的一種漸進(jìn)性的累積過程,因此,COCOMO的教學(xué)可以稱之為是對COCOMO、軟件估計、軟件工程方法與技術(shù)等發(fā)展歷程的強(qiáng)化認(rèn)識。

(四)COCOMO II

COCOMO II發(fā)布于1997年,隨后在2000年進(jìn)行了一些小的升級和改動。COCOMO II的最初使命是為自1981年以來不斷改變著的軟件工程方法、模型以及技術(shù)等提供一個開放式的、構(gòu)建性的估計模型,同時,這個模型將力求完善,以滿足一系列開發(fā)方法與相應(yīng)的實(shí)際開發(fā)工作的需求。

COCOMO II的主要特點(diǎn)表現(xiàn)在,分別用兩個單獨(dú)的指數(shù)方程來進(jìn)行工作量和時間表的估計,取代了COCOMO 81的三個模式;用五個尺度因子來調(diào)整方程指數(shù);增加了三個規(guī)模選項;對成本驅(qū)動進(jìn)行了重新定義和補(bǔ)充;另外還包括一個非線性復(fù)用模型、兩級成本驅(qū)動粒度、一個貝葉斯校正方法。它的主要目標(biāo)是為產(chǎn)品、開發(fā)過程、質(zhì)量、軟件項目的成功模式之間的沖突提供調(diào)解的途徑,從而輔助估計。采用MBASE方法通過對軟件規(guī)模、成本模型粒度、開發(fā)過程等的預(yù)先選擇,COCOMO II就能夠根據(jù)設(shè)定與約束條件等來滿足待估項目的需求。與之前的COCOMO 81和Ada COCOMO相比,COCOMO II包含了更多的施教時刻(表3),所涉及的內(nèi)容更加寬泛。

三、教學(xué)

一般來說,教育是指在學(xué)校內(nèi)完成一定的專業(yè)知識學(xué)習(xí),通過考核,最終獲得授予證書或文憑的資格。軟件工程的雙重教學(xué)目的在于,第一,幫助學(xué)生打下扎實(shí)的基礎(chǔ)已以應(yīng)付未來新知識的學(xué)習(xí);第二,向?qū)W生傳授技能,以適應(yīng)當(dāng)前和短期內(nèi)的商業(yè)環(huán)境。合理的確定這兩個目標(biāo)在軟件工程教學(xué)中的比例,也是對教師們的一項長期的考驗(yàn)。

因此,基于COCOMO的教學(xué)大致表現(xiàn)為以下幾種形式:介紹COCOMO工具及其使用方法;講解各種COCOMO模型中所包含的理論內(nèi)容;通過檢驗(yàn)一個COCOMO模型來完成數(shù)據(jù)采集和分析的實(shí)驗(yàn);通過團(tuán)隊項目來開發(fā)一個COCOMO估計工具;以使用COCOMO為基礎(chǔ)的、介紹并討論表1~3中相關(guān)話題的、相對詳盡的軟件工程課程。

另一方面還要將技術(shù)傳授給軟件開發(fā)人員、維護(hù)人員、管理人員,從而提高其工作效率。然而,軟件工程教學(xué)需要明確基于某一問題的假定和約束條件。比如,進(jìn)行估計的人必須首先要了解估算過程中都包含哪些內(nèi)容、不同環(huán)境下工作量乘子的有關(guān)影響、方程與乘子的精度局限性、根據(jù)所處條件進(jìn)行校正模型時需要考慮的事項等等。那些審查并批準(zhǔn)估算的人必須知道應(yīng)該向進(jìn)行估算的人員提出哪些問題以及如何去評定他們的回答。除此,

開發(fā)人員與管理人員也需要了解軟件工程工具的實(shí)用性、成本、特點(diǎn)、以及局限等問題。

四、最新發(fā)展

USC(The University of Southern California)軟件工程中心目前對COCOMO理論方面的研究側(cè)重于在COCOMO II的基礎(chǔ)上進(jìn)行擴(kuò)展并開發(fā)出新的模型,同時,也嘗試整合多個模型而建立一個單獨(dú)的、功能齊備的估計工具。對COCOMO II的擴(kuò)展主要是指模型利用COCOMO II的輸出結(jié)果并通過各種途徑來實(shí)現(xiàn)對結(jié)果的修正。新模型可以在COCOMO方法的基礎(chǔ)上進(jìn)行估計但要求有其獨(dú)立的輸入,如果有必要,新模型也可以與COCOMO II聯(lián)合使用。圖1簡單描述了COCOMO的發(fā)展歷程。每一個擴(kuò)展模型和新模型都經(jīng)由COCOMO這座大門而向?qū)W生們展示了軟件工程領(lǐng)域的最新發(fā)展與動態(tài)。

五、結(jié)束語

COCOMO 81是一個開放式的、透明的、面向瀑布式的軟件項目工作效率、成本、時間表等的估計模型。從表1~3及圖1中不難看出,COCOMO的發(fā)展是緊密跟隨軟件工程的腳步的,很多時候它反映了該領(lǐng)域方法與技術(shù)的變革,在其發(fā)展的每一步,COCOMO都為激發(fā)并探討未知領(lǐng)域提供了一種機(jī)制。COCOMO對軟件工程教學(xué)的影響遠(yuǎn)遠(yuǎn)的超出了單純的對估計方法和估計工具的學(xué)習(xí),它將軟件開發(fā)與維護(hù)中的許多問題具體化、深入化。正如《軟件工程經(jīng)濟(jì)學(xué)》一書的序言中所指出的,COCOMO模型適用于“對當(dāng)前軟件工程的指導(dǎo)方針以及該方針在整個軟件生命周期中的作用做出解釋” 。

參考文獻(xiàn):

[1]Boehm, B. W., Royce, W., TRW IOC Ada COCOMO: definitions and refinements. In: Proceedings of the Third International COCOMO Users Group, Software Engineering Institute,1987.

[2]Royce, W.,TRWs Ada process model for incremental development of large software systems, In: Proceedings of the 12th International Conference on Software Engineering. IEEE Computer Society Press, 1990,pp: 2-11.

[3]Richard E. (Dick) Fairley,The influence of COCOMO on software engineering education and training, The Journal of Systems and Software,80 (2007),pp: 1201-1208.

[4]Boehm, B. et al., COCOMO suite methodology and evolution. Crosstalk 18 (4),2005,pp: 20-25.

[5]趙昌木.美國教學(xué)方法改革的經(jīng)驗(yàn),1994.

[6]鄭人杰.實(shí)用軟件工程.北京:清華大學(xué)出版社,1997.

(作者簡介:向峰(1982—),2007年碩士畢業(yè)于武漢大學(xué)國際軟件學(xué)院;現(xiàn)任武漢大學(xué)東湖分校計算機(jī)科學(xué)學(xué)院教師,從事軟件工程專業(yè)教學(xué)工作。)

猜你喜歡
成本方法模型
一半模型
2021年最新酒駕成本清單
河南電力(2021年5期)2021-05-29 02:10:00
重要模型『一線三等角』
重尾非線性自回歸模型自加權(quán)M-估計的漸近分布
溫子仁,你還是適合拍小成本
電影(2018年12期)2018-12-23 02:18:48
3D打印中的模型分割與打包
用對方法才能瘦
Coco薇(2016年2期)2016-03-22 02:42:52
四大方法 教你不再“坐以待病”!
Coco薇(2015年1期)2015-08-13 02:47:34
捕魚
獨(dú)聯(lián)體各國的勞動力成本
主站蜘蛛池模板: 精品91自产拍在线| 国产乱子伦无码精品小说| 福利姬国产精品一区在线| 手机精品福利在线观看| 国内丰满少妇猛烈精品播 | 欧美精品啪啪| 92午夜福利影院一区二区三区| 国产成年女人特黄特色毛片免| 国产农村1级毛片| 无码专区在线观看| 直接黄91麻豆网站| 欧美日韩综合网| 啪啪永久免费av| 色亚洲成人| 久久五月天综合| 国产成人无码Av在线播放无广告| 亚洲中文字幕日产无码2021| 免费av一区二区三区在线| 97久久精品人人| 91亚洲免费| 亚洲Aⅴ无码专区在线观看q| 亚洲色图欧美| 九九视频免费看| 国产电话自拍伊人| 91在线无码精品秘九色APP| 91美女视频在线| 波多野吉衣一区二区三区av| 成人国产一区二区三区| 色妺妺在线视频喷水| 成人在线综合| 国产成人精品日本亚洲| 国产区人妖精品人妖精品视频| 四虎永久在线精品国产免费| 2020国产精品视频| 一级一级一片免费| 在线欧美一区| 在线播放91| 国产久草视频| 九九九国产| 亚洲成人黄色在线观看| 色视频久久| 性网站在线观看| 九九久久精品免费观看| 免费中文字幕一级毛片| 久草美女视频| 波多野结衣第一页| 国产综合精品一区二区| 99久久精品国产综合婷婷| 成人伊人色一区二区三区| 亚欧成人无码AV在线播放| 韩日午夜在线资源一区二区| 亚洲精品高清视频| 久久精品只有这里有| 免费全部高H视频无码无遮掩| 日本不卡在线播放| 国产情侣一区二区三区| 亚洲天堂久久| 婷婷激情亚洲| 国产剧情国内精品原创| 国产成人精品在线1区| 国产成人无码播放| 五月天久久婷婷| 一级一级一片免费| 国产精品部在线观看| 国产欧美在线观看精品一区污| 国产偷国产偷在线高清| 永久免费无码成人网站| 精品国产毛片| 97久久人人超碰国产精品| 91麻豆国产在线| 久久伊人色| 热久久这里是精品6免费观看| 国产精品55夜色66夜色| 日韩精品一区二区三区大桥未久| 内射人妻无套中出无码| 亚洲国产成人自拍| 精品少妇人妻av无码久久| 国产玖玖视频| 久久精品只有这里有| 亚洲日韩久久综合中文字幕| 国产情侣一区二区三区| 亚洲精品天堂自在久久77|