軟件工程全部課件-第9章軟件工程管理_第1頁
軟件工程全部課件-第9章軟件工程管理_第2頁
軟件工程全部課件-第9章軟件工程管理_第3頁
軟件工程全部課件-第9章軟件工程管理_第4頁
軟件工程全部課件-第9章軟件工程管理_第5頁
已閱讀5頁,還剩71頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第9章面向?qū)ο蠹夹g(shù)

內(nèi)容介紹9.1軟件工程管理概述9.2軟件規(guī)模估算9.3軟件項目的組織與計劃9.4軟件質(zhì)量9.5ISO9000軟件質(zhì)量體系9.6軟件配置管理9.7CMM軟件能力成熟度模型9.8軟件工程標(biāo)準(zhǔn)與軟件文檔9.9小結(jié)9.1軟件工程管理概述軟件工程管理的目的是為了按照預(yù)定的時間和費用,成功地完成軟件的計劃、開發(fā)和維護(hù)任務(wù)。

1.費用管理

目的是對軟件開發(fā)進(jìn)行成本核算,使軟件生產(chǎn)按照商品生產(chǎn)的經(jīng)濟(jì)規(guī)律辦事。其主要任務(wù)是:①以簡單實用和科學(xué)的方法估算出軟件的開發(fā)費用,作為簽訂開發(fā)合同的根據(jù);②管理開發(fā)費用的有效使用,用經(jīng)濟(jì)手段來保證產(chǎn)品如期按質(zhì)完成。9.1軟件工程管理概述

2.質(zhì)量管理

目的在于保證軟件產(chǎn)品(包括最終程序和文檔)的質(zhì)量,為了貫徹全面質(zhì)量控制(TQC)的原則,每個項目都要訂出“質(zhì)量保證計劃”,并由專設(shè)的質(zhì)量保證小組負(fù)責(zé)貫徹,確保在各個階段的開發(fā)和維護(hù)工作全都按軟件工程的規(guī)范進(jìn)行。配置管理是質(zhì)量管理的重要組成部分,包括對于程序、文檔和數(shù)據(jù)的各種版本所進(jìn)行的管理,以保證資料的完整性與一致性。對于重要的和大型的軟件,需要制訂單獨的”配置管理計劃”,并由專設(shè)的人員進(jìn)行管理。9.1軟件工程管理概述

3.項目的其他管理除項目經(jīng)費和軟件質(zhì)量外,項目的進(jìn)度和人員也是項目管理的重要內(nèi)容。9.2軟件規(guī)模估算9.2.1軟件開發(fā)成本估算方法9.2.2代碼行技術(shù)和任務(wù)估算技術(shù)9.2.3COCOMO模型

9.2.1軟件開發(fā)成本估算方法軟件開發(fā)成本主要是指軟件開發(fā)過程中所花費的工作量及相應(yīng)的代價,主要是人的勞動的消耗。軟件開發(fā)成本的估算,應(yīng)是從軟件計劃、需求分析、設(shè)計、單元測試、組裝測試到確認(rèn)測試,整個軟件開發(fā)過程所花費的代價作為依據(jù)的。

基于估算方法分為三類:

(1)自頂向下估算方法估算人員參照以前完成的項目所耗費的總成本,來推算將要開發(fā)的軟件的總成本,然后把它們按階段、步驟和工作單元進(jìn)行分配

.9.2.1軟件開發(fā)成本估算方法(3)差別估算方法差別估算是將開發(fā)項目與一個或多個已完成的類似項目進(jìn)行比較,找到與某個相類似項目的若干不同之處,并估算每個不同之處對成本的影響,導(dǎo)出開發(fā)項目的總成本。

(4)專家估算法。(5)類推估算法。(6)算式估算法。(2)自底向上估算方法將待開發(fā)的軟件細(xì)分,分別估算每一個子任務(wù)所需要的開發(fā)工作量,然后將它們加起來,得到軟件的總開發(fā)量。9.2.2代碼行技術(shù)和任務(wù)估算技術(shù)有時難以根據(jù)經(jīng)驗估算所需代碼行數(shù),為了使得對程序規(guī)模的估計值更接近實際值,可以由多名有經(jīng)驗的軟件工程師分別作出估計。每個人都估計程序的最小規(guī)模(a)、最大規(guī)模(b)和最可能的規(guī)模(m),分別算出這三種規(guī)模的平均值,和之后,再利用下面公式計算程序規(guī)模的估計值:

代碼行技術(shù)是把開發(fā)每個軟件功能的成本和實現(xiàn)這個功能需要用的源代碼行數(shù)據(jù)聯(lián)系起來。通常根據(jù)經(jīng)驗和歷史數(shù)據(jù)估計實現(xiàn)一個功能需要的源程序行數(shù)。

