概述
Open Services for Lifecycle Collaboration (OSLC) 允許來自相同或不同經銷商的軟件和產品生命周期 工具進行交互操作,以支持端到端流程。這些工具包括用於項目管理、缺陷跟蹤、測試管理、架構管理以及其 他任務的軟件程序包。在本文中,我們將介紹如何在作為架構管理工具的 IBM Rational System Architect 和用於協作化生命周期管理 (CLM) 的 Rational 解決方案應用程序(提供需求管理、項目規劃、更改以及配 置管理、內部版本管理以及測試管理功能)之間設置 OSLC 集成。在 Microsoft Windows 2008 R2 服務器上 設置此集成要求您規避某些危險。
本文是根據在位於德國黑倫貝格的卓越的 IBM SAP 中心在 IBM Beta Test Site 中設置集成方案時獲得的 經驗編寫的。本文假設您熟悉各個工具的相關概念,並使用下面的產品版本指導您逐步完成安裝和集成過程:
Microsoft Windows Server 2008 R2
Rational System Architect V11.4.2
包括 Microsoft SQL Server Express 2008
Rational System Architect XT V11.4.2 (System Architect XT)
Rational CLM 2012
Rational Team Concert 4.0
Rational Quality Manager 4.0
Rational Requirements Composer 4.0 Rational Requirements Composer
作者成功地在早期版本的基礎上設置了類似的配置,這些早期版本包括 System Architect V11.4.1.2 和 CLM 2011(Rational Team Concert、Rational Requirements Composer 和 Rational Quality Manager 3.0 )。盡管屏幕截圖可能在細節上有所不同,但總的方法並沒有改變。
安裝軟件組件
本文中使用的服務器主機名是 OSLC,它的域是 .example.com。您可以在相應的位置將其替換為您自己的 服務器名稱和域。在服務器上,已經創建一個具有管理權限的命名為“Rational”(OSLC\Rational) 的 Microsoft Windows 用戶。
准備 Microsoft Windows 2008 R2 服務器
安裝和配置 Internet 信息服務 (IIS) 是使用 Rational System Architect XT 的先決條件,安裝 .NET 3.5 Framework 是使用 System Architect OSLC 安 全握手的先決條件。
使用服務器管理器添加 Web 服務器 (IIS) 角色。確保選擇以下角色服務(參見圖 1):
應用程序開發
ASP.NET
ASP
ISAPI 擴展
ISAPI 篩選器
安全性
基本身份驗證
Windows 身份驗證
使用服務器管理器添加 .NET Framework 3.5 或更高版本特性(參見圖 2)。
圖 1. 用於 System Architect XT 安裝的 IIS 角色服務先決條件
圖 2. Windows 服務器功能 .NET Framework 3.5.1
安裝 Rational System Architect
在本示例中,已經將 System Architect 安裝到默認目錄中:
C:\Program Files (x86)\IBM\Rational\System Architect Suite
確保為 Rational System Architect 和 System Architect XT 提供了有效的許可證文件,或者可以將 這兩個文件配置為使用可提供有效許可證的許可證服務器。
執行 System Architect 的完整安裝,包括所有先決條件。
使用啟動向導配置 System Architect
如果在首次啟動 System Architect 時該向導沒有自動出 現,請單擊 Help > Startup Wizard 啟動該向導。安裝 SQL Server 2008 的一個實例,配置 System Architect 安裝,並安裝示例和教程百科全書。這會創建 JK_Enterprises 樣例百科全書,我們使用該書演示 了 OSLC 集成(參見圖 3)。
圖 3. 啟動向導樣例百科全書
安裝 System Architect XT
在 System Architect 充當 OSLC 提供程序時,必須使用 System Architect XT 才能將圖表呈現為網頁。 System Architect XT 安裝到同一目錄中。如果您在安裝期間獲得一個 0x8007000B 錯誤消息(參見圖 4), 請查看 IIS 角色服務是否完整,然後重試安裝。
圖 4. 缺少 IIS 角色服務時的 System Architect XT 安裝錯誤消息
安裝和配置 CLM 2012 應用程序
安裝 Rational Requirements Composer、Rational Team Concert 和 Rational Quality Manager。 對於此演示方案來說使用 Tomcat 進行快速安裝就足夠了。交互式安裝指南 將幫助您完成這一過程。
在使用 Microsoft Internet Explorer 時,將 oslc.example.com 添加到其信任的站點。
導航到 https://oslc.example.com:9443/jts/setup 以設置服務器。
使用 ADMIN 和 ADMIN 用戶 ID 和密碼登錄。
運行快速安裝。
確認公用 URI:https://oslc.example.com:9443/jts
創建一個管理用戶(在本例中,該用戶名為 rational)。
您可以使用提供的試用許可證(Rational Requirements Composer Analyst、Rational Team Concert Developer、Rational Quality Manager Quality Professional、Contributor)或導入您自己的許可證。
創建 CLM 樣例項目
要創建某些樣例數據,請導航到此位置並創建“Money that matters ”生命周期樣例項目:
https://oslc.example.com:9443/admin/web#/sample
“rational”用 戶應該會作為管理員自動添加到每個項目。此外,還會創建很多樣例用戶。盡管嚴格來說,對於此 OSLC 鏈接 方案,分配許可證並不是必須的,但也應該為這些示例用戶分配適當的許可證。該操作可以在 Jazz Team Server 管理頁的用戶管理部分完成。
該步驟會創建以下項目:
/ccm 中的 JKE Banking(更改和配置管理)
/qm 中的 JKE Banking(質量管理)
/rm 中的 JKE Banking(需求管理)
將 Rational System Architect 設置為 OSLC 用戶
以下示例將介紹如何根據與 System Architect 內容有關的需求將 Rational Requirements Composer 配置為 RM 提供程序。與鏈接 Rational Team Concert 與 Rational Quality Manager 所需的步驟幾乎相同,但配置的位置可能會不同。標題為 使用 Rational Team Concert 監視 Rational System Architect 模型 的 developerWorks 文章介紹了如何使用 Rational Team Concert 來監視 System Architect 中的更改。
允許在不提升權限的情況下注冊 OSLC
OSLC 使用 OAuth 作為身份驗證機制,並使用回調機制來交換安全握手信息。System Architect 需要在本地計算機上打開一個 HTTP 端點才能接收此握手。在默認情況下,Windows 2008 安全策略會阻止沒 有權限的用戶執行這項操作,因為該操作或多或少會導致靜默 OAuth 握手失敗。這意味著常規用戶需要以管 理員身份運行 System Architect (防止出現無權限訪問的情況),或者需要注冊 URL ACL,然後才能打開該 端點。
在具有提升權限(已經以管理員身份運行,如圖 5 所示)的命令 shell 中,在運行 System Architect 的系統上運行清單 1 中所示的 netsh 命令。將 OSLC 替換為運行 System Architect 的系統的主 機名。
圖 5. 通過 netsh 設置 URL ACL
sddl 表達式等同於指定 user=Everyone,但它還適用於除 English 之外的 Windows 區域設置。
清單 1. 允許每個人打開 OAuth http 端點的 netsh 命令
netsh http add urlacl url=http://OSLC:8890/ sddl=D:(A;;GX;;;WD)
在 Rational Requirements Composer 中創建一個用戶 密鑰
與其他 Jazz 應用程序(如 Rational Team Concert 和 Rational Quality Manager)相比, Rational Requirements Composer 沒有自己的 OAuth 配置。它與 Jazz Team Server 組件共享其配置。
導航到 https://oslc.example.com:9443/jts/admin。
選擇 Server > Communication / Consumers (Inbound)(參見圖 6)。
為該用戶指定名稱(在本例中為 SA),然後指定密碼。
提示:
清除 Trusted 復選框會導致 Rational Requirements Composer 明確詢問最終用戶是否 信任 System Architect 應用程序,以後用戶每次通過 System Architect 登錄到 Rational Requirements Composer 時,它都會代表用戶。由於我們自己可以控制這兩個環境並且這樣更便捷,因此我們保持選中 Trusted 復選框。
圖 6. 在 Jazz Team Server 管理視圖中為 Rational Requirements Composer 創 建一個用戶密鑰
將 System Architect 回調 URL 注 冊為受信任
System Architect 中的 OAuth 機制使用了一個回調 URL,Rational Requirements Composer 無法確定該 URL 是否來自受信任的來源。這會導致在保持不變的情況下忽略 Trusted 標志。
為了防止出現這種情況,請導航到 https://oslc.example.com:9443/jts/admin 並單擊 Server 選項卡。
依次選擇 Configuration 和 Advanced Properties,然後搜索 com.ibm.team.repository.service.internal.oauth.OAuthServiceProvider。
將回調 URI http://OSLC:8890/SAOSLCConsumer/ 添加到受信任的客戶端授權 URI 列表中(圖 7 )。
單擊 Preview 鏈接,然後單擊 Save 配置。
圖 7. 添加 System Architect URI 作為受信任的 OAuth 回調 URL
在 System Architect 中將 Rational Requirements Composer 注冊為 OSLC 服務提供程序
需要為每個 System Architect 百科全 書和 Rational Requirements Composer 項目都執行一次此步驟。
在 System Architect 中,打開 JK_Enterprise 百科全書。
使用菜單欄,選擇 Tools > Service Provider Configuration。
在 Servers Established 區域下,單擊 Add 按鈕,
配置到 Rational Requirements Composer 服務器的鏈接。提供以下信息(參見圖 8),然後 單擊 Register 按鈕:
服務器的名稱(在本例中為 RRC)
Rational Requirements Composer 的根服務 URL
(https://oslc.example.com:9443/rm/rootservices)
在 Jazz Team Server 中注冊 OSLC Consumer 期間創建的密鑰
在注冊期間選擇的機密。
圖 8. 在 System Architect 將 Rational Requirements Composer 注冊為服務提供程序
注冊服務器之後,Communication Links 區域下的 Add 按鈕應變為可用。單擊該按鈕,然後選 擇 RRC 配置。
應該會打開一個身份驗證對話框,在該對話框中,您需要提供 Rational Requirements Composer 用戶憑據。
明確授權 System Architect 代表用戶訪問 Rational Requirements Composer 之後,從 Rational Requirements Composer 需求項目列表中選擇 JKE Banking(圖 9),然後單擊 Add。
關閉 Configure Service Provider 對話窗口。
圖 9. System Architect 中的 Rational Requirements Composer 項目選擇對話框
如果 您提供身份驗證憑據之後得到一條錯誤消息,內容是“Could not load file or assembly System.Core...” (參見圖 10),則需要安裝 Microsoft .NET Framework 3.5 並重新啟動 Rational System Architect。
圖 10. “Could not load file or assembly System.Core...”錯誤消息
如果您獲得“Access is Denied”錯誤消息(圖 11)或者提供身份驗證憑據之後無法加載對話框頁面(圖 12),則需要使用提升 的權限運行 System Architect 或者執行 URL ACL 注冊步驟。
圖 11. “Access is Denied”錯誤消 息
圖 12. 無法加載對話框頁面
指向 System Architect 中 Rational Requirements Composer 需求的鏈接
可 以根據 System Architect 圖表、符號或定義來創建指向需求的 OSLC 鏈接。在本例中,我們使用了 JK_Enterprises 百科全書中的 Account Open 用例圖表。我們將 Rational Requirements Composer 中的 Customer actor 定義鏈接到 System Architect 圖表中的 Customer 符號。
右鍵單擊百科全書內容,然後從上下文菜單中選擇 Link to Requirement(參見圖 13)。如 果尚未在當前的 System Architect 會話中對 Rational Requirements Composer 進行身份驗證,那麼您會看 到 Rational Requirements Composer 登錄對話窗口。
您會得到一個對話窗口,該窗口可允許您選擇 Rational Requirements Composer 需求或集 合。
圖 13. 允許鏈接到需求的上下文菜單
在 Rational Requirements Composer 選擇對話框(用於產品選擇,參見圖 14)中,搜索需 求名稱或通過 Rational Requirements Composer 文件夾結構 JK Enterprise Project > Use Case Content > Actors 導航到該需求。
選擇 Composer actor,然後單擊 OK。
圖 14. 在 System Architect 中選擇 Rational Requirements Composer 需求
在 Rational System Architect 中 查看 OSLC 鏈接目標摘要
在 System Architect 中,通過符號、定義或圖表旁邊的紅色三角形圖標來 指示是否存在 OSLC 鏈接(圖 15)。如果您將鼠標指針放置在這樣的三角形上,則會打開一個彈出窗口,該 窗口描述了鏈接目標的摘要(圖 16)。該彈出窗口的內容實際上是由目標系統(在本例中為 Rational Requirements Composer)呈現的;因此,它總是反映最新內容。
圖 15. 三角形圖標指示了是否存在 OSLC 需求鏈接
圖 16. 彈出窗口顯示了需求摘要
將 System Architect 設置為 OSLC 提供程序
在此示例中,我們將配置 System Architect,向 Rational Team Concert 工作項目提供架 構圖表。該操作對於將架構信息與任務關聯可能非常有用。
配置 System Architect REST 服務以將百 科全書顯示為 OSLC 鏈接源
有關詳細信息,請參閱信息中心的 將 Rational System Architect 全書 配置為用於鏈接的資源 主題。REST 服務配置存儲在 System Architect 安裝目錄的文件 SAServerConfiguration.xml 中(參見清單 2)。在本例中,它存儲在以下位置:
C:\Program Files (x86)\IBM\Rational\System Architect Suite\System Architect
以管理員身份啟動一個編輯器,如記事本或寫字板
按照如下方式編輯 SAServerConfiguration.xml 文件:
選擇一個邏輯服務器名稱,
提供 SQL 作為 serverType,
將 System Architect 百科全書所在的 SQL 服務器連接指定為 serverName。
如果沒有使用任何工作區,那麼只需提供百科全書名稱並保留 workspace 配置不變即可 。
清單 2. 顯示 JK_Enterprises 百科全書的 SAServerConfiguration.xml 文件
<SAServerConfiguration> <SAServers> <Logicalserver name="SA" serverType="SQL" serverName="OSLC\SYSARCH" > <Encyclopedias> <Encyclopedia encyclopediaName="JK_Enterprises"> <Workspace ID="" name=""/> </Encyclopedia> </Encyclopedias> </Logicalserver> </SAServers> </SAServerConfiguration>
啟動或重新啟動 System Architect REST 服務,使 OSLC 入站通信能夠開始工作。以管 理員身份啟動一個命令窗口並執行清單 3 中的命令(參見圖 17)。
提示:
如果該服務已經運 行,則需要重新啟動該服務以選取更改後的配置。啟動服務之前,只需使用相同的語法發布 net stop 命令。
清單 3. 用於啟動 System Architect REST 服務的命令
net start "IBM Rational System Architect Rest Service"
圖 17. 啟動 System Architect REST 服務
在 Rational Team Concert 中創建 OAuth friends (outbound) 配置
Rational Team Concert 保留自己 的 OAuth 配置並且不參與 Jazz Team Server 配置。
導航到 https://oslc.example.com:9443/ccm/admin。
向 Communication / Friends (outbound) 部分中添加一個條目。
輸入對話框窗口(圖 18)會要求您提供以下信息:
此 friend 的姓名(本示例使用的是 SA)
根服務 URI (http://oslc.example.com:8889/SAOLSC/rootservices)
作為共享機密的密碼
是否在服務器之間建立信任關系(是)
圖 18. 在 Rational Team Concert 中創建 OAuth friend 鏈接
提示:
依次單擊 Create Friend 和 Next,這將顯示可配置的密鑰。但是,在後續的步驟中不需要使用密鑰或秘密密鑰。
將 System Architect 與 Rational Team Concert 項目關聯
導航到 https://oslc.example.com:9443/ccm/web 並單擊 JKE Banking 項目的 Manage Project 鏈 接(圖 19)。
圖 19. Rational Team Concert 項目概述
向下滾動到 Associations 部分,然後單擊 Add 按鈕來打開選擇對話窗口。
選擇剛剛創建的 SA 應用程序作為 OAuth friend(圖 20)。
現在,應該會打開另一個身份驗證對話框,這次由 System Architect XT 呈現(圖 21)。Rational System Architect 針對操作系統用戶注冊進行身份驗證。這就是要求您提供 Windows 用戶憑據(需要采用 Windows DOMAIN\USERNAME 格式指定的用戶名)的原因,在本例中,用戶憑據為 OSLC\Rational)。
驗證您的用戶憑據之後,就會看到所顯示的 System Architect 百科全書列表。選擇 JK_Enterprises_1 百科全書(System Architect 會自動附加 _1),然後單擊 OK。
保存配置。
圖 20. Rational Team Concert Add Association 視圖選擇
圖 21. System Architect XT 和 IIS 身份驗證對話窗口
將 Rational Team Concert 工作項 目鏈接到 System Architect 架構產品
打開 JKE Banking (Change Management) 項目的 Rational Team Concert 工作項目,然後導航到它 的 Links 頁面。
您會看到出現了一個新的 Elaborated by Architecture Element 鏈接類型(圖 22)。
圖 22. Rational Team Concert 工作項目的新“Elaborated by Architecture Element”鏈接類型
單擊 Elaborated by Architecture Element 來創建這種類型的新鏈接。
在產品選擇對話窗口打開時(由 System Architect XT 呈現,參見圖 23),您可以篩選產品名稱、 類型和其他屬性。在此示例中,我們只是搜索 System Architect 中使用的 Account Open 用例圖表作為 OSLC Consumer 示例
選擇右側的產品,然後單擊 OK。
圖 23. Rational Team Concert 中的 System Architect 產品選擇對話框
查看鏈接摘要
現在,您已經創建了鏈接,可以從 Rational Team Concert 工作項目輕松訪問詳 細信息。只需將您的指針懸停 在鏈接上,即可打開一個彈出窗口(在作者的環境中,不會偶爾打開該窗口 - 重新啟動 System Architect REST 服務會解決這種情況。)。您可能必須再次登錄 System Architect XT。 由於我們沒有將 System Architect XT 設置為使用 https,因此 Internet Explorer 將顯示一個警告,內容 為加密的內容(來自Rational Team Concert )以及未加密的內容(來自 System Architect XT)將會顯示在 同一頁面上(圖 24)。重要的是要在此處選擇 No,否則不會加載 System Architect 內容。
圖 24. 有關加密網頁中未加密內容的警告
當您登錄時,彈出窗口會顯示有關 System Architect 圖表的技術信息。單擊位於彈出窗口底部的 Show More 鏈接後,會加載該圖表內容(參見 圖 25)。
圖 25. 在 Rational Team Concert 彈出窗口中顯示 System Architect 圖表
單擊 OSLC 鏈接,您會到達 System Architect XT 網站,在這裡您可以浏覽圖表以及所有全書內容。但是,這樣使 用 System Architect XT 需要額外的設置步驟,如創建 SA 目錄以及向用戶分配權限,這些不在本文的討論 范圍。
結束語
OSLC 是一種成熟且功能強大的技術,無論開發這些工具所使用的技術如何,它 都可以將軟件開發生命周期管理軟件集成。本文已展示,支持基於明顯不同的架構和技術的兩個產品進行彼此 溝通非常簡單。作者希望通過提供分步指南,將來的項目會在審閱產品文檔方面少花一點時間,騰出更多的時 間來充分利用這些產品的優勢。