概念: UMA 與 RUP 2003 Meta 模型的比較
本概念 描述 Unified Method Architecture 和 Rational Unified Process / Rational Process Workbench 2003 Meta 模型的主要差異。
主要說明

背景

Unified Method Architecture (UMA) 致力於統一 IBM 的所有方法和流程工程方法的表示法綱目和專有名詞,以及支援業界最重要的標準。因此,如下圖所示,UMA 是由 IBM Rational Unified Process (RUP)、IBM Global Services Method (GS Method) 及 IBM Rational Summit Ascendant 的架構設計師共同合作開發。除了這一群核心的架構設計師團隊,IBM 內外的許多其他開發流程案的關係人也參與審查並投入這套規格。此規格本身已提交 OMG 成為 SPEM 2.0 標準的提案。因為 RUP 2003 Meta 模型是根據現行的 SPEM 1.1 標準所開發,此 SPEM 2.0 草案可視為這項標準的一項重要且持續的演進。

Unified Method Architecture 的演進圖

這項統一霸業的主要目標是為了提出一套詞彙與資料結構,能夠保留重要的特色來表達以上所有方法和流程。例如,UMA 必須設計成支援許多不同的生命週期模型:RUP 反覆式開發生命週期、漸進式「GS 方法」生命週期,以及 Summit Ascendant 瀑布式和反覆式生命週期。此外,也必須解決專有名詞的差異:RUP 的「活動」在「GS 方法」中稱為「作業」,RUP 談論的「構件」在 Summit Ascendant 中定義為「交付項目」,諸如此類。

UMA 對於 RUP 2003 使用者的改變

對於所有這些方法,由於只定義一套資料結構,尤其只定義一套專有名詞,妥協方案和變更必須得到所有關係人的認同。雖然這些變更可能讓目前的 RUP 使用者感到不便,但長期看來,一套普及統一的專有名詞及一套表達方法內容和流程的標準化方法,可以改善流程的溝通和促進重複使用性,確實有所幫助。下列清單彙總 RUP 2003 Meta 模型的最重要變更。本頁最後的表格完整比較 UMA 所有主要來源的專有名詞。 

  • 活動重新命名為作業:為了緊密連結流程制訂與專案管理,我們將最低的可指派工作單元重新命名為「作業」,因為這是最常用的詞彙。
  • 工作流程明細重新命名為活動:工作流程經常以活動圖階層來表達 (例如,UML 2.0 定義的活動圖)。雖然 RUP 只提供一層工作流程分解,但 UMA 特別設計為提供多層的分解。由於「活動」這個字較常用來表達活動圖的元素及活動圖本身,我們決定將 RUP 中使用的「工作流程明細」改為「活動」。我們知道改變「活動」這個字的使用習慣可能造成現有的 RUP 使用者感到混淆。不過,UMA 工作的一項重要目標是以標準和業界最共通的方式來使用詞彙。  
  • 作業(原為 RUP 活動)可由許多角色來執行:在 RUP 2003 中,活動已建模成角色的作業。客戶意見、查看其他流程模型方法及 UML 2.0 的變更,指出這樣建立人類行為模型的方式太過於嚴苛。這種方式無法表達某些工作是由不同角色合作執行的結果。為了解決這個問題,UMA 將「作業」定義為獨立的模型元素,執行角色可視為資源指定給此元素。因此,UMA 現在允許將多個角色指定給一項作業。基於舊版相容性,仍然允許指定主要的執行角色(作業的負責人)及數個額外的執行者。  
  • 修正構件概念:RUP 只採用構件的概念來定義開發專案中使用和產生的事物。UMA 為這些概念定義一套延伸的分類架構。其定義工作成果的一般概念,有三種不同的特殊化定義(特定的工作成果類型):構件(受管理的工作成果)、交付項目(交付關係人審查的封裝工作成果)及輸出結果(未管理、無形的工作成果)。
  • 工作成果和角色的不同分類:在 RUP 中,構件和角色全部都依規範來分類。不過,構件有時會跨規範來使用,只分類成一個規範會導致混淆。在 UMA 中,已針對工作定義(作業和活動的規範)、工作成果(領域和工作成果類型)及角色(角色集)來定義不同的種類。  
  • 流程元件重新命名為方法套件:許多標準和技術中經常用到元件的概念。元件的運用大多會鏈結到封裝抽象的概念,將元件定義成一個黑箱,可透過定義嚴謹的介面來使用。RUP 元件無法滿足這項黑箱準則。此外,SPEM 標準也定義套件及元件。為了符合 SPEM 和業界對於「元件」這個字的用法,我們將「流程元件」重新命名為「方法套件」(就技術層面而言就是一個「方法」,因為可包含方法元素或流程元素)。
  • 區隔方法內容元素和流程元素:在 RUP 2003 中,您經由定義新的配置,並於開發案例構件中手動記錄對於標準 RUP 的變更,以建立新的流程。除了配置概念,UMA 還提供延伸的概念來調整流程。可讓您為流程具體建立模型,指出您在每一個階段中真正要執行方法內容中定義的什麼工作,因為您可以很容易在流程結構中新增、移除及重新排序元素,決定是否重複使用方法內容中您要的任何事物。經由更明確區隔方法內容(例如,對規範所定義的作業)與方法內容在流程中運用的情形(以活動圖及/或工作分解結構來表達) 以及流程的建模(亦即,建立新的或改編的活動圖,或新的或改編的工作分解結構),將可以實現這些特性。這引進一些新的概念,例如描述子,可支援這樣的區隔,並實現新的功能,以維護和重複使用許多不同系列的替代流程和流程部分,全部都在相同的配置內。

專有名詞比較

下表顯示 UMA 專有名詞與其他流程工程方法所詞彙的對映。

  UMA/RMC RUP 2003 SUMMIT IGSM SPEM 1.1
基本方法元素        
  角色 角色 角色 角色 流程角色
工作成果   交付項目    
工作成果/構件 構件   工作成果說明 工作成果
工作成果/輸出結果     作業輸出結果  
工作成果/交付項目     交付項目內容說明  
作業 活動 活動 作業 活動
步驟 步驟 步驟 子作業 步驟
         
相關流程        
  活動 工作流程明細 作業 活動 工作定義
反覆 反覆     反覆
階段 階段 階段 階段 階段
功能型樣     功能型樣 (流程元件)
交付流程 生命週期/配置 路徑圖 實踐模型 (流程)
         
分類        
  規範 規範 模組   規範
領域 (構件集)   領域 工作成果類型
角色集 (角色集)      
工具 工具      
         
方法套裝        
  方法外掛程式 流程模型外掛程式     程序
方法套件 流程元件     套件
方法套件/內容套件        套件
方法套件/流程套件       套件
流程套件/流程元件       流程元件
         
指引類型        
  準則 準則 參考文件 技術文件 準則
概念 概念 參考文件    
白皮書 白皮書 參考文件    
核對清單 核對清單   技術文件 (V&V) 核對清單
工具輔助 工具輔助   工具指南 工具輔助
範本 範本 範本 範本 範本
報告 報告      
預估   預估 預估考量 預估
範例 範例   參照項目/範例  
藍圖 藍圖 路徑圖說明    
詞彙定義 (名詞解釋) (名詞解釋)    
情境作法