您的位置:軟件測試 > 開源軟件測試 > 開源配置管理工具 >
關(guān)于UCM(統(tǒng)一變更管理)的體會
作者:網(wǎng)絡轉(zhuǎn)載 發(fā)布時間:[ 2013/2/27 14:58:50 ] 推薦標簽:

[一]---澄清誤解

  關(guān)于UCM(unified chanage management)自己有些實踐,很早想與大家分享;其實UCM有很多話題,該如何說起呢?先從頭說吧……

  對UCM的認識存在誤解,有的朋友簡單的認為UCM是clearcase+clearquest的集成,這種理解是錯誤的。UCM其實是Clearcase的一種使用模型,即使不作clearcase跟clearquest的集成一樣可以在clearcase中使用UCM projcet、創(chuàng)建UCM 對象,只是關(guān)聯(lián)活動的控制無法使用到ClearQuest中的功能特性了。即使一起使用了clearcase和clearquest,在clearcase當中采用的是base VOB對軟件資產(chǎn)進行配置管理,在ClearQuest當中僅僅是對活動進行單獨管理也不能稱之為UCM。

  讓我們來看看RUP關(guān)于UCM的定義:

  Unified Change Management (UCM) is Rational Software's approach to managing change in software system development, from requirements to release. UCM spans the development life cycle, defining how to manage change to requirements, design models, documentation, components, test cases, and source code。

  One of the key aspects of the UCM model is that it unifies the activities used to plan and track project progress and the artifacts undergoing change. The UCM model is realized by both process and tools. The Rational products Rational ClearCase and Rational ClearQuest are the foundation technologies for UCM ClearCase manages all the artifacts produced by a software project, including both system artifacts and project management artifacts. ClearQuest manages the project's tasks, defects, and requests for enhancements (referred to generically as activities) and provides the charting and reporting tools necessary to track project progress。

    從中我們不難看出,UCM是一個model,他的意義在于建立了動態(tài)的工件和開發(fā)活動的關(guān)聯(lián)及統(tǒng)一管理,貫穿軟件開發(fā)的始終,實現(xiàn)了對開發(fā)過程真正意義上的變更管理(包括軟件資產(chǎn)變更和開發(fā)活動變更),這個模型的實現(xiàn)主要是來自于過程和工具兩個方面的,因此僅僅認為把工具集成使用是UCM的觀點其實是一種誤解。

    [二]---整合

    進入正題前先來看一幅圖:

    這是IBM Rational使用頻率很高的一幅宣傳UCM的圖片,當?shù)谝谎劭吹剿男螤,你想到了什么?它的形狀很象陰陽、太極。
UCM提高了抽象的層次,把開發(fā)看成是“進行開發(fā)活動,開發(fā)工件“。這里活動(activity)是泛指一切開發(fā)中的活動,工件(artifact)則包括測試腳本、文檔、代碼等一切開發(fā)資產(chǎn)。這樣,開發(fā)過程的管理的關(guān)鍵是如何管理活動和工件。

    把這兩件事情整合在一起確實是非常有意義的。我們在日常開發(fā)工作中經(jīng)常碰到這樣的情況:

    .項目經(jīng)理把任務分派給了開發(fā)人員,但是卻無法及時準確的驗證真正的開發(fā)情況,往往都是靠“自覺”,由開發(fā)人員自己上報。
    .開發(fā)人員得到開發(fā)任務,卻在尋找對應代碼的時候浪費了很多時間,尤其是剛剛加入的人員或變動頻繁的復雜項目。
    .測試用例發(fā)生了變更,不知道什么版本的測試用例對應哪些測試執(zhí)行和缺陷。
    .項目開發(fā)中需求頻繁發(fā)生變更,找不到代碼因什么而更改,正確的代碼版本被覆蓋。
    .回歸測試時所謂“已修正”的bug再次出現(xiàn)。出現(xiàn)這些問題的原因是因為開發(fā)活動和開發(fā)工件無法建立起對應關(guān)系,被割裂了,雖然對于兩者都會去管理,但是往往出現(xiàn)遺漏和損失。
 
    在IBM Rational中使用ClearCase管理工件,使用ClearQuest管理活動。

    ClearCase是眾所周知的功能為全面和強大的配置管理工具,ClearQuest通過內(nèi)置的設計器則可以適用于管理各種活動并定制活動流程。(甚至可以定制來管理辦公審批流程)。

    更有趣的是兩者通過變更集(change set)整合在了一起。在ClearQuest里面可以通過變更集直接找到對應于某個開發(fā)活動的工件。你可以輕而易舉的在系統(tǒng)中查到和維護活動的相關(guān)信息、描述、狀態(tài)、優(yōu)先級甚至附件和歷史(可定制的),并通過變更集直接關(guān)聯(lián)到一個組工件的具體版本。通過使用UCM日常的開發(fā)工作被組織成為了更為合理的“工作單元”,“工作單元”包含了開發(fā)工作所需要的活動/變更信息、對應工件,以及集成和追溯的能力。它不但使得開發(fā)工作的過程在一定程度上自動化還改變了原有的工作方式,當你的工作成果被提交的時候,你不再提交“文件”,而是提交包含一組特定版本工件的“活動”。于是對于開發(fā)活動的管理更加有效并緊密的與開發(fā)產(chǎn)物結(jié)合在了一起,這樣上面出現(xiàn)的問題迎刃而解了。

    UCM平衡了工件和活動,確實讓人感覺到有點象陰陽平衡。如果你學習了UCM以及ClearCase和ClearQuest的細節(jié)后也許你會發(fā)現(xiàn)更多的平衡,比如在工作空間管理上,stream對獨立工作空間和共享的平衡等。。。

軟件測試工具 | 聯(lián)系我們 | 投訴建議 | 誠聘英才 | 申請使用列表 | 網(wǎng)站地圖
滬ICP備07036474 2003-2017 版權(quán)所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd