軟件工程-第13章-軟件項(xiàng)目管理_第1頁
軟件工程-第13章-軟件項(xiàng)目管理_第2頁
軟件工程-第13章-軟件項(xiàng)目管理_第3頁
軟件工程-第13章-軟件項(xiàng)目管理_第4頁
軟件工程-第13章-軟件項(xiàng)目管理_第5頁
已閱讀5頁,還剩43頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

第13章軟件項(xiàng)目管理13.1估算軟件規(guī)模13.2工作量估算13.3進(jìn)度計(jì)劃13.4人員組織13.5質(zhì)量保證13.6軟件配置管理13.7能力成熟度模型13.8小結(jié)習(xí)題本章要求掌握估算軟件規(guī)模的方法掌握COCOMO模型等工作量估算方法掌握進(jìn)度計(jì)劃的方法掌握Gantt圖和工程網(wǎng)絡(luò)圖的特點(diǎn)和畫法。掌握項(xiàng)目人員的組成掌握軟件質(zhì)量保證的措施掌握軟件配置管理的過程熟悉能力成熟度模型13.1估算軟件規(guī)模代碼行技術(shù)依據(jù)以往開發(fā)類似產(chǎn)品的經(jīng)驗(yàn)和歷史數(shù)據(jù),估計(jì)實(shí)現(xiàn)一個(gè)功能所需要的源程序行數(shù)。把實(shí)現(xiàn)每個(gè)功能所需要的源程序行數(shù)累加起來,就可得到實(shí)現(xiàn)整個(gè)軟件所需要的源程序行數(shù)。13.1.1代碼行技術(shù)每個(gè)人都估計(jì)程序的最小規(guī)模(a)、最大規(guī)模(b)和最可能的規(guī)模(m),分別算出這3種規(guī)模的平均值,和之后,再用下式計(jì)算程序規(guī)模的估計(jì)值: L= (13.1)用代碼行技術(shù)估算軟件規(guī)模時(shí),當(dāng)程序較小時(shí)常用的單位是代碼行數(shù)(LOC),當(dāng)程序較大時(shí)常用的單位是千行代碼數(shù)(KLOC)。代碼行技術(shù)的主要優(yōu)點(diǎn)是,代碼是所有軟件開發(fā)項(xiàng)目都有的“產(chǎn)品”,而且很容易計(jì)算代碼行數(shù)。代碼行技術(shù)的缺點(diǎn)是:源程序僅是軟件配置的一個(gè)成分,用它的規(guī)模代表整個(gè)軟件的規(guī)模似乎不太合理;用不同語言實(shí)現(xiàn)同一個(gè)軟件所需要的代碼行數(shù)并不相同;這種方法不適用于非過程語言。為了克服代碼行技術(shù)的缺點(diǎn),人們又提出了功能點(diǎn)技術(shù)。13.1.2功能點(diǎn)技術(shù)功能點(diǎn)技術(shù)依據(jù)對(duì)軟件信息域特性和軟件復(fù)雜性的評(píng)估結(jié)果,估算軟件規(guī)模。這種方法用功能點(diǎn)(FP)為單位度量軟件規(guī)模。1.信息域特性功能點(diǎn)技術(shù)定義了信息域的5個(gè)特性,分別是輸入項(xiàng)數(shù)(Inp)、輸出項(xiàng)數(shù)(Out)、查詢數(shù)(Inq)、主文件數(shù)(Maf)和外部接口數(shù)(Inf)。(1)輸入項(xiàng)數(shù):用戶向軟件輸入的項(xiàng)數(shù),這些輸入給軟件提供面向應(yīng)用的數(shù)據(jù)。輸入不同于查詢,后者單獨(dú)計(jì)數(shù),不計(jì)入輸入項(xiàng)數(shù)中。(2)輸出項(xiàng)數(shù):軟件向用戶輸出的項(xiàng)數(shù),它們向用戶提供面向應(yīng)用的信息,例如,報(bào)表和出錯(cuò)信息等。報(bào)表內(nèi)的數(shù)據(jù)項(xiàng)不單獨(dú)計(jì)數(shù)。(3)查詢數(shù):