當(dāng)程序較小時常用的單位是代碼行數(shù)(LOC),當(dāng)程序較大時常用的單位是千代碼行(KLOC)9.2.2代碼行技術(shù)和任務(wù)估算技術(shù)在估計每個任務(wù)的成本時,通常先估計完成該項任務(wù)需要用的人力(一人月為單位),再乘以每人每月的平均工資而得出每個任務(wù)的成本。

任務(wù)估算技術(shù)實際是一種任務(wù)分解技術(shù),它首先把軟件開發(fā)工程分解為若干個相對獨立的任務(wù),再分別估計每個單獨開發(fā)任務(wù)的成本,最后累加起來得出軟件開發(fā)工程的總成本。

9.2.3COCOMO模型構(gòu)造性成本模型COCOMO(COnstructive

COst

MOdel)是最精確、最易于使用的成本估算方法之一。

該模型分為:基本COCOMO模型,是一個靜態(tài)單變量模型,它是對整個軟件系統(tǒng)進(jìn)行估算;中級COCOMO模型,是一個靜態(tài)多變量模型;詳細(xì)COCOMO模型,將軟件系統(tǒng)模型分為系統(tǒng)、子系統(tǒng)和模塊三個層次。

9.2.3COCOMO模型1.基本COCOMO模型

E為開發(fā)所需的人力(人/月),D為所需的開發(fā)時間(月),L是項目的源代碼行估計值,不包括程序中的注釋和文檔,單位是千代碼行。a、b、c、d指不同軟件開發(fā)方式的值,是常數(shù)。其取值如表9-2所示。9.2.3COCOMO模型2.中級COCOMO模型

L是軟件產(chǎn)品的目標(biāo)代碼行數(shù),單位是千代碼行,a,b是常數(shù),取值如表9-3所示。9.2.3COCOMO模型2.中級COCOMO模型

表9-4給出了影響工作量的因素及其取值,每個調(diào)節(jié)因子Fi的取值分為很低、低、正常、高、極高6級,正常情況下Fi=1;當(dāng)15個Fi選定后,可得:

9.2.3COCOMO模型3.詳細(xì)COCOMO模型

詳細(xì)COCOMO模型的估算公式與中級COCOMO模型相同,并按分層、分階段的形勢給出其工作量影響因素分級表。針對每一個影響因素,按模塊層、子系統(tǒng)層、系統(tǒng)層,有3張工作量因素分級表,供不同層次的估算使用。每一張表中又按開發(fā)各個不同階段給出。9.3軟件項目的組織與計劃9.3.1軟件項目管理的特點9.3.2軟件開發(fā)進(jìn)度計劃9.3.3人員配備與組織

9.3.1軟件項目管理的特點軟件項目管理是為了使軟件項目能夠按照預(yù)定的成本、進(jìn)度、質(zhì)量順利完成,而對人員(People)、產(chǎn)品(Product)、過程(Process)和項目(Project)進(jìn)行分析和管理的活動。軟件項目管理的根本目的是為了讓軟件項目尤其是大型項目的整個軟件生命周期(從分析、設(shè)計、編碼到測試、維護(hù)全過程)都能在管理者的控制之下,以預(yù)定成本按期,按質(zhì)的完成軟件交付用戶使用。研究軟件項目管理為了從已有的成功或失敗的案例中總結(jié)出能夠指導(dǎo)今后開發(fā)的通用原則,方法,同時避免前人的失誤。

9.3.1軟件項目管理的特點1.軟件項目的特點2.軟件項目管理的困難3.造成軟件失誤的原因4.軟件管理的主要職能9.3.2軟件開發(fā)進(jìn)度計劃1.基本原則軟件開發(fā)進(jìn)度計劃是根據(jù)系統(tǒng)開發(fā)目標(biāo)、時間要求和技術(shù)力量情況來制定的,主要確定各項具體開發(fā)工作的所需時間、開始與完成日期以及相互之間的前后銜接關(guān)系。(1)劃分必須把項目劃分成若干個可以管理的活動和任務(wù),這些活動和任務(wù)由所采用的軟件過程模型定義。為了完成項目劃分,對產(chǎn)品和過程都需要進(jìn)行分解。9.3.2軟件開發(fā)進(jìn)度計劃(2)相互依賴性必須確定劃分出的各個活動或任務(wù)之間的相互依賴性。某些任務(wù)必須順序完成,而其他的任務(wù)可以并發(fā)進(jìn)行。有些活動只有在其他活動產(chǎn)生的工作產(chǎn)品完成之后才能夠開始,而其他的活動可以獨立地進(jìn)行。(3)時間分配必須給每個任務(wù)都分配一定數(shù)量的工作單位(例如,若干人天的工作量)。此外,必須為每個任務(wù)都指定開始日期和結(jié)束日期,在確定這些日期時既要考慮各個任務(wù)之間的相互依賴性,又要考慮開發(fā)人員每日工作時間的長短(全職還是兼職)。9.3.2軟件開發(fā)進(jìn)度計劃(4)工作量確認(rèn)在制定進(jìn)度計劃時,項目管理者必須確保在任意時段中分配給任務(wù)的人員數(shù)量,不超過項目組中的人員數(shù)量。(5)定義責(zé)任每個任務(wù)都應(yīng)該指定具體的負(fù)責(zé)人。(6)定義結(jié)果每個任務(wù)都應(yīng)該有一個定義好的輸出結(jié)果。對于軟件項目而言,輸出通常是一個工作產(chǎn)品或工作產(chǎn)品的一部分。通常把多個工作產(chǎn)品組合成一個“可交付產(chǎn)品”。(7)定義里程碑9.3.2軟件開發(fā)進(jìn)度計劃

