第四講軟件配置管理_第1頁(yè)
第四講軟件配置管理_第2頁(yè)
第四講軟件配置管理_第3頁(yè)
第四講軟件配置管理_第4頁(yè)
第四講軟件配置管理_第5頁(yè)
已閱讀5頁(yè),還剩81頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

第四講軟件配置管理本章內(nèi)容提要軟件配置管理的作用軟件配置管理的相關(guān)概念軟件配置管理過(guò)程軟件配置管理工具CVS第一節(jié)軟件配置管理的作用服務(wù)器存儲(chǔ)所有文檔和源程序,由版本控制系統(tǒng)管理程序員1程序員n下載提交下載提交……團(tuán)隊(duì)開(kāi)發(fā)的一般模式安裝有版本控制系統(tǒng)客戶端不同程序員對(duì)程序的更改會(huì)產(chǎn)生沖突程序員A程序員Bcommon-function.javacommon-function.java修改修改添加了函數(shù)checkStringlength()添加了函數(shù)checkDate()服務(wù)器提交提交程序完整性受到破壞軟件項(xiàng)目中可能遇到如下的問(wèn)題:找不到某個(gè)文件的歷史版本;開(kāi)發(fā)人員使用錯(cuò)誤的程序版本;開(kāi)發(fā)人員未經(jīng)授權(quán)修改代碼或文檔;人員流動(dòng),交接工作不徹底;無(wú)法重新編譯軟件的某個(gè)歷史版本;因協(xié)同開(kāi)發(fā),或者異地開(kāi)發(fā),版本變更混亂導(dǎo)致整個(gè)項(xiàng)目失??;……

軟件項(xiàng)目進(jìn)行中面臨的一個(gè)主要問(wèn)題是持續(xù)不斷的變化,變化可能導(dǎo)致混亂,而軟件配置管理就是用于控制變化。

軟件配置管理(SoftwareConfigurationManagement,SCM)是指一套管理軟件開(kāi)發(fā)和維護(hù)過(guò)程中所產(chǎn)生的各種中間軟件產(chǎn)品的方法和規(guī)則。它是控制軟件系統(tǒng)演變的學(xué)科。中間軟件產(chǎn)品和用于創(chuàng)建中間軟件產(chǎn)品的信息都應(yīng)處于軟件配置管理之下。軟件配置管理的目標(biāo)標(biāo)志變更控制變更確保變更正確實(shí)現(xiàn)向受變更影響的組織和個(gè)人報(bào)告變更記錄軟件產(chǎn)品的演化過(guò)程。確保軟件開(kāi)發(fā)者在軟件生命周期中的各個(gè)階段都能得到精確的產(chǎn)品配置。最終保證軟件產(chǎn)品的完整性、一致性、可追溯性。軟件配置管理的效果版本控制:采用相應(yīng)的流程和工具,對(duì)軟件開(kāi)發(fā)過(guò)程中產(chǎn)生的各種文件的版本進(jìn)行管理。是軟件配置管理的核心內(nèi)容。變更管理:為防止開(kāi)發(fā)人員對(duì)軟件的隨意變更而進(jìn)行的管理上的審核過(guò)程,包括變更請(qǐng)求、變更評(píng)估、變更批準(zhǔn)/拒絕、變更實(shí)現(xiàn)。其它:配置審計(jì)、配置狀態(tài)統(tǒng)計(jì)等。軟件配置管理的主要功能本章內(nèi)容提要軟件配置管理的作用軟件配置管理的相關(guān)概念軟件配置管理過(guò)程軟件配置管理工具CVS軟件配置項(xiàng)(SoftwareConfigurationItem,SCI)

軟件配置管理的對(duì)象,一個(gè)軟件配置項(xiàng)是項(xiàng)目中一個(gè)特定的、可文檔化的工作產(chǎn)品集。常見(jiàn)的軟件配置項(xiàng):需求規(guī)格說(shuō)明書、設(shè)計(jì)規(guī)格說(shuō)明書、源代碼、測(cè)試計(jì)劃、測(cè)試用例、用戶手冊(cè)。構(gòu)造軟件的工具和軟件賴以運(yùn)行的環(huán)境也常常列入配置管理的范疇。第二節(jié)軟件配置管理的相關(guān)概念基線(Baseline)

