软件工程知识——软件配置管理
軟件配置管理(Software configuration management,SCM)是指在開發過程中各階段,通過技術或行政手段對軟件產品及其開發過程和生命周期進行控制、規范的一系列措施。配置管理的目標是記錄軟件產品的演化過程,確保軟件開發者在軟件生命周期中各個階段都能得到精確的產品配置。
SCM過程分解為若干個過程元素,分別是制定軟件配置管理計劃、配置項入庫和基線發布、配置審計、產品構造與發布、變更控制、管理SCM工作、配置庫建立及使用。配置管理活動與軟件生命周期關聯如下圖所示:
?
圖:配置管理活動與軟件生命周期關聯圖
?
1、配置管理的意義
1)多重維護問題:解決多個用戶對同一文件進行修改所引起的版本不一致問題;
2)同時修改問題:解決多個用戶對同一文件同時進行修改所引起的資源沖突問題;
3)丟失版本或不知版本問題:即要明確保留哪個版本,銷毀哪個版本。
2、配置管理的主要內容
制定配置管理計劃、配置項識別、建立配置管理系統、基線化、建立配置庫、變更控制、配置狀態統計、配置審計
?
2、制定配置管理計劃
制訂配置管理計劃的主要步驟如下:
(1)建立并維護配置管理的組織方針
(2)確定配置管理需使用的資源
(3)分配責任
(4)培訓計劃
(5)確定“配置管理”的項目干系人,并確定其介入時機
(6)制訂識別配置項的準則
(7)制訂配置項管理表
(8)確定配置管理軟硬件資源
(9)制訂基線計劃
(10)制訂配置庫備份計劃
(11)制訂變更控制流程
(12)制訂審批計劃
?
3、配置識別和建立基線
配置識別:
確定需要納入配置管理的配置項
確定配置項的獲取時間和所有者
為識別的配置項分配唯一的標識
配置項:項目計劃書、需求文檔、設計文檔、源代碼、可執行代碼、測試用例
基線:指一個配置項在其生存周期的某一特定時間,被正式標明、固定并經正式批準的
版本。
可看作是一個相對穩定的邏輯實體,其組成部分不能被任何人隨意修改
對于配置管理,有以下三種基線:分配基線(需求)、功能基線(設計)和產品基線(測試)。
分配基線(Allocated Baseline)
分配基線指在軟件需求分析階段結束時,經過正式評審和批準的軟件需求規格說明。分配基線是最初批準的分配配置標識。
功能基線(Functional Baseline)
功能基線指在系統分析與軟件定義階段結束時,在經過正式評審和批準的系統設計規格說明書中對開發系統的規格說明;或是指在經過項目委托單位和項目承辦單位雙方簽字同意的協議書或合同中,所規定的對開發軟件系統的規格說明;或是由下級申請并經上級同意或直接由上級下達的項目任務書中所規定的對開發軟件系統的規格說明。功能基線是最初批準的功能配置標識。
產品基線(Product Baseline)
產品基線指在軟件組裝與系統測試階段結束時,經過正式評審和批準的有關軟件產品的全部配置項的規格說明。產品基線是最初批準的產品配置標識。
?
4、建立配置管理系統(SVN、VSS、CVS、配置庫)
配置庫:記錄配置項有關的所有信息,存放受控的配置項
動態庫、開發庫、程序員庫、工作庫
受控庫、主庫、系統庫
靜態庫、軟件倉庫、軟件產品庫
備份庫
建庫模式:按配置項類型分類建庫、按任務建庫
配置庫權限的定義和設置
R(Read)
C(Check Out/CheckIn)
A(Add/Rename/Delete)
D(Destory)
?
5、版本管理
配置項狀態:草稿、正式(評審后)、修改
配置項版本號規則
配置項的版本號與配置項的狀態緊密相關。
處于“草稿”狀態的配置項的版本號格式為:0.YZ
隨著草稿的不斷完善,YZ的取值應遞增。YZ的初值和增幅由開發者自己把握。
處于“正式發布”狀態的配置項的版本號格式為:X.Y
X為主版本號,取值范圍為1~9,Y為此版本號,取值范圍為1~9
配置項第一次“正式發布”時,版本號為1.0
如果配置項的版本升級幅度比較小,一般只增大Y值,X值保持不變。只有當配置項版本升級幅度比較大時,才允許增大X值
處于“正在修改”狀態的配置項的版本號格式為:X.Y.Z
配置項上在修改時,一般只增大Z值,X.Y值保持不變
當配置項修改完畢時,狀態重新成為“正式發布”時,將二值設置為0,增加X.Y值
?
6、變更控制
變更申請:變更申請人
變更評估(CCB)
變更實施:CM工程師、變更實施人
變更驗證與確認(CCB)
變更的發布(配置管理員)
基線的變更 :基線以內的。不用走。基線外要走變更流程
?
7、配置狀態報告:通用CASE工具自動生成
能夠及時、準備地給出配置項的當前狀況,加強配置管理工作
What:發生了什么事?
Who:誰做的此事?
When:此事是什么時候發生的?
Why:為什么做此事?
報告所有配置項以及變更請求的狀態
?
8、配置審計(配置審核)
變更控制的補充手段,來確保某一變更需求已被切實實現
配置項審計包括功能配置審計和物理配置審計。
配置審計內容包括:
(1)評估基線的完整性
(2)檢查配置記錄是否正確反映了配置項的配置情況
(3)審核配置項的結構完整性
(4)對配置項進行技術評審
(5)驗證配置項的完備性和正確性
(6)驗證是否符合配置管理標準和規程
配置審核的任務便是驗證配置項對配置標識的一致性。配置審核的實施是為了確保項目配置管理的有效性,體現配置管理的最根本要求,不允許出現任何混亂現象,如:
(1)防止出現向用戶提交不適合的產品,如交付了用戶手冊的不正確版本。
(2)防止不完善的實現,如開發出不符合初始規格說明或未按變更請求實施變更。
(3)找出各配置項間不匹配或不相容的現象。
(4)確認配置項已在所要求的質量控制審核之后作為基線入庫保存。
(5)確認記錄和文檔保持著可追溯性。
總結
以上是生活随笔為你收集整理的软件工程知识——软件配置管理的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 洛谷P5733、P5734、P5735、
- 下一篇: 洛谷P5703、P5704、P5705、