查詢即是一次聯(lián)機(jī)輸入,它導(dǎo)致軟件以聯(lián)機(jī)輸出方式產(chǎn)生某種即時(shí)響應(yīng)。(4)主文件數(shù):邏輯主文件(即數(shù)據(jù)的一個(gè)邏輯組合,它可能是大型數(shù)據(jù)庫的一部分或是一個(gè)獨(dú)立的文件)的數(shù)目。(5)外部接口數(shù):機(jī)器可讀的全部接口(例如,磁盤或磁帶上的數(shù)據(jù)文件)的數(shù)量,用這些接口把信息傳送給另一個(gè)系統(tǒng)。信息域的5個(gè)特性2.估算功能點(diǎn)的步驟用下述3個(gè)步驟,可估算出一個(gè)軟件的功能點(diǎn)數(shù)(即軟件規(guī)模)。(1)計(jì)算未調(diào)整的功能點(diǎn)數(shù)UFP(ai是信息域特性系數(shù))(2)計(jì)算技術(shù)復(fù)雜性因子TCF(3)計(jì)算功能點(diǎn)數(shù)FP用下式計(jì)算功能點(diǎn)數(shù)FP:FP=UFP×TCFUFP=a1×Inp+a2×Out+a3×Inq+a4×Maf+a5×InfTCF=0.65+0.01×DIDI=表13.1信息域特性系數(shù)值復(fù)雜級(jí)別特性系統(tǒng)簡(jiǎn)單平均復(fù)雜輸入系數(shù)a1345輸出系數(shù)a2457查詢系數(shù)a3346文件系數(shù)a471015接口系數(shù)a55710表13.2技術(shù)因素序號(hào)Fi技術(shù)因素序號(hào)Fi技術(shù)因素1F1數(shù)據(jù)通信8F8聯(lián)機(jī)更新2F2分布式數(shù)據(jù)處理9F9復(fù)雜的計(jì)算3F3性能標(biāo)準(zhǔn)10F10可重用性4F4高負(fù)荷的硬件11F11安裝方便5F5高處理率12F12操作方便6F6聯(lián)機(jī)數(shù)據(jù)輸入13F13可移值性7F7終端用戶效率14F14可維護(hù)性13.2工作量估算軟件估算模型使用由經(jīng)驗(yàn)導(dǎo)出的公式來預(yù)測(cè)軟件開發(fā)工作量,工作量是軟件規(guī)模(KLOC或FP)的函數(shù),工作量的單位通常是人月(pm)。支持大多數(shù)估算模型的經(jīng)驗(yàn)數(shù)據(jù),都是從有限個(gè)項(xiàng)目的樣本集中總結(jié)出來的,因此,沒有一個(gè)估算模型可以適用于所有類型的軟件和開發(fā)環(huán)境。13.2.1靜態(tài)單變量模型這類模型的總體結(jié)構(gòu)形式如下:E=A+B×(ev)C其中,A、B和C是由經(jīng)驗(yàn)數(shù)據(jù)導(dǎo)出的常數(shù),E是以人月為單位的工作量,ev是估算變量(KLOC或FP)。下面給出幾個(gè)典型的靜態(tài)單變量模型。1.面向KLOC的估算模型(1)Walston_Felix模型E=5.2×(KLOC)0.91(2)Bailey_Basili模型E=5.5+0.73×(KLOC)1.16(3)Boehm簡(jiǎn)單模型E=3.2×(KLOC)1.05(4)Doty模型(在KLOC>9時(shí)適用)E=5.288×(KLOC)1.0472.面向FP的估算模型(1)Albrecht&Gaffney模型E=-13.39+0.0545FP(2)Maston,Barnett和Mellichamp模型E=585.7+15.12FP13.2.2動(dòng)態(tài)多變量模型動(dòng)態(tài)多變量模型也稱為軟件方程式,它是根據(jù)從4000多個(gè)當(dāng)代軟件項(xiàng)目中收集的生產(chǎn)率數(shù)據(jù)推導(dǎo)出來的。該模型把工作量看作是軟件規(guī)模和開發(fā)時(shí)間這兩個(gè)變量的函數(shù)。動(dòng)態(tài)多變量估算模型的形式如下:E=(LOC×B0.333/P)3×(1/t)4 (13.2)其中,E是以人月或人年為單位的工作量;t是以月或年為單位的項(xiàng)目持續(xù)時(shí)間;13.2.3COCOMO2模型