2.計劃評審技術(shù)

PERT(ProgramEvaluationandReviewTechnique)即計劃評審技術(shù),最早是由美國海軍在計劃和控制北極星導(dǎo)彈的研制時發(fā)展起來的。(1)建立PERT圖圖中的每一圓圈,都代表一項開發(fā)活動。箭頭代表活動發(fā)生的先后順序,箭頭上的數(shù)字表示完成這一活動所需的時間。9.3.2軟件開發(fā)進(jìn)度計劃(2)找出關(guān)鍵路徑(CriticalPath)從起點到終點,可能有多條路徑。其中耗時最長的路徑就是關(guān)鍵路徑,它決定了完成整個工程所需要的時間。(3)標(biāo)出最遲開始時間箭頭下面括號中的數(shù)字表示該任務(wù)的機動時間,圖中的圓表示與某個子任務(wù)開始或結(jié)束事件的時間點。9.3.2軟件開發(fā)進(jìn)度計劃

3.Gantt圖Gantt圖(甘特圖)是在1917年由亨利·甘特開發(fā)的,其內(nèi)在思想簡單,基本是一條線條圖,橫軸表示時間,縱軸表示活動(項目),線條表示在整個期間上計劃和實際的活動完成情況。9.3.3人員配備與組織橫坐標(biāo)表示距開發(fā)起點的時間,縱坐標(biāo)代表在不同時間點需要的人力。td位于曲線的峰點。在td之前,開發(fā)所需的人力逐漸上升,到td達(dá)到峰值;td以后,單位時間所需的人力漸趨下降。1.Rayleigh-Norden曲線9.3.3人員配備與組織(1)人員-時間權(quán)衡定律(People-TimeTrade-OffLaw)

2.兩條重要的定律Putnam在對Rayleigh曲線作了大量研究的基礎(chǔ)上,提出了Putnam模型。這個模型指出,開發(fā)工作量與開發(fā)時間的4次方成反比。即

E=常數(shù)/(T或td)Putnam將這一結(jié)論稱為“軟件開發(fā)的權(quán)衡定律”。

(2)Brooks定律對這原則的一個合理解釋是,當(dāng)開發(fā)人員以算術(shù)級數(shù)增長時,人員之間的通信將以幾何級數(shù)增長,從而可能導(dǎo)致“得不償失”的結(jié)果。9.3.3人員配備與組織軟件開發(fā)單位怎樣組織軟件的開發(fā)工作,取決于許多因素。一般情況下,可采取以下的層次型組織結(jié)構(gòu),即:軟件經(jīng)理→項目經(jīng)理→開發(fā)小組

3.人員組織

軟件經(jīng)理負(fù)責(zé)管理整個單位的開發(fā)工作。每一開發(fā)項目設(shè)一位項目經(jīng)理,每一項目經(jīng)理又管理若干開發(fā)小組。本節(jié)介紹兩種不同的開發(fā)小組形式。9.3.3人員配備與組織

Weinberg認(rèn)為,軟件開發(fā)是一種合作的事業(yè),最理想的形式是組成“無我小組(egolessteam)”。這種小組提倡“無我程序設(shè)計”,人人把小組開發(fā)的程序看成“我們的”程序,而不是“我的’’程序。組內(nèi)人人平等,一切問題均由集體決定,甚至組長也輪流擔(dān)任,這種形式的優(yōu)點是,便于集思廣益,取長補短;但責(zé)任不清,而且每事都要討淪,效率不高。(1)民主開發(fā)小組

民主開發(fā)小組的人數(shù),通常為5~7人。9.3.3人員配備與組織這是由Mills和Baker等人提出的一種方式,它的特點是強調(diào)“一元化”領(lǐng)導(dǎo),每一組員的工作由主程序員分配,一切重大的問題由主程序員決定。

(2)主程序員小組

9.4軟件質(zhì)量9.4.1軟件質(zhì)量特性9.4.2軟件質(zhì)量保證措施

