軟件配置管理計劃_第1頁
軟件配置管理計劃_第2頁
軟件配置管理計劃_第3頁
軟件配置管理計劃_第4頁
軟件配置管理計劃_第5頁
已閱讀5頁,還剩76頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第10章軟件配置管理計劃軟件項目中可能遇到的問題開發(fā)人員使用錯誤的版本修改程序開發(fā)人員未經(jīng)授權修改代碼或文檔,或修改的結果不能及時反映到各個相關部分;人員流動,交接工作不徹底造成軟件關鍵部件遺失;已修復的Bug在新版本中出現(xiàn);找不到某個文件的歷史版本;無法重新編譯某個歷史版本,使維護工作十分困難;因協(xié)同開發(fā)中,或者異地開發(fā),版本變更混亂導致整個項目失敗;……如何有效的進行軟件項目管理軟件項目進行中面臨的一個主要問題是持續(xù)不斷的變化。有效的項目管理能夠控制變化,以最有效的手段應對變化,不斷命中移動的目標。10.1概述軟件配置管理概述指一套管理軟件開發(fā)和軟件維護以及各種中間軟件產(chǎn)品的方法和規(guī)則。記錄軟件產(chǎn)品的演化過程確保軟件開發(fā)者在軟件生命周期中的各個階段都能得到精確的產(chǎn)品配置。最終保證軟件產(chǎn)品的完整性、一致性、追朔性、可控性主要思想和具體內(nèi)容在于版本控制,版本控制注意功能是追蹤變更配置管理定義軟件配置管理,縮寫為SCM(SoftwareconfigurationManagement),是一套規(guī)范、高效的軟件開發(fā)管理方法,同時也是提高軟件質(zhì)量的重要手段,它幫助開發(fā)團隊對軟件開發(fā)過程進行有效的變更控制,高效地開發(fā)高質(zhì)量的軟件。配置管理的使用取決于項目規(guī)模和復雜性以及風險水平。軟件配置管理是一套管理軟件開發(fā)和維護以及其中各種中間軟件產(chǎn)品的方法和規(guī)則,配置管理通過在特定的時刻選擇軟件配置,系統(tǒng)地控制對配置的修改,并在整個軟件生命周期中維護配置的完整性和可追蹤性。中間軟件產(chǎn)品和用于創(chuàng)建中間軟件產(chǎn)品的控制信息都應處于配置管理的控制下。配置管理的目標配置管理是對系統(tǒng)中配置項進行標識和定義的過程,通過控制某個配置項及其后續(xù)變更,記錄并報告配置項的狀態(tài)和變更要求,證明配置項的完整性和正確性實現(xiàn)。軟件配置的目標:軟件配置管理的各項工作是有計劃進行的。被選擇的項目產(chǎn)品得到識別,控制并且可以被相關人員獲取。已知別出項目產(chǎn)品的更改得到控制。使相關組別和個人及時了解軟件基線的狀態(tài)和內(nèi)容。配置管理的作用我(他)是誰?為什么我(他)在這里?為什么我(他)是某某?我(他)屬于哪里?配置管理主要功能支持并行開發(fā)。因開發(fā)和維護的原因,要求能夠?qū)崿F(xiàn)開發(fā)人員同時在同一個軟件模塊上工作,同時對同一個代碼部分作不同的修改,即使是跨地域分布的開發(fā)團隊也能互不干擾,協(xié)同工作,而又不失去控制。修訂版管理。跟蹤每一個變更的創(chuàng)造者、時間和原因,從而加快問題和缺陷的確定。版本控制。能夠簡單、明確地重現(xiàn)軟件系統(tǒng)的任何一個歷史版本。產(chǎn)品發(fā)布管理。管理、計劃軟件的變更,與軟件的發(fā)布計劃、預先定制好的生命周期或相關的質(zhì)量過程保持一致;項目經(jīng)理能夠隨時清晰地了解項目的狀態(tài)。建立(build)管理。基于軟件存儲庫的版本控制功能,實現(xiàn)建立過程自動化。過程控制。貫徹實施開發(fā)規(guī)范,包括訪問權限控制、開發(fā)規(guī)則的實施等。變更請求管理。跟蹤、管理開發(fā)過程中出現(xiàn)的缺陷、功能增強請求或任務,加強溝通和協(xié)作,能夠隨時了解變更的狀態(tài)。代碼共享。提供良好的存儲和訪問機制,開發(fā)人員可以共享各自的開發(fā)資源。軟件配置管理的主要活動配置識別;變更控制;狀態(tài)報告;配置審計;10.2配置管理的相關概念配置項配置項(ConfigurationItem,CI)指一個配置中的實體,它滿足一項最終使用功能,并能在給定的參考點上單獨標識。產(chǎn)品配置項(ProductConfigurationItem,

PCI)是指一個產(chǎn)品在其生命周期各個階段所產(chǎn)生的各種形式和各種版本的文檔、計算機程序、部件以及數(shù)據(jù)的集合。該集合中每一個元素成為該產(chǎn)品的一個配置項。屬于該產(chǎn)品組成部分的工作成果;屬于項目管理和機構支撐過程域產(chǎn)生的文檔;軟件配置項軟件配置項(SoftwareConfigurationItem,SCI)是項目定義其受控于軟件配置管理的項。每個項目的配置項也許會不同。一個軟件配置項是一個特定的、可文檔化的工作產(chǎn)品集,這些工作產(chǎn)品是生存期中產(chǎn)生或者使用的。常見配置項示例項目計劃書系統(tǒng)規(guī)格說明書軟件需求規(guī)格說明書設計規(guī)格說明書源代碼清單測試規(guī)格說明書版本、版本控制與配置管理版本軟件的每一個版本都是源代碼、文檔及數(shù)據(jù)以及相關的系統(tǒng)環(huán)境的一個收集,且各個版本都可能由不同的變種組成。版本控制與配置管理版本控制是CM(ConfigurationManagement)的關鍵部分版本控制不等同于配置管理版本控制是軟件配置管理重要部分,但不是配置管理的全部。配置項版本需求規(guī)格需求規(guī)格V1.1需求規(guī)格V1.2需求規(guī)格V1.3配置項類配置項實例基線定義基線提供了軟件生存期中各個開發(fā)階段的一個特定點一個(些)配置項形成并通過審核,即形成基線基線標志開發(fā)過程一個階段的結束和里程碑基線修改需要執(zhí)行正式的程序(IEEE)基線已經(jīng)正式通過復審和批準的某規(guī)約或產(chǎn)品,它因此可作為進一步開發(fā)的基礎,并且只能通過正式的變化控制過程改變。基線/基準配置項----成為基線的配置項,也就是經(jīng)過正式評審和認可的一組軟件配置項,是后續(xù)工作的基礎,例如:經(jīng)過批準的設計報告可作為軟件基準配置項,是編碼工作的基礎。非基線/基準配置項----沒有成為基線的配置項,也就是沒有正式評審認可的一組軟件配置項,例如設計報告的某一個版本,但是其不是最終批準的版本?;€由一組配置項組成,這些配置項構成了一個相對穩(wěn)定的邏輯實體?;€中配置項不能隨意修改?;€通常對應開發(fā)過程中的里程碑(Milestone)基線的本質(zhì)軟件工程活動從一個環(huán)節(jié)轉(zhuǎn)入另外一個環(huán)節(jié)時對階段產(chǎn)品或組件的標識。一個軟件項目需要建立的基線:需求基線。設計基線。開發(fā)基線。測試基線。發(fā)布基線。軟件開發(fā)各個階段基線圖示系統(tǒng)工程需求分析軟件設計程序編寫測試系統(tǒng)提交系統(tǒng)規(guī)格說明軟件需求規(guī)格說明軟件設計說明源代碼測試計劃、過程、數(shù)據(jù)可運行系統(tǒng)基線的作用把開發(fā)階段的工作劃分更明確,使連續(xù)的工作在這些點上斷開,以便于檢查和肯定階段成果。屬性名稱;標識符;版本;日期;ReleaseBuild軟件項目配置角色配置控制委員會SCCB評估變更批準變更申請在生存期內(nèi)規(guī)范變更申請流程對變更進行反饋與項目管理層溝通項目經(jīng)理制定項目的組織結構和配置管理策略。批準、發(fā)布配置管理計劃。決定項目起始基線和軟件開發(fā)工作里程碑。接受并執(zhí)行配置控制委員會的報告內(nèi)容。軟件項目配置角色配置管理員軟件配置管理工具的日常管理與維護。提交配置管理計劃。各配置項的管理與維護。執(zhí)行版本控制和變更控制方案。完成配置審計并提交報告。對開發(fā)人員進行相關的培訓。識別開發(fā)過程中存在的問題并制定解決方案。開發(fā)人員開發(fā)人員的職責就是根據(jù)項目組織確定的配置管理計劃和相關規(guī)定,按照配置管理工具的使用模型來完成開發(fā)任務。軟件項目配置角色系統(tǒng)集成員(SyslemIntegrationOfficer)集成修改。構建系統(tǒng)。完成對版本的日常維護。建立外部發(fā)布版本。QA人員QA人員需要對軟件配置管理有較深的認識,其主要工作是跟蹤當前項目的狀態(tài),測試,報告錯誤,并驗證其修復結果。配置管理員分類全職配置管理員開發(fā)員、配置管理員、測試員、項目經(jīng)理等這些角色都在一個小組內(nèi),配置管理角色會和其他角色由同一個員工兼任。兼職配置管理員一個新的項目時,項目經(jīng)理來申請一個配置管理員負責支持其項目的配置管理,但是這個配置管理員也會兼職從事其他項目的配置管理。10.3配置管理過程配置管理基本的活動配置標識審核狀態(tài)統(tǒng)計變更控制配置管理的基本過程1)配置項標識、跟蹤2)配置管理環(huán)境建立3)基線變更管理4)配置審計5)配置狀態(tài)統(tǒng)計6)配置規(guī)劃識別配置項識別配置項識別將置于配置管理之下的配置項和有關的工作產(chǎn)品。包括:交付給顧客的產(chǎn)品;制定內(nèi)部工作產(chǎn)品;采辦的產(chǎn)品、工具;其他用于創(chuàng)建和描述這些工作的實體;配置項標識識別產(chǎn)品的結構、產(chǎn)品的構件及其類型,并為其分配唯一的標識符。提供存取控制。同時找出需要跟蹤管理的中間產(chǎn)品,并維護其關系。配置項識別1識別過程描述;需求;設計;測試計劃和規(guī)程;測試結果;代碼;工具;接口描述;2分配唯一的標識號3確定每個配置項的重要特征4確定進入配置管理的時間5確定每個配置項的擁有者的責任6填寫配置項管理表7審批配置項管理表配置項標識、跟蹤將軟件項目中需要進行控制的部分拆分成基本單位。因為項目中要生成很多的過程文件。建立唯一的標識。建立相互間的對應關系,進行系統(tǒng)的跟蹤和版本控制,以確保項目過程中的產(chǎn)品與需求和規(guī)格的要求相一致。配置項拆分示例設計規(guī)格說明書

