|
作者:unknown 更新時間: 朗訊科技(中國) 貝爾實驗室 劉江華 1 引言 1.1 什么是配置管理 配置管理(Configuration Management)是通過技術或行政手段對軟件產品及其開發(fā)過程和生命周期進行控制、規(guī)范的一系列措施。配置管理的目標是記錄軟件產品的演化過程,確保軟件開發(fā)者在軟件生命周期中各個階段都能得到精確的產品配置。 配置管理過程是對處于不斷演化、完善過程中的軟件產品的管理過程。其最終目標是實現軟件產品的完整性、一致性、可控性,使產品極大程度地與用戶需求相吻合。它通過控制、記錄、追蹤對軟件的修改和每個修改生成的軟件組成部件來實現對軟件產品的管理功能。 1.2 配置管理在軟件開發(fā)過程和項目管理過程中的作用 隨著軟件系統(tǒng)的日益復雜化和用戶需求、軟件更新的頻繁化,配置管理逐漸成為軟件生命周期中的重要控制過程,在軟件開發(fā)過程中扮演著越來越來重要的角色。一個好的配置管理過程能覆蓋軟件開發(fā)和維護的各個方面,同時對軟件開過程的宏觀管理,即項目管理,也有重要的支持作用。良好的配置管理能使軟件開發(fā)過程有更好的可預測性,使軟件系統(tǒng)具有可重復性,使用戶和主管部門用軟件質量和開發(fā)小組有更強的信心。 軟件配置管理的最終目標是管理軟件產品。由于軟件產品是在用戶不斷變化的需求驅動下不斷變化,為了保證對產品有效地進行控制和追蹤,配置管理過程不能僅僅對靜態(tài)的、成形的產品進行管理,而必須對動態(tài)的、成長的產品進行管理。由此可見,配置管理同軟件開發(fā)過程緊密相關。配置管理必須緊扣軟件開發(fā)過程的各個環(huán)節(jié):管理用戶所提出的需求,監(jiān)控其實施,確保用戶需求最終落實到產品的各個版本中去,并在產品發(fā)行和用戶支持等方面提供幫助,響應用戶新的需求,推動新的開發(fā)周期。通過配置管理過程的控制,用戶對軟件產品的需求如同普通產品的訂單一樣,遵循一個嚴格的流程,經過一條受控的生產流水線,最后形成產品,發(fā)售給相應用戶。從另一個角度看,在產品開發(fā)的不同階段通常有不同的任務,由不同的角色擔當,各個角色職責明確,涇渭分明,但同時又前后銜接,相互協(xié)調。好的配置管理過程有助于規(guī)范各個角色的行為,同時又為角色之間的任務傳遞提供無縫的接合,使整個開發(fā)團隊象一個交響樂隊一樣和諧而又錯雜地行進。 正因為配置管理過程直接連接產品開發(fā)過程、開發(fā)人員和最終產品,這些都是項目主管人員所關注的重點,因此配置管理系統(tǒng)在軟件項目管理中也起著重要。配置管理過程演化出的控制、報告功能可幫助項目經理更好地了解項目的進度、開發(fā)人員的負荷、工作效率和產品質量狀況、交付日期等信息。同時配置管理過程所規(guī)范的工作流程和明確的分工有利于管理者應付開發(fā)人員流動的困境,使新的成員可以快速實現任務交接,盡量減少因人員流動而造成的損失。 1.3 配置管理方案的構成 配置管理過程對軟件開發(fā)有如此重要的影響,它的構造、實施過程也必定相當復雜。不借助工具,純粹靠手工方式或只利用簡單的工具來實現配置管理是很難做到滿意程度的,而且其中的繁瑣龐雜最終必定讓管理者一愁莫展。因此,實現配置管理過程的通常做法是借助于專業(yè)化的配置管理工具,結合開發(fā)組織的實際情況制訂出相應的配置管理規(guī)范,由開發(fā)人員在工作過程中依據規(guī)范,通過配置管理工具來實現。在這整個過程中,由配置管理工具負責那些非智能的、可自動化的管理過程,如身份角色驗證、修改軌跡記錄、版本控制等;由配置管理規(guī)范來控制那些需要開發(fā)人員用智力去判斷的因素,如需求合理性和優(yōu)先級判定、任務分工、產品的結構定義、版本發(fā)行方案確定等等。配置管理工具的采用和配置管理規(guī)范的制訂是緊密聯系的,二者構成了一個軟件開發(fā)機構的整體配置管理方案。這種方案是因組織的差異和配置管理工具的差異而變化的。構造一個配置管理方案涉及到軟件開發(fā)組織和開發(fā)過程的各個方面,是一個復雜的工程應該當作一個項目來做。本文試圖給出一個構造配置管理方案的基本策略和主要步驟。 2 組建配置管理方案構造小組 構造或完善一個軟件開發(fā)組織的配置管理過程需要在構造初期花費較大的人力物力。這種工作一般是由一個臨時組成的軟件配置管理過程構造小組來完成。這個小組負責構造配置管理過程中的所有工作,包括了解本組織的現有開發(fā)、管理現狀,選擇配置管理工具,制訂配置管理規(guī)范,安排試驗項目的實施,溝通部門間關系,獲得管理者支持和開發(fā)人員的認同。 配置管理過程構造小組的成員應該包括:該組織員工對引入新工具的反應,以前是否有過類似的償試。 3.2 技術評估 對目標機構技術方面的的調查、評估將直接導致對工具的選擇。要了解的信息有: 目標機構有哪些可用的計算資源。 3.3 現有流程評估 對目標組織現有工作流程的評估直接影響新的配置管理流程和規(guī)章的 小組負責人 技術支持專家 配置管理技術專家 配置管理系統(tǒng)用戶代表 該項目小組成立后,將按后述步驟開展配置管理過程的構造工作。 3 對目標機構進行了解、評估 “知已知彼,百戰(zhàn)不殆”。配置管理過程的構造過程也是如此,必須對相互作用的雙方都有較透徹的了解才能達到預期的效果。因此首先要做的事情是調查了解,既要了解目標機構(即將要采用該配置管理過程的軟件開發(fā)組織)的情況,又要了解配置管理工具的情況。 目標機構的調查評估工作由配置管理技術專家領導,配置管理系統(tǒng)用戶代表參與,提供基本信息,并由小組負責人協(xié)調,對相關部門人員進行深入調查獲得較全面的數據。 對目標機構的了解、評估應從這幾個方面入手:人員、技術、工作流程、現有項目和期望值。 3.1 人員評估 人員評估的目的是了解目標機構的員工對現有配置管理過程的評價和對采用新工具、制訂新規(guī)范的態(tài)度,預測新的配置管理過程構造中的工作難點和可能遇到的阻力。調查的方面包括:制訂。調查的方面是: 現有流程的成熟性、適用性和執(zhí)行情況。 3.4 項目評估 配置管理系統(tǒng)對正在開發(fā)的產品、正在進行的項目有直接的影響,因此對即將納入管理的項目應有充分的了解。了解的方面有: 項目的平均工期(人月)。 3.5 期望值評估 對目標機構的開發(fā)、管理人員對新系統(tǒng)的期望值的了解有利于對癥下藥,解決其當前緊要問題,提高對新系統(tǒng)的信心。調查的方面包括: 對當前本組織的生產率和產品質量的滿意程度,期望有怎樣的提高。 4 配置管理工具及其提供商評估 通過對目標組織的評估,了解該組織的現狀和需求后,就需要選擇適合該組織的配置管理工具。市場上現有的配置管理工具不下數十種,它們各有所長,在功能,性能等方面有較大的差別,只有經過仔細地對產品及其提供商進行分析評估,核對目標機構的需求,才能挑選出合適的工具,實現一個理想的配置管理過程。 這種評估可從三個方面進行:配置管理工具的評估、供應商評估和其它用戶使用經驗的評估。 4.1 配置管理工具評估 對工具的評估應側重于功能的適用性,而不應一味強調功能的全面性。產品評估應了解如下問題:該產品的哪一方面功能可解決目標組織的當前問題滿足該組織在配置管理上的需求。 4.2 供應商評估 供應商的實力和它所能提供的服務和支持對配置管理系統(tǒng)的實施至關重要。因為配置管理工具不象其它的工具那樣,只要安裝完成后按照使用手冊和在線幫助就能使用,而是必須在系統(tǒng)之外有一系列的操作、管理規(guī)范,有一套完整的方案。這些些必須在系統(tǒng)提供者或顧問機構的幫助下才能制訂、實施。因此,系統(tǒng)提供商對配置管理過程的實現有重要影響。對供應商的評估包括: 供應商在相應行業(yè)的從業(yè)時長。 該供應商是否有專業(yè)化的客戶支持隊伍。 另外,通過了解同一產品的其它用戶對該產品的評價可以對該產品和供應商有較為客觀、綜合的認識。這種評價可從所知的用戶組、專業(yè)會議、配置管理工具公告板等途徑獲得。 5 制訂實施計劃 經過對目標機構和選用工具的評估,工作小組可以制訂出一份完整的工作計劃作為下一階段的行動綱要,同時也是向上級主管匯報,取得支持的有力佐證。 工作計劃由如下部分組成: 必要性和影響因素 配置管理目標和配置管理過程的構造成功標準 另外,對構造配置管理過程的工作本身,如前所述應當作一個項目來做,因此也必須制訂一個明確的完成標準。該標準應該在本小組內部統(tǒng)一并獲得上級主管認可。 人員組織和分工 進度計劃 風險管理預測構造過程中可能遇到的外在困難因素,如硬件短缺、平臺差異、與相關部門沖突、試驗項目的特殊性等等。為這些風險因素設計出降低或規(guī)避風險的方法。 6 定義配置管理流程 配置管理流程是軟件開發(fā)機構進行配置管理的依據,也是配置管理構造工作小組的最重要的工作成果。配置管理流程規(guī)定開發(fā)過程中需要做哪些配置管理方面的工作,由誰做、如何做。前兩個問題有較為通用的答案,在后文將會涉及,第三個問題則必須根據目標機構的具體情況解決。 制訂配置管理流程的方法是:通過對目標機構的調查、評估,定義現有的配置管理流程,由配置管理技術專家對它進一步分析,結合常規(guī)的配置管理方法制訂出新的流程。之后,依據選定的配置管理工具的功能,將新流程中可自動化的環(huán)節(jié)交由配置管理工具處理,其它環(huán)節(jié)由新制訂的配置管理規(guī)范控制。 除了制訂配置管理規(guī)范外,該小組還應制訂出適合目標機構的配置管理基本章程。該章程應包括配置管理部門的設立、該部門的責能(通常是負責監(jiān)督配置管理規(guī)范的執(zhí)行情況,對配置規(guī)范進行完善,并擔當日常的內部配置管理過程支持任務),定義配置管理過程與開發(fā)過程的協(xié)調關系,以及各開發(fā)階段的開發(fā)人員構成、在配置管理流程中的責任劃分等等。 一般說來,配置管理包括四個方面的活動:配置項標志,配置項控制(修改控制),配置狀態(tài)報告和配置審核。配置管理規(guī)范的制訂也應按這四個方面內容進行。每一個方面要考慮的問題是: 配置項標志 配置項控制 配置狀態(tài)報告 配置審核 7 試驗項目的實施 這一階段的任務是選取目標機構中的一個現有項目,按既定的配置管理流程去進行開發(fā)和配置管理工作。這種試驗的目的是在一定風險范圍內,通過實地運作來確定所選配置管理工具、所制訂的配置管理規(guī)范是否能滿足目標機構的需要。要做的工作有: 選定試驗項目 選定試驗組成員 定義試驗成功的標準和試驗時間表 人員培訓 配置管理工具的安裝和項目環(huán)境的搭建 開發(fā)過程 調整配置管理流程 8 全面實施 經過試驗項目證實、校正后的配置管理流程就可以在目標機構的各個項目、各個相關工作環(huán)節(jié)中去應用、實施,最終使配置管理過程日?;?、規(guī)范化。全面實施過程主要由配置管理部門根據新的配置管理流程來指導。配置管理過程構造小組的作用趨于淡化,主要起監(jiān)督和支持作用。該小組在全面實施過程中逐步解散,小組中部分成員可轉移到配置管理部門中去。 全面實施階段的任務有: 組建或完善配置管理部門,并完成配置管理流程的移交。 10 結語 配置管理過程的建立是一個復雜而漫長的過程,因為它受軟件開發(fā)機構的許多方面的影響,包括技術、設備、項目、制度、人員、文化等因素。就象其它任何新事物的出現一樣,在一個機構內剛剛建立的配置管理過程必然會受到各方面的挑戰(zhàn)和考驗,因此需要有一個適應、融合的過程。另外,配置管理過程的建立也不是一件一勞永逸的事情,不同機構、同一機構在不同的發(fā)展階段或不同的項目中會有不同的配置管理細節(jié),這些都需要配置管理部門在長期工作過程中對配置管理過程不斷調節(jié)、充實、完善。 |
|
|