9.4.1軟件質(zhì)量特性軟件質(zhì)量是指反映軟件系統(tǒng)或軟件產(chǎn)品滿足規(guī)定或隱含需求的能力的特征和特性全體。軟件質(zhì)量的要點:

(1)軟件功能必須滿足用戶規(guī)定的需求;(2)軟件應(yīng)遵守規(guī)定標(biāo)準(zhǔn)所定義的一系列開發(fā)準(zhǔn)則;(3)軟件應(yīng)滿足某些隱含的需求。例如,可理解性、可維護(hù)性等。評價軟件質(zhì)量的關(guān)鍵要定出評定質(zhì)量的指標(biāo)和評定優(yōu)劣的標(biāo)準(zhǔn)。如我國國家標(biāo)準(zhǔn)《GB/T12504-1990計算機軟件質(zhì)量保證計劃規(guī)范》、《GB/T17544-1998信息技術(shù)軟件包質(zhì)量要求和測試》、國際標(biāo)準(zhǔn)ISO9000等9.4.1軟件質(zhì)量特性軟件質(zhì)量特性由下面六個方面來衡量。(1)功能性(2)可靠性(3)易使用性(4)效率(5)可維護(hù)性(6)可移植性9.4.2軟件質(zhì)量保證措施1.應(yīng)用好的技術(shù)方法2.測試軟件3.進(jìn)行正式的技術(shù)評審4.標(biāo)準(zhǔn)的實施5.控制變動6.度量7.保存記錄和報告9.5ISO9000軟件質(zhì)量體系9.5.1ISO9000國際標(biāo)準(zhǔn)9.5.2企業(yè)軟件質(zhì)量體系的建立和實施9.5.1ISO9000國際標(biāo)準(zhǔn)ISO9000不是指一個標(biāo)準(zhǔn),而是一族標(biāo)準(zhǔn)的統(tǒng)稱。根據(jù)ISO9000-1:1994的定義:“ISO9000族”是由ISO/TC176制定的所有國際標(biāo)準(zhǔn)?!本唧w地講ISO9000族標(biāo)準(zhǔn)就是在四個方面規(guī)范質(zhì)量管理:(1)機構(gòu):標(biāo)準(zhǔn)明確規(guī)定了為保證產(chǎn)品質(zhì)量而必須建立的管理機構(gòu)及其職責(zé)權(quán)限。(2)程序:企業(yè)組織產(chǎn)品生產(chǎn)必須制定規(guī)章制度、技術(shù)標(biāo)準(zhǔn)、質(zhì)量手冊、質(zhì)量體系操作檢查程序,并使之文件化、檔案化。9.5.1ISO9000國際標(biāo)準(zhǔn)通俗地講就是把企業(yè)的管理標(biāo)準(zhǔn)化,而標(biāo)準(zhǔn)化管理生產(chǎn)的產(chǎn)品及其服務(wù),其質(zhì)量是可以信賴的。(3)過程:質(zhì)量控制是對生產(chǎn)的全部過程加以控制,是面的控制,不是點的控制。從根據(jù)市場調(diào)研確定產(chǎn)品、設(shè)計產(chǎn)品、采購原料,到生產(chǎn)檢驗、包裝、儲運,其全過程按程序要求控制質(zhì)量。并要求過程具有標(biāo)識性、監(jiān)督性、可追溯性。(4)總結(jié):不斷地總結(jié)、評價質(zhì)量體系,不斷地改進(jìn)質(zhì)量體系,使質(zhì)量管理呈螺旋式上升。9.5.2企業(yè)軟件質(zhì)量體系的建立和實施軟件企業(yè)建立和實施質(zhì)量體系的主要過程如下。(1)準(zhǔn)備階段召開員工大會,闡明企業(yè)建立和實施質(zhì)量體系的重要性和必要性;成立質(zhì)量體系認(rèn)證申辦小組;組織企業(yè)所有與質(zhì)量有關(guān)的人員參加培訓(xùn)班,學(xué)習(xí)IS09000族標(biāo)準(zhǔn)中的部分標(biāo)準(zhǔn)和有關(guān)國家標(biāo)準(zhǔn);必要時可聘請咨詢機構(gòu)為企業(yè)建立和實施質(zhì)量體系提供咨詢。

(2)質(zhì)量體系策劃準(zhǔn)備工作完成之后,接下來便可進(jìn)行質(zhì)量體系策劃工作,包括調(diào)查企業(yè)組織現(xiàn)狀、制訂實施工作計劃、選擇質(zhì)量保證模式、確定質(zhì)量方針、調(diào)整和完善企業(yè)組織、制訂質(zhì)量體系要素的實施辦法。9.5.2企業(yè)軟件質(zhì)量體系的建立和實施

