青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

兔子的技術博客

兔子

   :: 首頁 :: 聯系 :: 聚合  :: 管理
  202 Posts :: 0 Stories :: 43 Comments :: 0 Trackbacks

留言簿(10)

最新評論

閱讀排行榜

評論排行榜

配置管理的精髓  

2012-05-30 18:00:46|  分類: 配置管理 |  標簽:配置管理  
|字號 訂閱

配置管理的精髓 
貝爾實驗室先進技術研究院   姜海東

       隨著國內軟件業的崛起和成熟,軟件配置管理越來越得到重視。可以說,軟件業要想更好的發展,沒有軟件配置管理的支持是不可能的。手工作坊式的軟件開發模式將會成為歷史,如何把國外成熟的軟件配置管理理論和經驗消化吸收,進而應用到國內軟件開發中就成為國內軟件業迫在眉睫的任務了。 
       軟件配置管理是管理和技術相結合的一門學科。應該說,軟件配置管理理論難以理解是其難以實踐的原因。本文試從基本概念的角度來探討這門對軟件開發具有重要意義的領域。


什么是配置管理 
       在軟件開發中,變更是不可避免的。從某種角度上講,軟件開發過程就是一個變更的過程。有些變更是有益的,是具有創造性的,但是,也有些變更是有害的,導致混亂的。正像James Bach 總結的那樣: 
        我們為變更所困擾,因為代碼中的一個極小的混亂可能帶來產品的大的故障,但是,他也能夠修復大的故障或啟用奇妙的新能力。我們為變更所困擾,因為某個喜歡惡作劇的單個開發者可能破壞掉項目,但是,一些奇妙的思想也源自那些喜歡惡作劇的人員。 
        因此,如何管理這些變更是一個軟件開發能否成功的關鍵。簡言之,軟件配置管理就是管理變更的過程,它貫穿著幾乎軟件的整個生命周期。成功的配置管理系統可以提高產品的質量、項目開發效率,而且最大限度的減少對個別“英雄”式人員的依賴。 
        盡管配置管理(Configuration Management )這個概念被提出有幾十年了,但是,業內還沒有一個全面而權威的定義。Configuration 的意思是“使成形”,它來源于拉丁語的com-(表示“與”或者“一起”)和figurate ( 形成) 。它還有一個意思是“組成部件或元素的相對排列”。因此,配置管理(ConfigurationManagement )指的是管理組成部件或者元素的相對排列。 
        配置管理的概念來自于硬件領域,美國國防部最早使用了配置管理的概念。我們知道一架飛機的構成非常復雜,比如機頭、機身、機翼和機尾等。不同型號飛機的各個部分是不能隨便組裝的。因此,我們只有把相匹配的部件組裝在一起,才能構成了一個功能完備的飛機整體。隨著技術的提高,各個部件可能還要進行功能改善,我們還要使得不同版本的部件能夠正確無誤組合在一起。 
準確地說:  
       配置管理是對產品進行標識、存儲和控制,以維護其完整性、可追溯性以及正確性的學科。 
從上面的描述,我們知道,配置管理的基本單位是配置項。軟件配置項可以是:

  •  與合同、過程、計劃和產品有關的文檔和數據
  • 源代碼、目標代碼和可執行代碼
  • 相關產品,包括軟件工具、庫內的可復用軟件、外購軟件及用戶提供的軟件

 
  從“哲學”意義上講,配置管理記錄配置項的三個方面: 

  • 從哪里來?此項可歸結為WWW 的問題,(Who)誰創建的?(When)什么時間創建的?(Why)為什么創建此配置項?
  • 當前在哪里?此項紀錄配置項當前的存儲位置以及狀態。
  • 將到哪里去?通過配置控制來把配置項“組裝”到正確的版本中去。

 
       配置項可以是大粒度的,也可以是小粒度的。如果跟蹤個別需求,那么不必要把整個需求規格說明文檔定義為一個配置項,可以把每個需求定義為配置項;如果把軟件開發工具也放入配置管理系統,那么把配置項定義為文件級就不合適了,只需要跟蹤開發工具的版本,即把整個配置工具定義為一個配置項就足夠了。 
       簡而言之,配置項可以是文件級粒度的,也可以使文件版本級粒度的。當然,粒度越小管理的成本越高,但是配置的精度也就越高。 
一個完整的SCM系統要具有三個核心功能:配置標識、版本控制、變更控制、配置狀態統計和配置審核。其中變更控制包括基線管理、變更請求管理、構建管理和發布管理。如下圖所示。 

