集成流是產品穩定版本流,也是獲取項目發布程序的空間
由于這個項目屬于彼此之間需要緊密協作開發的類型,所以,我們采用復用流的方式,所有開發人員共享一條開發流。這樣,開發人員在檢入文件時就可以看到彼此的修改結果,實現了集成的最大化。但是,由于多個開發人員共享一個開發流,如果存在對一個文件的并發修改,容易引起沖突;另外,這種方式也容易引起交付依賴,使得程序在提交時,必須按照一定次序進行提交。
3.4 規范項目活動類別和顆粒度劃分
采用UCM方式的好處之一,就是項目成員對于配置庫的修改必須有活動關聯,如果沒有分配給操作用戶的活動,用戶就無法對配置庫進行任何修改。這對于EIP這類的維護型項目而言,源碼的修改獲得批準是非常重要的。
為了規范公司項目活動分類,公司在ClearQuest上完善、開發了多個流程,包括缺陷流程、變更管理流程、任務流程、不一致問題流程、測試管理流程等。同時,針對每個流程,我們都定義了相應的批準人員。例如,由缺陷分配人角色進行缺陷的分配,由項目經理進行變更的分配。通過這種方式,可以保證項目成員處理的活動都是得到批準的。
除了規范活動類別外,我們還規范活動的顆粒度劃分。在公司內,我們要求針對每個case提交一個活動。例如,對于EIP項目來說,不能將業務部門一次提出的十個變更通過一個變更活動來提交,也不能將測試過程中發現的多個缺陷通過一個缺陷活動提交。通過對活動顆粒度的限制,避免活動顆粒度過大導致活動生命周期過長,這就起不到活動控制的目的,同時也不利于項目管理人員掌握項目當前活動狀態。
通過對活動類別和顆粒度劃分的規范,項目管理人員就可以利用ClearQuest對各種記錄類型數據進行分析得到的報表,來實時掌握項目的最新動態,合理分配資源和調度開發活動。
3.5 定義合適的變更控制和發布流程
我們針對EIP項目的特點,定義了符合維護型項目特性的變更控制和發布流程,流程圖如下:
圖二 變更控制和發布流程圖
首先,規范維護項目的源碼修改過程。通過使用CCRC,開發人員在處理活動時,可以使用CCRC的“處理活動”功能,快速切換當前處理的活動,使他們可以選擇正確的活動進行源碼修改。通過UCM,一個開發活動可以自動地同其變更集(封裝了所有用于實現該活動的項目工件)相關聯,這樣避免了開發人員手動跟蹤所有文件變更。
其次,規范維護項目測試過程。當開發人員完成活動的處理,需要提交測試時,由項目管理人員提交測試任務,配置管理員將需要測試對應的活動交付(deliver)到測試流,并打一條測試基線。配置管理員使用取基線差程序獲取更新包,并將更新包更新到測試環境。測試人員在測試環境上進行冒煙測試,確認基本集測試通過后,然后對此次測試任務包含的活動進行驗證。一旦測試通過,完成該測試任務后,測試人員提交測試報告給項目成員。如果測試不通過,則要求開發人員修改,并重新進行該測試過程。
圖三 取基線差程序
最后,規范維護項目發布過程。在發布時間到達后,項目經理提交發布任務給配置管理員。配置管理員將測試流上多次確認測試通過的活動集交付(deliver)到集成流,并在集成流上打一條產品基線。配置管理員通過取基線差程序獲取更新包后,然后更新發布測試環境,由測試人員進行發布確認測試。發布確認測試主要是對系統基本集進行驗證。當發布確認測試通過后,配置管理員將更新包發給發布專員,由發布專員更新到生產環境。通過這種方式,可以保證發布程序是由配置管理員從集成流獲取,同時確保發布程序是經過測試的。
3.6 規避活動依賴并控制變更處理順序
在并行開發章節中我們提到了共享開發流方式很容易引起交付依賴。在EIP項目中,開發人員同時面對變更、缺陷、任務等多個活動,很容易出現活動的依賴。一旦出現活動依賴,配置管理員在提取更新包供測試時,會存在一定的困難。如果取文件的最新版本,有可能因最新的文件包含某些不穩定的新增功能而導致編譯失敗。
為了解決這個問題,我們通過使用觸發器的方式進行開發流活動依賴的限制。當源碼上一版本關聯的活動未驗證通過并關閉時,則不允許該源碼檢出。這個方法不僅控制活動的依賴,而且從限制了EIP項目控制變更的處理順序(第一批變更未處理完,不進行第二批變更的處理)。
四、小結
采用上述方法,EIP項目杜絕了發布程序版本混亂的問題,而且減少了變更處理周期,保證了發布進度,F在項目組從開始處理變更,測試變更,到該變更發布,一般只需要1周時間,工作效率提高了200%,業務部門對該項目的滿意度也增加了。
這里需要提醒的是,新方法雖好,但是在引入新方法初期,一定需要有專人配合、指導項目組使用,以保證新方法成功實施。在EIP項目在引入該方法初期,項目管理人員不理解,覺得增加了人力成本(需要多個角色人員)、環境投入(需要額外的發布測試環境),影響了開發進度(文件的檢出修改限制);開發人員覺得開發變麻煩了(文件的檢出修改限制)。通過管理員的耐心解釋和輔導,經過三個星期的磨合與適應后,EIP項目已完全遵循這種方法進行配置管理和發布管理工作。
通過上述例子說明,采用IBM Rational ClearCase和ClearQuest,實實在在的幫助公司的維護型項目提高了配置管理能力,增強了公司的競爭力。
文章來源于領測軟件測試網 http://www.kjueaiud.com/