采用現有流程
簡介
在本系列文章的第 1 部分中,Bruce MacIsaac 解釋了軟件開發方法的價值。本文將介紹如何采用在 IBM Rational Method Composer 中定義的流程,以及如何在 IBM Rational Team Concert 中實現其自動化。
Rational Method Composer 用於管理、調整和溝通流程描述。它由兩部分組成:
以 IBM Processes Library 形式存在的流程資產,它由一些實踐和預創建的流程組成,您可以采用或調整 它們。
一個創作、調整、配置和發布流程描述的工具。
您還可以從 developerWorks 下載免費試用版的 Rational Method Composer。
Rational Team Concert 用於協作式規劃、工作項管理、源代碼控制管理和持續構建。它提供了高度可配 置的流程支持,以適應您想要的工作方式,從而使團隊成員能夠一起高效協作。
Rational Method Composer 流程描述 提供了讓團隊成員切實有效地作為一個團隊一起工作所需的人類可讀的指南。Rational Team Concert 流程模板 提供了機器可讀的規則,以便配置相應的工具來支持您的流程。總之,這兩個應用程 序為流程管理、流程運作和可衡量的改進提供了強大的解決方案。
為了解釋 Rational Method Composer 和 Rational Team Concert 之間的集成,我們利用了 Collaborative Lifecycle Management(CLM,協作式生命周期管理)的 Rational 解決方案,其中包括 Rational Method Composer 流 程資產(如流程描述、工具指南和指標)和其他流程資產(如 Rational Team Concert 流程模板)。這些資 產提供了項目團隊安裝和配置 CLM 工具,以及運作項目所需的指南。
場景:使用可用的流程資產
我們使用一個場景來說明 Rational Method Composer 和 Rational Team Concert 集成功能,在這個場景 中,團隊使用了可用的流程資產(按原樣)。
在該場景中,我們引入了 CLM 流程資產 的 Rational 解決方案。該流程資產由 IBM 開發,可以支持 CLM 工具的安裝和配置,並添加有關如何使用工具 作為完整軟件開發生命周期的一部分的流程指南。
為了說明對該流程資產的使用,我們使用了一個虛 構的項目團隊,即 Business Recovery Matters 項目團隊,這是 JKE 金融機構的 Money That Matters 計 劃下的一個項目。Business Recovery Matters 項目包括項目領導團隊,還包括一個特性小組、一個部署團隊 ,以及一個獨立的測試團隊。該場景側重於項目領導團隊,該團隊建立環境,並讓工作人員開始團隊工作。該 場景涉及以下項目領導小組成員:
Pam,項目經理
Peter,流程工程師
Todd,工具專家
Ursula,業務分析師
確定使用哪些工具
項目領導團隊正在考慮采用成熟的開發實踐和工具來加快啟動項目,幫助他們有效地開展工作。
Peter 和 Todd 調查可用的流程資產和工具。他們決定使用 Rational Method Composer 進行流程記 錄,並使用 Rational Team Concert 使團隊成員能夠協作。JKE 組織購買了適當的許可,供團隊使用。
根據他們的調查,領導團隊還決定為了以下目的而采用 CLM 流程資產:
快速配置工具和生命周期項目,讓團隊開始工作
采用經過驗證的成功模式
提供相關指南和基於上下文的指南,使團隊成員能夠快速掌握團隊的流程
提示:
您可以閱讀完整的 Money that Matters 生命周期場景,了解有關安裝、設置和使用 CLM 工具的更多指南 。(要求在 Jazz.net 上注冊,注冊是免費的。)
為了使用 Rational Method Composer 進行內容創作,需要獲得適當的許可。可用的許可包括 Authorized User 許可、Floating 許可或 Tokens。
為了浏覽 Rational Method Composer 發布的內容,需要一個 Authorized User 許可或 Rational Method Composer Content Reader 許可。
以下各節說明了他們如何啟動和運行其項目。
安裝和配置 CLM 工具及資產
Todd 遵循在 IBM 的 CLM 信息中心 Installing the Rational solution for CLM 主題下的指南。
他在系統上具有管理員權限,所以他安裝和配置了 CLM 工具,其中包括安裝和配置服務器、許可和用戶等 。
注意: 他也可以選擇安裝客戶端工具。
在已經安裝和配置了工具之後,Todd 確認了 Jazz Team Server (JTS) 正在運行,這樣他就可以繼續執行 下一個步驟。
可以從 IBM Rational 解決方案流程資產 頁面下載 CLM 解決方案流程資產。
有兩個主要組件需要下載:已發布的內容或來自 Rational Method Composer 庫的內容。
出於該場景的目的,領導團隊決定使用標准的流程內容,所以 Todd 下載了已發布的 Rational Method Composer 流程內容(以 clm.war 文件的形式提供)。
將已發布的 Rational Method Composer 內容部署到 Jazz Team Server
為了從 Rational Team Concert 項目區域中訪問 Rational Method Composer 流程指南,Todd 將 clm.war 文件部署到 Jazz Team Server (JTS),它使用工具自帶的默認 Tomcat 服務器。
Todd 將 clm.war 文件部署(相當於解壓)在以下目錄中(其中斜體部分根據您的系統而定):
Jazz_server_install_folder\server\tomcat\webapps\rmc
此解決方案中可用的其他流程資產(如 Rational Team Concert 流程模板和 Lifecycle Project Administration 模板)被嵌入在已發布的流程內容中。
在 Todd 部署了 clm.war 文件後,他在 Web 浏覽器中使用下面的 URL 訪問流程描述:
http://JTS:9443/rmc/clm/index.htm
下載並導入模板
在流程描述中,Todd 導航至 Getting Started > Tools Setup and Configuration 頁面,找到 Rational Team Concert 和 Lifecycle Project Administration 模板。
下載流程模板並將它導入 Rational Team Concert
他下載了 Rational Team Concert 流程模板:
clm.process.ibm.com.zip
他遵循信息中心的 Working with process templates 主題下的指南來導入流程。
然後,使用模板創建新的項目區域。
下載並導入 Lifecycle Project Administration 模板
最後,Todd 選中了 Getting Started > Tools Setup and Configuration,然後下載 Lifecycle Project Administration 模板:
rational.clm_sol.integrated.template.xml
接下來,他遵循信息中心的 Importing lifecycle project templates 主題下的指南導入了 Lifecycle Project Administration 模板。
創建一個生命周期項目
現在已經安裝和配置好了工具,服務器正在運行,並且模板已可用,因此領導團隊的項目經理 Pam 可以使 用 Lifecycle Project Administration 模板創建一個生命周期項目。
她遵循 Creating lifecycle projects from a template 主題下的指南。執行結果是 Rational Team Concert、Rational Quality Manager 和 Rational Requirements Composer 中的集成項目區域,這使團隊可以開始運行項目。
出於此場景之目的,Pam 側重於 Rational Team Concert 項目區域。
注意:
本文並沒有詳 細介紹如何使用 Rational Team Concert,也沒有探索 Rational Team Concert、Rational Quality Manager 和 Rational Requirements Composer 的集成。在 Jazz.net 上,通過一個被稱為 Money that Matters Lifecycle Scenario 的示例場景,我們詳細介紹了 CLM 工具集成(要求 Jazz.net 注冊,該注冊是免費的) 。
運行項目
Pam 已准備好開始運行項目。她為第一個項目迭代添加了一個迭代計劃,將工作項添加到計劃,並將工作 項分配給團隊。後面的小節將詳細說明這些步驟。
將團隊成員添加到項目區域,並為他們分配可用的 角色
Rational Team Concert 流程中的每個角色都有一個簡短的描述,這是從 Rational Method Composer 內 容中提取的。您可以隨時訪問已發布的內容,查找關於每個角色的更多信息,比如所需的技能、執行的任務、 擔任該角色的人所負責的工作產品,以及其他指南。
Pam 在信息中心的 Adding members to projects 主題下找到相應的指南。
她將她的 Rational Team Concert 用戶 ID 添加到項目團隊成員區域,並將 Project Manager 角色指定 到她的 ID。這樣一來,她就能夠在項目區域中創建計劃、工作項等。
將工作項類別分配到團隊區域
在創建項目區域時,包含四個默認團隊區域。Pam 必須將工作項類別與實際的團隊區域相關聯,然後才可 以創建工作項。
為了執行這些操作,Pam 在 IBM 信息中心的 Creating team areas and associating work item categories 主題下找到了更多的信息。
在 Project Area 編輯器的 Work Item Categories 選項卡中,她將工作項類別重命名為與團隊區域相同 的名稱。
然後,如圖 1 所示,她將團隊區域與工作項類別相關聯。
圖 1. 與團隊區域關聯的工作項類別表
微調項目時間軸
在 Pam 創建項目區域時,所提供的默認迭代集被認為是一個起點。
為了執行這些操作,Pam 需 要遵循信息中心的 Creating timelines and iterations 主題下的指南。
Pam 修改了迭代次數,以便指定某個階段中出現的迭代次數(根據初始規劃,還需要對在整體項目進度 中可以放入多少次迭代進行估算)。
基於這個估算的時間表,她為每個迭代和主時間軸添加了特定的開始和結束日期。
圖 2 顯示了修改之前和之後的時間軸。
圖 2. 默認時間軸(左)和修改後的時間軸(右)
為第一次迭代創建一個計劃,並將 工作項添加到計劃中
使用 CLM 流程模板創建的項目區域包含類似於 Rational Method Composer 中定義的工作分解結構的不 同部分的工作項模板。因此,對於每一種類型的團隊(開發團隊、項目領導團隊和獨立測試團隊),都可以在 Rational Team Concert 中實例化流程描述中記錄的建議任務。
Pam 在信息中心的 Creating plans 主題下找到了如何創建一個迭代計劃的指南。
作為第一次迭代的規劃與時間表任務的一部分,她為 Inception Iteration 0 創建了一個迭代計劃。
她將計劃分配給項目領導團隊。
所產生的計劃中尚未包含任務(或規劃項)。Pam 遵循了 Creating work items from a template 主題 下的指南。
為了將任務添加到這個計劃,Pam 使用了 Project Leadership Team – Inception Iteration 工作項 模板。
她將工作項提交到項目領導團隊區域,並指定這些工作項必須在 Inception Iteration 0 中完成。
所產生的計劃類似於圖 3。它包含項目領導團隊需要執行的任務,以便啟動項目、讓團隊開始、初始化 需求獲取,等等。
圖 3. 使用來自工作項模板的任務填充迭代計劃
隨後,Pam 可以使用其他工作項 填充 Construction Iterations,並將工作項分配給特性團隊,以便進一步分析需求,為每個需求設計和實現 解決方案,測試已實現的解決方案,等等。
創建預定義類型的更多工作項
Pam 創建的項目區域包含隨時可被實例化的不同工作項類型。每個工作項都包含一個與 Rational Method Composer 中的內容相關的信息的鏈接,例如,狀態機顯示了哪些操作將工作項從一個狀態轉移到另一 個狀態,以及流程內容中的哪些任務將觸發操作(或狀態轉換)。
隨著項目的第一次迭代繼續進行, 圖 3 所示的計劃中的任務之一是 Identify and Organize Requirements。
Pam 將該任務分配給團隊的業務分析師 Ursula。
Ursula 在信息中心的 Creating work items
主題下找到有關創建工作項的信息。
她決定通過創建一個 Story 類型的工作項來記錄與詳細說明、開發和單元測試與用戶故事實現有關的工 作。
在創建了故事工作項之後,Ursula 通過工作項所提供的鏈接訪問詳細的流程描述(參見圖 4)。
然後,迭代工作會繼續。每一個團隊成員都執行分配給自己的任務,並訪問工作項上的鏈接,以加快團 隊的流程。
圖 4. 通過工作項中的鏈接訪問流程指南
結束語
在本文中,我們了解了 Business Recovery Matters 領導團隊如何快速配置一個生命周期項目,並在若 干小時內而不是幾天後啟動。我們了解了團隊如何利用經過驗證的成功模式來創建計劃和工作項,還查看了每 個工作項如何提供相關的和基於上下文的指南鏈接,使團隊成員能夠迅速掌握團隊的流程。