本文主要從CMM和CMMI的要求出發,介紹了標準主要涉及的配置管理內容,并對相應內容進行初步地說明,最后提供了一個配置管理在項目實施的指南和一個在組織中部署配置管理的模型。
1 配置管理內容的邏輯關系
在CMM和CMMI中,將配置管理的目的定義為“建立和維護產品的完整性”,這個目標沒有提到對項目管理的支持,也就是說,它定義的配置管理的目標比當前業界對配置管理的認識有些縮小。但是,仔細分析可以發現“建立和維護產品的完整性”是其他配置管理目標的基礎。下面就從這個目標出發進行分析。邏輯關系見下圖:
配置完整性(對標準的理解)
1. 產品完整性:就是項目提交的工作成果是“產品集合完整、子產品的正確”的
2. 產品集合完整:產品包含的子產品(配置項)是完整的
3. 子產品的正確:子產品(配置項)達到了需求要求,滿足標準、規程的要求
邏輯關系分析
1. “基線管理”支持“產品集合完整”,明確產品的“子產品”(配置項)集合,并進行管理和控制
2. “配置項管理”,提供了了對子產品(配置項)的控制管理,支持“子產品的正確”
3. “變更管理”,同時支持“產品集合完整、子產品的正確”,用于控制子產品(配置項)和產品(基線)的變更
4. “配置標示”,建立對配置項(子產品)的識別、命名,支持“配置項管理”
5. “版本控制”,控制配置項(子產品)生命歷程,保留配置項(子產品)演進歷史
6. “過程管理”,就是對配置項、基線的建立、變更的狀態標示、過程控制,保證產品(或子產品)按照規定的流程進行了操作;例如“配置項”進入“基線”的過程包括:配置項標示、產品驗證、進入配置、配置審計等
7. “配置計劃”、“配置庫管理”、“配置審計”、“配置報告”等是整個配置管理得支持系統。提供了配置管理“可視性”和監督管理
2 配置和配置項
在配置管理中,“配置”和“配置項”是重要的概念,“配置”是在技術文檔中明確說明并最終組成軟件產品的功能或物理屬性。因此“配置”包括了即將受控的所有產品特性,其內容及相關文檔,軟件版本,變更文檔,軟件運行的支持數據,以及其他一切保證軟件一致性的組成要素,相對與硬件類配置,軟件產品的“配置”包括更多的內容并具有易變性。
受控軟件經常被劃分為各類配置項(Configuraion items, CIs),這類劃分是進行軟件配置管理的基礎和前提,CIs是邏輯上組成軟件系統的各組成部分。比如一個軟件產品包括幾個程序模塊,每個程序模塊及其相關文檔和支撐數據可能被命名為一個CI。一個系統包括的CIs的數目是一個與設計密切相關的問題。一個純軟件的CI通常也稱之為軟件配置項(CSCI)。
現在所有的配置管理工具均提供對配置項的管理工具,包括(Check in和Check out機制的 )版本管理和版本標號功能。由于版本和標號管理比較繁瑣,一般推薦使用配置管理工具,減少事務性工作。
3 基線
在配置管理系統中,基線就是一個CI或一組CIs在其生命周期的不同時間點上通過正式評審而進入正式受控的一種狀態,而這個過程被稱為“基線化”。每一個基線都是其下一步開發的出發點和參考點;確定了元素(配置項)的一個版本,且只確定一個版本。一般情況下,基線一般在指定的里程碑處創建,并與項目中的里程碑保持同步
一般地,第一個基線包含了通過評審的軟件需求,因此稱之為“需求基線”,通過建立這樣一個基線,受控的系統需求成為進一步軟件開發的出發點,對需求的變更被正式初始化、評估。受控的需求還是對軟件進行功能評審的基礎。
每個基線都將接受配置管理的嚴格控制,對其的修改將嚴格按照變更控制要求的過程進行,在一個軟件開發階段結束時,上一個基線加上增加和修改的基線內容形成下一個基線,這就是“基線管理”的過程。
基線具有以下屬性:
通過正式的評審過程建立
基線存在于基線庫中,對基線的變更接受更高權限的控制
基線是進一步開發和修改的基準和出發點
進入基線前,不對變化進行管理或者較少管理
進入基線后,對變化進行有效管理,而且這個基線作為后繼續工作的基礎
不會變化的東西不要納入基線
變化對其他沒有影響的可以不納入基線 建立基線的好處:
重現性:及時返回并重新生成軟件系統給定發布版的能力,或者是在項目中的早些時候重新生成開發環境的能力。當認為更新不穩定或不可信時,基線為團隊提供一種取消變更的方法。
可追蹤性:建立項目工件之間的前后繼承關系。目的是確保設計滿足要求、代碼實施設計以及用正確代碼編譯可執行文件。
版本隔離:基線為開發工件提供了一個定點和快照,新項目可以從基線提供的定點之中建立。作為一個單獨分支,新項目將與隨后對原始項目(在主要分支上)所進行的變更進行隔離。 4 基線、配置、配置項的關系
基線的組成,以及配置項和配置的關系如下圖:
基線管理的步驟:
1、在開發前確定基線的“配置”
2、基線批準前,根據“配置”檢查配置項是否齊備
3、對各個配置項,確認其版本的正確性
4、對每個配置項建立基線標志,
例如上圖為:測試基線=(配置項A=1,配置項B=1,配置項C=1)
alpha版=(配置項A=2,配置項B=1,配置項C=1)
beta版=(配置項A=3,配置項B=3,配置項C=2)
產品基線=(配置項A=4,配置項B=4,配置項C=4)
5、基線變更管理
6、基線的各類報告和審計信息
針對某個具體得項目,可以根據基線的內容,建立一個基線信息的跟蹤表,例如如下:
[注]:被色塊覆蓋的表示,此配置項屬于對應列的基線
[注]:在色塊的欄目填寫對應配置項的版本號
文章來源于領測軟件測試網 http://www.kjueaiud.com/