已經(jīng)正式通過(guò)復(fù)審和批準(zhǔn)的某規(guī)約和產(chǎn)品,它因此可作為進(jìn)一步開(kāi)發(fā)的基礎(chǔ),并且只能通過(guò)正式的變化控制過(guò)程來(lái)改變。基線通常標(biāo)志開(kāi)發(fā)過(guò)程一個(gè)階段的結(jié)束(里程碑)軟件配置項(xiàng)基線配置項(xiàng)非基線配置項(xiàng)軟件開(kāi)發(fā)各個(gè)階段基線圖示系統(tǒng)工程需求分析軟件設(shè)計(jì)程序編寫測(cè)試系統(tǒng)提交系統(tǒng)規(guī)格說(shuō)明軟件需求規(guī)格說(shuō)明軟件設(shè)計(jì)說(shuō)明源代碼測(cè)試計(jì)劃、過(guò)程、數(shù)據(jù)可運(yùn)行系統(tǒng)軟件配置控制委員會(huì)(SoftwareConfigurationControlBoard,SCCB)

負(fù)責(zé)管理軟件配置項(xiàng)變更的組織。評(píng)估變更批準(zhǔn)/拒絕變更申請(qǐng)?jiān)陧?xiàng)目生存期內(nèi)規(guī)范變更申請(qǐng)流程對(duì)變更進(jìn)行反饋與項(xiàng)目管理層溝通本章內(nèi)容提要軟件配置管理的作用軟件配置管理的相關(guān)概念軟件配置管理過(guò)程軟件配置管理工具CVS第三節(jié)軟件配置管理過(guò)程軟件配置管理過(guò)程包括7項(xiàng)基本活動(dòng):(1)制定配置管理計(jì)劃(2)識(shí)別和標(biāo)志配置項(xiàng)(3)建立配置管理環(huán)境(4)配置項(xiàng)的版本控制(5)基線變更管理(6)配置審核(7)配置狀態(tài)統(tǒng)計(jì)形成配置管理計(jì)劃規(guī)劃配置管理任務(wù)評(píng)審配置計(jì)劃參加項(xiàng)目規(guī)劃(1)制定配置管理計(jì)劃配置管理組織及其職責(zé)配置管理工具和配置庫(kù)的組織結(jié)構(gòu)配置項(xiàng)標(biāo)志和基線定義變更管理流程配置審核和配置狀態(tài)統(tǒng)計(jì)配置管理計(jì)劃的主要內(nèi)容(2)識(shí)別和標(biāo)志配置項(xiàng)將軟件項(xiàng)目中需要進(jìn)行控制的工作產(chǎn)品定義為配置項(xiàng)(SCI)。為每一個(gè)配置項(xiàng)分配唯一的標(biāo)志。建立配置項(xiàng)間的對(duì)應(yīng)關(guān)系。配置項(xiàng)分為兩類:基本配置項(xiàng):軟件開(kāi)發(fā)者在項(xiàng)目開(kāi)發(fā)過(guò)程中所創(chuàng)建的基本工作單元。集成配置項(xiàng):一個(gè)集成配置項(xiàng)是基本配置項(xiàng)或其它集成配置項(xiàng)的集合。體系結(jié)構(gòu)設(shè)計(jì)數(shù)據(jù)庫(kù)設(shè)計(jì)詳細(xì)設(shè)計(jì)基本配置項(xiàng)設(shè)計(jì)規(guī)格說(shuō)明集成配置項(xiàng)校務(wù)管理系統(tǒng)需求規(guī)格說(shuō)明招生管理學(xué)生日常管理教務(wù)管理通用功能……配置項(xiàng)標(biāo)志規(guī)范舉例QTD-School–RM–SRS-v1.0公司:3個(gè)字符項(xiàng)目:最長(zhǎng)10個(gè)字符類型:最長(zhǎng)5個(gè)字符編號(hào):最長(zhǎng)8位數(shù)字/字符版本號(hào):Vm.n注意:配置項(xiàng)標(biāo)識(shí)并不是指程序/文檔文件的文件名,而是該程序/文檔作為一個(gè)配置項(xiàng)的標(biāo)識(shí)。建立配置項(xiàng)間的關(guān)系招生管理需求規(guī)約校務(wù)管理系統(tǒng)需求規(guī)格說(shuō)明測(cè)試用例集Apartofinterrelated可使用某種模塊互聯(lián)語(yǔ)言(ModuleInterconnectionlanguage,MIL)來(lái)描述配置項(xiàng)之間的關(guān)系。NarayanaswamyK.,W.Scacchi.MaintainingConfigurationsofEvolvingSoftwareSystems.IEEETrans.SoftwareEngineering,vol.SE-13,no.3,March1987.(3)建立配置管理環(huán)境配置管理環(huán)境是用于進(jìn)行軟件配置管理的系統(tǒng)環(huán)境,其中最重要的是配置管理庫(kù),簡(jiǎn)稱配置庫(kù)。配置庫(kù)存儲(chǔ)配置項(xiàng)(SCI)、修改請(qǐng)求、變化記錄等,并提供對(duì)庫(kù)中所存儲(chǔ)文件的版本控制。為不同的開(kāi)發(fā)人員分配不同的訪問(wèn)配置庫(kù)的權(quán)限。一般需采用配置管理工具來(lái)建立配置庫(kù)。配置庫(kù)中文件的更改是受控的。受控庫(kù)新版本CheckinCheckout配置庫(kù)(4)配置項(xiàng)的版本控制