下面,我們來具體理解這些概念。 
 
配置標識 
       配置標識就是識別產品的結構、產品的構件及其類型,為其分配唯一的標識符,也就是說,每一個配置項要有一個唯一標識。一般說來,標識包括兩個方面:一是文件名,二是版本,可用如下一個二元組來標識:< 文件名,版本> 。每個項目首先要確定一套命名規則,例如,采用“系統.子系統.模塊.文件”的方式,</videoConference/audio/compressing/m a in.c , 2.1>就是一個唯一標識。 
 
版本控制 
       版本控制就是對在軟件開發過程中所創建的配置對象的不同版本進行管理,保證任何時候都能取到正確的版本以及版本的組合。當前,這方面典型的工具有如VSS 和CVS 。


變更控制 
       在軟件開發過程,要產生許多變更,比如,配置項、配置、基線、構建的版本、發布版本等。對于所有的變更,都要有一個控制機制,以保證所有變更都是可控的、可跟蹤的、可重現的。對變更進行控制的機構稱為變更控制委員會(Change Control Board,簡稱
CCB )。變更控制委員會要定期召開會議,對近期所產生的變更請求進行分析、整理,并做出決定。而且要遵循一定的變更機制。 
  
下面是一個典型的變更機制:  
變更請求管理 
       變更請求管理就是對變更請求(Change Request,簡稱CR)進行分類、追蹤和管理的過程來實現的。 
       變更的起源有兩種:功能變更和缺陷修補(Bug-Fix)。功能變更是為了增加或者刪除某些功能。缺陷修補則是對已存在的缺陷進行修補。 
       對變更請求的有效管理可以提高產品管理的透明度,經理可以清楚的知道當前產品的進展情況,比如有多少個新產生的CR,已經解決了多少CR等等,有利于經理做出正確的決策。 
 
基線管理 
       基線是指經過正式評審和批準,可作為下一步工作的基準的一個配置。軟件開發過程中,無論是需求分析、設計、測試都需要在完成時建立基線,以作為下一步工作的基礎。

       通過基線管理可以使用戶能夠通過對適當版本的選擇來組成特定屬性(配置)的軟件系統,這種靈活的“組裝”策略使得配置管理系統象搭積木似的使用已有的積木(版本)組裝成各種各樣、不同功能的模型。 
       基線的變更需要一個嚴格的流程,需要提出申請,經過審批,然后才能進行。 
構建管理 
       在做構建時,我們需要首先取出正確的配置,然后再做構建。我們可以利用基線,可以取出某個基線的所有配置項,也可以利用配置管理系統的構建功能直接在工作空間內做構建。 
       構建管理需要配置管理工具的支持。 
發布管理 
       軟件產品的每個版本都是一組配置項(源代碼、文檔、數據)的集合。舉個例子來說,我們要發布軟件的32.6 版本,那么我們就要把源代碼、文檔、數據中所有應該包含到這個版本中的正確配置項檢出。 
       所以如何管理每個版本中包含哪些配置項是非常重要的。  
狀態報告 
狀態報告要回答所謂4W 的問題: 
What:發生了什么事? 
Who:誰做的此事? 
When:此事是什么時候發生的? 
Why:為什么做此事? 
狀態報告要能夠報告所有配置項以及變更請求的狀態,通過量化的數據和報表反映項目開發進度的狀態。 
配置審核 
       配置審核要審查整個配置管理過程是否符合規范,配置項是否與需求一致,記錄正確,配置的組成是否具有一致性等等。比如,需求分析文檔提交后,需要由一個由相關人組成的小組進行正式評審,只有通過了評審才能基線化。對于源代碼也一樣,一般說來,每行代碼都要進行評審(Review),只有通過評審才能交由測試人員進行測試。 
實施配置管理的好處 
       我們知道軟件有三個要素:時間、預算和質量。一個成功的軟件就是要在限定的時間內,不超過預算,交付符合質量要求的產品。真正實施配置管理后,我們會對產品的開發過程進行有效的控制,可以加快開發進度,降低開發成本,保證產品的質量。 
產品經理可以得到什么好處呢? 

  • 準確掌握項目的開發進度。配置管理系統可以提供詳盡的狀態報告,例如當前系統有多少個Bug,所有Bug 的狀態如何?已經解決了多少Bug?
  • 了解項目組成員的工作負荷、工作效率以及工作質量。例如,我們可以知道當前分配給每個成員的工作量,每個成員已完成的工作量,每個成員未通過正式評審的工作比例等等。
  • 減少人員流動所帶來的影響。每個成員的所有變更,包括文檔、代碼的增刪都是可追蹤的,而且對于變更的原因、描述也都有記錄。這樣,一旦成員離開,其它成員就可以在最短的時間里接手。
  •  有效提高過程管理,配置管理產生的許多數據可作為管理者度量項目的依據。


