




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
實用軟件工程----IT企業軟件的開發與管理趙池龍
1謝謝觀賞2019-5-17第13章軟件配置管理
本章導讀軟件配置管理在軟件過程管理中,占有特殊的地位和作用,也是項目管理的重要內容。無論是ISO9000,CMMI,或是微軟企業文化,IBM企業文化,都非常強調配置管理。大中型軟件企業,都十分重視配置管理。為此,企業內部設置專職的配置管理員,各項目組內部設置兼職的配置管理員,引進配置管理工具,進行配置管理的日常工作。本章先論述配置管理的概念、內容與方法,后介紹IT企業的兩個常用配置管理工具。2謝謝觀賞2019-5-17本章導讀要求具體內容了解1)配置管理的重要性2)配置管理的工作范圍3)配置管理活動中的有關基本概念4)微軟公司的軟件配置管理工具VSS(VisualSourceSafe)理解1)一天一個版本的配置管理思想2)配置管理中的三個庫的名稱與作用(重點與難點)掌握1)配置管理員的職責2)“Checkout-Edit-Checkin”的配置管理工作方式3謝謝觀賞2019-5-1713.1配置管理的重要性
1.一個配置管理故事
公元2000年,發生在齊魯大地某地級市一家二級甲等醫院的事:有一家軟件公司,在競標中獲勝,承攬了該醫院信息系統(HIS)建設。由于采用了快速原型法,醫院HIS系統很快得到了初步實現。不久之后,系統進入正常運行期和維護期。在維護期間,醫院又提出了一些需求變更,軟件公司也答應修改系統,以適應這些變更。一個月后,維護人員將修改后的新版HIS(一張程序光盤和一張數據庫光盤)帶到醫院,準備按新版運行。當新版HIS代替舊版運行時,發現醫院HIS的數據庫與程序有些對不上號,于是立即宣布新版HIS暫停運行。查其原因,竟然是數據庫光盤拿錯了一張,即張冠李戴了。
4謝謝觀賞2019-5-17配置管理的重要性(續)2.一天一個版本的配置管理
事實上,隨著軟件團隊人員的增加,軟件版本不斷而迅速地變化,例如,在開發過程的后期,微軟解決方案框架MSF,甚至提倡一天一個版本(Dailybuild)。請問:WindowsXP由幾萬個構件所組成,每個構件都有一個版本號,號碼必須完全匹配,怎么解決?解決這些問題的惟一途徑是加強管理,而技術管理的重要手段就是軟件配置管理。為了記憶并追蹤開發進程,軟件項目組的配置管理,最好實行一天一個新版本。5謝謝觀賞2019-5-17配置管理的重要性(續)3.配置管理的由來
那么,軟件配置管理的概念是什么?配置管理的概念最早應用于機器制造業,如波音公司飛機組裝中的零部件配置。以后又應用于計算機硬件,如計算機系統的CPU、磁盤以及外設配置等等。隨著計算機軟件產業的發展,它已由最初的“結構化生產時代”,演變為現在的“過程化生產時代”,進而發展到將來的“流水線裝配時代”,軟件生產的復雜性日益增大。如果仍然把軟件看成一個單一的整體,就無法解決所面臨的問題。于是,美國在20世紀80年代初,開始將配置管理的概念引入到軟件領域。6謝謝觀賞2019-5-17配置管理的重要性(續)4.配置管理活動的目標和目的軟件配置管理,簡稱SCM(SoftwareConfigurationManagement),它應用于整個軟件工程過程。我們知道,在軟件建立時變更是不可避免的,而變更加劇了項目中軟件開發者之間的混亂。
SCM活動的目標,就是為了標識變更,控制變更,確保變更,向其他有關人員報告變更。從某種角度講,SCM是一種標識、組織和控制變更的技術,目的是使由變更而引起的錯誤降為最小,最有效地保證產品的完整性和生產過程的可視性。7謝謝觀賞2019-5-1713.2配置管理的定義與范圍
【定義13-1】在開發過程中,將軟件的文檔、程序、數據進行分割與綜合,以利于軟件的定義、標識、跟蹤、管理,使其最終形成受控的軟件版本產品,這一管理過程稱為軟件配置管理。【定義13-2】對采用各種生存周期模型開發的軟件,在整個生存周期中對它的所有工作產品進行定義、標識、跟蹤、管理,并根據軟件的不同特點采用不同的結構進行保存,對變更和版本進行控制,使其最終形成受控的軟件版本產品,這一管理過程稱為軟件配置管理。8謝謝觀賞2019-5-17配置管理的定義與范圍(續)
配置管理范圍主要包括以下四個方面:
(1)稱標識配置項;
(2)進行配置控制;
(3)記錄配置狀態;
(4)執行配置審計。配置控制是配置管理的核心,配置控制主要包括存取控制、版本控制、變更控制和產品發布等幾個方面。9謝謝觀賞2019-5-17配置管理的定義與范圍(續)1.標識配置項標識配置項是配置管理的基礎。配置項標識就是給配置項取一個名字,該名字要符合如下規定:
(1).名字要有惟一性,即名字不能重名;
(2)名字要便于管理和追蹤,即名字要遵循版本管理規律。例如:Vx.x.x,第一個X表示大版本號,第二個X表示中大版本號,第三個X表示小版本號。內部實行一天一個新版本,此時也可以用日期作為版本號,如:V2002.10.16。
(3)名字的具體形式為英文(或中文)名加上該配置項所在的版本號。例如:詳細設計說明書是一個配置項,它的標識為“詳細設計說明書V1.0.1”。10謝謝觀賞2019-5-17配置管理的定義與范圍(續)2.存取控制
存取控制通過配置管理中的三個庫來實現,這三個庫都屬于配置管理庫,它們分別是:
(1)軟件開發庫DL(DevelopmentLibrary)。它是項目組開發人員的“個人配置庫”,專門記錄每個人每次上機的工作狀態,存放個人工作產品,動態跟蹤個人工作軌跡。例如,程序員每次上機后“Checkout”,下機前“Checkin”的那個庫,就是軟件開發庫。11謝謝觀賞2019-5-17配置管理的定義與范圍(續)(2)軟件基線庫BL(BaselineLibrary)。它是“項目組的團隊配置庫”,存放團隊配置項,即存放項目組公用的軟件工作產品。軟件基線庫又稱軟件配置庫或軟件控制庫,當一個軟件生產階段結束后,所釋放出的階段成果(工作產品)都存放于軟件基線庫中。因此,軟件基線庫是軟件項目組的一個軟件階段成果(配置項)的動態管理跟蹤庫。例如,配置服務器上存放階段產品的那個庫,就是軟件基線庫。12謝謝觀賞2019-5-17配置管理的定義與范圍(續)
(3)軟件產品庫PL(ProductLibrary)。它是“軟件組織的配置庫”,存放公司的最終軟件產品版本。軟件產品庫又稱軟件版本庫。當一個軟件項目開發結束后,所釋放出的工作產品(文檔、程序和數據)都存放于軟件產品庫中。因此,軟件產品庫是軟件組織的軟件版本產品管理庫。三個庫有三級不同的操作權限,不同角色按授權范圍,在不同的庫上操作。“三個庫”的概念很重要,理解了它,您對各種配置管理工具才會很快入門。
13謝謝觀賞2019-5-17配置管理的定義與范圍(續)3.版本控制
作為配置管理的基本要求,使得軟件組織在任何時刻都可獲得配置項的任何一個版本。這里講的“版本”,是泛指配置項的版本,當然包括軟件工作產品的版本和軟件產品版本,因為它們也是一個配置項。由此可見,配置項可大可小。
4.變更控制變更控制,為軟件產品變更提供了一個明確的流程,要求任何進行配置管理的軟件產品變更,都要經過相應的授權與批準程序才能實施。這里的變更控制,主要是講對最終軟件版本產品的變更控制。當然,這種變更控制思路和作法,也適用于軟件工作產品。14謝謝觀賞2019-5-17配置管理的定義與范圍(續)5.產品發布控制產品發布控制,保證了提交給客戶的軟件產品版本是完整的、正確的和一致的。配置管理通過對配置狀態的記錄,來協調對軟件產品的控制。及時記錄并通知配置管理信息狀態,保證軟件開發人員了解配置項的歷史與當前狀態,避免由于溝通不當而造成軟件開發版本的混亂。
6.配置審計配置審計,用來驗證軟件基線庫中軟件工作產品的一致性和完整性。功能審計和物理審計,作為配置審計的兩個方面,分別審計軟件基線庫內容的一致性和完整性。一般情況下,產品發布之前,需要對軟件基線庫執行一次完全的配置審計過程,以保證最終軟件版本產品發布的正確執行。15謝謝觀賞2019-5-1713.3配置管理的基本概念1.最終軟件版本產品
最終軟件版本產品是文檔、程序和數據的集合,是軟件生產商交付給客戶的軟件產品,是用戶能夠直接使用的軟件產品。
【例13-1】:MicrosoftWindowsXP(中文版),它是由一張光盤加上一本《使用指南》所組成的,它是一種最終軟件版本產品。光盤上存儲著程序和數據,《使用指南》是交給用戶的文檔。16謝謝觀賞2019-5-17配置管理的基本概念(續)2.軟件配置軟件配置,是軟件產品在生存周期各個階段中,所產生的文檔、程序和數據的各個配置項的合理組合。
【例13-2】:{電信移動計費系統用戶需求報告V1.0+電信移動計費系統需求規格說明書V1.0+電信移動計費系統設計說明書V1.0+電信移動計費系統源程序V1.0+電信移動計費系統數據庫V1.0+電信移動計費系統用戶指南V1.0},這一文檔、程序和數據的合理組合,就是電信移動計費系統產品V1.0的軟件配置。17謝謝觀賞2019-5-17配置管理的基本概念(續)3.配置項
軟件配置中的基本單元,稱為軟件配置項。配置項可大可小,大到一個軟件版本產品,小到一個組件。大小尺度的不同,與不同的配置管理庫有關。
【例13-4】:《分揀子系統V1.1》是電信移動計費系統產品V1.1的一個配置項。
【例13-5】:IBM公司的傳輸中間件MQ,是電信移動計費系統產品V1.1的一個配置項。
【例13-6】:Word2003是MicrosoftOffice2003的一個配置項。18謝謝觀賞2019-5-17配置管理的基本概念(續)4.基線、里程碑與檢查點經正式評審和審計,并被批準后的階段性的軟件工作產品,稱為軟件配置管理中的一根基線。里程碑只是一個階段標記,基線是一個階段軟件工作產品,基線與里程碑一般表現為一對一的關系。基線既是前一個開發階段輸出的軟件工作產品,又是后一個開發階段輸入的軟件工作產品。若要修改基線,則必須填寫基線變更請求單,批準后才能實施變更。里程碑是檢查點,檢查點不一定是里程碑,因為檢查點還可以是時間、計劃和事件。
【例13-7】:《電信移動計費系統用戶需求報告V1.0》,為電信移動計費系統V1.0的一根基線。19謝謝觀賞2019-5-17配置管理的基本概念(續)
5.接口控制
接口控制是兩個配置項之間的接口描述。
【例13-9】:若《數據庫表11》的主鍵“NO,N(26)”是《數據庫表15》的外鍵,則“NO,N(26)”是《數據庫表11》和《數據庫表15》兩個配置項之間的接口控制。
【例13-10】:《本地網帳務系統》與《本地網97系統》兩個配置項之間的接口控制,是《用戶資料接口表》。
【例13-11】:中間件軟件的接口控制,是它的入口參數與出口參數。20謝謝觀賞2019-5-17配置管理的基本概念(續)6.釋放在軟件開發中,一個階段結束時,向下一個階段提交的工作產品的過程,稱為釋放。【例13-12】:《電信移動計費系統需求規格說明書V1.0》的產生,是需求分析階段結束時,向設計階段提交的工作產品,這一提交過程稱為釋放。
7.交付交付是一種特殊的釋放,是最終軟件版本產品向用戶提交的過程。【例13-14】某公司于2002年12月10日,向某電信局提交《電信移動計費系統產品V1.0》,這一提交過程稱為交付。21謝謝觀賞2019-5-17配置管理的基本概念(續)8.簽入簽出操作(獲取—編輯修改—提交)“Checkout—Edit—Checkin”,這是配置管理工具的基本操作,這種操作主要是對軟件開發庫而言的,對庫中的內容進行操作(比如增、刪、改),要先將操作內容從庫中取出,放入內存緩沖區中,叫做“Checkout”。當操作(Edit)完成后,又要將本次操作的內容存入相應的庫中,叫做“Checkin”。值得注意的是,每次Checkout后,相應庫中原來的內容仍然保留著。每次Checkin后,也不會覆蓋原來的內容。這就自動地保存了可供追蹤的軌跡。同時,當您Checkout后,若不Checkin,就不能從配置管理工具中退出來。檢出是為了修改,得到新版本,同時保留舊版本。簽入是為了保存,確認新版本,同時不破壞舊版本。22謝謝觀賞2019-5-17配置管理的基本概念(續)9.配置管理工具以“Checkout—Edit—Checkin”操作為基礎、以版本控制為中心、進行軟件配置項的標識、跟蹤與管理的電子工具,稱為配置管理工具。
10.配置管理方法配置管理的輸入是配置項,輸出是配置管理的工作產品。即:∑配置項i=工作產品。其中所有的配置管理項的版本標識號,與工作產品的版本標識號必須完全匹配,絕對不允許亂點鴛鴦譜。
11.評審和審計評審是針對軟件工作產品的開會(評審)或匯簽(評審)活動,是一次集體行為。審計是復查軟件活動的程序是否遵守規程,是否合法,是審計員的一次個人行為。23謝謝觀賞2019-5-1713.4配置管理員的職責
配置管理員是一個工作崗位。對于不同的配置管理工具,配置管理員的具體操作內容可能有所不同,但是配置管理思路和職責是相同的,他們的工作職責:
(1)與項目經理一起,識別出項目的所有基線,并標識出這些基線及其所屬的配置項,再根據有關規范和規程制定配置管理計劃;
(2)在配置管理服務器上建立配置管理庫,作為配置管理的工作倉庫,并對倉庫進行管理和維護。該倉庫由軟件開發庫、軟件基線庫和軟件產品庫組成。再根據項目經理確認的權限清單,進行授權分配,以實現項目組內和相關組間的配置項歸檔、保密、傳輸或共享;24謝謝觀賞2019-5-17配置管理員的職責(續)
(3)配置項變更控制。它包括變更申請、評審和批準、實行變更、測試變更對其他配置項的影響、變更驗證和入庫;
(4)基線變更控制。工作程序與配置項變更控制相同;
(5)最終軟件版本產品生成的控制。最終軟件版本產品由軟件基線庫中的配置項組裝而成,在配置組裝之前,必須凍結該產品的所有配置項。生成之后,將此產品入庫到軟件產品庫,并對其實行凍結;
(6)對配置項、基線、軟件版本產品進行跟蹤和審計,并編制配置管理活動報告,供相關組和個人閱讀;
(7)定期或事件驅動,對軟件開發人員進行配置管理知識培訓;
(8).配置管理工具的安裝,配置管理服務器的日常維護。25謝謝觀賞2019-5-1713.5配置管理工具VSS
軟件公司有一名專職的配置管理員,叫公司配置管理員,項目組中有一名兼職配置管理員,叫項目配置管理員,他們既有分工,又有合作,現介紹如下:
1.軟件配置管理員的任務
(1)在VSS配置管理服務器上,安裝軟件配置管理工具VSS;
(2)在VSS配置管理服務器上,建立各項目組的軟件基線庫;
(3).在VSS配置管理服務器上,建立項目組每個成員的軟件開發庫;
(4).在VSS配置管理服務器上,建立公司的軟件產品庫;26謝謝觀賞2019-5-17配置管理工具VSS(續)
(5)建立軟件配置管理的工作帳號:在軟件基線庫中,建立項目組的帳號。在軟件開發庫中,建立項目組內各個成員的帳號。在軟件產品庫中,建立公司的帳號和項目組的帳號;
(6)堅持軟件配置管理的日常工作。每天用光盤及時備份配置庫中的內容。每周向高級經理報告配置管理情況;
(7)授權。三個庫有三級不同的操作權限,不同角色按授權范圍在不同的庫上操作:
──軟件開發庫:項目組成員操作。
──軟件基線庫:項目配置管理員操作。
──軟件產品庫:公司配置管理員操作。27謝謝觀賞2019-5-17配置管理工具VSS(續)2.軟件開發庫的管理
在項目(產品)研制工作開始時,就建立起系統的軟件開發庫。軟件項目組的每個成員,在軟件開發庫中對應一個文件夾,該文件夾中有三個子文件夾,組員有權讀寫自己文件夾的內容。項目組長對組員的文件夾擁有讀的權力,但沒有寫的權力。
(1).Document子文件夾:存放文檔。
(2).Program子文件夾:存放程序和數據。
(3).update子文件夾:存放當日工作摘要。當日工作文件名為:YYYY/MM/DD
軟件開發庫屬于開發者使用,階段性的工作產品,在評審和審計后,由項目配置管理員,將它從軟件開發庫中送入軟件基線庫,每天公司配置管理員用可擦寫光盤備份軟件開發庫一次。28謝謝觀賞2019-5-17配置管理工具VSS(續)3.軟件基線庫的管理
在項目研制工作開始時,軟件配置管理員就建立起每個項目的軟件基線庫。每個軟件項目組在軟件基線庫中對應一個文件夾,該文件夾中有三個子文件夾:
(1).Document子文件夾:存放基線文檔。
(2).Program子文件夾:存放基線程序和數據。
(3).Update子文件夾:存放基線更改記錄。軟件基線庫由項目配置管理員管理。項目組長對軟件基線庫擁有讀的權力。當軟件版本產品經過系統測試與驗收測試后(或評審和審計后),由公司配置管理員,及時將它從軟件基線庫中送入軟件產品庫,同時刪除軟件基線庫中該軟件產品。公司配置管理員定時或事件驅動,用可擦寫光盤備份軟件基線庫。29謝謝觀賞2019-5-17配置管理工具VS
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年雙鴨山市本級招聘普通公益性崗位考試真題
- 新疆糧食和物資儲備局事業單位真題2024
- 2024年重慶市梁平區遴選機關事業單位人員筆試真題
- 2024年商洛圣濟堂醫院招聘筆試真題
- 2024年甘肅省公務員考試行測真題
- 消費觀念變遷分析-洞察及研究
- 2025屆山東省青島市42中學英語七年級第二學期期末達標檢測試題含答案
- 2025年四川省自貢市中考數學試題含解析
- 勞動爭議仲裁標準與典型案例分享薪酬管理類
- 典當行金銀首飾典當業務合同
- 圖說人際關系心理智慧樹知到期末考試答案章節答案2024年重慶大學
- MOOC 細胞生物學實驗-河南大學 中國大學慕課答案
- 可可西里守護神杰桑·索南達杰事跡學習
- 機房施工方案及技術措施
- 員工培訓矩陣表
- 摜蛋大賽招商方案
- 電影特效制作課件
- 304不銹鋼管焊接工藝
- 網絡安全教育安全教育
- 醫療器械經銷商和代理商法規義務
- 糖尿病專科護士培訓學習匯報課件
評論
0/150
提交評論