a.數(shù)據(jù)設計描述

b.總體結構設計描述

c.模塊設計描述

d.界面設計描述界面設計1界面設計2,。。。。

e.對象描述配置項拆分示例項目名稱_所屬階段_產(chǎn)品名稱_版本標識版本標識以V開頭版本號分三部分:主版本號、次版本號、內(nèi)部版本號QTD-School–RM–SRS-v1.0公司:3個字符項目:最長10個字符類型:最長5個字符編號:最長8位數(shù)字版本號:Vm.n配置項的跟蹤建立配置管理方案的步驟1組建配置管理方案構造小組;2對目標機構進行了解評估;3配置管理工具及其提供商評估;4制定實施計劃;5定義配置管理流程;6試驗項目的實施;7全面實施;創(chuàng)建基線并發(fā)行基線構造基線或發(fā)行基線的步驟1獲得CCB授權;2創(chuàng)建構造基線或發(fā)行基線;3形成文件;4使基線可用;配置管理環(huán)境建立軟件管理環(huán)境是為了更好地進行軟件配置管理的系統(tǒng)環(huán)境。軟件配置管理庫是用來存儲所有基線配置項及相關文件的等內(nèi)容的系統(tǒng),是在軟件產(chǎn)品的整個生存期中建立和維護軟件產(chǎn)品完整性的主要手段。軟件配置管理庫的作用記錄與配置相關的信息;利用庫中信息評價變更后果;從庫中提取配置管理過程的管理信息軟件配置庫的組成開發(fā)庫開發(fā)周期的某個階段,存放與該階段工作有關系的信息受控庫開發(fā)周期的某個階段結束時,存放做為該階段產(chǎn)品及其相關的信息,配置管理對其中的信息進行管理,也稱配置庫產(chǎn)品庫存放最終產(chǎn)品的軟件庫配置庫的建庫模式按配置項類型分類建庫;適用于通用的應用軟件開發(fā);按任務建庫;適用于專業(yè)軟件研發(fā)組織;受控操作包括建立控制點和建立報告與審查制度變更控制要素:同步控制和存取控制評審/驗證新版本變更控制流程CheckinCheckout受控庫配置庫例子版本控制版本控制是軟件配置管理的核心功能。所有置于配置庫中的元素都應自動予以版本標識,并保證版本命名的唯一性。配置項狀態(tài)草稿Draft正式發(fā)布Released正在修改Changing版本號規(guī)則0.YZ草稿X.Y正式X.YZ正在修改版本圖V1.0V1.2V1.1V1.3V1.4V2.02.1V1.1.1V1.1.2配置項版本控制流程1創(chuàng)建配置項2修改處于草稿狀態(tài)的配置項3技術評審或領導審批4正式發(fā)布5變更變更控制變更是信息系統(tǒng)的最普遍的特點配置管理的主要任務是對變更加以有效控制和管理,防止軟件在多變的情況下失控。項目變更的不可避免性用戶開發(fā)人員無序變更可能導致:基準失效;項目干系人沖突;資源浪費;項目執(zhí)行情況混亂;軟件項目變更的復雜性規(guī)模、版本;牽延性;內(nèi)部人員溝通協(xié)調(diào);項目變更的分類按性質(zhì):重大變更、重要變更、一般變更;按迫切性:緊急變更、非緊急變更;按發(fā)生的領域和階段:進度變更、成本變更、設計變更、范圍變更;按發(fā)生的空間:內(nèi)部環(huán)境變更、外部環(huán)境變更;項目變更產(chǎn)生的原因由于項目漸進明細的特性;常見變更原因:產(chǎn)品范圍定義過失或疏忽;項目范圍定義過失或疏忽;增值變更;應對風險緊急計劃或回避計劃;執(zhí)行中與基準不一致導致;外部事件;變更管理的基本原則建立項目基準、變更流程和變更控制委員會;基準管理;建立變更控制流程;明確組織分工;完整體現(xiàn)變更的影響;妥善保存變更產(chǎn)生的文檔,確保其完整、及時、準確、清晰,適當時候引入配置管理工具;變更控制流程變更控制流程變更控制流程直接實現(xiàn)變更掛起或延遲變更拒絕變更批準變更盡可能快的實現(xiàn)變更:期望的變更是修改開發(fā)基線中的一個配置項,只有解決了這個變更其他的工作才能展開。按照一個特定的日期實現(xiàn)變更:考慮項目內(nèi)或者項目外的事件,確定合適的日期實現(xiàn)變更。在另外的版本中實現(xiàn),出于技術或者運行等原因,期望與另外的變更一起發(fā)布。配置審計配置審計的任務是驗證配置項對配置標識的一致性;對配置項處理是否背離初始的規(guī)格說明;配置標識的準則是否得到遵循;變更控制規(guī)則是否已遵循;規(guī)格說明、項目產(chǎn)品和變更請求之間是否保持可追溯性;配置管理活動審計確保項目組成員所有的配置管理活動,符合軟件配置管理方針和規(guī)程?;€審計保證基線化軟件產(chǎn)品的完整性和一致性。配置審計的意義確保項目管理的有效性防止出現(xiàn)向用戶提交不適合的產(chǎn)品;確認記錄、文檔可追溯性;確認配置項在所要求的質(zhì)量控制下作為基線入庫保存……如何實施配置審計時機:產(chǎn)品交付或產(chǎn)品發(fā)布前;開發(fā)的階段工作結束之后;維護工作中;實施:項目經(jīng)理決定何時進行工作;指定配置審核人員;確定審核范圍;準備配置審核檢查單;審核文檔和記錄;發(fā)現(xiàn)不一致;記錄;消除問題;配置狀態(tài)報告有效的記錄和報告管理配置所需要的信息,目的是及時、準確的給出配置項的當前狀況,供相關人員了解,以加強配置管理工作。配置狀態(tài)統(tǒng)計記錄并報告配置項和修改請求的狀態(tài),并收集關于產(chǎn)品構件的統(tǒng)計信息。檢查配置管理系統(tǒng)以及內(nèi)容檢測配置項變更歷史配置狀態(tài)統(tǒng)計IEEE標準828-1998規(guī)定用于計算配置狀態(tài)的最小數(shù)據(jù)集包括:被批準的配置項配置項的所有請求的變化狀態(tài)配置項所有被批準的變更實現(xiàn)狀態(tài)配置狀態(tài)報告的內(nèi)容配置庫結構和相關說明;開發(fā)起始基線的構成;當前基線位置及狀態(tài);各基線配置項集成分支的情況;各私有開發(fā)分支類型的分布情況;關鍵元素的版本演進記錄;其他應予報告的事項。評估配置系統(tǒng)狀態(tài)需要的信息變更請求的數(shù)量,當然可以按照類別進行分類,例如:需求變更、文檔變更、設計變更、源碼變更等。變更請求的歷史報告,包括從編寫請求、請求復審、請求批準、請求實現(xiàn)、請求測試、請求接受等一系列活動所花費的時間和每個單項活動所花費的時間。配置管理系統(tǒng)以及SCCB在運作中發(fā)生異常的次數(shù)等。10.4配置管理計劃配置管理計劃過程形成配置管理計劃規(guī)劃配置管理任務計劃入庫評審配置計劃參加項目規(guī)劃配置管理計劃大綱基線定義版本控制定義變更控制過程變更委員會的管理變更控制紀錄制定配置管理計劃的步驟1建立并維護配置管理的組織方針2確定配置管理需要使用的資源配置管理工具;數(shù)據(jù)管理工具;歸檔和復制工具;數(shù)據(jù)庫程序;3分配責任配置管理人員的責任4培訓計劃5確定配置管理的項目干系人建立基線;審查配置管理系統(tǒng)報告和解決問題;評估配置項變更的影響;進行配置審核;6制定識別配置項的原則制定配置管理計劃的步驟7制定配置項管理表標號;名稱;特征;進入時間;8確定配置管理的軟硬件資源VSS;CVS;CLEARCASE;9制定基線計劃10制定配置庫備份計劃11制定變更控制規(guī)程申請人提出變更;配置管理員受理;配置管理員評估影響;CCB審批;實施變更;CCB審批變更結果;12制定審批計劃實施配置管理的建議對于小的企業(yè)或者小的項目,可以通過制定配置管理的過程規(guī)則,可以不使用配置管理工具,實現(xiàn)版本管理的功能。當然如果條件允許,使用工具更好。對于中小企業(yè)或者中小項目,可以通過制定過程規(guī)則,同時使用簡單的版本管理工具,實現(xiàn)部分配置管理功能。對于大企業(yè)或者大項目或者異地開發(fā)模式,必須配備專門的配置管理人員,同時,需要制定配置管理嚴密的過程規(guī)則和配置管理工其,盡可能多的實現(xiàn)配置管理功能。(模板)10.5配置管理工具配置管理工具必須認識到CM首先是一個方法,其次是一個過程,第三才是一系列的工具工具應具有的功能版本管理變更管理問題追蹤建立管理狀態(tài)統(tǒng)計(查詢和報告)配置審核訪問控制和安全控制配置管理工具應具備的功能并行開發(fā)支持:要求能夠?qū)崿F(xiàn)開發(fā)人員同時在同一個軟件模塊上工作,同時對同一個代碼部分作不同的修改,即使是跨地域分布的開發(fā)團隊也能互不干擾,協(xié)同工作,而又不失去控制。(對于這一點來說可能CVS比VSS做的更好,如果VSS不使用輔助工具SOS(SourceOffSite)的話,那個公司或者是團隊會把自己的VSS庫共享到Internet上)。履歷管理:也就是修改的歷史記錄的可追蹤性。能夠明確地知道什么時候,誰作了什么,為什么怎么做。從而達到管理和追蹤開發(fā)過程中危害軟件質(zhì)量以及影響開發(fā)周期的缺陷和變化。配置管理工具應具備的功能版本控制:能夠簡單、明確地取得軟件開發(fā)期間的任何一個歷史版本。過程控制:能夠貫徹、實施開發(fā)規(guī)范,包括訪問權限控制、開發(fā)規(guī)則的實施等。產(chǎn)品發(fā)布管理:軟件開發(fā)過程中的一個關鍵活動是提取工件的相關版本,以形成軟件系統(tǒng)的階段版本或發(fā)布版本,我們一般將其稱為穩(wěn)定基線。一個穩(wěn)定基線代表新開發(fā)活動的開始,而一系列定制良好的活動之后又會產(chǎn)生一個新的穩(wěn)定基線。有效地利用此項功能,在項目開發(fā)過程中可以至始至終管理、跟蹤工件版本間的關聯(lián)。建庫要考慮的內(nèi)容所支持的組件類型;版本策略;SCM模型;數(shù)據(jù)管理;系統(tǒng)生成的報告;用戶界面和查詢能力;可追溯性;自動構建方法;安全性;測試管理;定制化管理;集成;RationalClearCaseRational公司開發(fā)功能最強大、價格最昂貴的產(chǎn)品適用于復雜的并行開發(fā)、發(fā)布和維護。功能包括版本控制、工作空間管理、構造管理、過程控制。RationalClearCaseIBMRationalClearCase?

可為中型和大型團隊提供軟件資產(chǎn)管理(SAM)。管理從設計、編碼到測試的整個開發(fā)過程中的所有工件。統(tǒng)一變更管理(UnifiedChangeManagement)提供了開箱即用的過程支持。提供以下提高開發(fā)人員工作效率的特性:支持并行開發(fā)支持動態(tài)視圖的高級工作空間管理。與WebSphere?Studio和Microsoft?.NET等IDE的緊密集成出色的構建管理功能,并提供對主機開發(fā)的支持。支持多種平臺:WindowsUNIXLinuxMainframeHanskyFirefly做為Hansky

公司軟件開發(fā)管理套件中重要一員的Firefly,可以輕松管理、維護整個企業(yè)的軟件資產(chǎn),包括程序代碼和相關文檔。Firefly是一個功能完善、運行速度極快的軟件配置管理系統(tǒng),可以支持不同的操作系統(tǒng)和多種集成開發(fā)環(huán)境。Firefly基于真正的客戶/服務器體系結構,不依賴于任何特殊的網(wǎng)絡文件系統(tǒng),可以平滑地運行在不同的LAN、WAN環(huán)境中。項目管理人員使用Firefly可以有效

溫馨提示

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

評論

0/150

提交評論