(3)編寫質(zhì)量體系文件質(zhì)量體系文件是描述質(zhì)量體系的一整套文件,是質(zhì)量體系的具體體現(xiàn)和質(zhì)量體系運行的法規(guī),也是質(zhì)量體系審核的依據(jù)。用圖形描述典型的質(zhì)量體系文件層次,如圖9-6所示,上層由下層提供支持。9.5.2企業(yè)軟件質(zhì)量體系的建立和實施

(4)培訓(xùn)內(nèi)部審核員內(nèi)部審核員除了執(zhí)行內(nèi)部質(zhì)量體系審核外,還承擔(dān)企業(yè)管理層與各職能部門、企業(yè)與供應(yīng)商、企業(yè)與顧客、企業(yè)與審核機構(gòu)的聯(lián)系工作。

(5)質(zhì)量體系試運行主要工作包括:企業(yè)最高管理者審查并簽發(fā)質(zhì)量方針;企業(yè)最高管理者批準(zhǔn)并簽發(fā)質(zhì)量手冊;管理者代表簽發(fā)程序文件;組織培訓(xùn),使每個員工熟悉與本崗位有關(guān)的程序文件;進(jìn)行崗位質(zhì)量責(zé)任培訓(xùn)與考核;各部門的各項與質(zhì)量體系要素有關(guān)的活動納入體系運行;運行中發(fā)現(xiàn)質(zhì)量體系文件存在問題和不足,可按程序的規(guī)定進(jìn)行修改。9.5.2企業(yè)軟件質(zhì)量體系的建立和實施

(6)內(nèi)部質(zhì)量體系審核內(nèi)部質(zhì)量體系審核由管理層委派的審核小組進(jìn)行,審核組成員應(yīng)是內(nèi)部審核員,必要時可以聘請外部審核員。

(7)管理評審管理評審組由企業(yè)的最高管理者主持,成員是管理層人員及與質(zhì)量有關(guān)的職能部門的負(fù)責(zé)人,根據(jù)質(zhì)量方針和目標(biāo)對質(zhì)量體系的現(xiàn)狀和適應(yīng)性進(jìn)行正式評價。一般定期為一年一次。(8)質(zhì)量體系認(rèn)證前的準(zhǔn)備準(zhǔn)備工作包括:選擇認(rèn)證機構(gòu);對質(zhì)量體系文件的全面清理;接受審核的教育培訓(xùn)及其他準(zhǔn)備工作(如指定負(fù)責(zé)陪同審核組成員的工作人員等)。9.5.2企業(yè)軟件質(zhì)量體系的建立和實施

(9)質(zhì)量體系認(rèn)證過程所謂質(zhì)量體系認(rèn)證,就是由認(rèn)證機構(gòu)對企業(yè)進(jìn)行的外部質(zhì)量體系審核。認(rèn)證過程如圖9-7所示。9.5.2企業(yè)軟件質(zhì)量體系的建立和實施9.5.2企業(yè)軟件質(zhì)量體系的建立和實施9.5.2企業(yè)軟件質(zhì)量體系的建立和實施(10)質(zhì)量體系的進(jìn)一步改進(jìn)與完善取得了質(zhì)量體系認(rèn)證證書,僅說明該企業(yè)的質(zhì)量體系已基本符合ISO9000質(zhì)量保證模式標(biāo)準(zhǔn)的要求。如果企業(yè)的最高管理者尚不滿足已建立的質(zhì)量體系,則還可以在原來質(zhì)量體系的基礎(chǔ)上增加GB/T19004-1(即ISO9004-1)和其他質(zhì)量管理指南中的使用內(nèi)容,建立一個更加全面的質(zhì)量管理體系。9.6軟件配置管理9.6.1軟件配置項9.6.2軟件配置管理9.6.1軟件配置項軟件配置項(SoftwareConfigurationItems,SCI)是軟件配置管理的對象生存周期內(nèi)產(chǎn)生的所有信息項。按IS09000-3的說明,配置項有:

(1)與合同、源代碼、過程、計劃和產(chǎn)品有關(guān)的文檔及數(shù)據(jù);

(2)目標(biāo)代碼和可執(zhí)行代碼;