配置庫(kù)的檢入檢出和版本控制機(jī)制解決了軟件開(kāi)發(fā)中的兩個(gè)重要問(wèn)題:訪問(wèn)控制:保證具有相應(yīng)權(quán)限的人員才能修改配置項(xiàng)。并行控制:保證不同人員同時(shí)對(duì)某配置項(xiàng)進(jìn)行的修改不會(huì)互相覆蓋。服務(wù)器存儲(chǔ)所有文檔和源程序,由版本控制系統(tǒng)管理程序員1程序員n下載提交下載提交……團(tuán)隊(duì)開(kāi)發(fā)的一般模式安裝有版本控制系統(tǒng)客戶端SourceObjectLib配置庫(kù)SourceObjectLibSourceObjectLib程序員1的工作目錄程序員n的工作目錄CheckoutCheckoutSCI1.0SCI1.1SCI1.2SCI1.3SCI1.4SCI2.0SCI2.1SCI1.1.1SCI1.1.2配置項(xiàng)的演化圖(EvolutionGraph)對(duì)配置項(xiàng)的修改(不同版本間的差別)應(yīng)被記錄下來(lái)。更動(dòng)者(姓名及其身份);更動(dòng)日期和時(shí)間;被更動(dòng)SCI(名及其版本號(hào));更動(dòng)內(nèi)容及其位置;更動(dòng)原因;受此更動(dòng)影響的諸SCI名表。軟件產(chǎn)品不同類型的版本的特性和所包含的配置項(xiàng)應(yīng)被明確描述。保證可根據(jù)要求將配置項(xiàng)組合生成適用于不同應(yīng)用環(huán)境的正確的軟件產(chǎn)品版本。軟件產(chǎn)品版本編號(hào)方法數(shù)字順序型版本編號(hào)普通版本編號(hào)α和β版本編號(hào)屬性版本編號(hào)數(shù)字順序型版本編號(hào)普通版本編號(hào)產(chǎn)品的版本號(hào)由若干數(shù)字組成,數(shù)字之間用“.”分隔。一種典型的編號(hào)策略如下:

x.y.z,x為主版本號(hào),y為特征版本號(hào),z為缺陷修復(fù)版本號(hào)。主版本號(hào)的增加表示提供給客戶的主要產(chǎn)品功能的增強(qiáng)。特征版本號(hào)的增加表示產(chǎn)品新增了一些特征或做了一些重要修改。普通版本編號(hào)缺陷修復(fù)版本號(hào)的增加表示在軟件產(chǎn)品上做了一些缺陷修復(fù)工作。α和β版本編號(hào)在普通版本編號(hào)后面增加一個(gè)大寫字符A或者B來(lái)分別表示α版本或β版本。例如1.2.4A或1.2.4B。如果存在多次的α發(fā)布和β發(fā)布,可在A或B后面添加一個(gè)數(shù)字來(lái)說(shuō)明發(fā)布的次數(shù),例如:1.2.5A1,1.3.0B2。數(shù)字順序型版本編號(hào)把版本的重要屬性反映在標(biāo)識(shí)中??梢园ǖ膶傩杂校嚎蛻裘?、開(kāi)發(fā)語(yǔ)言、開(kāi)發(fā)狀態(tài)、硬件平臺(tái)、生成日期等。例如:

J2SDK.v.l.2.2:10/31/2000-18:00,nativethreads,jit-122

包含的信息豐富,方便了查詢和管理,版本間的關(guān)系易于保持,但由于太復(fù)雜,一般只用于軟件組織內(nèi)部的管理。屬性版本編號(hào)(5)基線變更管理基線變更管理過(guò)程變更請(qǐng)求變更評(píng)估變更批準(zhǔn)/拒絕變更實(shí)現(xiàn)變更請(qǐng)求項(xiàng)目名稱

變更申請(qǐng)人

提交時(shí)間

變更題目

緊急程度

變更具體內(nèi)容

變更影響分析

變更確認(rèn)處理結(jié)果

簽字