開發人員和測試人員可以得到什么好處呢?

  •  提交的代碼被有效保存,開發人員再也不用花費精力去保存各個版本了。
  •  提高團隊的協作效率。開發人員之間以及開發人員和測試人員之間可以有效的溝通,大家都互相知道其它人的工作狀態。
  •  提高修復缺陷的效率。可以依據Bug 發現的版本,迅速重建環境,重現Bug,快速定位代碼,找出根源。
  • 職責清楚,任務明確。每一步的工作都是基于某一基線的,比如,設計文檔是依據基線化了的需求分析文檔,這樣一旦出現問題,就可以找出問題出在什么地方。


 
      當然,實施配置管理的好處遠不止這些。軟件配置管理作為軟件開發的基石,它提供了一個協作開發的環境,只有大家共同遵守配置管理規范,互相協作才能保證項目的成功。 
 
結束語 
 
       配置管理本身無論從理論和實踐都在不斷豐富和發展。例如,配置管理應用于“知識庫”的管理就產生了“內容管理”這一新的領域。配置管理提供的狀態報告和數據統計也為軟件度量提供了決策依據。配置管理為項目管理提供了各種監控項目進展的視角,為項目經理確切掌握項目進程提供了保證。配置管理也為開發人員提供了一個協作的平臺,在此平臺上,大家能夠更有效率的交流和協作。可以說,配置管理是軟件開發的基石! 
       配置管理近年來在中國得到了極大的認可,可以毫不夸張的說,沒有配置管理,就談不上軟件開發,就談不上軟件質量,就談不上軟件業的發展。隨著軟件業規模的擴大,配置管理的實施不是要不要的問題,而是什么時間、如何實施的問題了。 
參考文獻: 
Babich, W.A., Software Configura tion Management, Addison-Wesley, 1986. Peter H. Feiler, Configuration Management Models in Commercial Environment, CMU/SEI-91-TR-7, 1991.4 
 
作者簡介:2000年在北方交通大學獲工學碩士學位。現供職于朗訊科技(中國)有限公司貝爾實驗室先進技術研究院,從事配置管理系統的研究和開發,有四年多的配置管理領域開發、咨詢、培訓經驗。