(3)相關(guān)產(chǎn)品,包括軟件工具、庫內(nèi)的可復(fù)用件、外購軟件等。隨著軟件過程的進(jìn)展,軟件配置項也迅速增長,并且變化接踵而至,主要變化表現(xiàn)在:(1)新的商業(yè)或市場環(huán)境,引起產(chǎn)品需求或業(yè)務(wù)規(guī)則的變化;(2)新的用戶要求;(3)企業(yè)結(jié)構(gòu)變化,導(dǎo)致項目優(yōu)先級或軟件工程隊伍結(jié)構(gòu)的變化:(4)預(yù)算或進(jìn)度的限制。9.6.2軟件配置管理軟件配置管理是一組用于在計算機軟件的整個生存周期內(nèi)管理變化的活動。按ISO9000-3的說明,軟件配置管理是一個管理學(xué)科,對配置項的開發(fā)和支持生存周期給予技術(shù)上和管理上的指導(dǎo)。配置管理的應(yīng)用取決于項目的規(guī)模、復(fù)雜程度和風(fēng)險大小。軟件配置管理不同于軟件維護(hù),最主要的一點是軟件配置管理是在軟件項目開始時啟動、僅當(dāng)軟件終止運行后才結(jié)束的一組跟蹤和控制變化的活動。實施軟件配置管理主要有以下任務(wù):9.6.2軟件配置管理1.制訂配置管理計劃按IS09000-3的說明,配置管理計劃的內(nèi)容如下:

(1)負(fù)責(zé)配置管理的組織以及每一管理組織的職責(zé);

(2)需要進(jìn)行的配置管理活動;

(3)所使用的配置管理工具、技術(shù)和方法;

(4)將軟件配置項置于配置控制下的時機。

2.確定配置標(biāo)識對軟件配置項進(jìn)行控制的第一步便是命名,制訂適當(dāng)?shù)拿?guī)則是標(biāo)識配置的重要任務(wù)。對命名的要求為:①惟一性,避免重名,造成混亂;②可追溯性,使命名能反映配置項間的關(guān)系。9.6.2軟件配置管理3.進(jìn)行配置控制,實施變更管理其主要任務(wù)如下:

(1)分析變更,依據(jù)成本/效益和涉及到的技術(shù)等確定是否實施變更;

(2)記錄并追蹤變更信息;

(3)確保變更在受控條件下進(jìn)行。9.6.2軟件配置管理4.配置審計

配置審計的目的是要保證整個軟件生存周期中各項產(chǎn)品在技術(shù)上和管理上的完整性。同時,還要確保所有文檔內(nèi)容的變動不超出當(dāng)初確定的要求范圍。配置審計詢問并回答如下問題:

(1)是否完成了工程變更順序中規(guī)定的變更?是否加入了任意附加的修改?

(2)是否經(jīng)過正式的技術(shù)復(fù)審評估其技術(shù)正確性?

(3)是否遵循了軟件工程標(biāo)準(zhǔn)?

(4)變更在配置項中是否被強調(diào)?是否說明了變更日期和變更者?配置對象的屬性是否反映了變更?9.6.2軟件配置管理

(5)是否遵循了標(biāo)記變更、記錄變更、報告變更的軟件配置管理過程?

(6)所有相關(guān)的軟件配置項是否都已正確地做了更新?5.記錄并報告配置狀態(tài)配置狀態(tài)報告對每一項變更記錄以下內(nèi)容:

(1)由誰完成;

(2)發(fā)生了什么:

(3)為什么發(fā)生;

(4)什么時候發(fā)生的;

(5)有什么影響。9.6.2軟件配置管理

6.版本控制版本控制用來管理在軟件工程過程中所創(chuàng)建的配置項的不同版本,是對系統(tǒng)不同版本進(jìn)行標(biāo)識和跟蹤的過程。版本標(biāo)識的目的是便于對版本加以區(qū)分,便于檢索和跟蹤,并顯示各版本之間的關(guān)系。版本標(biāo)識的方法有如下幾種:(1)號碼版本標(biāo)識。如V1.0、V1.1、VI.2。(2)以符號命名版本標(biāo)識。如V1/WindowsNT/DBServer(3)屬性版本標(biāo)識。如Windows20009.6.2軟件配置管理

7.發(fā)行管理和交付系統(tǒng)發(fā)行是分配給客戶一個系統(tǒng)版本。每次發(fā)行都應(yīng)有新的功能或是針對不同的硬件平臺,且通常軟件系統(tǒng)的版本數(shù)要比發(fā)行次數(shù)多。一次發(fā)行除提供一個可執(zhí)行程序或一套程序外,還包括:

(1)配置文件,規(guī)定發(fā)行所做的特定配置;

(2)數(shù)據(jù)文件,系統(tǒng)運行所需的數(shù)據(jù);

(3)安裝程序,說明系統(tǒng)如何安裝到目標(biāo)機器上;

(4)電子文檔或書面文檔,描述系統(tǒng)。9.7CMM軟件能力成熟度模型9.7.1CMM的基本概念9.7.2軟件能力成熟度等級9.7.3關(guān)鍵過程區(qū)域9.7.4CMM評估的實施9.7.1CMM的基本概念

1.軟件過程

