軟件配置管理(Software Configuration Management,SCM)是一種標識、組織和控制修改的技術。軟件配置管理應用于整個軟件工程過程。我們知道,在軟件建立時變更是不可避免的,而變更加劇了項目中軟件開發者之間的混亂。SCM活動的目標就是為了標識變更、控制變更、確保變更正確實現并向其他有關人員報告變更。從某種角度講,SCM是一種標識、組織和控制修改的技術,目的是使錯誤降為最小并最有效地提高生產效率。
軟件配置管理(Software Configuration Management,SCM)作為CMM 2級的一個關鍵域(Key Practice Area,KPA),在整個軟件的開發活動中占有很重要的位置。正如Pressman所說的:“軟件配置管理是貫穿于整個軟件過程中的保護性活動,它被設計來(1)標識變化,(2)控制變化,(3)保證變化被適當的發現,以及(4)向其他可能有興趣的人員報告變化! 所以,我們必須為軟件配置管理活動設計一個能夠融合于現有的軟件開發流程的管理過程,甚至直接以這個軟件配置管理過程為框架,來再造組織的軟件開發流程。
一、迅速發展的軟件配置管理
配置管理的概念源于美國空軍,為了規范設備的設計與制造,美國空軍1962年制定并發布了第一個配置管理的標準“AFSCM375-1,CM During the Development & Acquisition Phases”。
而軟件配置管理概念的提出則在20世紀60年代末70年代初。當時加利福利亞大學圣巴巴拉分校的 Leon Presser教授在承擔美國海軍的航空發動機研制合同期間,撰寫了一篇名為“Change and Configuration Control”的論文,提出控制變更和配置的概念,這篇論文同時也是他在管理該項目(這個過程進行過近一千四百萬次修改)的一個經驗總結。
Leon Presser在1975年成立了一家名為SoftTool的公司,開發了配置管理工具:Change and Configuration Control(CCC),這是最早的配置管理工具之一。
隨著軟件工程的發展,軟件配置管理越來越成熟,從最初的僅僅實現版本控制,發展到現在的提供工作空間管理、并行開發支持、過程管理、權限控制、變更管理等一系列全面的管理能力,已經形成了一個完整的理論體系。同時在軟件配置管理的工具方面,也出現了大批的產品,如:最著名的ClearCase;開源產品CVS;入門級工具Microsoft VSS;新秀Hansky Firefly。
在國外已經有30多年歷史的軟件配置管理,但在國內的發展卻是在21世紀這幾年的事。但是通過專家們的介紹,我們感受到,國內的軟件配置管理已經取得了迅速發展,并得到了軟件公司的普遍認可。
二、軟件配置管理的基本目標
軟件配置管理是在貫穿整個軟件生命周期中建立和維護項目產品的完整性。它的基本目標包括:
目標 1: 軟件配置管理的各項工作是有計劃進行的。
目標 2: 被選擇的項目產品得到識別,控制并且可以被相關人員獲取。
目標 3: 已識別出的項目產品的更改得到控制。
目標 4: 使相關組別和個人及時了解軟件基準的狀態和內容。
三、XSSC有關軟件配置管理的方針
為了達到上述目標, 如下的方針應該得到貫徹執行:
技術部門經理和具體項目主管應該使用和遵循XSSC的OSSP中所描述的軟件配置管理的工作過程。
施行軟件配置管理的職責應被明確分配。相關人員得到軟件配置管理方面的培訓。
技術部門經理和具體項目主管應該明確他們在相關項目中所擔負的軟件配置管理方面的責任。
軟件配置管理工作應該享有足夠的資金支持,這需要在客戶,技術部門經理和具體項目主管之間協商。
軟件配置管理應該實施于如下產品:對外交付的軟件產品,以及那些被選定的在項目中使用的支持類工具等。
軟件配置的整體性在整個項目生命周期中得到控制。
軟件質量保證人員應該定期審核各類軟件基準以及軟件配置管理工作。
使軟件基準的狀態和內容能夠及時通知給相關組別和個人。
四、常用的軟件配置管理工具
現在常用的軟件配置管理工具主要分為三個級別:
● Rational ClearCase,CA CCC/Havest
● Merant PVCS
● Microsoft VSS,CVS
文章來源于領測軟件測試網 http://www.kjueaiud.com/