轉自:http://blog.163.com/wangdan10799@126/blog/static/10230093201243054322378/
posted on 2013-08-09 11:32 會飛的兔子 閱讀(541) 評論(0)  編輯 收藏 引用 所屬分類: 開發過程管理
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            99视频精品在线| 午夜精品视频一区| 裸体女人亚洲精品一区| 亚洲色图自拍| 国产精品久久激情| 亚洲免费在线视频| 中日韩在线视频| 欧美日韩高清一区| 夜夜嗨av一区二区三区免费区| 91久久久精品| 亚洲免费在线看| 国产日韩欧美在线播放| 欧美中日韩免费视频| 久久久99爱| 亚洲国产一二三| 亚洲精品在线二区| 欧美亚男人的天堂| 久久久91精品国产| 久久麻豆一区二区| 精品1区2区| 亚洲国产一区二区精品专区| 欧美片在线播放| 亚洲欧美日韩国产中文| 亚洲欧洲日本一区二区三区| 欧美日韩第一区| 欧美一级免费视频| 久久视频一区| 激情五月婷婷综合| 亚洲国产精品成人久久综合一区| 欧美乱在线观看| 性欧美videos另类喷潮| 午夜免费在线观看精品视频| 激情视频一区二区| 日韩一区二区精品视频| 国产精品亚洲欧美| 欧美大片一区| 欧美午夜宅男影院在线观看| 久久久噜噜噜久噜久久 | 国产欧美日韩另类视频免费观看 | 国产精品免费看| 另类天堂av| 国产精品magnet| 免费观看成人网| 国产精品久久二区| 欧美多人爱爱视频网站| 欧美激情在线| 久久综合伊人| 国产精品久久久久国产a级| 久久亚洲一区二区| 国产精品美腿一区在线看| 国产香蕉97碰碰久久人人| 欧美激情亚洲一区| 国产精品第三页| 亚洲高清视频在线| 国产专区欧美精品| 亚洲在线一区二区| 在线精品亚洲一区二区| 亚洲网在线观看| 99天天综合性| 另类春色校园亚洲| 久久日韩粉嫩一区二区三区| 欧美视频在线一区| 亚洲黑丝在线| 国产精品一区二区久久国产| 亚洲日韩视频| 亚洲三级影院| 麻豆精品精华液| 久久久久国产一区二区三区| 国产精品毛片大码女人| 亚洲另类在线一区| 亚洲高清av在线| 免费的成人av| 亚洲精品美女91| 亚洲一区视频| 国产午夜精品在线| 久久久久久亚洲精品不卡4k岛国| 久久伊人一区二区| 亚洲人成网站在线播| 欧美国产日本韩| 久久av一区| 国产日韩欧美高清| 亚洲欧美日韩综合| 久久久亚洲欧洲日产国码αv| 国内精品99| 免费在线观看精品| 99这里有精品| 久久激情五月丁香伊人| 亚洲国产美女精品久久久久∴| 欧美激情一区在线观看| 亚洲影视九九影院在线观看| 久久精品在线| 亚洲免费激情| 国产人成精品一区二区三| 久久久伊人欧美| 一本色道久久88亚洲综合88| 欧美在线999| 亚洲乱码国产乱码精品精可以看| 欧美无乱码久久久免费午夜一区| 性久久久久久久| 亚洲国产欧美国产综合一区| 欧美一区二区免费视频| 国产乱理伦片在线观看夜一区| 性色av一区二区三区在线观看| 欧美freesex8一10精品| 夜夜嗨av一区二区三区中文字幕 | 西西裸体人体做爰大胆久久久| 欧美jizz19性欧美| 亚洲欧美在线看| 亚洲人久久久| 国产综合视频| 国产精品多人| 欧美精品综合| 久久亚洲综合色| 午夜精品一区二区三区在线视 | 国产亚洲一区在线| 欧美视频一区二区在线观看 | 国产精品超碰97尤物18| 乱码第一页成人| 亚洲欧美激情四射在线日 | 欧美精品一级| 免费美女久久99| 欧美影院一区| 亚洲欧美日本伦理| 99综合在线| 亚洲精品中文字幕在线| 免费在线观看成人av| 久久人人97超碰国产公开结果| 亚洲一区二区三区精品视频| 亚洲精品午夜| 亚洲激情在线观看| 亚洲国产aⅴ天堂久久| 国模一区二区三区| 国产欧美精品一区二区色综合| 欧美午夜精品伦理| 欧美日韩一区二区三区在线观看免 | 亚洲免费在线| 亚洲欧美成人一区二区三区| 夜色激情一区二区| 一本色道久久加勒比精品| 日韩视频免费| 一区二区三区视频在线观看| 一区二区不卡在线视频 午夜欧美不卡在 | 亚洲一二三区在线| 国产精品99久久久久久久久| avtt综合网| 一区二区三区精密机械公司 | 激情欧美一区| 亚洲国产成人在线视频| 亚洲精品乱码久久久久久按摩观| 伊人久久婷婷色综合98网| 国产日韩一区二区三区在线| 国产一区二区三区四区老人| 国内揄拍国内精品少妇国语| 激情综合中文娱乐网| 亚洲风情亚aⅴ在线发布| 亚洲国产视频一区| 日韩视频在线永久播放| 中文在线一区| 欧美一区二区三区免费看| 久久精品国产精品| 欧美激情麻豆| 一区二区黄色| 欧美在线影院| 欧美成人一品| 欧美偷拍另类| 精品51国产黑色丝袜高跟鞋| 亚洲精品一区二区三区福利| 亚洲天堂男人| 久久免费少妇高潮久久精品99| 99v久久综合狠狠综合久久| 亚洲在线黄色| 蜜臀av国产精品久久久久| 亚洲精品在线视频| 香蕉精品999视频一区二区 | 久久久.com| 欧美精品国产| 国产视频观看一区| 亚洲美女在线国产| 欧美中文字幕在线播放| 亚洲二区视频在线| 午夜免费日韩视频| 欧美精品在线网站| 好吊妞这里只有精品| 99国产一区| 两个人的视频www国产精品| 亚洲精品一区二区三| 久久国产色av| 国产精品成人在线| 亚洲精品资源美女情侣酒店| 欧美一区二区成人| 亚洲美女黄色| 久久综合国产精品| 国产一区二区三区自拍| 亚洲一本视频| 亚洲免费电影在线| 另类人畜视频在线| 激情国产一区二区| 欧美一区二区三区在线免费观看| 亚洲欧洲日产国产网站| 久久久久久久999精品视频|