軟件過程包括一個軟件企業(yè)(或軟件項目開發(fā)小組,下同)在計劃、開發(fā)和維護(hù)一個軟件時所執(zhí)行的一系列活動,包括工程技術(shù)活動和軟件管理活動。通常用軟件過程能力來描述軟件企業(yè)遵循其軟件過程能夠?qū)崿F(xiàn)的“預(yù)期”結(jié)果;用軟件過程性能表示軟件企業(yè)遵循其軟件過程能夠得到的“實際”結(jié)果。軟件過程成熟度用于表達(dá)一個特定的軟件過程被明確和有效地定義、管理、測量和控制的程度。9.7.1CMM的基本概念

2.關(guān)鍵過程域

所謂過程域,是指互相關(guān)聯(lián)的若干軟件實踐活動和有關(guān)基礎(chǔ)設(shè)施的一個集合。對實施關(guān)鍵過程域起關(guān)鍵作用的措施、活動、規(guī)程以及相關(guān)基礎(chǔ)設(shè)施,可稱為關(guān)鍵實踐(KeyPractice)。關(guān)鍵過程域的目標(biāo),就是通過它所包含的關(guān)鍵實踐的實施來達(dá)到的。

3.CMM模型

CMM模型是用來確定一個軟件過程的成熟程度以及指明如何提高過程成熟度的參考模型。9.7.2軟件能力成熟度等級在CMM中把軟件過程分成五個階段,并把這些階段排序,形成五個逐層提高的等級,如圖9-10所示。9.7.2軟件能力成熟度等級1.初始級(混沌的軟件過程)

軟件過程的特征是無序的,有時甚至是混亂的。幾乎沒有什么過程是經(jīng)過定義的,項目能否成功完全取決于個人能力。2.可重復(fù)級(經(jīng)過訓(xùn)練的軟件過程)

建立了基本的項目管理過程,以追蹤成本、進(jìn)度和功能性。必要的過程規(guī)范已經(jīng)建立起來了,使得可以重復(fù)以前類似項目所取得的成功。9.7.2軟件能力成熟度等級3.已定義級(標(biāo)準(zhǔn)、一致的軟件過程)用于管理和工程活動的軟件過程已經(jīng)文檔化和標(biāo)準(zhǔn)化,并且已經(jīng)集成到整個組織的軟件過程中。所有項目都使用文檔化的、組織批準(zhǔn)的過程來開發(fā)和維護(hù)軟件。4.定量管理級(可預(yù)測的軟件過程)已收集了軟件過程和產(chǎn)品質(zhì)量的詳細(xì)度量數(shù)據(jù),使用這些詳細(xì)的度量數(shù)據(jù),能夠定量地理解和控制軟件過程和產(chǎn)品。9.7.2軟件能力成熟度等級5.優(yōu)化級(能持續(xù)改善的軟件過程)通過定量的反饋能夠?qū)崿F(xiàn)持續(xù)的過程改進(jìn),這些反饋是從過程及對新想法和技術(shù)的測試中獲得的。這一級包含了第4級的所有特征。處于第5級的組織的目標(biāo)是持續(xù)地改進(jìn)軟件過程。經(jīng)驗表明,提高一個完整的成熟度等級通常需要花18個月到3年的時間,但是從第1級上升到第2級有時要花3年甚至5年時間。