COCOMO是構(gòu)造性成本模型(constructivecostmodel)的英文縮寫。1981年Boehm在《軟件工程經(jīng)濟(jì)學(xué)》中首次提出了COCOMO模型,本書第三版曾對(duì)此模型作了介紹。1997年Boehm等人提出的COCOMO2模型,是原始的COCOMO模型的修訂版,它反映了十多年來在成本估計(jì)方面所積累的經(jīng)驗(yàn)。

COCOMO2給出了3個(gè)層次的軟件開發(fā)工作量估算模型,這3個(gè)層次的模型在估算工作量時(shí),對(duì)軟件細(xì)節(jié)考慮的詳盡程度逐級(jí)增加。這些模型既可以用于不同類型的項(xiàng)目,也可以用于同一個(gè)項(xiàng)目的不同開發(fā)階段。這3個(gè)層次的估算模型分別是:

(1)應(yīng)用系統(tǒng)組成模型。這個(gè)模型主要用于估算構(gòu)建原型的工作量,模型名字暗示在構(gòu)建原型時(shí)大量使用已有的構(gòu)件。(2)早期設(shè)計(jì)模型。這個(gè)模型適用于體系結(jié)構(gòu)設(shè)計(jì)階段。(3)后體系結(jié)構(gòu)模型。這個(gè)模型適用于完成體系結(jié)構(gòu)設(shè)計(jì)之后的軟件開發(fā)階段。下面以后體系結(jié)構(gòu)模型為例,介紹COCOMO2模型。該模型把軟件開發(fā)工作量表示成代碼行數(shù)(KLOC)的非線性函數(shù):

E=

