09軟體專案配置管理計畫

2021-03-04 05:17:19 字數 3963 閱讀 3617

韓萬江姜立新,《軟體專案管理案例教程》,機械工業出版社 ,2005-02

【叢書名】 國家示範性軟體學院系列教材

第8章介紹了質量管理計畫可以幫助提高產品的質量,而軟體配置管理也可以輔助提高專案的質量管理。同時,有效的配置管理還可以提高開發團隊的工作效率。本章就進入路線圖的第8站:

配置計畫,如圖9-1所示。

圖2-1路線圖第8站:配置計畫

試想:在軟體專案開發過程中可能會存在如下的情況:

1)找不到某個檔案的歷史版本,而這個版本又是非常重要的,因為目前版本無法恢復正確執行。

2)開發人員使用錯誤的版本修改程式,導致錯上加錯。

3)開發人員未經授權修改**或文件,或修改的結果不能及時反映到各個相關部分,導致開發過程的不一致。

4)人員流動、交接工作不徹底造成關鍵軟體部件遺失。

5)已修復的錯誤在新版本中出現。

6)由於沒有儲存歷史版本的相關檔案,無法重新編譯某個歷史版本,使維護工作十分困難。

7)因協同開發或者異地開發,版本變更混亂導致整個專案失敗。

發生這些現象說明專案管理過程中沒有很好的配置管理過程。

軟體專案進行過程中面臨的乙個主要問題是持續不斷的變化、變化是多方面的,包括專案本身的版本公升級,專案的不同階段,以及需求、設計、技術實施等的變化。有效的專案管理能夠控制變化,以最有效的手段應對變化,不斷命中移動的目標;無效的專案管理則被變化所控制。而配置管理是有效管理變化的重要手段。

軟體配置管理是sw-cmm中的乙個重要的關鍵過程域。

隨著軟體開發規模的不斷增大,乙個專案的中間軟體產品的數目也越來越多,中間軟體產品之間的關係也越來越複雜,對中間軟體產品的管理也越來越困難,有效的軟體配置管理則有助於解決這一問題。

軟體配置管理(software configuration management,scm),是指一套管理軟體開發和軟體維護以及各種中間軟體產品的方法和規則。中間軟體產品和用於建立中間軟體產品的資訊都應處子軟體配跟管理控制之下。軟體配置管理是控制軟體系統演變的學科。

軟體配置管理包括標識在給定時間點上軟體的配置(即選定的軟體工作產品及其描述),系統地控制對配置的更改,並維護在整個軟體生存週期中配置的完整性和可追溯性。置於軟體配置管理之下的工作產品包括交付給顧客的軟體產品(例如軟體需求文件和**),以及與這些軟體產品等同的產品項或生成這些軟體產品所要求的產品項(例如編譯程式),在配置管理過程中需要建立乙個軟體基線庫,當軟體基線形成時就將它們納入該庫。通過軟體配置管理的變更控制和配置審計功能,系統地控制基線的更改和那些利用軟體基線庫構造成的軟體產品的發行。

軟體配置管理貫穿於軟體生存期的全過程,目的是建立和維護軟體產品的完整性和可追溯性。軟體配置管理是一組追蹤和控制活動,它開始於軟體專案開始之時,結束於軟體被淘汰之時。

配置管理是在整個系統週期中對乙個系統中的配置項進行標識和定義的過程,這個過程是通過控制某個配置項及其後續變更,通過記錄並報告配置項的狀態以及變更要求,證明配置項的完整性和正確性實現的。配置管理相當於軟體開發的位置管理,它回答了下面的問題:

● 我是誰?(who am i?)

● 為什麼我在這裡?(why am i here?)

● 為什麼我是某某?(why am i who i am?)

● 我屬於**?(where do i belong?)

配置管理目標是:

● 標識變更。

● 控制變更。

● 確保變更正確實現。

● 向有關的人員報告變更。

● 保證軟體開發全過程的完整性和可追溯性。

軟體配置管理在軟體專案管理中有著重要的地位,軟體配置管理工作是以整個軟體流程的改進為目標,為軟體專案管理和軟體工程的其他領域打好基礎,以便於穩步推進整個軟體企業的能力成熟度。

軟體配置管理的主要思想和具體內容在於版本控制。版本控制是軟體配置管理的基本要求,是指對軟體開發過程中各種程式**、配置檔案及說明文件等檔案變化的管理。

版本控制最主要的功能就是追蹤檔案的變更。它將什麼時候、什麼人更改了檔案的什麼內容等資訊忠實地記錄下來。每一次檔案的改變,檔案的版本號都將增加,比如v1.

0、ⅴ1.1、v2.1等。

它可以保證任何時刻恢復任何乙個配置項的任何乙個版本。

版本控制還記錄了每個配置項的發展歷史,這樣就保證了版本之間的可追螓性,也為查詢錯誤提供了幫助。除了記錄版本變更外,版本控制的另乙個重要功能是並行開發。軟體開發往往是多人協同作戰,版本控制可以有效地解決版本的同步以及不同開發者之間的開發通訊問題,提高協同開發的效率。