9.7.3關(guān)鍵過程區(qū)域除“初始級”外,每個成熟度等級均包含幾個關(guān)鍵過程域。為了達(dá)到一個成熟度等級,必須實現(xiàn)該等級上的全部關(guān)鍵過程域9.7.3關(guān)鍵過程區(qū)域(1)需求管理:在客戶和軟件項目之間建立對客戶需求的共同理解。在取得關(guān)于客戶需求的共識后,與客戶簽訂協(xié)議,作為軟件項目策劃和管理的基礎(chǔ)。(2)軟件項目策劃:制訂軟件工程和軟件項目管理的合理的計劃。這些計劃是管理軟件項目的必要基礎(chǔ)。(3)軟件項目跟蹤和監(jiān)督:建立適當(dāng)?shù)膶嶋H進(jìn)展的跟蹤和監(jiān)督制度,使管理者在軟件項目實施情況明顯偏離軟件計劃時能及時采取有效措施。(4)軟件子合同管理:選擇合格的軟件分承包商,并有效地管理他們。9.7.3關(guān)鍵過程區(qū)域(5)軟件質(zhì)量保證:提供對軟件項目所采用的過程和所構(gòu)造的產(chǎn)品的某種可視性和透明性,使管理者能較容易地發(fā)現(xiàn)軟件過程和產(chǎn)品的質(zhì)量問題,以便采取及時有效的措施。(6)軟件配置管理:在整個軟件生存周期中建立和維護(hù)軟件產(chǎn)品的完整性和一致性。(7)組織過程焦點:規(guī)定組織在提高整體過程能力、改進(jìn)軟件過程活動方面的責(zé)任。(8)組織過程定義:總結(jié)和保持一組便于使用的軟件過程的成功的實踐經(jīng)驗,以便使項目的過程實施能得到改進(jìn),為組織獲得積累性的長期效益奠定基礎(chǔ)。(9)培訓(xùn)大綱:培訓(xùn)個人的技能和知識,以提高其執(zhí)行任務(wù)的質(zhì)量和效率。9.7.3關(guān)鍵過程區(qū)域(10)集成軟件管理:將軟件工程活動和軟件管理活動集成為一個協(xié)調(diào)的、已定義的軟件過程。(11)組間協(xié)調(diào):制訂組間協(xié)作的方法。組間協(xié)調(diào)是集成軟件管理中涉及多學(xué)科的一個方面,它將延伸到軟件工程學(xué)科之外。(12)軟件工程產(chǎn)品:一致地執(zhí)行妥善定義的軟件工程過程,實現(xiàn)全面徹底的軟件工程化。(13)同行專家評審:盡早且高效地消除軟件工作產(chǎn)品中的缺陷。(14)定量過程管理:為已定義的過程建立一套詳細(xì)的性能度量機制。9.7.3關(guān)鍵過程區(qū)域(15)軟件質(zhì)量管理:為產(chǎn)品和過程設(shè)立質(zhì)量目標(biāo),度量軟件過程和產(chǎn)品。(16)技術(shù)變更管理:識別能帶來好處的新技術(shù)(即工具、方法和過程),并以有序的方式引進(jìn)這些新技術(shù)。(17)過程變更管理:持續(xù)不斷地改進(jìn)組織中所采用的軟件過程,以改進(jìn)軟件質(zhì)量、提高生產(chǎn)率和縮短產(chǎn)品開發(fā)周期。(18)缺陷預(yù)防:判斷缺陷出現(xiàn)的原因,并防止其再度出現(xiàn)。9.7.4CMM評估的實施

CMM評估要遵循SEI的CAF(CMMAssessmentFrame-work)規(guī)范,由CMU/SEI授權(quán)的主任評估師(LeadAssessor)領(lǐng)導(dǎo)一個評審小組進(jìn)行。目前使用的CMM評估方法主要有兩種:一種稱為CBA-SCE(CMM-BasedAppraisalforSoftwareCapabilityEstimation),主要用于CMM對機構(gòu)的軟件能力進(jìn)行評估,由機構(gòu)外部的評估小組對該機構(gòu)的軟件能力實施評估。另一種稱為CBA-IPI(CMM-BasedAppraisalforInternalProcessImprovement),主要用于CMM對內(nèi)部的過程改進(jìn)實施評估,由機構(gòu)內(nèi)部和外部人員聯(lián)合組成評估小組,針對軟件機構(gòu)本身進(jìn)行評估。9.8軟件工程標(biāo)準(zhǔn)與軟件文檔9.8.1軟件工程標(biāo)準(zhǔn)9.8.2軟件文檔的編寫

9.8.1軟件工程標(biāo)準(zhǔn)軟件工程標(biāo)準(zhǔn)的類型是多方面的,我國國家標(biāo)準(zhǔn)GB/T15538-1995《軟件工程標(biāo)準(zhǔn)分類法》給出了軟件工程標(biāo)準(zhǔn)的分類,包括:(1)過程標(biāo)準(zhǔn)(如方法、技術(shù)、度量等)——它同開發(fā)一個產(chǎn)品或從事一項服務(wù)的一系列活動或操作有關(guān)。(2)產(chǎn)品標(biāo)準(zhǔn)(如需求、涉及、不見、描述、計劃、報告等)——它涉及事務(wù)的格式或內(nèi)容。(3)行業(yè)標(biāo)準(zhǔn)(如職業(yè)認(rèn)證、許可、學(xué)習(xí)課程等)一一它涉及軟件工程行業(yè)的所有方面。(4)記號標(biāo)準(zhǔn)(如術(shù)語、表示法、語言等)——它論述了在軟件工程行業(yè)范圍內(nèi),以惟一的一種方式進(jìn)行交流的方法。9.8.2軟件文檔的編寫文檔是指某種數(shù)據(jù)媒體和其中所記錄的數(shù)據(jù)。在軟件工程中,文檔用來表示對需求、工程或結(jié)果進(jìn)行描述、定義、規(guī)定、報告或認(rèn)證的任何書畫或圖示的信息。它們描述和規(guī)定了軟件設(shè)計和實現(xiàn)的細(xì)節(jié),說明使用軟件的操作命令。高質(zhì)量文檔對于轉(zhuǎn)讓、變更、修改、擴(kuò)充和使用文檔,對于發(fā)揮軟件產(chǎn)品的效益有著重要的意義。9.8.2軟件文檔的編寫

1.軟件文檔的要求

(1)及時性(2)完整性(3)實用性(4)規(guī)范性

2.軟件文

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論