介紹
UML(統一建模語言)活動圖是用於模擬系統動態方面的強大工具。它們用於表示逐步活動和動作的工作流程,提供系統中控制流的視覺化表示。本教程將引導您了解UML活動圖的核心概念,提供範例,並解釋如何解讀這些圖表。
關鍵概念
1. 活動與動作
- 活動:這些是活動圖的主要構建模塊。它們代表流程中的單個步驟或操作。
- 動作:這些是無法進一步分解的原子活動。
2. 控制流
- 控制流:這代表活動的順序。它使用連接活動的箭頭來表示,顯示它們執行的順序。
3. 初始節點與終止節點
- 初始節點:這是工作流程的起點,以實心圓形表示。
- 終止節點:這是工作流程的終點,以靶心符號(一個圓內套一個圓)表示。
4. 決策節點與合併節點
- 決策節點:這是根據條件使流程分支的點,以菱形表示。
- 合併節點:這是多個流程匯聚回單一流程的點,同樣以菱形表示。
5. 泳道
- 泳道:這些用於將活動分組,通常代表不同的角色或職責。它們以垂直或水平的通道表示。
範例
範例 1:簡單的訂單處理

說明:
- 流程從客戶下訂單開始。
- 訂單系統接收訂單,處理付款,並確認訂單。
- 然後倉庫打包並發送訂單。
- 最後,客戶收到訂單。
範例 2:自動櫃員機提款流程

說明:
- 客戶插入卡片並輸入密碼。
- 自動櫃員機驗證密碼。如果正確,客戶選擇金額,自動櫃員機發放現金。如果錯誤,自動櫃員機顯示錯誤訊息。
- 客戶領取現金。
範例 3:圖書館借書

說明:
- 學生搜尋書籍並提出借閱請求。
- 圖書館員確認書籍是否可借。如果可借,圖書館員發出書籍;如果不可借,圖書館員通知學生。
- 學生收到書籍。
範例 4:線上購物

說明:
- 客戶瀏覽商品,加入購物車,並進入結帳流程。
- 付款系統處理付款。如果成功,訂單將被確認;如果失敗,客戶將收到失敗通知。
- 倉庫準備並發送訂單。
- 客戶收到訂單。
範例 5:飯店預訂

說明:
- 客戶搜尋飯店,選擇房間並進行預訂。
- 預訂系統確認房間是否可預訂。如果可預訂,預訂將被確認;如果不可預訂,客戶將收到通知。
- 客戶收到確認訊息。
解讀 UML 活動圖
- 活動流程:跟隨箭頭以了解活動的順序。每個箭頭代表從一個活動到下一個活動的控制流。
- 決策點:在決策節點處,評估條件以決定應遵循哪個分支。這有助於根據條件理解不同的情境。
- 泳道:識別與每個泳道相關的角色或職責。這有助於了解每個活動的負責人。
- 起始節點和終止節點:起始節點表示流程的起點,而終止節點表示終點。
- 並發:尋找分叉和匯合以了解並行活動。分叉將流程拆分為並行活動,而匯合則將它們同步回單一流程。
結論
UML活動圖是一種多功能工具,可用於建模和理解複雜流程。透過使用這些圖表,您可以輕鬆地創建和可視化工作流程,使溝通和分析流程變得更簡單。無論您是在設計新系統還是記錄現有流程,活動圖都能提供一種清晰且結構化的方式來表示動態行為。
參考資料
- 活動圖,UML圖示範例:泳道
- 泳道活動圖指南
- 如何繪製活動圖?
- 活動圖,UML圖示範例:泳道提案流程
- 如何在UML中繪製活動圖?
- 活動圖教程
- 什麼是活動圖?
- 帶泳道的活動圖 2
- 活動圖,UML 圖表範例:訂單履行的泳道
- 帶泳道的 ATM 活動圖












