版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、第第13章章 軟件項目管理軟件項目管理13.1 估算軟件規(guī)模估算軟件規(guī)模13.2 工作量估算工作量估算13.3 進度計劃進度計劃13.4 人員組織人員組織13.5 質(zhì)量保證質(zhì)量保證13.6 軟件配置管理軟件配置管理13.7 能力成熟度模型能力成熟度模型13.8 小結(jié)小結(jié)依據(jù)以往開發(fā)類似產(chǎn)品的經(jīng)驗和歷史數(shù)據(jù),估計實依據(jù)以往開發(fā)類似產(chǎn)品的經(jīng)驗和歷史數(shù)據(jù),估計實現(xiàn)一個功能所需要的源程序行數(shù)。現(xiàn)一個功能所需要的源程序行數(shù)。把實現(xiàn)每個功能所需要的源程序行數(shù)累加起來,就把實現(xiàn)每個功能所需要的源程序行數(shù)累加起來,就可得到實現(xiàn)整個軟件所需要的源程序行數(shù)??傻玫綄崿F(xiàn)整個軟件所需要的源程序行數(shù)。13.1 估算軟件
2、規(guī)模估算軟件規(guī)模 13.1.1 代碼行技術(shù)代碼行技術(shù)由多名有經(jīng)驗的軟件工程師分別做出估計。由多名有經(jīng)驗的軟件工程師分別做出估計。每個人都估計程序的最小規(guī)模每個人都估計程序的最小規(guī)模(a)、最大規(guī)模、最大規(guī)模(b)和和最可能的規(guī)模最可能的規(guī)模(m),分別算出這,分別算出這3種規(guī)模的平均值種規(guī)模的平均值, 再用下式計算程序規(guī)模的估計值:再用下式計算程序規(guī)模的估計值:L=(13.1)單位是代碼行數(shù)(單位是代碼行數(shù)(LOC) 或千行代碼數(shù)(或千行代碼數(shù)(KLOC)64bma 代碼行技術(shù)的優(yōu)點代碼行技術(shù)的優(yōu)點: 代碼是所有軟件開發(fā)項目都有代碼是所有軟件開發(fā)項目都有的的“產(chǎn)品產(chǎn)品”,且容易計算行數(shù)。,且容
3、易計算行數(shù)。代碼行技術(shù)的缺點是:代碼行技術(shù)的缺點是: 源程序僅是軟件配置的一源程序僅是軟件配置的一個成分。個成分。為了克服代碼行技術(shù)的缺點,人們提出了功能點技為了克服代碼行技術(shù)的缺點,人們提出了功能點技術(shù)。術(shù)。依據(jù)軟件信息域特性和軟件復(fù)雜性,用功能點依據(jù)軟件信息域特性和軟件復(fù)雜性,用功能點(FP)為單位度量軟件規(guī)模。)為單位度量軟件規(guī)模。1. 信息域特性信息域特性功能點技術(shù)定義了信息域的功能點技術(shù)定義了信息域的5個特性個特性: 輸入項數(shù)輸入項數(shù)(Inp)、輸出項數(shù)、輸出項數(shù)(Out)、查詢數(shù)、查詢數(shù)(Inq)、主文件數(shù)、主文件數(shù)(Maf)和外部接口數(shù)和外部接口數(shù)(Inf)。(1) 輸入項數(shù):輸
4、入項數(shù): 用戶向軟件輸入的項數(shù),這些用戶向軟件輸入的項數(shù),這些輸入給軟件提供面向應(yīng)用的數(shù)據(jù)。輸入給軟件提供面向應(yīng)用的數(shù)據(jù)。13.1.2 功能點技術(shù)功能點技術(shù)(2) 輸出項數(shù):輸出項數(shù): 軟件向用戶輸出的項數(shù),它們軟件向用戶輸出的項數(shù),它們向用戶提供面向應(yīng)用的信息,例如,報表和出錯信向用戶提供面向應(yīng)用的信息,例如,報表和出錯信息等。報表內(nèi)的數(shù)據(jù)項不單獨計數(shù)。息等。報表內(nèi)的數(shù)據(jù)項不單獨計數(shù)。(3) 查詢數(shù):查詢數(shù): 查詢即是一次聯(lián)機查詢即是一次聯(lián)機輸入輸入,它導(dǎo)致,它導(dǎo)致軟件產(chǎn)生某種即時響應(yīng)軟件產(chǎn)生某種即時響應(yīng)(輸出輸出)。(4) 主文件數(shù):主文件數(shù): 邏輯主文件(即數(shù)據(jù)的一個邏邏輯主文件(即數(shù)據(jù)
5、的一個邏輯組合,它可能是大型數(shù)據(jù)庫的一部分或是一個獨輯組合,它可能是大型數(shù)據(jù)庫的一部分或是一個獨立的文件)的數(shù)目。立的文件)的數(shù)目。(5) 外部接口數(shù):外部接口數(shù): 機器可讀的全部接口(例如,機器可讀的全部接口(例如,磁盤或磁帶上的數(shù)據(jù)文件)的數(shù)量,用這些接口把磁盤或磁帶上的數(shù)據(jù)文件)的數(shù)量,用這些接口把信息傳送給另一個系統(tǒng)。信息傳送給另一個系統(tǒng)。2. 估算功能點的步驟估算功能點的步驟用下述用下述3個步驟,可估算出一個軟件的功能點數(shù)個步驟,可估算出一個軟件的功能點數(shù)(即軟件規(guī)模)。(即軟件規(guī)模)。FP=UFPTCF(1) 計算未調(diào)整的功能點數(shù)計算未調(diào)整的功能點數(shù)UFP每個特性每個特性(即即In
6、p、Out、Inq、Maf和和Inf)都分類為都分類為簡單級、平均級或復(fù)雜級簡單級、平均級或復(fù)雜級UFP=a1Inp+a2Out+a3Inq+a4Maf+a5Inf其中,其中,ai(1i5)是特性系數(shù),其值由相應(yīng)特性的復(fù)是特性系數(shù),其值由相應(yīng)特性的復(fù)雜級別決定,如表雜級別決定,如表13.1單擊此處編輯母版標(biāo)題樣式單擊此處編輯母版標(biāo)題樣式 單擊此處編輯母版副標(biāo)題樣式單擊此處編輯母版副標(biāo)題樣式(2) 計算技術(shù)復(fù)雜性因子計算技術(shù)復(fù)雜性因子TCF14種技術(shù)因素種技術(shù)因素Fi(1i14)對軟件規(guī)模的影響程度。對軟件規(guī)模的影響程度。每個因素分配一個從每個因素分配一個從0(無影響)到(無影響)到5(有很大影
7、響)(有很大影響) DI= 值在值在070之間之間技術(shù)復(fù)雜性因子技術(shù)復(fù)雜性因子TCF由下式計算:由下式計算: TCF=0.65+0.01DI(3) 計算功能點數(shù)計算功能點數(shù)FPFP=UFPTCF功能點數(shù)與所用的編程語言無關(guān)。在判斷信息域特功能點數(shù)與所用的編程語言無關(guān)。在判斷信息域特性復(fù)雜級別和技術(shù)因素的影響程度時,存在著相當(dāng)性復(fù)雜級別和技術(shù)因素的影響程度時,存在著相當(dāng)大的主觀因素。大的主觀因素。 141iiF軟件估算模型由經(jīng)驗導(dǎo)出的公式來預(yù)測軟件開發(fā)工軟件估算模型由經(jīng)驗導(dǎo)出的公式來預(yù)測軟件開發(fā)工作量,工作量是軟件規(guī)模(作量,工作量是軟件規(guī)模(KLOC或或FP)的函數(shù),)的函數(shù),工作量的單位通常
8、是人月(工作量的單位通常是人月(pm)。估算模型的經(jīng)驗數(shù)據(jù),是從有限個項目的樣本集中估算模型的經(jīng)驗數(shù)據(jù),是從有限個項目的樣本集中總結(jié)出來的,因此,沒有一個估算模型可以適用于總結(jié)出來的,因此,沒有一個估算模型可以適用于所有類型的軟件和開發(fā)環(huán)境。所有類型的軟件和開發(fā)環(huán)境。13.2 工作量估算工作量估算這類模型的總體結(jié)構(gòu)形式如下:這類模型的總體結(jié)構(gòu)形式如下: E=A+B(ev)C其中,其中,A、B和和C是由經(jīng)驗數(shù)據(jù)導(dǎo)出的常數(shù),是由經(jīng)驗數(shù)據(jù)導(dǎo)出的常數(shù),E是以是以人月為單位的工作量,人月為單位的工作量,ev是估算變量(是估算變量(KLOC或或FP)。下面給出幾個典型的靜態(tài)單變量模型。)。下面給出幾個典型
9、的靜態(tài)單變量模型。1.面向面向FP的估算模型的估算模型 (1) Albrecht & Gaffney模型模型E=-13.39+0.0545FP(2) Maston,Barnett和和Mellichamp模型模型E=585.7+15.12FP13.2.1 靜態(tài)單變量模型靜態(tài)單變量模型2. 面向面向KLOC的估算模型的估算模型(1) Walston_Felix模型模型E=5.2(KLOC)0.91(2) Bailey_Basili模型模型E=5.5+0.73(KLOC)1.16(3) Boehm簡單模型簡單模型E=3.2(KLOC)1.05(4) Doty模型(在模型(在KLOC9時適用)
10、時適用)E=5.288(KLOC)1.047對于相同的對于相同的KLOC或或FP值,用不同模型估算將得出值,用不同模型估算將得出不同的結(jié)果。不同的結(jié)果。主要原因是,這些模型多數(shù)都是僅根據(jù)若干應(yīng)用領(lǐng)主要原因是,這些模型多數(shù)都是僅根據(jù)若干應(yīng)用領(lǐng)域中有限個項目的經(jīng)驗數(shù)據(jù)推導(dǎo)出來的,適用范圍域中有限個項目的經(jīng)驗數(shù)據(jù)推導(dǎo)出來的,適用范圍有限。有限。因此,必須根據(jù)當(dāng)前項目的特點選擇適用的估算模因此,必須根據(jù)當(dāng)前項目的特點選擇適用的估算模型,并且根據(jù)需要適當(dāng)?shù)卣{(diào)整(例如,修改模型常型,并且根據(jù)需要適當(dāng)?shù)卣{(diào)整(例如,修改模型常數(shù))估算模型。數(shù))估算模型。動態(tài)多變量模型是根據(jù)從動態(tài)多變量模型是根據(jù)從4000多個
11、當(dāng)代軟件項目中多個當(dāng)代軟件項目中收集的生產(chǎn)率數(shù)據(jù)推導(dǎo)出來的。收集的生產(chǎn)率數(shù)據(jù)推導(dǎo)出來的。工作量是軟件規(guī)模和開發(fā)時間這兩個變量的函數(shù)。工作量是軟件規(guī)模和開發(fā)時間這兩個變量的函數(shù)。E=(LOCB0.333/P)3(1/t)4(13.2)E是以人月或人年為單位的工作量;是以人月或人年為單位的工作量;t1是以月或年為單位的項目持續(xù)時間;是以月或年為單位的項目持續(xù)時間;B是特殊技術(shù)因子,它隨著規(guī)模和要求的增加而緩是特殊技術(shù)因子,它隨著規(guī)模和要求的增加而緩慢增加慢增加:小的程序小的程序(KLOC=515),B=0.16, 超過超過70 KLOC的程序,的程序,B=0.39;P是生產(chǎn)率參數(shù)是生產(chǎn)率參數(shù) (2
12、000-30000)13.2.2 動態(tài)多變量模型動態(tài)多變量模型P生產(chǎn)率參數(shù),反映了下述因素對工作量的影響:生產(chǎn)率參數(shù),反映了下述因素對工作量的影響: 總體過程成熟度及管理水平;總體過程成熟度及管理水平;使用良好的軟件工程實踐的程度;使用良好的軟件工程實踐的程度;使用的程序設(shè)計語言的級別;使用的程序設(shè)計語言的級別;軟件環(huán)境;軟件環(huán)境;軟件項目組的技術(shù)及經(jīng)驗;軟件項目組的技術(shù)及經(jīng)驗;應(yīng)用系統(tǒng)的復(fù)雜程度。應(yīng)用系統(tǒng)的復(fù)雜程度。開發(fā)實時嵌入式軟件時開發(fā)實時嵌入式軟件時:P=2000;電信系統(tǒng)和系統(tǒng);電信系統(tǒng)和系統(tǒng)軟件時軟件時:P=10000;商業(yè)應(yīng)用系統(tǒng);商業(yè)應(yīng)用系統(tǒng):P=28000。如果把如果把項目持
13、續(xù)時間延長一些,則可降低完成項目項目持續(xù)時間延長一些,則可降低完成項目所需的工作量。所需的工作量。構(gòu)造性成本模型構(gòu)造性成本模型: COCOMO(COnstructive COst Model) 。1981年年Boehm在在軟件工程經(jīng)濟學(xué)軟件工程經(jīng)濟學(xué)中中首次提出了首次提出了COCOMO模型。模型。1997年年Boehm等人提等人提出的出的COCOMO2,修訂了,修訂了COCOMO。3個層次的軟件開發(fā)工作量估算模型:個層次的軟件開發(fā)工作量估算模型: (1) 應(yīng)用系統(tǒng)組成模型用于估算構(gòu)建原型的工作量。應(yīng)用系統(tǒng)組成模型用于估算構(gòu)建原型的工作量。(2) 早期設(shè)計模型適用于體系結(jié)構(gòu)設(shè)計階段。早期設(shè)計模型
14、適用于體系結(jié)構(gòu)設(shè)計階段。(3)后體系結(jié)構(gòu)模型適用于完成體系結(jié)構(gòu)設(shè)計之后后體系結(jié)構(gòu)模型適用于完成體系結(jié)構(gòu)設(shè)計之后的軟件開發(fā)階段。的軟件開發(fā)階段。13.2.3 COCOMO2模型模型后體系結(jié)構(gòu)模型軟件開發(fā)工作量函數(shù):后體系結(jié)構(gòu)模型軟件開發(fā)工作量函數(shù): E=(13.3)E是開發(fā)工作量(以人月為單位),是開發(fā)工作量(以人月為單位),a是模型系數(shù),是模型系數(shù),KLOC是估計的源代碼行數(shù)(以千行為單位),是估計的源代碼行數(shù)(以千行為單位),b是模型指數(shù),是模型指數(shù),fi(i=117)是成本因素,見下表。是成本因素,見下表。 171iibfKLOCa(1) 新增加了新增加了4個成本因素個成本因素: 要求的可
15、重用性、需要求的可重用性、需要的文檔量、人員連續(xù)性(即人員穩(wěn)定程度)和多要的文檔量、人員連續(xù)性(即人員穩(wěn)定程度)和多地點開發(fā)。地點開發(fā)。(2) 略去了原始模型中的略去了原始模型中的2個成本因素(計算機個成本因素(計算機切換時間和使用現(xiàn)代程序設(shè)計實踐)。切換時間和使用現(xiàn)代程序設(shè)計實踐)。(3) 某些成本因素(分析員能力、平臺經(jīng)驗、語某些成本因素(分析員能力、平臺經(jīng)驗、語言和工具經(jīng)驗)對生產(chǎn)率的影響(即工作量系數(shù)最言和工具經(jīng)驗)對生產(chǎn)率的影響(即工作量系數(shù)最大值與最小值的比率)增加了,另一些成本因素大值與最小值的比率)增加了,另一些成本因素(程序員能力)的影響減小了。(程序員能力)的影響減小了。C
16、OCOMO2采用了更加精細得多的采用了更加精細得多的b分級模型,這分級模型,這個模型使用個模型使用5個分級因素個分級因素Wi(1i5): 劃分成從甚低劃分成從甚低(Wi=5)到特高到特高 (Wi=0)的的6個級別個級別b=(13.4)b的取值范圍為的取值范圍為1.011.26。5個分級因素如下所述:個分級因素如下所述: (1) 項目先例性項目先例性: 該項目的新奇程度。該項目的新奇程度。(2) 開發(fā)靈活性開發(fā)靈活性: 約束多少。約束多少。(3) 風(fēng)險排除度風(fēng)險排除度: 重大風(fēng)險已被消除的比例。重大風(fēng)險已被消除的比例。(4) 項目組凝聚力項目組凝聚力: 開發(fā)人員相互協(xié)作度。開發(fā)人員相互協(xié)作度。(
17、5) 過程成熟度過程成熟度: 按照能力成熟度模型(見按照能力成熟度模型(見13.7節(jié))節(jié)) 5101. 101. 1iiW目的目的: 保證項目按時完成保證項目按時完成影響工期的因素影響工期的因素: 工作量工作量, 資源資源(人力人力,設(shè)備設(shè)備), 項目特點項目特點方法方法: 把項目分解成許多小任務(wù)以利于估計把項目分解成許多小任務(wù)以利于估計, 執(zhí)行執(zhí)行, 監(jiān)控監(jiān)控難點難點: 根據(jù)項目根據(jù)項目, 合理分配任務(wù)合理分配任務(wù), 優(yōu)化使用資源優(yōu)化使用資源, 留有余地留有余地工具工具: 經(jīng)驗?zāi)P徒?jīng)驗?zāi)P? GANTT圖圖, 工程網(wǎng)絡(luò)工程網(wǎng)絡(luò)項目管理者必須定義全部項目任務(wù),識別出關(guān)鍵任務(wù),項目管理者必須定義
18、全部項目任務(wù),識別出關(guān)鍵任務(wù),跟蹤關(guān)鍵任務(wù)的進展?fàn)顩r。跟蹤關(guān)鍵任務(wù)的進展?fàn)顩r。制定一個詳細的進度表,監(jiān)督項目進度并控制整個項目。制定一個詳細的進度表,監(jiān)督項目進度并控制整個項目。13.3 進度計劃進度計劃工期工期 =工作量工作量/人力人力正常情況下正常情況下, 估算開發(fā)時間的模型方程:估算開發(fā)時間的模型方程: (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/3E是開發(fā)工作量(以人月為單位)
19、,是開發(fā)工作量(以人月為單位),T是開發(fā)時間(以月為單位)。是開發(fā)時間(以月為單位)。13.3.1 估算開發(fā)時間估算開發(fā)時間為了縮短開發(fā)時間應(yīng)該增加開發(fā)工作的人數(shù)。為了縮短開發(fā)時間應(yīng)該增加開發(fā)工作的人數(shù)。隨著開發(fā)小組規(guī)模擴大,個人生產(chǎn)率將下降,隨著開發(fā)小組規(guī)模擴大,個人生產(chǎn)率將下降,開發(fā)時間與開發(fā)工作的人數(shù)開發(fā)時間與開發(fā)工作的人數(shù)非簡單反比非簡單反比關(guān)系的兩個關(guān)系的兩個原因:原因: 當(dāng)小組變大時,通信開銷增加了。當(dāng)小組變大時,通信開銷增加了。新成員要額外花費小組其他成員的時間。新成員要額外花費小組其他成員的時間。被稱為被稱為Brooks規(guī)律的下述現(xiàn)象:規(guī)律的下述現(xiàn)象: 向一個已經(jīng)延期向一個已經(jīng)
20、延期的項目增加人力,的項目增加人力,可能可能(只只)會使得它更加延期。會使得它更加延期。項目組規(guī)模與項目組總生產(chǎn)率的關(guān)系。項目組規(guī)模與項目組總生產(chǎn)率的關(guān)系。P名項目組員之間的通信路徑數(shù)名項目組員之間的通信路徑數(shù):MIN= P-1, MAX= P(P-1)/2通信路徑數(shù)大約為通信路徑數(shù)大約為P,其中,其中12。一個組員不與任何人通信時個人生產(chǎn)率為一個組員不與任何人通信時個人生產(chǎn)率為L,每條通信路徑導(dǎo)致生產(chǎn)率減少每條通信路徑導(dǎo)致生產(chǎn)率減少l,組員個人平均生產(chǎn)率為組員個人平均生產(chǎn)率為: Lr=L-l(P-1)r(13.5)其中,其中,r是對通信路徑數(shù)的度量,是對通信路徑數(shù)的度量,0r1規(guī)模為規(guī)模為P
21、的項目組的總生產(chǎn)率為的項目組的總生產(chǎn)率為Ltot=P(L-l(P-1)r)(13.6)對于給定的對于給定的L,l和和r的值,總生產(chǎn)率的值,總生產(chǎn)率Ltot是是P的函數(shù)。的函數(shù)。存在一個最佳的項目組規(guī)模存在一個最佳的項目組規(guī)模Popt,其總生產(chǎn)率最高。,其總生產(chǎn)率最高。Boehm根據(jù)經(jīng)驗指出,軟件項目的開發(fā)時間最多可根據(jù)經(jīng)驗指出,軟件項目的開發(fā)時間最多可以減少到正常開發(fā)時間的以減少到正常開發(fā)時間的75%。 什么是項目網(wǎng)絡(luò)圖?項目網(wǎng)絡(luò)圖是項目的所有活動以及它們之間邏輯關(guān)系或排序的圖形顯示。 項目網(wǎng)絡(luò)圖是活動排序的輸出,它有以下作用:(1)能表示項目活動,并表示活動之間的依賴關(guān)系。(2)表明項目活動
22、將以什么順序繼續(xù)。(3)在進行工期估計時,表明項目將需要多長時間。(4)當(dāng)改變某項活動工期時,表明項目工期將如何變化。 項目網(wǎng)絡(luò)圖有兩種表示形式:(1)前導(dǎo)圖法(PDM:Precedence Diagramming Method)(2)箭線圖法(ADM:Arrow Diagramming Method)甲項目中包含的活動清單、各個活動的歷時以及活動間的依賴關(guān)系如下:各活動的依賴關(guān)系:各活動的依賴關(guān)系: A、B、C可以同時開始; D必須在A完成后開始; E、F必須在B完成后開始; G必須在C完成后開始; H必須在D、E完成后開始; I必須在G完成后開始; J必須在F、H、I完成后開 始?;顒託v時
23、估計是根據(jù)任務(wù)分解中定義的項目活動和項目活動清單來估計完成這些項目所需要的工期。工期包括一項活動所消耗的實際工作時間 加上間歇時間。在活動定義、活動排序、和活動歷時估計的基礎(chǔ)上,綜合各個項目活動的開始和結(jié)束日期、最終的活動順序以及工期來確定項目的總體進度計劃。 甘特圖甘特圖,通過日歷形式列出項目活動及其相 應(yīng)的開始和結(jié)束日期,它為反映項目進度信 息提供了一種標(biāo)準(zhǔn)形式。下圖是用下圖是用PROJECTPROJECT制作的甲項目的最簡單的一個甘特圖制作的甲項目的最簡單的一個甘特圖早期的甘特圖的最大缺點是通常不反映依賴關(guān)系,早期的甘特圖的最大缺點是通常不反映依賴關(guān)系,但是如果在但是如果在Project
24、Project上建立了依賴關(guān)系,這種依賴關(guān)系會自動上建立了依賴關(guān)系,這種依賴關(guān)系會自動顯示在甘特圖上。顯示在甘特圖上。 使用項目管理軟件可以創(chuàng)建更為復(fù)雜的甘特圖使用項目管理軟件可以創(chuàng)建更為復(fù)雜的甘特圖 跟蹤甘特圖可以用來評價項目的進展跟蹤甘特圖可以用來評價項目的進展注意:任務(wù)用兩種水平橫線表示。下部表示計劃歷史(基準(zhǔn)計劃歷史);上部表示實際歷史。由于跟蹤甘特圖是建立在實際開始與完成日期的基礎(chǔ)之上,將計劃與實際的項目進度信息進行比較,所以,項目經(jīng)理可以用它來監(jiān)控單個任務(wù)和整體項目的進展情況。甘特圖與網(wǎng)絡(luò)圖的比較l 甘特圖甘特圖在進度報告中很有效在進度報告中很有效在作管理陳述時易于讀懂和使用。在作
25、管理陳述時易于讀懂和使用。作為計劃編制工具不是太強。作為計劃編制工具不是太強。沒有表示活動間的邏輯關(guān)系。沒有表示活動間的邏輯關(guān)系。l 網(wǎng)絡(luò)圖網(wǎng)絡(luò)圖表明活動和事件間的相互關(guān)系。表明活動和事件間的相互關(guān)系。識別關(guān)鍵路徑,項目歷程和活動排序。識別關(guān)鍵路徑,項目歷程和活動排序。表明工作流程。表明工作流程。幫助編制計劃和組織工作。幫助編制計劃和組織工作。 查找關(guān)鍵路徑實例: 使用箭線圖來確定關(guān)鍵路徑。 使用前導(dǎo)圖來確定關(guān)鍵路徑。單個軟件開發(fā)人員無法在給定期限內(nèi)完成軟件項目,單個軟件開發(fā)人員無法在給定期限內(nèi)完成軟件項目,因此,必須把多名軟件開發(fā)人員合理地組織起來,因此,必須把多名軟件開發(fā)人員合理地組織起來
26、,使他們有效地分工協(xié)作共同完成開發(fā)工作。使他們有效地分工協(xié)作共同完成開發(fā)工作。3種典型的組織方式種典型的組織方式: 民主制程序員組、主程序員民主制程序員組、主程序員組和現(xiàn)代程序員組。組和現(xiàn)代程序員組。13.4 人員組織人員組織民主制程序員組民主制程序員組: 小組成員完全平等小組成員完全平等, 通信信道共有通信信道共有n(n-1)/2條。條。程序設(shè)計小組的規(guī)模應(yīng)該以程序設(shè)計小組的規(guī)模應(yīng)該以28名成員為宜。名成員為宜。優(yōu)點優(yōu)點: 組員們對發(fā)現(xiàn)程序錯誤持積極的態(tài)度,這種組員們對發(fā)現(xiàn)程序錯誤持積極的態(tài)度,這種態(tài)度有助于更快速地發(fā)現(xiàn)錯誤,從而導(dǎo)致高質(zhì)量的態(tài)度有助于更快速地發(fā)現(xiàn)錯誤,從而導(dǎo)致高質(zhì)量的代碼。
27、代碼。缺點:缺點: 由于沒有明確的權(quán)威指導(dǎo)開發(fā)工程的進行由于沒有明確的權(quán)威指導(dǎo)開發(fā)工程的進行,組員間將缺乏必要的協(xié)調(diào)組員間將缺乏必要的協(xié)調(diào),最終可能導(dǎo)致工程失敗。最終可能導(dǎo)致工程失敗。13.4.1 民主制程序員組民主制程序員組IBM公司公司20世紀世紀70年代初期開始采用年代初期開始采用, 幾點考慮:幾點考慮: (1) 軟件開發(fā)人員多數(shù)比較缺乏經(jīng)驗;軟件開發(fā)人員多數(shù)比較缺乏經(jīng)驗;(2) 程序設(shè)計過程中有許多事務(wù)性的工作,例如,程序設(shè)計過程中有許多事務(wù)性的工作,例如,大量信息的存儲和更新;大量信息的存儲和更新;(3) 多渠道通信很費時間,將降低程序員的生產(chǎn)率。多渠道通信很費時間,將降低程序員的生
28、產(chǎn)率。用經(jīng)驗多、技術(shù)好、能力強的程序員作為主程序員,用經(jīng)驗多、技術(shù)好、能力強的程序員作為主程序員,同時,組內(nèi)分工,給主程序員提供充分支持,所有同時,組內(nèi)分工,給主程序員提供充分支持,所有通信都通過一兩個人進行。通信都通過一兩個人進行。13.4.2 主程序員組主程序員組主程序員組的兩個重要特性:主程序員組的兩個重要特性: (1) 專業(yè)化。成員完成受過專業(yè)訓(xùn)練的工作。專業(yè)化。成員完成受過專業(yè)訓(xùn)練的工作。(2) 層次性。主程序員全面負責(zé)。層次性。主程序員全面負責(zé)。組織形式如圖組織形式如圖13.5所示。所示。問題:問題:主程序員具備兩方面的才能,這樣的人才不多。主程序員具備兩方面的才能,這樣的人才不多
29、。后備程序員更難找。后備程序員更難找。編程秘書也很難找到。編程秘書也很難找到?!爸鞒绦騿T主程序員”由兩個人擔(dān)任:由兩個人擔(dān)任: 一個負責(zé)小組的技一個負責(zé)小組的技術(shù);一個負責(zé)管理決策。術(shù);一個負責(zé)管理決策。13.4.3 現(xiàn)代程序員組現(xiàn)代程序員組當(dāng)軟件項目規(guī)模較大時,應(yīng)該把程序員分成若干個當(dāng)軟件項目規(guī)模較大時,應(yīng)該把程序員分成若干個小組,采用圖小組,采用圖13.7所示的組織結(jié)構(gòu)。所示的組織結(jié)構(gòu)。該圖描繪的是技術(shù)管理組織結(jié)構(gòu),非技術(shù)管理組織該圖描繪的是技術(shù)管理組織結(jié)構(gòu),非技術(shù)管理組織結(jié)構(gòu)與此類似。結(jié)構(gòu)與此類似。由圖可以看出,產(chǎn)品開發(fā)作為一個整體是在項目經(jīng)由圖可以看出,產(chǎn)品開發(fā)作為一個整體是在項目經(jīng)理
30、的指導(dǎo)下進行的,程序員向他們的組長匯報工作,理的指導(dǎo)下進行的,程序員向他們的組長匯報工作,而組長則向項目經(jīng)理匯報工作。而組長則向項目經(jīng)理匯報工作。當(dāng)產(chǎn)品規(guī)模更大時,可以適當(dāng)增加中間管理層次。當(dāng)產(chǎn)品規(guī)模更大時,可以適當(dāng)增加中間管理層次。圖圖13.7 大型項目的技術(shù)管理組織結(jié)構(gòu)大型項目的技術(shù)管理組織結(jié)構(gòu)軟件質(zhì)量就是軟件質(zhì)量就是“軟件與明確地和隱含地定義的需求軟件與明確地和隱含地定義的需求相一致的程度相一致的程度”:(1)軟件需求是度量軟件質(zhì)量的基礎(chǔ)。)軟件需求是度量軟件質(zhì)量的基礎(chǔ)。(2)有沒有顯式描述的隱含需求。)有沒有顯式描述的隱含需求。(3)不遵守一組指導(dǎo)軟件開發(fā)的準(zhǔn)則,會導(dǎo)致軟)不遵守一組指
31、導(dǎo)軟件開發(fā)的準(zhǔn)則,會導(dǎo)致軟件質(zhì)量不高。件質(zhì)量不高。13.5 質(zhì)量保證質(zhì)量保證 13.5.1 軟件質(zhì)量軟件質(zhì)量圖圖13.9 軟件質(zhì)量因素軟件質(zhì)量因素軟件質(zhì)量保證(軟件質(zhì)量保證(software quality assurance,SQA)的措施主要有:的措施主要有:技術(shù)復(fù)審技術(shù)復(fù)審和測試。和測試。兩類參加軟件質(zhì)量保證工作的人員:兩類參加軟件質(zhì)量保證工作的人員: 軟件工程師通過采用先進的技術(shù)方法和度量,進行軟件工程師通過采用先進的技術(shù)方法和度量,進行正式的技術(shù)復(fù)審以及完成軟件測試來保證軟件質(zhì)量。正式的技術(shù)復(fù)審以及完成軟件測試來保證軟件質(zhì)量。SQA小組的職責(zé),是輔助軟件工程師以獲得高質(zhì)量小組的職責(zé),
32、是輔助軟件工程師以獲得高質(zhì)量的軟件產(chǎn)品。其從事的軟件質(zhì)量保證活動主要是:的軟件產(chǎn)品。其從事的軟件質(zhì)量保證活動主要是: 計劃,監(jiān)督,記錄,分析和報告。計劃,監(jiān)督,記錄,分析和報告。確保軟件過程的質(zhì)量來保證軟件產(chǎn)品的質(zhì)量。確保軟件過程的質(zhì)量來保證軟件產(chǎn)品的質(zhì)量。13.5.2 軟件質(zhì)量保證措施軟件質(zhì)量保證措施1. 技術(shù)復(fù)審的必要性技術(shù)復(fù)審的必要性較早發(fā)現(xiàn)錯誤,防止被傳播到軟件過程的后續(xù)階段。較早發(fā)現(xiàn)錯誤,防止被傳播到軟件過程的后續(xù)階段。大型軟件產(chǎn)品中檢測出的錯誤,大型軟件產(chǎn)品中檢測出的錯誤,60%70%屬于規(guī)屬于規(guī)格說明錯誤或設(shè)計錯誤,而正式技術(shù)復(fù)審在發(fā)現(xiàn)規(guī)格說明錯誤或設(shè)計錯誤,而正式技術(shù)復(fù)審在發(fā)現(xiàn)
33、規(guī)格說明錯誤和設(shè)計錯誤方面的有效性高達格說明錯誤和設(shè)計錯誤方面的有效性高達75%。正式技術(shù)復(fù)審包括走查(正式技術(shù)復(fù)審包括走查(walkthrough)和審查和審查(inspection)。)。走查的步驟比審查少,而且沒有審查正規(guī)。走查的步驟比審查少,而且沒有審查正規(guī)。2. 走查走查成員組成成員組成(走查規(guī)格說明的小組為例走查規(guī)格說明的小組為例):一名負責(zé)起草規(guī)格說明的人,一名負責(zé)起草規(guī)格說明的人,一名負責(zé)該規(guī)格說明的管理員,一名負責(zé)該規(guī)格說明的管理員,一位客戶代表,一位客戶代表,一名下階段開發(fā)組代表一名下階段開發(fā)組代表一名一名SQA小組代表小組代表(組長組長)。走查組成員最好是經(jīng)驗豐富的高級技
34、術(shù)人員。走查組成員最好是經(jīng)驗豐富的高級技術(shù)人員。必須把被走查的材料預(yù)先分發(fā)給走查組每位成員。必須把被走查的材料預(yù)先分發(fā)給走查組每位成員。走查組成員應(yīng)該仔細研究材料并列出兩張表:走查組成員應(yīng)該仔細研究材料并列出兩張表: 一張表是不理解的術(shù)語,一張表是不理解的術(shù)語,一張是認為不正確的術(shù)語。一張是認為不正確的術(shù)語。走查組的任務(wù)僅僅是標(biāo)記出錯誤而不是改正錯誤。走查組的任務(wù)僅僅是標(biāo)記出錯誤而不是改正錯誤。走查主要有下述兩種方式:走查主要有下述兩種方式: (1) 參與者驅(qū)動法。參與者提出他們不理解的術(shù)參與者驅(qū)動法。參與者提出他們不理解的術(shù)語和認為不正確的術(shù)語。文檔編寫組的代表必須回語和認為不正確的術(shù)語。文
35、檔編寫組的代表必須回答每個質(zhì)疑,要么承認確實有錯誤,要么對質(zhì)疑做答每個質(zhì)疑,要么承認確實有錯誤,要么對質(zhì)疑做出解釋。出解釋。(2) 文檔驅(qū)動法。文檔編寫者向走查組成員仔細文檔驅(qū)動法。文檔編寫者向走查組成員仔細解釋文檔。走查組成員針對事先準(zhǔn)備好的問題或解解釋文檔。走查組成員針對事先準(zhǔn)備好的問題或解釋過程中發(fā)現(xiàn)的問題提出質(zhì)疑。釋過程中發(fā)現(xiàn)的問題提出質(zhì)疑。3. 審查審查審查的范圍比走查廣,包括下述審查的范圍比走查廣,包括下述5個基本步驟:個基本步驟: (1) 綜述。編寫文檔的一名成員向?qū)彶榻M綜述該綜述。編寫文檔的一名成員向?qū)彶榻M綜述該文檔。在綜述會結(jié)束時把文檔分發(fā)給每位與會者。文檔。在綜述會結(jié)束時把
36、文檔分發(fā)給每位與會者。(2) 準(zhǔn)備。評審員仔細閱讀文檔。列出在審查中準(zhǔn)備。評審員仔細閱讀文檔。列出在審查中發(fā)現(xiàn)的錯誤的類型,頻率,分級。發(fā)現(xiàn)的錯誤的類型,頻率,分級。(3) 審查。評審組仔細走查整個文檔。審查組組審查。評審組仔細走查整個文檔。審查組組長應(yīng)該在一天之內(nèi)寫出一份關(guān)于審查的報告。長應(yīng)該在一天之內(nèi)寫出一份關(guān)于審查的報告。(4) 返工。文檔的作者負責(zé)解決在審查報告中列返工。文檔的作者負責(zé)解決在審查報告中列出的所有錯誤及問題。出的所有錯誤及問題。(5) 跟蹤。組長必須確保所提出的每個問題都得跟蹤。組長必須確保所提出的每個問題都得到了圓滿的解決。到了圓滿的解決。4. 程序正確性證明程序正確性
37、證明即使有程序正確性證明,軟件測試也仍然是需要的:即使有程序正確性證明,軟件測試也仍然是需要的:正確性證明過程本身也可能發(fā)生錯誤。正確性證明過程本身也可能發(fā)生錯誤。程序正確性證明,對于評價小程序有價值。程序正確性證明,對于評價小程序有價值。還不能實際用于大型程序的正確性證明。還不能實際用于大型程序的正確性證明。正確性證明的基本思想是證明程序能完成預(yù)定的功正確性證明的基本思想是證明程序能完成預(yù)定的功能。能。假設(shè)在程序的假設(shè)在程序的P1,P2,,Pn等點上的斷言分別是等點上的斷言分別是a(1),a(2),a(n),其中,其中a(1)必須是關(guān)于程序輸入必須是關(guān)于程序輸入的斷言,的斷言,a(n)必須是
38、關(guān)于程序輸出的斷言。必須是關(guān)于程序輸出的斷言。為了證明在點為了證明在點Pi和和Pi+1之間的程序語句是正確的,之間的程序語句是正確的,只須證明若斷言只須證明若斷言a(i)為真且執(zhí)行這些語句之后將使為真且執(zhí)行這些語句之后將使a(i+1)為真。為真。如果對所有數(shù)據(jù)輸入斷言為真時,能對程序內(nèi)所有如果對所有數(shù)據(jù)輸入斷言為真時,能對程序內(nèi)所有相鄰點都能完成上述證明過程,而且程序總可以終相鄰點都能完成上述證明過程,而且程序總可以終止的,則證明了程序的正確性。止的,則證明了程序的正確性。變化是不可避免的變化是不可避免的, 必須控制和管理變化。必須控制和管理變化。軟件配置管理軟件配置管理: 用于管理變化的軟件
39、質(zhì)量保證活動。用于管理變化的軟件質(zhì)量保證活動。軟件配置管理在整個生命期內(nèi)管理變化:軟件配置管理在整個生命期內(nèi)管理變化: 標(biāo)識標(biāo)識變化;變化; 控制變化;控制變化; 確保適當(dāng)?shù)貙崿F(xiàn)了變化;確保適當(dāng)?shù)貙崿F(xiàn)了變化; 向需要知道這類信息的人報告變化。向需要知道這類信息的人報告變化。軟件配置管理的目標(biāo):使變化更正確更容易被實現(xiàn)。軟件配置管理的目標(biāo):使變化更正確更容易被實現(xiàn)。保證每個軟件配置項正確,保證每個軟件配置項正確,保證一個軟件的所有配置項是完全一致的。保證一個軟件的所有配置項是完全一致的。13.6 軟件配置管理軟件配置管理1. 軟件配置項軟件配置項軟件過程的輸出信息可以分為軟件過程的輸出信息可以分
40、為3類:類: 計算機程序(源代碼和可執(zhí)行程序);計算機程序(源代碼和可執(zhí)行程序); 計算機程序的文檔(供技術(shù)人員或用戶使用);計算機程序的文檔(供技術(shù)人員或用戶使用); 數(shù)據(jù)(程序內(nèi)包含的或在程序外的)。數(shù)據(jù)(程序內(nèi)包含的或在程序外的)。 我們把它們統(tǒng)稱為軟件配置,而這些項就是軟件配我們把它們統(tǒng)稱為軟件配置,而這些項就是軟件配置項(置項(ITEM=元素)。元素)。13.6.1 軟件配置軟件配置2. 基線基線(Baseline, 里程碑里程碑)IEEE把基線定義為:把基線定義為: 已經(jīng)通過了正式復(fù)審的規(guī)格已經(jīng)通過了正式復(fù)審的規(guī)格說明或中間產(chǎn)品,它可以作為進一步開發(fā)的基礎(chǔ),說明或中間產(chǎn)品,它可以作
41、為進一步開發(fā)的基礎(chǔ),并且只有通過正式的變化控制過程才能改變它。并且只有通過正式的變化控制過程才能改變它。軟件工具也應(yīng)置于配置管理之下:編輯器、編譯器軟件工具也應(yīng)置于配置管理之下:編輯器、編譯器和其他和其他CASE工具。工具。不同版本的工具產(chǎn)生的結(jié)果不同。不同版本的工具產(chǎn)生的結(jié)果不同。軟件配置管理主要有軟件配置管理主要有5項任務(wù):項任務(wù): 標(biāo)識、版本控制、標(biāo)識、版本控制、變化控制、配置審計和報告。變化控制、配置審計和報告。1. 標(biāo)識軟件配置中的對象標(biāo)識軟件配置中的對象命名每個配置項。兩類對象:命名每個配置項。兩類對象: 基本和聚集對象?;竞途奂瘜ο??;緦ο笫擒浖こ處熢诜治觥⒃O(shè)計、編碼或測試
42、基本對象是軟件工程師在分析、設(shè)計、編碼或測試過程中創(chuàng)建出來的過程中創(chuàng)建出來的“文本單元文本單元” 。聚集對象是基本對象和其他聚集對象的集合。聚集對象是基本對象和其他聚集對象的集合。每個對象都有一組能惟一地標(biāo)識它的特征:每個對象都有一組能惟一地標(biāo)識它的特征: 名字、名字、描述、版本。描述、版本。13.6.2 軟件配置管理過程軟件配置管理過程2. 版本控制版本控制版本控制管理軟件配置對象的不同版本。版本控制管理軟件配置對象的不同版本。用戶能夠通過選擇版本來指定軟件的配置。用戶能夠通過選擇版本來指定軟件的配置。屬性和軟件的每個版本相關(guān)聯(lián)。屬性和軟件的每個版本相關(guān)聯(lián)。描述一組所期望的屬性來指定和構(gòu)造所
43、需要的配置。描述一組所期望的屬性來指定和構(gòu)造所需要的配置。“屬性屬性”,既可以是配置對象的版本號,也可以復(fù),既可以是配置對象的版本號,也可以復(fù)雜到是一個布爾變量串。雜到是一個布爾變量串。3. 變化控制變化控制變化控制過程在維護一章講過。變化控制過程在維護一章講過。批準(zhǔn)的變化生成一個批準(zhǔn)的變化生成一個“工程變化命令工程變化命令” 描述將要描述將要實現(xiàn)的變化。實現(xiàn)的變化。把要修改的對象從項目數(shù)據(jù)庫中把要修改的對象從項目數(shù)據(jù)庫中“提?。ㄌ崛。╟heck out)”出來,進行修改。出來,進行修改。把修改后的對象把修改后的對象“提交(提交(check in)”進數(shù)據(jù)庫,進數(shù)據(jù)庫,并創(chuàng)建該軟件的下一個版本
44、。并創(chuàng)建該軟件的下一個版本。變化控制的兩個主要功能變化控制的兩個主要功能:訪問控制決定軟件工程師有權(quán)訪問和修改一個特訪問控制決定軟件工程師有權(quán)訪問和修改一個特定的配置對象定的配置對象同步控制有助于保證由兩名不同的軟件工程師完同步控制有助于保證由兩名不同的軟件工程師完成的并行修改不會相互覆蓋。成的并行修改不會相互覆蓋。4. 配置審計配置審計兩方面采取措施確保適當(dāng)?shù)貙崿F(xiàn)了所需要的變化:兩方面采取措施確保適當(dāng)?shù)貙崿F(xiàn)了所需要的變化: 正式的技術(shù)復(fù)審;正式的技術(shù)復(fù)審; 軟件配置審計。軟件配置審計。正式的技術(shù)復(fù)審(見正式的技術(shù)復(fù)審(見13.5.2節(jié))關(guān)注被修改后的配節(jié))關(guān)注被修改后的配置對象的技術(shù)正確性。
45、置對象的技術(shù)正確性。軟件配置審計通過評估配置對象的那些通常不在復(fù)軟件配置審計通過評估配置對象的那些通常不在復(fù)審過程中考慮的特征(例如,修改時是否遵循了軟審過程中考慮的特征(例如,修改時是否遵循了軟件工程標(biāo)準(zhǔn),是否在該配置項中顯著地標(biāo)明了所做件工程標(biāo)準(zhǔn),是否在該配置項中顯著地標(biāo)明了所做的修改,是否注明了修改日期和修改者,是否適當(dāng)?shù)男薷模欠褡⒚髁诵薷娜掌诤托薷恼?,是否適當(dāng)?shù)馗铝怂邢嚓P(guān)的軟件配置項,地更新了所有相關(guān)的軟件配置項,是否遵循了標(biāo)注是否遵循了標(biāo)注變化、記錄變化和報告變化的規(guī)程變化、記錄變化和報告變化的規(guī)程),而成為對正),而成為對正式技術(shù)復(fù)審的補充。式技術(shù)復(fù)審的補充。5. 狀態(tài)報告狀
46、態(tài)報告配置狀態(tài)報告回答下述問題:配置狀態(tài)報告回答下述問題: 發(fā)生了什么事?發(fā)生了什么事? 誰做的這件事?誰做的這件事?這件事是什么時候發(fā)生的?這件事是什么時候發(fā)生的?它將影響哪些其他事物?它將影響哪些其他事物?配置狀態(tài)改善所有相關(guān)人員之間的通信,消除沖突,配置狀態(tài)改善所有相關(guān)人員之間的通信,消除沖突, 避免重復(fù),提高效率。避免重復(fù),提高效率。美國卡內(nèi)基梅隆大學(xué)軟件工程研究所在美國國防部美國卡內(nèi)基梅隆大學(xué)軟件工程研究所在美國國防部資助下于資助下于20世紀世紀80年代末建立的能力成熟度模型年代末建立的能力成熟度模型(capability maturity model,CMM),是用于評價,是用于評
47、價軟件機構(gòu)的軟件過程能力成熟度的模型。最初,建軟件機構(gòu)的軟件過程能力成熟度的模型。最初,建立此模型的目的主要是,為大型軟件項目的招投標(biāo)立此模型的目的主要是,為大型軟件項目的招投標(biāo)活動提供一種全面而客觀的評審依據(jù),發(fā)展到后來,活動提供一種全面而客觀的評審依據(jù),發(fā)展到后來,此模型又同時被應(yīng)用于許多軟件機構(gòu)內(nèi)部的過程改此模型又同時被應(yīng)用于許多軟件機構(gòu)內(nèi)部的過程改進活動中。進活動中。13.7 能力成熟度模型能力成熟度模型改進對軟件過程的管理是消除軟件危機的突破口,改進對軟件過程的管理是消除軟件危機的突破口,比采用先進的技術(shù)和工具更重要。比采用先進的技術(shù)和工具更重要。能力成熟度模型的基本思想:能力成熟度
48、模型的基本思想:通過建立成熟的優(yōu)化的軟件過程,提高軟件的生產(chǎn)通過建立成熟的優(yōu)化的軟件過程,提高軟件的生產(chǎn)率和質(zhì)量。而技術(shù)的改進是軟件過程改進的結(jié)果。率和質(zhì)量。而技術(shù)的改進是軟件過程改進的結(jié)果。CMM的作用:指導(dǎo)軟件機構(gòu)通過確定當(dāng)前的過程的作用:指導(dǎo)軟件機構(gòu)通過確定當(dāng)前的過程成熟度并識別出對過程改進起關(guān)鍵作用的問題,進成熟度并識別出對過程改進起關(guān)鍵作用的問題,進而穩(wěn)步而有效地改進其軟件過程,提高成熟度,使而穩(wěn)步而有效地改進其軟件過程,提高成熟度,使其軟件過程能力得到循序漸進的提高。其軟件過程能力得到循序漸進的提高。CMM把軟件過程從無序到優(yōu)化的進化過程分成把軟件過程從無序到優(yōu)化的進化過程分成5個
49、個有序的階段,用以測量軟件機構(gòu)的軟件過程成熟度有序的階段,用以測量軟件機構(gòu)的軟件過程成熟度和評價其軟件過程能力,這些等級還能幫助軟件機和評價其軟件過程能力,這些等級還能幫助軟件機構(gòu)把應(yīng)做的改進工作排出優(yōu)先次序。構(gòu)把應(yīng)做的改進工作排出優(yōu)先次序。CMM對對5個成熟度級別特性的描述,說明了不同級個成熟度級別特性的描述,說明了不同級別之間軟件過程的主要變化。別之間軟件過程的主要變化。從從“1級級”到到“5級級”,反映出從混亂到成熟的軟件,反映出從混亂到成熟的軟件過程必須經(jīng)歷的過程改進途徑。過程必須經(jīng)歷的過程改進途徑。CMM的每個成熟度級別中都包含一組過程改進的的每個成熟度級別中都包含一組過程改進的目標(biāo)
50、,滿足這些目標(biāo)后一個機構(gòu)的軟件過程就從當(dāng)目標(biāo),滿足這些目標(biāo)后一個機構(gòu)的軟件過程就從當(dāng)前級別進化到下一個成熟度級別。前級別進化到下一個成熟度級別。CMM不提供做這些改進的具體措施。不提供做這些改進的具體措施。軟件工程71過程變更管理過程變更管理 PCM技術(shù)變更管理技術(shù)變更管理 TCM缺陷預(yù)防缺陷預(yù)防 DP軟件配置管理軟件配置管理 SCM軟件質(zhì)量保證軟件質(zhì)量保證 SQA軟件子合同管理軟件子合同管理 SSM軟件項目追蹤與監(jiān)督軟件項目追蹤與監(jiān)督 SPTO軟件項目策劃軟件項目策劃 SPP需求管理需求管理 RM軟件產(chǎn)品工程軟件產(chǎn)品工程 SPE集成軟件管理集成軟件管理 ISM培訓(xùn)大綱培訓(xùn)大綱 TP組織過程定
51、義組織過程定義 OPD組織過程焦點組織過程焦點 OPF同行評審?fù)性u審 PR組間協(xié)調(diào)組間協(xié)調(diào) IC軟件質(zhì)量管理軟件質(zhì)量管理 SQM定量定量 過程管理過程管理 QPM規(guī)范化過程規(guī)范化過程標(biāo)準(zhǔn)化過程標(biāo)準(zhǔn)化過程可預(yù)測過程可預(yù)測過程持續(xù)改進過程持續(xù)改進過程個別過程個別過程 2 級級(可重復(fù)級)(可重復(fù)級) 3 級級(已定義級)(已定義級) 4 級級(已管理級)(已管理級) 5 級級(優(yōu)化級)(優(yōu)化級) 1 級(初始級)級(初始級)單擊此處編輯母版標(biāo)題樣式單擊此處編輯母版標(biāo)題樣式 單擊此處編輯母版副標(biāo)題樣式單擊此處編輯母版副標(biāo)題樣式軟件工程72 關(guān)鍵過程域分類關(guān)鍵過程域分類5 優(yōu)化級優(yōu)化級過程變更管理過
52、程變更管理4 可管理級可管理級需求管理需求管理軟件項目策劃軟件項目策劃軟件項目跟蹤與監(jiān)控軟件項目跟蹤與監(jiān)控軟件子合同管理軟件子合同管理軟件質(zhì)量保證軟件質(zhì)量保證軟件配置管理軟件配置管理過程分類過程分類機構(gòu)的過程機構(gòu)的過程管理過程管理過程缺陷預(yù)防缺陷預(yù)防軟件質(zhì)量管理軟件質(zhì)量管理整體化軟件管理整體化軟件管理組間協(xié)調(diào)組間協(xié)調(diào)組織過程關(guān)注組織過程關(guān)注組織過程定義組織過程定義培訓(xùn)規(guī)劃培訓(xùn)規(guī)劃無序過程無序過程定量過程管理定量過程管理3 可定義級可定義級2 可重復(fù)級可重復(fù)級1 初始級初始級工程的過程工程的過程軟件產(chǎn)品工程軟件產(chǎn)品工程同行評審?fù)性u審技術(shù)變更管理技術(shù)變更管理1. 初始級初始級軟件過程的特征是無序
53、的,甚至是混亂的。幾乎沒軟件過程的特征是無序的,甚至是混亂的。幾乎沒有什么過程是經(jīng)過定義的(即沒有一個定型的過程有什么過程是經(jīng)過定義的(即沒有一個定型的過程模型),項目能否成功隨機性很大。模型),項目能否成功隨機性很大。沒有健全的軟件工程管理制度。沒有健全的軟件工程管理制度。延期交付和費用超支的情況經(jīng)常發(fā)生,大多數(shù)行動延期交付和費用超支的情況經(jīng)常發(fā)生,大多數(shù)行動只是應(yīng)付危機,而不是完成計劃好的任務(wù)。只是應(yīng)付危機,而不是完成計劃好的任務(wù)。處于處于1級成熟度的軟件機構(gòu),其過程能力是不可預(yù)級成熟度的軟件機構(gòu),其過程能力是不可預(yù)測的,其軟件過程是不穩(wěn)定的,產(chǎn)品質(zhì)量只能根據(jù)測的,其軟件過程是不穩(wěn)定的,產(chǎn)
54、品質(zhì)量只能根據(jù)相關(guān)人員的個人工作能力而不是軟件機構(gòu)的過程能相關(guān)人員的個人工作能力而不是軟件機構(gòu)的過程能力來預(yù)測。力來預(yù)測。2. 可重復(fù)級可重復(fù)級建立了基本的項目管理過程建立了基本的項目管理過程(過程模型過程模型), 可跟蹤成可跟蹤成本、進度、功能和質(zhì)量。對新項目的策劃和管理過本、進度、功能和質(zhì)量。對新項目的策劃和管理過程是基于以前類似項目的實踐經(jīng)驗。程是基于以前類似項目的實踐經(jīng)驗。已經(jīng)制定了項目標(biāo)準(zhǔn),并且軟件機構(gòu)能確保嚴格執(zhí)已經(jīng)制定了項目標(biāo)準(zhǔn),并且軟件機構(gòu)能確保嚴格執(zhí)行這些標(biāo)準(zhǔn)。項目組與客戶及承包商已經(jīng)建立起一行這些標(biāo)準(zhǔn)。項目組與客戶及承包商已經(jīng)建立起一個穩(wěn)定的工作環(huán)境。個穩(wěn)定的工作環(huán)境。過程
55、能力可以概括為過程能力可以概括為: 軟件項目的策劃和跟蹤是穩(wěn)軟件項目的策劃和跟蹤是穩(wěn)定的,已經(jīng)為一個有紀律的管理過程提供了可重復(fù)定的,已經(jīng)為一個有紀律的管理過程提供了可重復(fù)以前成功實踐的項目環(huán)境。以前成功實踐的項目環(huán)境。3. 已定義級已定義級軟件機構(gòu)已經(jīng)定義了完整的軟件過程(過程模型),軟件機構(gòu)已經(jīng)定義了完整的軟件過程(過程模型),軟件過程已經(jīng)文檔化和標(biāo)準(zhǔn)化。軟件過程已經(jīng)文檔化和標(biāo)準(zhǔn)化。有一個固定的過程小組從事軟件過程工程活動。有一個固定的過程小組從事軟件過程工程活動。過程小組可以利用過程模型進行過程例化活動,從過程小組可以利用過程模型進行過程例化活動,從而獲得一個針對某個特定的軟件項目的過程實例。而獲得一個針對某個特定的軟件項目的過程實例。過程小組還可以推進軟件機構(gòu)的過程改進活動。實過程小組還可以推進軟件機構(gòu)的過程改進活動。實施了培訓(xùn)計劃,能夠保證全體項目負責(zé)人和項目開施了培訓(xùn)計劃,能夠保證全體項目負責(zé)人和項目開發(fā)人員具有完成承擔(dān)的任務(wù)所要求的知識和技能。發(fā)人員具有完成承擔(dān)的任務(wù)所要求的知識和技能。過程能力可以概括為過程能力可以概括為: 無論是管理活動還是工程活
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024門禁工程合同
- 2024閘門采購合同模板大全
- 2024榨菜種植與農(nóng)業(yè)電商人才培訓(xùn)合作合同3篇
- 2025年度文化旅游代理股權(quán)轉(zhuǎn)讓及項目運營合同4篇
- 2025年度智能社區(qū)視頻監(jiān)控系統(tǒng)工程承包協(xié)議4篇
- 2025年度應(yīng)急物流承運商合作協(xié)議范本4篇
- 2024音樂制作合同:錄音工作室合同范本版B版
- 2025年度桉樹苗木線上線下融合發(fā)展合同3篇
- 2025年度知識產(chǎn)權(quán)運營丨合伙人共同運營專利技術(shù)的合同4篇
- 2024舞臺建設(shè)施工合同協(xié)議書
- 2024版智慧電力解決方案(智能電網(wǎng)解決方案)
- 公司SWOT分析表模板
- 小學(xué)預(yù)防流行性感冒應(yīng)急預(yù)案
- 肺癌術(shù)后出血的觀察及護理
- 聲紋識別簡介
- 生物醫(yī)藥大數(shù)據(jù)分析平臺建設(shè)-第1篇
- 基于Android的天氣預(yù)報系統(tǒng)的設(shè)計與實現(xiàn)
- 沖鋒舟駕駛培訓(xùn)課件
- 美術(shù)家協(xié)會會員申請表
- 聚合收款服務(wù)流程
- 中石化浙江石油分公司中石化溫州靈昆油庫及配套工程項目環(huán)境影響報告書
評論
0/150
提交評論