(13.3)其中,E是開發(fā)工作量(以人月為單位),a是模型系數(shù),KLOC是估計(jì)的源代碼行數(shù)(以千行為單位),b是模型指數(shù),fi(i=1~17)是成本因素(成本因素及工作量系數(shù)表見P310)COCOMO2使用的5個(gè)分級(jí)因素:項(xiàng)目先例性開發(fā)靈活性風(fēng)險(xiǎn)排除性項(xiàng)目組凝聚力過程成熟度13.3進(jìn)度計(jì)劃不論從事哪種技術(shù)性項(xiàng)目,實(shí)際情況都是,在實(shí)現(xiàn)一個(gè)大目標(biāo)之前往往必須完成數(shù)以百計(jì)的小任務(wù)(也稱為作業(yè))。項(xiàng)目管理者的目標(biāo)是定義全部項(xiàng)目任務(wù),識(shí)別出關(guān)鍵任務(wù),跟蹤關(guān)鍵任務(wù)的進(jìn)展?fàn)顩r,以保證能及時(shí)發(fā)現(xiàn)拖延進(jìn)度的情況。為達(dá)到上述目標(biāo),管理者必須制定一個(gè)足夠詳細(xì)的進(jìn)度表,以便監(jiān)督項(xiàng)目進(jìn)度并控制整個(gè)項(xiàng)目。13.3.1估算開發(fā)時(shí)間估算出完成給定項(xiàng)目所需的總工作量之后,接下來需要回答的問題就是:用多長(zhǎng)時(shí)間才能完成該項(xiàng)目的開發(fā)工作?對(duì)于一個(gè)估計(jì)工作量為20人月的項(xiàng)目,可能想出下列幾種進(jìn)度表:1個(gè)人用20個(gè)月完成該項(xiàng)目;4個(gè)人用5個(gè)月完成該項(xiàng)目;20個(gè)人用1個(gè)月完成該項(xiàng)目。但是,這些進(jìn)度表并不現(xiàn)實(shí),實(shí)際上軟件開發(fā)時(shí)間與從事開發(fā)工作的人數(shù)之間并不是簡(jiǎn)單的反比關(guān)系。通常,成本估算模型也同時(shí)提供了估算開發(fā)時(shí)間T的方程。與工作量方程不同,各種模型估算開發(fā)時(shí)間的方程很相似,例如:(1)Walston_Felix模型T=2.5E0.35(2)原始的COCOMO模型T=2.5E0.38(3)COCOMO2模型T=3.0E0.33+0.2×(b-1.01)(4)Putnam模型T=2.4E1/3其中,E是開發(fā)工作量(以人月為單位),T是開發(fā)時(shí)間(以月為單位)。用上列方程計(jì)算出的T值,代表正常情況下的開發(fā)時(shí)間??蛻敉Ms短軟件開發(fā)時(shí)間,顯然,為了縮短開發(fā)時(shí)間應(yīng)該增加從事開發(fā)工作的人數(shù)。但是,經(jīng)驗(yàn)告訴我們,隨著開發(fā)小組規(guī)模擴(kuò)大,個(gè)人生產(chǎn)率將下降,以致開發(fā)時(shí)間與從事開發(fā)工作的人數(shù)并不成反比關(guān)系。13.3.2Gantt圖