變更評(píng)估變更評(píng)估軟件變更分類技術(shù)影響分析接口影響分析進(jìn)度影響分析預(yù)算影響分析變更批準(zhǔn)或拒絕根據(jù)評(píng)估結(jié)果對(duì)變更作出決策:直接實(shí)現(xiàn)變更掛起或延遲變更拒絕變更對(duì)于批準(zhǔn)的變更,要確定其實(shí)現(xiàn)進(jìn)度:立即實(shí)現(xiàn)變更在特定的日期實(shí)現(xiàn)變更在軟件另外的版本中實(shí)現(xiàn)變更實(shí)現(xiàn)檢出(checkout)基線對(duì)基線進(jìn)行變更測(cè)試和驗(yàn)證檢入(checkin)基線配置管理活動(dòng)審核:確保所有配置管理活動(dòng)符合已批準(zhǔn)的軟件配置管理規(guī)程。基線審核:審核基線配置項(xiàng)的完整性和一致性,從而保證基線配置項(xiàng)可被正確地構(gòu)造。配置庫(kù)中是否包含了所有計(jì)劃納入的基線?基線自身的內(nèi)容是否完整?編譯所有的源代碼,檢查是否可產(chǎn)生最終軟件產(chǎn)品。檢查需求、設(shè)計(jì)與代碼間的一致性。(6)配置審核配置管理系統(tǒng)的狀態(tài)統(tǒng)計(jì)和評(píng)估變更請(qǐng)求的數(shù)量。變更管理活動(dòng)的執(zhí)行情況。配置管理系統(tǒng)存儲(chǔ)量的變化。配置管理系統(tǒng)和SCCB在運(yùn)作中發(fā)生異常的次數(shù)。(7)配置狀態(tài)統(tǒng)計(jì)和報(bào)告配置狀態(tài)報(bào)告每次配置的更改被批準(zhǔn)或?qū)崿F(xiàn)時(shí),都會(huì)產(chǎn)生一個(gè)配置狀態(tài)報(bào)告,通知相關(guān)人員:更改了哪些內(nèi)容?由誰(shuí)更改?什么時(shí)候更改?更改會(huì)產(chǎn)生哪些影響?對(duì)于大型項(xiàng)目的開(kāi)發(fā),配置狀態(tài)報(bào)告非常重要,它促進(jìn)了人員之間的通信。本章內(nèi)容提要軟件配置管理的作用軟件配置管理的相關(guān)概念軟件配置管理過(guò)程軟件配置管理工具CVS第四節(jié)軟件配置管理工具CVS軟件配置管理工具CVS概述CVS操作的示例1.軟件配置管理工具軟件配置管理工具的主要功能版本控制變更管理配置審核狀態(tài)統(tǒng)計(jì)(查詢和報(bào)告)問(wèn)題跟蹤(跟蹤缺陷和變更)訪問(wèn)控制和安全控制常用的配置管理工具ClearCase&ClearQuestCVSSubversion(SVN)PVCSHarvestVisualSourceSafe(VSS)2.CVS概述CVS(ConcurrentVersionsSystem,并發(fā)版本系統(tǒng))是一個(gè)被廣泛應(yīng)用的配置管理工具。

Unix和Linux的發(fā)行版一般都帶有CVS服務(wù)器,Eclipse內(nèi)建有CVS客戶端。

CVS是自由軟件,可免費(fèi)獲取其安裝包和源代碼。

CVS提供了多種途徑幫助開(kāi)發(fā)團(tuán)隊(duì)成員之間的版本同步和開(kāi)發(fā)通信,輔助解決版本沖突,提高協(xié)同開(kāi)發(fā)的效率。C/S模式CVS的幾個(gè)特性CVS服務(wù)器CVS客戶端1CVS客戶端2CVS客戶端n…網(wǎng)絡(luò)checkoutcheckin基于“拷貝—修改—合并”的并發(fā)控制客戶端checkout后,有文件的一份獨(dú)立拷貝。開(kāi)發(fā)者在自己的工作目錄中修改文件。若有版本沖突,則使用合并(merge)功能與其它開(kāi)發(fā)者的修改合并,然后提交(checkin)。

記錄不同版本之間的差別CVS的幾個(gè)特性CVS支持Unix、Linux、Windows、Mac平臺(tái)??蓮南螺d其安裝包和源代碼。CVS在Windows上的版本稱為CVSNT。WinCVS—Windows上的一個(gè)常用的CVS客戶端。可從/wincvs/下載其中文版。CVS安裝包的獲取3.CVS操作的簡(jiǎn)單示例創(chuàng)建倉(cāng)庫(kù)(repository)導(dǎo)入項(xiàng)目/模塊檢出項(xiàng)目/模塊修改并提交(檢入)文件檢出最新版本的文件取回文件的某個(gè)歷史版本文件比較配置管理工具的使用WincvsJBuilderEclipsewincvs的使用點(diǎn)擊系統(tǒng)_配置wincvs的使用點(diǎn)擊系統(tǒng)_登陸導(dǎo)入模塊導(dǎo)出模塊導(dǎo)出模塊導(dǎo)出模塊更新文件或者模塊更新文件或者模塊

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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)論