我的雲端生活網 - Life+

Wednesday, March 25, 2009

工具系列:UML活動圖

本篇介紹UML活動圖(Activity Diagram)。UML活動圖和一般的程式流程圖非常像,並多了能夠描述平形處理的能力。活動圖可表達流程,可用在描述複雜的操作過程、複雜的業務規則、一項或多項使用案例、或一項或多項商業流程。

以下,先介紹圖示及使用方式,接著展示一項示範。

一、UML活動圖的圖示及使用方式
  • 活動:(Activity) 用圓角方形、其中寫上活動名稱,表示一項活動。一項活動可以是呼叫一項操作方法、執行一項步驟、或是商務流程中的一項。

  • 使用案例:(Use Case) 用橢圓型、其中寫上案例名稱,表示一項使用案例。在UML活動圖中,可以將一項使用案例當做一項活動來配置。

  • 起點:(Start Point) 用實心圓點表示起點。一張UML活動圖必須有一個起點。

  • 終點:(Ending Point) 用實心圓點外加一環邊界,表示終點。一張UML活動圖可能沒有終點:例如,連續的流程。

  • 流程:(Flow/Edge) 從一項活動拉出帶箭頭的線、到另一項活動,表示一條流程從一項活動到另一項活動。
  • 決策點:(Decision Point) 用空心菱形表示一個決策點。決策點有一條流程流入、並有多條流程流出,其中,在多條流出的流程中可挑選執行其中一條流程。
  • 決策條件:(Guard/Condition) 用格式為 [測試條件] 的文字、附在決策點流出的一條流程線上,表示一項決策條件。一個決策點的每一條流程都必需有決策條件。

  • 合併點:(Merge Point) 用空心菱形表示一個合併點。合併點有多條流程流入、並有一條流程流出。合併點隱含在多條流入的流程中、根據流出流程的決策條件、有一條或多條流程要抵達,才能進行流程合併之後的工作。

  • 分岐:(Fork) 用一條粗線橫擋、有一條流程流進、並多條流程流出,表示一份平行工作的開始。

  • 結合:(Join) 用一條粗線橫擋、有多條流程流進、並一條流程流出,表示一份平行工作的結束。流程的合併隱含了所有流進的流程都要抵達、才能進行流程結合之後的工作。

  • 泳道:(Swimlane) 用大長條方塊、一端加上標籤欄位,表示一條泳道。泳道是UML活動圖中用來將一部份的活動和其他物件劃分為一群的空間。泳道的標籤名稱通常是一項參與者的名稱,表示該泳道包含的活動和一位參與者有關。有些泳道用來代表一段執行緒,則不標識為參與者名稱。
  • 分群:(Partitioning) 用併排的多條泳道、將UML活動圖的全部或一部份劃分,表示此圖有一些分群。

二、UML活動圖的示範

以下示範「使用者靠卡登入 RFID 系統」的活動圖。

No comments:

Blog Archive