Gantt(甘特)圖是歷史悠久、應(yīng)用廣泛的制定進(jìn)度計(jì)劃的工具,下面通過一個(gè)非常簡(jiǎn)單的例子介紹這種工具。假設(shè)有一座陳舊的矩形木板房需要重新油漆。這項(xiàng)工作必須分3步完成:首先刮掉舊漆,然后刷上新漆,最后清除濺在窗戶上的油漆。假設(shè)一共分配了15名工人去完成這項(xiàng)工作,然而工具卻很有限:只有5把刮舊漆用的刮板,5把刷漆用的刷子,5把清除濺在窗戶上的油漆用的小刮刀。怎樣安排才能使工作進(jìn)行得更有效呢?表13.5各道工序估計(jì)需用的時(shí)間(小時(shí))圖13.1舊木板房刷漆工程的Gantt圖工序墻壁刮舊漆刷新漆清理1或32312或446213.3.3工程網(wǎng)絡(luò)Gantt圖也有3個(gè)主要缺點(diǎn):(1)不能顯式地描繪各項(xiàng)作業(yè)彼此間的依賴關(guān)系;(2)進(jìn)度計(jì)劃的關(guān)鍵部分不明確,難于判定哪些部分應(yīng)當(dāng)是主攻和主控的對(duì)象;(3)計(jì)劃中有潛力的部分及潛力的大小不明確,往往造成潛力的浪費(fèi)。當(dāng)把一個(gè)工程項(xiàng)目分解成許多子任務(wù),并且它們彼此間的依賴關(guān)系又比較復(fù)雜時(shí),僅僅用Gantt圖作為安排進(jìn)度的工具是不夠的,不僅難于做出既節(jié)省資源又保證進(jìn)度的計(jì)劃,而且還容易發(fā)生差錯(cuò)。工程網(wǎng)絡(luò)是制定進(jìn)度計(jì)劃時(shí)另一種常用的圖形工具,它同樣能描繪任務(wù)分解情況以及每項(xiàng)作業(yè)的開始時(shí)間和結(jié)束時(shí)間,此外,它還顯式地描繪各個(gè)作業(yè)彼此間的依賴關(guān)系。圖13.2舊木板房刷漆工程的工程網(wǎng)絡(luò)在工程網(wǎng)絡(luò)中用箭頭表示作業(yè)(例如,刮舊漆,刷新漆,清理等),用圓圈表示事件(一項(xiàng)作業(yè)開始或結(jié)束)。1-2刮第1面墻上的舊漆2-3刮第2面墻上的舊漆2-4刷第1面墻上的新漆。。。。。(虛線表示并不存在的作業(yè),是為了顯式地表示作業(yè)之間的依賴關(guān)系)13.3.4估算工程進(jìn)度首先,把每個(gè)作業(yè)估計(jì)需要使用的時(shí)間寫在表示該項(xiàng)作業(yè)的箭頭上方。注意,箭頭長(zhǎng)度和它代表的作業(yè)持續(xù)時(shí)間沒有關(guān)系,箭頭僅表示依賴關(guān)系,它上方的數(shù)字才表示作業(yè)的持續(xù)時(shí)間。其次,為每個(gè)事件計(jì)算下述兩個(gè)統(tǒng)計(jì)數(shù)字。圖13.3舊木板房刷漆工程的完整的工程網(wǎng)絡(luò)(PERT圖)1-2刮第1面墻上的舊漆2-3刮第2面墻上的舊漆2-4刷第1面墻上的新漆。。。。。(虛線表示并不存在的作業(yè),是為了顯式地表示作業(yè)之間的依賴關(guān)系)13.3.5關(guān)鍵路徑圖13.3中有幾個(gè)事件的最早時(shí)刻和最遲時(shí)刻相同,這些事件定義了關(guān)鍵路徑,在圖中關(guān)鍵路徑用粗線箭頭表示。關(guān)鍵路徑上的事件(關(guān)鍵事件)必須準(zhǔn)時(shí)發(fā)生,組成關(guān)鍵路徑的作業(yè)(關(guān)鍵作業(yè))的實(shí)際持續(xù)時(shí)間不能超過估計(jì)的持續(xù)時(shí)間,否則工程就不能準(zhǔn)時(shí)結(jié)束。工程項(xiàng)目的管理人員應(yīng)該密切注視關(guān)鍵作業(yè)的進(jìn)展情況,如果關(guān)鍵事件出現(xiàn)的時(shí)間比預(yù)計(jì)的時(shí)間晚,則會(huì)使最終完成項(xiàng)目的時(shí)間拖后;如果希望縮短工期,只有往關(guān)鍵作業(yè)中增加資源才會(huì)有效果。13.3.6機(jī)動(dòng)時(shí)間一個(gè)作業(yè)可以有的全部機(jī)動(dòng)時(shí)間等于它的結(jié)束事件的最遲時(shí)刻減去它的開始事件的最早時(shí)刻,再減去這個(gè)作業(yè)的持續(xù)時(shí)間:機(jī)動(dòng)時(shí)間=(LET)結(jié)束-(EET)開始-持續(xù)時(shí)間對(duì)于前述油漆舊木板房的例子,計(jì)算得到的非關(guān)鍵作業(yè)的機(jī)動(dòng)時(shí)間列在表13.6(見書308頁)中。圖13.4舊木板房刷漆工程改進(jìn)的Gantt圖之一13.4人員組織軟件項(xiàng)目成功的關(guān)鍵是有高素質(zhì)的軟件開發(fā)人員。然而大多數(shù)軟件的規(guī)模都很大,單個(gè)軟件開發(fā)人員無法在給定期限內(nèi)完成開發(fā)工作,因此,必須把多名軟件開發(fā)人員合理地組織起來,使他們有效地分工協(xié)作共同完成開發(fā)工作。下面介紹3種典型的組織方式:民主制程序員組主程序員組現(xiàn)代程序員組13.5質(zhì)量保證概括地說,軟件質(zhì)量就是“軟件與明確地和隱含地定義的需求相一致的程度”。更具體地說,軟件質(zhì)量是軟件與明確地?cái)⑹龅墓δ芎托阅苄枨?、文檔中明確描述的開發(fā)標(biāo)準(zhǔn)以及任何專業(yè)開發(fā)的軟件產(chǎn)品都應(yīng)該具有的隱含特征相一致的程度。上述定義強(qiáng)調(diào)了下述的3個(gè)要點(diǎn):(1)軟件需求是度量軟件質(zhì)量的基礎(chǔ),與需求不一致就是質(zhì)量不高。(2)指定的開發(fā)標(biāo)準(zhǔn)定義了一組指導(dǎo)軟件開發(fā)的準(zhǔn)則,如果沒有遵守這些準(zhǔn)則,幾乎肯定會(huì)導(dǎo)致軟件質(zhì)量不高。(3)通常,有一組沒有顯式描述的隱含需求(例如,軟件應(yīng)該是容易維護(hù)的)。13.5.1軟件質(zhì)量圖13.9軟件質(zhì)量因素與產(chǎn)品活動(dòng)的關(guān)系13.5.2軟件質(zhì)量保證措施軟件質(zhì)量保證(softwarequalityassurance,SQA)的措施主要有:基于非執(zhí)行的測(cè)試(也稱為復(fù)審或評(píng)審),基于執(zhí)行的測(cè)試(即以前講過的軟件測(cè)試)和程序正確性證明。復(fù)審主要用來保證在編碼之前各階段產(chǎn)生的文檔的質(zhì)量;基于執(zhí)行的測(cè)試需要在程序編寫出來之后進(jìn)行,它是保證軟件質(zhì)量的最后一道防線;程序正確性證明使用數(shù)學(xué)方法嚴(yán)格驗(yàn)證程序是否與對(duì)它的說明完全一致。1.技術(shù)復(fù)審的必要性2.走查3.審查4.程序正確性證明13.6軟件配置管理軟件配置管理是在軟件的整個(gè)生命期內(nèi)管理變化的一組活動(dòng)。具體地說,這組活動(dòng)用來:①標(biāo)識(shí)變化;②控制變化;③確保適當(dāng)?shù)貙?shí)現(xiàn)了變化;④向需要知道這類信息的人報(bào)告變化。軟件配置管理不同于軟件維護(hù)。維護(hù)是在軟件交付給用戶使用后才發(fā)生的,而配置管理是在軟件項(xiàng)目啟動(dòng)時(shí)就開始,并且一直持續(xù)到軟件退役后才終止的一組跟蹤和控制活動(dòng)。軟件配置管理的目標(biāo)是,使變化更正確且更容易被適應(yīng),在必須變化時(shí)減少所需花費(fèi)的工作量。13.6.1軟件配置1.軟件配置項(xiàng)軟件過程的輸出信息可以分為3類:

