
UML, Unified Modeling Language : Behavior Diagrams
如果你不想讀700頁的教科書,才知道什麼是MIS,本系列講義可以讓你立刻認識「MIS 管理資訊系統」的目標、開發方法、實務應用,提供「TX 1-2-3-4簡則」作為「系統分析與設計(SA&D)」最簡明的指導,特別適合中小型系統之開發與分析。 |
在資訊系統愈來愈往大規模化,複雜化的發展趨勢下,促成了統一塑模語言(UML, Unified Modeling Language)的誕生。「塑模」的意思就是以圖形的方式,先將系統的功能與結構畫成「模型」與藍圖,然後再依據藍圖進行實體開發。
UML 2.x 定義的的塑模圖形(UML 2.x Diagrams)下分2大類組:結構圖形組(Structure diagrams)、行為圖形組(Behavior diagrams)。
統雄老師建議:將 2 圖組,再分為A, B 兩組:
A 組:基本圖,適用所有中小型系統分析與設計。亦即,並非所有的圖都要用到。
B 組:進階圖,針對大型系統分析與設計,再使用。
行為圖形組(Behavior diagrams)
類同傳統系統分析中的「前端分析」,強調系統模型中觸發的事件或相關行動,包括:使用個案圖 (Use Case diagram)、活動圖(Activity diagram) 、狀態機圖 (State Machine diagram) 和互動圖形子集合(Interaction diagrams),在子集合內又包括4種圖。
其中最重要的就是使用個案圖 (Use Case diagram)和活動圖(Activity diagram) ,前者是UML 特別定義的概念模型設計,後者就相當於傳統作業結構流程圖(Workflow Chart, WFC),對一般中小型系統的前端分析,已足以因應。
A 組:基本圖
使用個案圖 (Use Case diagram)
使用個案圖 (Use Case diagram) 在分類上屬於行為圖形組(Behavior diagrams) ,但 UML 認為它也定義了結構圖形組(Structure diagrams)的基礎,所以是跨行為與結構的最重要圖形。
相較於傳統分析第一步為畫流程圖,UML 強調在起點要先建立一個更廣闊、更整合的概念模式、或商業模式。
使用個案圖以人形:表現使用者 actors,與橢圓表示行為。
在傳統作業結構流程圖(Workflow Chart, WFC)中,第一個圖示通常是「使用者身分」選項,而在UML中,就是先把它拆開成獨立描述使用者的Use Case。
亦即反映在「需求分析」中所定義的使用者類別,與其在系統上的行為。如以下餐廳系統的第一個圖。
自訂圖形
UML 允許自訂視覺輔助圖形,如以下的線上圖書館查詢系統。
統一軟體開發過程 Rational Unified Process, RUP 與商業模式圖示
UML 採用了統一軟體開發過程 (Rational Unified Process, RUP )觀念,亦即不僅分析設計特定系統功能,而要發展為前文所介述的 Solution Architecture 整體解決方案架構,將關聯行為整合,在系統發展前,先提出整體的商業模式。
為表現商業模式的使用個案圖示,為在橢圓右側加 1 條斜線,下例假設為登入行為:
以上單純的餐廳系統,化為商業模式,就要容納入所有上下游的協力廠商,而成為下圖。認為在整體的商業模式中,系統使用者包括 6 類:客戶、行銷協力、食材供應協力、員工與召員、維修協力。
模式的修正:UML 在整體解決方案架構企畫的優勢
本模式提出後,經過公司會議討論,發現行銷協力的績效評估,必須與每次行銷活動所獲得的新客戶產生連結,所以加入潛在客戶使用者。而維修協力並非經常性活動,加入系統可能造成系統虛胖,也增加風險,所以剔除這類使用者,修正為下圖。
UML 工具可以在原始起點修正商業模式,是為 UML 在整體解決方案架構企畫的特殊優勢。
複雜行為商業模式設計
較複雜行為的商業模式設計,如以下機場登入模式圖。
模式的模組化
更複雜行為的商業模式,可以將整體行為,再拆成幾個模組,各別作使用個案圖。如以下線上消費圖,客戶分為已登錄的老客戶,與新客戶。客戶上線可瀏覽商品、或購買。如果決定購買,會再觸動商品展示與結帳行為。而新客戶可以選擇登錄。
其中將商品展示與結帳行為,再分為 2 個模組。
商品展示模組為:
結帳行為個模組為:
活動圖(Activity diagram)
和作業結構流程圖(Workflow Chart, WFC)中強調分析「程序」「選擇」「輸出入」「起始結束」…等,其實差不多。
活動圖以圓角矩形表示活動點 activity node,以菱形表示「多途徑選擇」。圖示要呈現出來的是:行動 action、物件 object 與控制 control。
並有幾個常用圖示如下。
起點 |
![]() |
活動終點 |
![]() |
資料流終點 |
![]() |
基本活動模版圖
幾乎所有系統的基本活動流程,都如下圖。
模組化活動圖:線上消費系統活動圖
以上線上消費的概念模式圖,發展為實體的活動圖則如下,並採用模組化設計。
A: 任意時間都可以使用購物車。
B: 購物後,還可以再回頭瀏覽商品,增加購物。
C: 結帳後,還可再次購物。
分欄列式活動圖設計-橫式:公文簽核追蹤系統活動圖
活動圖可使用分欄列式設計,表現「分工」活動,以下公文簽核追蹤活動圖為橫式設計,以每個使用者為列,分列的線,稱為分工線 swimlanes。
分欄列式活動圖設計-直式:自動售票系統活動圖
以下自動售票系統活動圖為直式設計,以每個使用者為欄,分欄的線,一樣稱為分工線 swimlanes。特別注意的是,「分工」的不一定是自然人,本例只有客戶是自然人,售票機和銀行都不是。
中小型系統分析,可直接跳到結構圖形組。
B 組:進階圖
狀態機圖 (State Machine diagram)
互動圖形子集合(Interaction diagrams)
這是屬於行為圖形的子集合,強調系統模型中的資料流程,包括 4 種圖:
通信圖(Communication diagram)
時序圖(Sequence diagram)
時間圖(Timing diagram)
交互概述圖(Interaction overview diagram)
又稱「特化活動圖」,就是活動圖的另一種表現方式,採用簡化圖示,而突顯「交互行為」,如電子商務系統的交易互動流程。
此為前文線上消費系統,改以交互概述圖繪製,可比較其略有不同。如果已作活動圖,可以省略此圖。
UML:統一塑模語言
行為圖形組(Behavior diagrams)
結構圖形組(Structure diagrams)
UML
Diagrams Org的詳細資料