許多人將軟體的版本控制和軟體配置管理等同起來,這是非常錯誤的觀念。版本控制雖然在軟體配置管理中佔據非常重要的地位,但它並不是軟體配置管理的全部,對開發者工作空間的管理等都是軟體配置管理不可分割、不可或缺的部分。而且,簡單地使用版本控制,並不能解決開發管理中的深層問題。

軟體配置管理給開發者帶來的好處是顯而易見的,但對幹專案管理者來說,他所關心的角度與開發者是不一樣的,他更關注專案的進展情況,這不是簡單的版本控制能夠解決的♂專案管理者從管理者的角度去運用軟體配置管理中的各種記錄資料,將有巨大的收穫。從這些記錄資料中,我們也可以了解到誰在什麼時候改了些什麼、為什麼改;我們也可以了解到開發專案進展得如何、完成了多少工作量;我們還可以了解到開發工程師的資源是否充分使用、工作是否平衡等。

現在人們逐漸認識到,軟體配置管理是軟體專案管理中的一種非常有效和現實的技術,它能非常有效地適應軟體開發需求。配置管理對軟體產品質量和軟體開發過程的順利進行和可靠性有著重要的意義。圖9-2說明了配置管理在軟體開發過程中的作用,從圖中可以看出配置管理相當於軟體開發生產線中的倉庫和排程。

圖9-2配置管理在軟體開發過程中的作用

軟體配置管理的目的是建立和維護整個生存期中軟體專案產品的完整性和可追溯性。合理的實施配置管理,軟體產品的質量會得到提高,開發團隊也能夠工作在乙個有助子提高整體工作效率的配置管理平台上。如果沒有很好地進行配置管理,將會影晌成本、進度和產品的規格,沒有變更管理,專案就會無限大。

有效的配置管理可以不斷命中移動的目標。配置管理是對工作成果的一種有效保護。

軟體配置管理是軟體開發環境管理部分的核心,有些管理功能(比如過程管理)在最初並不屬於軟體配置管理,但隨著軟體配置管理的不斷發展,也逐漸成為軟體配置管理的一部分。

在介紹配置管理過程之前,先介紹一下配置管理中的幾個重要概念:配置項、基線以及軟體配置控制委員會。

軟體配置項(software configuration item,sci)是專案定義其受控於軟體配置管理的項。乙個軟體配置項是乙個特定的、可文件化的工作產品集,這些工作產品是生存期中產生或者使用的。每個專案的配置項也許會不同。

所有源**,包括構成檔案及其他所有製作軟體產品所需的檔案,都可能在軟體配置管理控制之下。軟體產品某一特定版本的源**及其相關的工具,都可能受控於軟體配置管理。也就是說,在取出軟體產品某一版本時,同時也可以取出與此版本相關的工具。

所有需要被及時更新的檔案,都必須在軟體配置管理控制之下。例如-下面的列表可以作為軟體配置管理的一些sci:

● 系統規格說明書

● 軟體專案規劃

● 需求分析結果

● 軟體需求規格說明書

● 系統原型

● 設計規格說明書

● 資料設計描述

● 總體結構設計描述

● 模組設計描述

● 介面設計描述

● 物件描述(若採用物件導向技術)

● 源**清單

● 測試規格說明書

● 測試計畫和過程

● 測試用例與實驗結果

● 操作和安裝手冊

● 可執行程式

● 每個模組的可執行**

● 鏈結到一起的**

● 使用者手冊

● 維護文件

除此之外,有時把軟體工具和中間產生的檔案也列入配置管理的範疇,即把軟體開發中選用的編輯器、編譯器和其他一些case工具固定地作為軟體配置的一部分,當配置項發生變化時,應該考慮這些工具是否與之適應和匹配。

配置項也有不同的版本,這裡類似地將物件導向的類和例項模擬成配置項和配置項的版本。配置項可以看成是物件導向的類,版本可以看成是類的例項,例如,圖9虧3表示的需求規格配置項,需求規格的不同版本類似於需求規格配置項的例項,配置項的不同版本是從最原始的配置項(類似於配置項類)演變出的不同情況,儘管每個都是不同的,但是它們具有相關性。

NewSkyCRM專案軟體配置管理計畫

2.4 專案開發組 newskycrm軟體專案開發組必須履行某某軟體開發中心 軟體配置管理過程 及有關規程等文件中指定的有關專案開發組的職責。表8 3 專案組成員表 三.配置管理環境 3.1 文件工具 newskycrm軟體專案的配置管理活動所有文件由下列辦公系統軟體生成,或由配置管理工具自動生成。...

軟體配置管理計畫

水利工程建設註冊造價工程師繼續教育系統 中水環球 北京 科技 二零壹零年伍月份 目錄1 引言 1 1.1 目的 1 1.2 定義 1 1.3 參考資料 1 2 管理 2 2.1 機構 2 2.2任務 2 2.3職責 3 2.4介面控制 4 2.5 軟體配置管理計畫的實現 6 2.6 適用的標準 條例...

軟體配置管理計畫國標

新疆泰戈瑞資訊科技有限責任公司發布 變更記錄 注 更改狀態包括 c 建立 a 增加 m 修改 d 刪除 目錄1.引言 5 1.1 標識 5 1.2 系統概述 5 1.3 文件概述 5 1.4 組織和職責 6 1.5 資源 6 2.引用檔案 7 3.管理 8 3.1 機構 8 3.2 任務 8 3.3...