




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
第11章軟件項(xiàng)目管理
軟件項(xiàng)目管理概述軟件項(xiàng)目規(guī)模度量軟件項(xiàng)目估算項(xiàng)目進(jìn)度管理項(xiàng)目風(fēng)險管理軟件配置管理項(xiàng)目人員組織管理軟件能力成熟度模型11.1軟件項(xiàng)目管理概述軟件項(xiàng)目管理的特點(diǎn)
軟件項(xiàng)目有它自身的特點(diǎn),它是針對人的知識、智力開發(fā)活動而進(jìn)行的管理。在整個軟件開發(fā)活動進(jìn)程中,需要對思想、架構(gòu)、概念、算法、流程、邏輯、效率和優(yōu)化等各項(xiàng)抽象因素進(jìn)行綜合管理,因而使得軟件管理的過程更為復(fù)雜和難以控制。軟件項(xiàng)目管理的特點(diǎn)體現(xiàn)在:⑴軟件項(xiàng)目的產(chǎn)品是抽象的邏輯產(chǎn)品,難以用尺寸、重量、體積、外觀等物理實(shí)體標(biāo)準(zhǔn)來衡量和評價,難以制定軟件產(chǎn)品的質(zhì)量評價體系。⑵軟件產(chǎn)品的生產(chǎn)過程是人的智力活動過程,而非傳統(tǒng)意義上的“制造”過程,難以監(jiān)管并及時糾正生產(chǎn)過程中出現(xiàn)的錯誤和問題。⑶軟件產(chǎn)品開發(fā)過程中涉及軟件分析師、設(shè)計工程師、程序員、測試人員、用戶和管理人員等,人員配備復(fù)雜,難以進(jìn)行有效管理。11.1軟件項(xiàng)目管理概述⑷軟件產(chǎn)品雖然分通用軟件和領(lǐng)域軟件,但其都是“定制”的定向系統(tǒng),目前仍無法擺脫手工開發(fā)模式。“沒有完全一樣的軟件項(xiàng)目”,這不僅對項(xiàng)目實(shí)施過程難以控制,而且還需要根據(jù)具體應(yīng)用領(lǐng)域、環(huán)境等制定特殊管理過程和內(nèi)容。⑸源于應(yīng)用領(lǐng)域的復(fù)雜性和軟件開發(fā)技術(shù)的復(fù)雜性,軟件自身是一個復(fù)雜系統(tǒng)。因而軟件管理要對復(fù)雜軟件系統(tǒng)過程做到未雨綢繆,對軟件開發(fā)內(nèi)容抽絲剝繭般的細(xì)致。⑹軟件項(xiàng)目管理需要綜合各方面,特別是社會因素、精神因素、認(rèn)知要素、技術(shù)問題、領(lǐng)域問題、用戶溝通等各項(xiàng)復(fù)雜內(nèi)容。⑺管理技術(shù)的基礎(chǔ)是實(shí)踐,只有反復(fù)實(shí)踐才能提高管理技術(shù)、總結(jié)管理經(jīng)驗(yàn)、更好地、有效地實(shí)施和控制管理過程。軟件項(xiàng)目管理的特點(diǎn)11.1軟件項(xiàng)目管理概述⑴軟件可行性分析⑵人員的組織與管理⑶軟件度量⑷軟件生產(chǎn)率⑸風(fēng)險管理⑹軟件質(zhì)量保證⑺軟件配置
軟件項(xiàng)目管理的內(nèi)容11.1軟件項(xiàng)目管理概述軟件項(xiàng)目管理成功的目標(biāo)包括以下幾方面:⑴如期完成項(xiàng)目⑵項(xiàng)目成本控制在計劃之內(nèi)⑶妥善處理用戶的需求變動⑷保證項(xiàng)目質(zhì)量⑸保持對項(xiàng)目進(jìn)度的跟蹤與控制軟件項(xiàng)目管理目標(biāo)11.1軟件項(xiàng)目管理概述⑴人員(people):軟件項(xiàng)目管理實(shí)質(zhì)上是對人的管理。⑵產(chǎn)品(product):軟件工程過程、項(xiàng)目管理的實(shí)施,都是為了得到符合用戶預(yù)期的軟件產(chǎn)品。⑶過程(process):分為技術(shù)實(shí)現(xiàn)過程和軟件過程管理。⑷項(xiàng)目(project):是對整個軟件工程中涉及的所有資源、人員、相關(guān)數(shù)據(jù)、文檔的總和。軟件項(xiàng)目管理的4P觀點(diǎn)11.2軟件項(xiàng)目規(guī)模度量
任何軟件項(xiàng)目都需要定量描述才能制定軟件開發(fā)成本。只有把軟件項(xiàng)目中設(shè)計的各項(xiàng)因素,如軟件開發(fā)時間、人員數(shù)量、開發(fā)環(huán)境的軟件工具和硬件系統(tǒng)、資金等資源的指標(biāo)盡可能量化,才能準(zhǔn)確估算軟件產(chǎn)品的規(guī)模、復(fù)雜度、工作總量。沒有定量的項(xiàng)目,將難以展開軟件管理和實(shí)施過程。
對軟件產(chǎn)品的度量分為直接度量和間接度量。
直接度量是指通過對軟件產(chǎn)品的簡單屬性直接計算而得到結(jié)果的過程。簡單屬性是指代碼行數(shù)、操作數(shù)和運(yùn)算符個數(shù)、接口個數(shù)等能直接計數(shù)的特征,它反映的是軟件產(chǎn)品內(nèi)部特征。
間接度量是指通過對軟件產(chǎn)品的簡單屬性、要素的各項(xiàng)特征、準(zhǔn)則的經(jīng)驗(yàn)值間接計算而得到結(jié)果的過程。如軟件質(zhì)量評價、軟件復(fù)雜性測量等。一、代碼行技術(shù)
代碼行技術(shù)是指用程序的代碼量來衡量軟件的規(guī)模。程序的代碼量用代碼行(LineofCode,LOC)表示。代碼行既可以人工測量,也可以用工具自動計算。目前,幾乎所有軟件開發(fā)團(tuán)隊(duì)都保留代碼行數(shù)據(jù),同時也把代碼行作為宣傳、描述軟件產(chǎn)品的一個重要數(shù)據(jù)。通過代碼行度量,還可以得到軟件開發(fā)生產(chǎn)率、每行代碼的平均成本,文檔代碼的比值、每千代碼行的錯誤率等,這些數(shù)據(jù)不僅評價系統(tǒng)規(guī)模,還能評價軟件質(zhì)量、文檔管理等要素。11.2軟件項(xiàng)目規(guī)模度量一、代碼行技術(shù)
生產(chǎn)率計算:P=KL/EKL:千代碼行數(shù),E:項(xiàng)目工作量,用人·月表示每千行代碼的平均成本:C=S/KLS:軟件項(xiàng)目總成本
每千行代碼的平均文檔支持度:D=PG/KLPG:軟件項(xiàng)目文檔的總頁數(shù)
每千行代碼錯誤率:R=ER/KL;ER:代碼中的總錯誤數(shù)11.2軟件項(xiàng)目規(guī)模度量二、功能點(diǎn)計算
鑒于相同功能,不同語言實(shí)現(xiàn)存在代碼量的差異,且軟件需求是面向功能的描述,1979年Albrecht提出了面向功能點(diǎn)(FunctionPoint,F(xiàn)P)的度量。面向功能點(diǎn)的度量是基于定義的5個信息領(lǐng)域的特征數(shù),以及14項(xiàng)技術(shù)復(fù)雜性因子綜合進(jìn)行的間接度量。下圖描述了可用于功能點(diǎn)度量的5個信息領(lǐng)域特征。11.2軟件項(xiàng)目規(guī)模度量文件外部系統(tǒng)輸出輸入接口讀寫用戶查詢軟件系統(tǒng)面向功能點(diǎn)的度量是用5個信息域(總計數(shù)值)取值:輸入項(xiàng)數(shù):計算每個用戶輸入數(shù)據(jù)數(shù);輸出項(xiàng)數(shù):計算每個用戶輸出數(shù)據(jù)(報表、屏幕、出錯信息);查詢數(shù):一個查詢被定義為一次聯(lián)機(jī)輸入,每一個不同查詢都計算;文檔數(shù):計算每個邏輯的主文件數(shù);外部接口數(shù):計算可讀的接口(如磁盤上的數(shù)據(jù)文件)。
復(fù)雜度的加權(quán)因子系數(shù)面向功能點(diǎn)的度量FP=(總計數(shù)值加權(quán)因子)[0.65+001Fi]11.2軟件項(xiàng)目規(guī)模度量面向功能點(diǎn)的度量FP=(總計數(shù)值加權(quán)因子)[0.65+001Fi]11.2軟件項(xiàng)目規(guī)模度量
一旦計算出功能點(diǎn),就可仿照LOC的方式度量軟件的生產(chǎn)率、質(zhì)量和其它屬性: 生產(chǎn)率P=FP/E
質(zhì)量R=ER/FP
成本C=S/FP
文檔D=PG/FP面向功能的度量11.2軟件項(xiàng)目規(guī)模度量面向功能的度量面向功能的度量的優(yōu)點(diǎn):完全不依賴程序設(shè)計語言,因此它同樣適用于4GL編寫的程序規(guī)模的度量。根據(jù)用戶需求規(guī)格說明就能確定信息領(lǐng)域特征及技術(shù)復(fù)雜性因素,適用于在軟件項(xiàng)目初期對軟件規(guī)模的度量。面向功能的度量的缺點(diǎn):對于復(fù)雜性技術(shù)因素確定的主觀因素太多,量化標(biāo)準(zhǔn)把握不統(tǒng)一。計算所涉及的某些數(shù)據(jù)不易采集,同時也由于主觀因素造成數(shù)據(jù)確定困難。對于計算得到的功能點(diǎn),難以說明其高或低的結(jié)果是由哪些因素所導(dǎo)致。11.2軟件項(xiàng)目規(guī)模度量調(diào)和不同的度量方法代碼行(LOC)和功能點(diǎn)度量之間的關(guān)系依賴于實(shí)現(xiàn)軟件所采用的程序設(shè)計語言及設(shè)計的質(zhì)量.
對于相同功能點(diǎn)各種語言的平均代碼行數(shù)的估算。語言LOC/FP(平均值)Assembly320C128Pascal91Fortran58Basic64High-Order1054GL1511.2軟件項(xiàng)目規(guī)模度量對于將要開發(fā)的軟件系統(tǒng),常用的估算方法有以下幾類:(1)對比已有項(xiàng)目產(chǎn)生的實(shí)際成本,結(jié)合當(dāng)前項(xiàng)目的需求估算項(xiàng)目成本和工作量。
(2)總結(jié)已有項(xiàng)目的數(shù)據(jù),分析并概括軟件項(xiàng)目成本和工作量的經(jīng)驗(yàn)公式。
(3)按項(xiàng)目中的問題分解。
(4)按過程分解。11.3軟件項(xiàng)目估算一、代碼行、功能點(diǎn)的其它估算模型11.3軟件項(xiàng)目估算⑴對于代碼行和工作量之間的關(guān)系,Boehm給出了一個基本模型:
E=3.2*KLOC1.05
其中,E是工作量,KLOC是千代碼行。⑵如果估算的代碼行較大(大于9KLOC),Poty給出了一個更為準(zhǔn)確的模型:
E=5.288*KLOC1.047
⑶IBM公司也提供了估算代碼行與工作量間關(guān)系的模型:
E=5.2*KLOC0.91
M=4.1*KLOC0.36
D=49*KLOC1.01
P=0.54*E0.6
其中,M是項(xiàng)目開發(fā)時間(月),D是文檔數(shù)量(頁),P是所需人員(人)。⑷對于功能點(diǎn)和工作量之間的關(guān)系,Albrecht和Gaffney給出了一個基本模型:
E=-13.39+0.054FP二、專家估算模型軟件項(xiàng)目估算Putnam軟件方程式通過對4000多個軟件項(xiàng)目生產(chǎn)率的統(tǒng)計而獲得:
E=L3/(C3*T4)
其中:L=代碼行數(shù)
T=軟件開發(fā)時間
C
=技術(shù)狀態(tài)常數(shù)2000,比較差的軟件開發(fā)環(huán)境C=8000,一般的軟件開發(fā)環(huán)境
11000,比較好的軟件開發(fā)環(huán)境三、Putnam軟件方程式11.3軟件項(xiàng)目估算四、經(jīng)驗(yàn)估量模型之一——COCOMO(ConstructiveCostModel)模型有三個層次,分別用于開發(fā)3個階段性的COCOMO模型:基本模型:用于系統(tǒng)初期估算軟件開發(fā)工作量(及成本)和軟件開發(fā)所需時間中級模型:用于估算軟件各個子系統(tǒng)開發(fā)工作量(及成本)和開發(fā)所需時間詳細(xì)模型:用于詳細(xì)設(shè)計和編碼階段,估算獨(dú)立的軟部件、模塊、核心算法的工作量和開發(fā)時間。11.3軟件項(xiàng)目估算E=a*KLOCb
D=cEd其中,D是軟件項(xiàng)目開發(fā)時間;a、b、c和d是常數(shù),具體取值見表基本COCOMO模型項(xiàng)目類型abcd組織型2.41.052.50.38嵌入型3.61.202.50.32半獨(dú)立型3.01.122.50.3511.3軟件項(xiàng)目估算E=a*KLOCb*EAFD=3.0*E0.33+0.2*(b-1.01)
其中,EAF是有關(guān)產(chǎn)品、人員、項(xiàng)目等屬性的調(diào)節(jié)因子,其計算模型為:中級COCOMO模型具體參數(shù)取值見書311頁。11.3軟件項(xiàng)目估算詳細(xì)COCOMO模型的工作量公式和開發(fā)時間公式與中間COCOMO模型相同。工作量因素分級表按照軟件開發(fā)的各個不同階段給出。使用這些表格,可以比中級COCOMO模型更方便、更準(zhǔn)確地估算軟件開發(fā)工作量。詳細(xì)COCOMO模型11.3軟件項(xiàng)目估算項(xiàng)目估算模型的小結(jié)11.3軟件項(xiàng)目估算
從以上介紹的各類模型可以看出,不同模型有不同的應(yīng)用范圍,也有其一定的局限性。相同項(xiàng)目使用不同模型,估算的成本和工作量都不一樣。因此,在進(jìn)行項(xiàng)目估算時,必須根據(jù)當(dāng)前項(xiàng)目特點(diǎn),有選擇的經(jīng)過多個模型的共同估算結(jié)果來綜合評定。項(xiàng)目估算模型的小結(jié)11.3軟件項(xiàng)目估算
從各種估算模型不難看出,對于靜態(tài)單變量模型,如果需要自定義工作量估算模型,則考慮其形式基于如下:
E=A*CFB
其中,A和B是常數(shù),CF是代碼行或功能點(diǎn)。如果需要細(xì)致的估算,結(jié)合各項(xiàng)影響因子,考慮增加影響因子模型EAF,則自定義工作量估算模型可以考慮為:
E=A*CFB*EAF
其中,常數(shù)A、B和影響因子EAF中各因素的取值,從已有項(xiàng)目中通過函數(shù)逼近法確定取值或取值區(qū)間,后續(xù)各階段再不斷修改和完善各項(xiàng)取值。11.4項(xiàng)目進(jìn)度管理項(xiàng)目進(jìn)度控制
軟件項(xiàng)目進(jìn)度安排通過把工作量分配給特定軟件工程階段,并規(guī)定完成各項(xiàng)任務(wù)的起止日期。進(jìn)度計劃將隨著項(xiàng)目進(jìn)程的變化而會有所更改,但作為整個項(xiàng)目開發(fā)時間的宏觀控制,則不應(yīng)有太大變化。軟件項(xiàng)目能否按計劃時間完成并及時交付合格的產(chǎn)品是項(xiàng)目管理的重點(diǎn),也是客戶關(guān)心的重要內(nèi)容。但如果為了縮短開發(fā)時間,則會大大增加項(xiàng)目的工作量。Putnam模型已明確說明二者的關(guān)系。
11.4項(xiàng)目進(jìn)度管理項(xiàng)目進(jìn)度控制對于軟件項(xiàng)目延期的原因,通常有以下幾種情形:⑴項(xiàng)目進(jìn)度本身不合理。⑵團(tuán)隊(duì)或小組成員的問題。⑶軟件架構(gòu)的問題。⑷對項(xiàng)目各階段任務(wù)所需的資源投入不足,這源于對各階段工作量的估算不充分。⑸在項(xiàng)目開發(fā)過程中,遇到難以克服的困難。⑹用戶需求變更。⑺項(xiàng)目風(fēng)險管理未做好11.4項(xiàng)目進(jìn)度管理甘特圖
甘特圖(GanttChart)是表示工作進(jìn)度計劃及工作實(shí)際進(jìn)展?fàn)顩r最為簡明的圖形表示方法。它是歷史悠久,使用廣泛的進(jìn)度計劃工具之一。時間任務(wù)ABC11.4項(xiàng)目進(jìn)度管理工程網(wǎng)絡(luò)圖
工程網(wǎng)絡(luò)圖是制定項(xiàng)目計劃時又一種常用的圖形工具,它不僅能描述項(xiàng)目的起止時間和各項(xiàng)任務(wù)的工期,更能現(xiàn)實(shí)的描述各任務(wù)間彼此的依賴關(guān)系。事件編號最早開始時刻持續(xù)時間機(jī)動時間最晚開始時刻t1t2t3t4t5t6t7t8t9t1011.4項(xiàng)目進(jìn)度管理工程網(wǎng)絡(luò)圖11.4項(xiàng)目進(jìn)度管理工程網(wǎng)絡(luò)圖
關(guān)鍵路徑:T1,T2,T3,T7,T8,END
11.5項(xiàng)目風(fēng)險管理
項(xiàng)目管理的重要內(nèi)容之一就是對風(fēng)險進(jìn)行管理。在任何項(xiàng)目、任何任務(wù)的執(zhí)行過程中,不遇到困難幾乎是不可能的。最后導(dǎo)致項(xiàng)目失敗,縱其原因除了項(xiàng)目啟動時的需求、估算未能完整分析以外,一類重要原因就是未能預(yù)測到風(fēng)險的出現(xiàn),以及出現(xiàn)風(fēng)險時的處理措施。因此,軟件項(xiàng)目的成功與否,還應(yīng)考慮在風(fēng)險出現(xiàn)之前,是否能盡量預(yù)測風(fēng)險,并盡量避免風(fēng)險的發(fā)生。如果風(fēng)險發(fā)生不可避免,那就必須準(zhǔn)備好必要的應(yīng)急預(yù)案。11.5項(xiàng)目風(fēng)險管理軟件風(fēng)險概念風(fēng)險不同于軟件工程過程中的其它事件,它有其自身的特點(diǎn):⑴可能性。項(xiàng)目風(fēng)險是將來要發(fā)生的事情。雖然可以采取措施避免或減低風(fēng)險發(fā)生所導(dǎo)致的損失,但完全消除項(xiàng)目風(fēng)險是困難的。⑵偶然性。首先,軟件項(xiàng)目,特別是有較強(qiáng)領(lǐng)域特征的軟件應(yīng)用項(xiàng)目,是一次特定的開發(fā)過程,其產(chǎn)生的風(fēng)險屬于個別事件,有很大的不確定性。其次,軟件開發(fā)的智力活動產(chǎn)生的風(fēng)險難以預(yù)料和控制,并且人員受環(huán)境、心理、任務(wù)等因素的影響較大,更增加風(fēng)險發(fā)生的偶然性。⑶復(fù)雜性。軟件項(xiàng)目各部分間的非線性關(guān)系,其復(fù)雜度遠(yuǎn)遠(yuǎn)超過由少數(shù)幾人就能掌握的程度,需要通過有效的技術(shù)分解和團(tuán)隊(duì)式管理才能勝任。⑷需求的變動。需求的不斷變化,導(dǎo)致軟件項(xiàng)目過程的不斷變化,風(fēng)險平衡狀態(tài)的出現(xiàn)是動態(tài)而短暫的,但其造成的后果可能是嚴(yán)重的,甚至是災(zāi)難性的。11.5項(xiàng)目風(fēng)險管理風(fēng)險管理過程——風(fēng)險管理目標(biāo)和模型風(fēng)險管理目標(biāo)主要是兩點(diǎn):⑴風(fēng)險識別。風(fēng)險識別就是要發(fā)現(xiàn)軟件項(xiàng)目將來可能出現(xiàn)的風(fēng)險,并對其進(jìn)行分析、評估、排序、建檔,使得可能的風(fēng)險提前“暴露”。⑵風(fēng)險措施。風(fēng)險措施分為兩個方面:一方面是規(guī)避風(fēng)險的發(fā)生,通過嚴(yán)密的開發(fā)方案、嚴(yán)格執(zhí)行開發(fā)計劃,嚴(yán)肅進(jìn)行過程控制管理,最大限度防止風(fēng)險的發(fā)生。另一方面是制定風(fēng)險發(fā)生后的應(yīng)對措施。由于風(fēng)險的偶然性和難以控制性,要在風(fēng)險管理前就制定風(fēng)險應(yīng)急方案,力求把風(fēng)險影響和造成的損失降到最低,使得軟件項(xiàng)目進(jìn)度仍能按計劃向前推進(jìn)。11.5項(xiàng)目風(fēng)險管理風(fēng)險管理過程——風(fēng)險識別
風(fēng)險識別是風(fēng)險管理過程的第一步。根據(jù)具體的項(xiàng)目特征,列出可能出現(xiàn)的風(fēng)險。風(fēng)險的類別⑴項(xiàng)目風(fēng)險⑵技術(shù)風(fēng)險⑶商業(yè)風(fēng)險⑷人員風(fēng)險11.5項(xiàng)目風(fēng)險管理風(fēng)險管理過程——風(fēng)險估算
假設(shè)風(fēng)險檢測表由m項(xiàng)風(fēng)險,每項(xiàng)風(fēng)險有n個檢測指標(biāo)。每項(xiàng)風(fēng)險指標(biāo)的取值范圍為[ak,bk],通常ak是該項(xiàng)風(fēng)險的最理想值,bk則相反。如果ak為0,bk為1,且取值為整數(shù),則說明第k項(xiàng)風(fēng)險的評價是布爾型。設(shè)第i項(xiàng)風(fēng)險的第j項(xiàng)指標(biāo)值為Rij,對應(yīng)的權(quán)值為wij,于是第i項(xiàng)風(fēng)險的估算定義為:其中,0≤Wij≤1。
因而11.5項(xiàng)目風(fēng)險管理風(fēng)險管理過程——風(fēng)險評估在風(fēng)險評估中,執(zhí)行以下步驟,并與水平值共同完成評估。⑴定義與當(dāng)前項(xiàng)目有關(guān)的風(fēng)險類型和各項(xiàng)的風(fēng)險水平參考值;⑵建立風(fēng)險類型、風(fēng)險發(fā)生概率與風(fēng)險發(fā)生造成的后果與每項(xiàng)水平參考值之間的關(guān)系。⑶預(yù)先定義一組參考點(diǎn)(標(biāo)準(zhǔn))。當(dāng)估算的風(fēng)險值超過定義的參考點(diǎn),將啟動風(fēng)險干預(yù)過程。⑷對每組參考點(diǎn),要考慮哪些風(fēng)險組合作為參考項(xiàng)。11.5項(xiàng)目風(fēng)險管理風(fēng)險管理過程——風(fēng)險控制
風(fēng)險控制的主動措施有兩項(xiàng):一是控制軟件項(xiàng)目各階段活動中風(fēng)險的發(fā)生,認(rèn)真執(zhí)行風(fēng)險監(jiān)督和管理計劃;二是當(dāng)風(fēng)險不可避免的發(fā)生后,及時啟動風(fēng)險處理過程,降低風(fēng)險造成的影響和損失,確保軟件項(xiàng)目仍按計劃,按質(zhì)保量向前推進(jìn)。建立風(fēng)險控制策略是一項(xiàng)必然的選擇。有效的風(fēng)險控制策略包括3個問題:風(fēng)險避免風(fēng)險監(jiān)控風(fēng)險管理及應(yīng)急計劃11.5項(xiàng)目風(fēng)險管理風(fēng)險管理過程——風(fēng)險控制
風(fēng)險控制策略可以是軟件項(xiàng)目計劃的一部分,也可以是獨(dú)立的風(fēng)險環(huán)節(jié)、監(jiān)控和管理計劃(RiskMitigation、Monitoring、Management,RMMM)。
RMMM計劃將所遇風(fēng)險分析都文檔化。風(fēng)險信息表(RiskInformationSheet,RIS)就是對每項(xiàng)風(fēng)險進(jìn)行分析而記錄的表單。11.6項(xiàng)目質(zhì)量管理
軟件質(zhì)量是軟件產(chǎn)品的生命,它直接影響軟件的使用、維護(hù)和用戶體驗(yàn)。所有軟件開發(fā)人員、管理人員和用戶都非常重視軟件質(zhì)量。無論是軟件工程開發(fā)過程、控制,還是風(fēng)險管理、軟件配置管理,都是為了對質(zhì)量引起高度重視。什么是軟件質(zhì)量?如何保證軟件質(zhì)量是質(zhì)量管理的重要內(nèi)容。修改性轉(zhuǎn)移性運(yùn)行性可理解性可維護(hù)性靈活性可測試性可移植性可重用性可操作性正確性、可靠性、有效性完整性、可用性、風(fēng)險McCall提出的表明軟件質(zhì)量因素及改進(jìn)軟件質(zhì)量因素產(chǎn)品11.6項(xiàng)目質(zhì)量管理軟件質(zhì)量因素11.6項(xiàng)目質(zhì)量管理11.6項(xiàng)目質(zhì)量管理軟件質(zhì)量保證活動
軟件質(zhì)量保證(SoftwareQualityAssurance,SQA)通過建立一套有計劃的、有系統(tǒng)的方法,保證擬定出的標(biāo)準(zhǔn)、步驟、實(shí)踐和方法能夠正確地被所有項(xiàng)目正確采用。SQA通過管理人員對軟件產(chǎn)品和開發(fā)活動進(jìn)行評審和審計,并驗(yàn)證軟件是否符合軟件質(zhì)量評價標(biāo)準(zhǔn)。溝通檢查認(rèn)識與糾正溝通軟件質(zhì)量保證項(xiàng)目(總)經(jīng)理項(xiàng)目小組1項(xiàng)目小組2項(xiàng)目小組n……測試小組11.6項(xiàng)目質(zhì)量管理軟件質(zhì)量保證計劃
軟件質(zhì)量保證計劃(SoftwareQualityAssurancePlan,SQAP)規(guī)定在項(xiàng)目中采用的軟件質(zhì)量保證的措施、方法和步驟。文獻(xiàn)[12]定義了SQAP文檔格式及其內(nèi)容,并需要根據(jù)項(xiàng)目的具體情況有所變化,目的就是體現(xiàn)SQA組對用戶需求,性能需求、領(lǐng)域需求等方面的約束,對軟件工程實(shí)施的監(jiān)督和控制,對軟件配置變更管理的記錄和跟蹤。
11.7軟件配置管理
軟件配置管理(SoftwareConfigurationManagement,SCM)是對軟件修改進(jìn)行標(biāo)識、組織和控制的技術(shù)。SCM的目的是通過定義管理軟件變化的一組活動來減少由此引起的混亂,提高軟件生產(chǎn)率。
SCM定義的變更管理活動主要包括:標(biāo)識變化;控制變化;監(jiān)督、記錄變化過程;通知與變化相關(guān)的所有人員、更新與變化相關(guān)的文檔。軟件配置項(xiàng)11.7軟件配置管理Pressman指出,任何軟件產(chǎn)品的最終結(jié)果都可以分為如下3類信息:⑴計算機(jī)程序(包括源程序、目標(biāo)程序和可執(zhí)行程序)。⑵軟件產(chǎn)品在開發(fā)過程中生成的文檔(面向開發(fā)人員和面向用戶)。⑶軟件產(chǎn)品內(nèi)部和系統(tǒng)外部存儲的數(shù)據(jù)。軟件配置項(xiàng)11.7軟件配置管理⑴系統(tǒng)規(guī)格說明;⑵軟件項(xiàng)目計劃,包括軟件開發(fā)計劃、質(zhì)量保證計劃、配置計劃和驗(yàn)收確認(rèn)計劃;⑶軟件需求規(guī)格說明;⑷軟件設(shè)計規(guī)格說明,包括概要設(shè)計說明和詳細(xì)設(shè)計說明。⑸程序,包括源代碼、目標(biāo)文件、可執(zhí)行文件、軟件部件庫、數(shù)據(jù)等。⑹軟件測試文檔,包括測試計劃、測試用例、測試腳本和測試報告。⑺維護(hù)文檔,包括軟件維護(hù)計劃、軟件問題報告、變更報告。⑻用戶文檔,包括用戶手冊、聯(lián)機(jī)幫助、安裝和部署文檔等。⑼軟件工程和軟件質(zhì)量管理的標(biāo)準(zhǔn)與過程。⑽對上述各項(xiàng)內(nèi)容的按需組合,構(gòu)成復(fù)合軟件配置項(xiàng)(針對中小型項(xiàng)目,以及極限編程、敏捷編程等軟件開發(fā)過程的需要)。管理配置過程11.7軟件配置管理
軟件配置管理是軟件質(zhì)量管理中重要的環(huán)節(jié),它管理的目的就是有效控制變化和修改,縮小更改的涉及面、減少修改帶來的副作用。軟件配置管理過程主要包括標(biāo)識軟件配置對象、軟件版本控制、變化控制、審計配置和軟件配置報告。軟件配置項(xiàng)命名軟件版本控制變更控制配置審計配置狀態(tài)報告團(tuán)隊(duì)組織——團(tuán)隊(duì)構(gòu)件因素11.8項(xiàng)目人員組織管理
成功的完成軟件開發(fā)項(xiàng)目,項(xiàng)目團(tuán)隊(duì)必須以高效、有益的方式組織起來,并能有效進(jìn)行交互和通信。在構(gòu)建團(tuán)隊(duì)時,就要結(jié)合項(xiàng)目因素和人員因素考慮團(tuán)隊(duì)的組成結(jié)構(gòu)。項(xiàng)目因素主要結(jié)合下面的問題來考慮:項(xiàng)目規(guī)模大小和復(fù)雜程度。對項(xiàng)目中用戶問題的分解程度。對項(xiàng)目性能、操作等非功能性要求的程度。項(xiàng)目開發(fā)時間的限制程度。對項(xiàng)目質(zhì)量要求和可靠性要求的程度。與用戶就項(xiàng)目的交流程度。團(tuán)隊(duì)組織——團(tuán)隊(duì)組織原則11.8項(xiàng)目人員組織管理對于團(tuán)隊(duì)在組織過程中,因遵循以下原則:盡早落實(shí)責(zé)任:在軟件項(xiàng)目工作開始時,要盡早指定專人負(fù)責(zé)。使他有權(quán)進(jìn)行管理,并對任務(wù)的完成負(fù)全責(zé)。減少接口:一個組織的生產(chǎn)率隨完成任務(wù)中存在的通信路徑數(shù)目增加而降低。要有合理的人員分工、好的組織結(jié)構(gòu)、有效的通信,減少不必要的生產(chǎn)率的損失。責(zé)權(quán)均衡:軟件經(jīng)理人員所負(fù)的責(zé)任不應(yīng)比委任給他的權(quán)力還大。團(tuán)隊(duì)組織方式11.8項(xiàng)目人員組織管理目前軟件項(xiàng)目團(tuán)隊(duì)的組織方式很多,團(tuán)隊(duì)組織方式不僅涉及人員的構(gòu)成和組織形式,更要取決于項(xiàng)目特點(diǎn)、對人員的組織和管理經(jīng)驗(yàn)。對項(xiàng)目問題分解方式的不同,團(tuán)隊(duì)組織和人員的分工也不一樣。按項(xiàng)目劃分按軟件工程開發(fā)階段劃分軟件開發(fā)人員組織與分工團(tuán)隊(duì)組織方式11.8項(xiàng)目人員組織管理對人員的組織和管理,目前有3種常用的組織方式。
民主制小組主程序員組層次式小組11.8項(xiàng)目人員組織管理11.9軟件能力成熟度模型1986年底美國SEI/CMU開始著手研究和制定支持軟件開發(fā)組織控制、管理和改進(jìn)軟件過程的軟件過程成熟度框架,并于1987年開發(fā)了“軟件過程評估”和“軟件成熟度評價”兩個模型,于1991年發(fā)布軟件能力成熟度模型(CapabilityMaturityModelforSoftware,SW-CMM或CMM),陸續(xù)發(fā)布了CMMv1.0和CMMv2.0。基本概念11.9軟件能力成熟度模型⑴過程。雖然人們所處領(lǐng)域和角度的不同,但對過程的理解基本是一致的?!杜=蚝喢髟~典》中的定義:過程是一組活動與操作的集合?!俄f氏大詞典》中的定義:過程是用于產(chǎn)生某種結(jié)果的一整套操作、一系列活動、變化以及作為最終結(jié)果的功能?!禝EEE-Std-610》中的定義:過程是為完成一個特定目標(biāo)而進(jìn)行的一系列操作步驟。⑵軟件過程。SEI/CMU-CMM中的定義是:軟件過程是用于軟件開發(fā)及維護(hù)的一系列活動、方法及實(shí)踐。⑶軟件生存周期過程?!禝SOIEC12207-1995》中的定義為:它是一個框架,包含有遍歷系統(tǒng)從需求確定到使用終止這一生存周期的軟件產(chǎn)品的開發(fā)、運(yùn)行和維護(hù)中需要實(shí)施的過程、活動和任務(wù)。⑷軟件過程能力。它用于描述通過執(zhí)行軟件過程、實(shí)現(xiàn)預(yù)期結(jié)果的能力。基本概念11.9軟件能力成熟度模型⑸軟件過程成熟度。它是指一個特定軟件過程被明確
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030年中國船舶涂料產(chǎn)業(yè)運(yùn)營狀況與發(fā)展趨勢分析報告
- 2025-2030年中國聚酯多元醇行業(yè)市場現(xiàn)狀分析規(guī)劃研究報告
- 2025-2030年中國網(wǎng)絡(luò)借貸市場發(fā)展現(xiàn)狀及前景趨勢分析報告
- 2025-2030年中國精制棉市場運(yùn)營現(xiàn)狀及投資前景規(guī)劃研究報告
- 2025-2030年中國眼視光行業(yè)發(fā)展趨勢規(guī)劃研究報告
- 2025湖北省建筑安全員-A證考試題庫及答案
- 河北大學(xué)《材料及施工工藝》2023-2024學(xué)年第二學(xué)期期末試卷
- 廣東云浮中醫(yī)藥職業(yè)學(xué)院《主持人節(jié)目創(chuàng)作娛樂》2023-2024學(xué)年第二學(xué)期期末試卷
- 北京語言大學(xué)《政府預(yù)算管理》2023-2024學(xué)年第二學(xué)期期末試卷
- 2025年供應(yīng)鏈管理公司合作項(xiàng)目協(xié)議書
- 2025年度度假村景觀設(shè)計及施工一體化合同
- 2025年山東化工職業(yè)學(xué)院高職單招職業(yè)技能測試近5年??及鎱⒖碱}庫含答案解析
- 《如何規(guī)劃養(yǎng)禽場》課件
- 2024-2025學(xué)年云南省昆明市盤龍區(qū)三年級(上)期末數(shù)學(xué)試卷(含答案)
- 物業(yè)公司行政人事部職責(zé)
- 醫(yī)療健康行業(yè)保密免責(zé)協(xié)議書
- 《設(shè)計思維與方法》課件
- 第一課走進(jìn)人工智能 說課稿 2023-2024學(xué)年浙教版(2023)初中信息技術(shù)八年級下冊
- 體檢中心前臺接待流程
- 2024年大唐集團(tuán)招聘筆試試題及答案-
評論
0/150
提交評論