①計(jì)算機(jī)程序(源代碼和可執(zhí)行程序);

②描述計(jì)算機(jī)程序的文檔(供技術(shù)人員或用戶使用);③數(shù)據(jù)(程序內(nèi)包含的或在程序外的)。上述這些項(xiàng)組成了在軟件過程中產(chǎn)生的全部信息,我們把它們統(tǒng)稱為軟件配置,而這些項(xiàng)就是軟件配置項(xiàng)。2.基線基線是一個(gè)軟件配置管理概念,它有助于我們?cè)诓粐?yán)重妨礙合理變化的前提下來控制變化。IEEE把基線定義為:已經(jīng)通過了正式復(fù)審的規(guī)格說明或中間產(chǎn)品,它可以作為進(jìn)一步開發(fā)的基礎(chǔ),并且只有通過正式的變化控制過程才能改變它。簡(jiǎn)而言之,基線就是通過了正式復(fù)審的軟件配置項(xiàng)。在軟件配置項(xiàng)變成基線之前,可以迅速而非正式地修改它。一旦建立了基線之后,雖然仍然可以實(shí)現(xiàn)變化,但是,必須應(yīng)用特定的、正式的過程(稱為規(guī)程)來評(píng)估、實(shí)現(xiàn)和驗(yàn)證每個(gè)變化。13.6.2軟件配置管理過程軟件配置管理是軟件質(zhì)量保證的重要一環(huán),它的主要任務(wù)是控制變化,同時(shí)也負(fù)責(zé)各個(gè)軟件配置項(xiàng)和軟件各種版本的標(biāo)識(shí)、軟件配置審計(jì)以及對(duì)軟件配置發(fā)生的任何變化的報(bào)告。具體來說,軟件配置管理主要有5項(xiàng)任務(wù):標(biāo)識(shí)、版本控制、變化控制、配置審計(jì)和報(bào)告。13.7能力成熟度模型美國卡內(nèi)基梅隆大學(xué)軟件工程研究所在美國國防部資助下于20世紀(jì)80年代末建立的能力成熟度模型(capabilitymaturitymodel,CMM),是用于評(píng)價(jià)軟件機(jī)構(gòu)的軟件過程能力成熟度的模型。最初,建立此模型的目的主要是,為大型軟件項(xiàng)目的招投標(biāo)活動(dòng)提供一種全面而客觀的評(píng)審依據(jù),發(fā)展到后來,此模型又同時(shí)被應(yīng)用于許多軟件機(jī)構(gòu)內(nèi)部的過程改進(jìn)活動(dòng)中。CMM通過定義能力成熟度的5個(gè)等級(jí),引導(dǎo)軟件開發(fā)機(jī)構(gòu)不斷識(shí)別出其軟件過程的缺陷,并指出應(yīng)該做哪些改進(jìn),但是,它并不提供做這些改進(jìn)的具體措施。能力成熟度的5個(gè)等級(jí)從低到高依次是:初始級(jí)(又稱為1級(jí)),可重復(fù)級(jí)(又稱為2級(jí)),已定義級(jí)(又稱為3級(jí)),已管理級(jí)(又稱為4級(jí))和優(yōu)化級(jí)(又稱為5級(jí))。下面介紹這5個(gè)級(jí)別的特點(diǎn)。CMM通過定義能力成熟度的5個(gè)等級(jí),引導(dǎo)軟件開發(fā)機(jī)構(gòu)不斷識(shí)別出其軟件過程的缺陷,并指出應(yīng)該做哪些改進(jìn),但是,它并不提供做這些改進(jìn)的具體措施。能力成熟度的5個(gè)等級(jí)從低到高依次是:初始級(jí)(又稱為1級(jí)),可重復(fù)級(jí)(又稱為2級(jí)),已定義級(jí)(又稱為3級(jí)),已管理級(jí)(又稱為4級(jí))優(yōu)化級(jí)(又稱為5級(jí))。1.初始級(jí)軟件過程的特征是無序的,有時(shí)甚至是混亂的。幾乎沒有什么過程是經(jīng)過定義的(即沒有一個(gè)定型的過程模型),項(xiàng)目能否成功完全取決于開發(fā)人員的個(gè)人能力。處于這個(gè)最低成熟度等級(jí)的軟件機(jī)構(gòu),基本上沒有健全的軟件工程管理制度,其軟件過程完全取決于項(xiàng)目組的人員配備,所以具有不可預(yù)測(cè)性,人員變了過程也隨之改變。如果一個(gè)項(xiàng)目碰巧由一個(gè)杰出的管理者和一支有經(jīng)驗(yàn)、有能力的開發(fā)隊(duì)伍承擔(dān),則這個(gè)項(xiàng)目可能是成功的。但是,更常見的情況是,由于缺乏健全的管理和周密的計(jì)劃,延期交付和費(fèi)用超支的情況經(jīng)常發(fā)生,結(jié)果,大多數(shù)行動(dòng)只是應(yīng)付危機(jī),而不是完成事先計(jì)劃好的任務(wù)??傊?,處于1級(jí)成熟度的軟件機(jī)構(gòu),其過程能力是不可預(yù)測(cè)的,其軟件過程是不穩(wěn)定的,產(chǎn)品質(zhì)量只能根據(jù)相關(guān)人員的個(gè)人工作能力而不是軟件機(jī)構(gòu)的過程能力來預(yù)測(cè)。2.可重復(fù)級(jí)軟件機(jī)構(gòu)建立了基本的項(xiàng)目管理過程(過程模型),可跟蹤成本、進(jìn)度、功能和質(zhì)量。已經(jīng)建立起必要的過程規(guī)范,對(duì)新項(xiàng)目的策劃和管理過程是基于以前類似項(xiàng)目的實(shí)踐經(jīng)驗(yàn),使得有類似應(yīng)用經(jīng)驗(yàn)的軟件項(xiàng)目能夠再次取得成功。達(dá)到2級(jí)的一個(gè)目標(biāo)是使項(xiàng)目管理過程穩(wěn)定,從而使得軟件機(jī)構(gòu)能重復(fù)以前在成功項(xiàng)目中所進(jìn)行過的軟件項(xiàng)目工程實(shí)踐。處于2級(jí)成熟度的軟件機(jī)構(gòu),項(xiàng)目負(fù)責(zé)人跟蹤軟件產(chǎn)品開發(fā)的成本和進(jìn)度以及產(chǎn)品的功能和質(zhì)量,并且識(shí)別出為滿足約束條件所應(yīng)解決的問題。已經(jīng)做到軟件需求條理化,而且其完整性是受控制的。已經(jīng)制定了項(xiàng)目標(biāo)準(zhǔn),并且軟件機(jī)構(gòu)能確保嚴(yán)格執(zhí)行這些標(biāo)準(zhǔn)。項(xiàng)目組與客戶及承包商已經(jīng)建立起一個(gè)穩(wěn)定的、可管理的工作環(huán)境。處于2級(jí)成熟度的軟件機(jī)構(gòu)的過程能力可以概括為軟件項(xiàng)目的策劃和跟蹤是穩(wěn)定的,已經(jīng)為一個(gè)有紀(jì)律的管理過程提供了可重復(fù)以前成功實(shí)踐的項(xiàng)目環(huán)境。軟件項(xiàng)目工程活動(dòng)處于項(xiàng)目管理體系的有效控制之下,執(zhí)行著基于以前項(xiàng)目的準(zhǔn)則且合乎現(xiàn)實(shí)的計(jì)劃。3.已定義級(jí)軟件機(jī)構(gòu)已經(jīng)定義了完整的軟件過程(過程模型),軟件過程已經(jīng)文檔化和標(biāo)準(zhǔn)化。所有項(xiàng)目組都使用文檔化的、經(jīng)過批準(zhǔn)的過程來開發(fā)和維護(hù)軟件。這一級(jí)包含了第2級(jí)的全部特征。在第3級(jí)成熟度的軟件機(jī)構(gòu)中,有一個(gè)固定的過程小組從事軟件過程工程活動(dòng)。當(dāng)需要時(shí),過程小組可以利用過程模型進(jìn)行過程例化活動(dòng),從而獲得一個(gè)針對(duì)某個(gè)特定的軟件項(xiàng)目的過程實(shí)例,并投入過程運(yùn)作而開展有效的軟件項(xiàng)目工程實(shí)踐。同時(shí),過程小組還可以推進(jìn)軟件機(jī)構(gòu)的過程改進(jìn)活動(dòng)。在該軟件機(jī)構(gòu)內(nèi)實(shí)施了培訓(xùn)計(jì)劃,能夠保證全體項(xiàng)目負(fù)責(zé)人和項(xiàng)目開發(fā)人員具有完成承擔(dān)的任務(wù)所要求的知識(shí)和技能。處于3級(jí)成熟度的軟件機(jī)構(gòu)的過程能力可以概括

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論