
序列圖的組成元件
物件
在UML中,序列圖中的物件以一個包含物件名稱(下劃線)的矩形表示。物件可以以三種方式命名:物件名稱、物件名稱及其類別,或僅類別名稱(匿名物件)。物件命名的三種方式如下方圖所示。
生命線
協作(情境)參與者的實體以水平方式寫在圖表的頂部。生命線以每個物件下方的虛線垂直線表示。這些線表示物件的存在。

物件名稱可以是具體的(例如:myAccount),也可以是通用的(例如:myAccount :Account)。通常,可使用匿名物件(:Account)來代表該類別中的任何物件。每個物件還有一條以物件下方的虛線表示的時間軸。物件之間的訊息以從發送者物件指向接收者物件的箭頭表示。
物件導向系統中的所有事物都是由物件完成的。物件負責管理資料、在系統中移動資料、回應查詢以及保護系統。物件透過彼此溝通或互動來協作。
訊息
訊息以水平方式顯示操作的呼叫。它們從發送者繪製到接收者。順序由垂直位置表示,第一則訊息顯示在圖表頂端,最後一則訊息顯示在底部。因此,序列號是可選的。
線條類型與箭頭形狀表示所使用的訊息類型:
- 一個同步訊息(通常為操作呼叫)以實線搭配實心箭頭表示。這是用於發送者與接收者之間正常通訊的常規訊息呼叫。

- 一個回傳訊息使用虛線搭配空心箭頭。

- 一個非同步訊息具有實線搭配空心箭頭。訊號是一種無回應的非同步訊息。

建立與銷毀訊息
參與者不一定會存在於序列圖互動的整個期間。參與者可根據傳遞的訊息而被建立或銷毀。
一個建構函式訊息建立其接收者。在互動開始時已存在的發送者會放置在圖表頂端。透過建構函式呼叫在互動期間建立的目標會自動放置在圖表下方。
A
解構訊息會銷毀其接收者。在互動過程中,還有其他方式可以表示目標被銷毀。只有當目標的銷毀設定為「解構後」時,才需要使用解構訊息。

非瞬間訊息
訊息通常被視為瞬間傳遞,因此訊息傳送到接收者所需時間可忽略不計。訊息以水平箭頭表示。若要表示接收者實際收到訊息前需經過一段時間,則使用斜向箭頭.

控制焦點
控制焦點代表元件執行作業的期間。矩形的頂部與起始時間對齊,底部與完成時間對齊。
迭代符號
迭代符號表示訊息會多次傳送給多個接收物件,就像在遍歷集合時發生的情況。你可以在方括號內顯示迭代的基礎,例如 *[for all order lines]。
範例:訂購
此範例展示了一個包含三個參與物件的順序圖:顧客、訂單與庫存。即使你尚未正式了解符號的定義,大概也能理解其中的運作情形。
- 步驟 1 和 2:顧客建立訂單。
- 步驟 3:顧客將商品加入訂單。
- 步驟 4、5:逐一檢查每項商品在庫存中的可用性。
- 步驟 6、7、8:若商品可取得,則加入訂單。
- 步驟 9 回傳
- 步驟 10、11:儲存並銷毀訂單

順序片段
在 UML 順序圖中,合併片段可讓你顯示迴圈、分支及其他選擇。合併片段由一個或多個互動操作數組成,每個操作數包含一個或多個訊息、互動使用或合併片段。
順序片段以稱為合併片段的方框表示,用以包覆順序圖中的一段互動。片段運算子(位於左上角)表示片段類型。片段類型包括 ref、assert、loop、break、alt、opt 和 neg、ref、sd。
順序圖符號總覽
| 運算子 | 意義 |
| alt | 多個片段的替代:僅條件為真的片段會執行。 |
| opt | 選擇性: 碎片僅在提供的條件為真時執行。等同於僅有一個蹤跡的 alt。 |
| 平行 | 平行: 每個碎片會並行執行。 |
| 迴圈 | 迴圈: 碎片可能執行多次,而守衛條件則表示迭代的依據。 |
| 關鍵區段 | 關鍵區段: 碎片在同一時間只能有一個執行緒在執行。 |
| 負面 | 負面: 碎片顯示一個無效的互動。 |
| 參考 | 參考: 指向另一張圖表中定義的互動。框線會繪製以涵蓋互動中涉及的生命線。您可以定義參數和傳回值。 |
| 序列圖 | 序列圖: 用於包圍整個序列圖。 |
範例 下單情境
一位希望線上下單的船員。所訂購的物品將根據該成員的狀態(VIP、一般會員)以快遞或一般郵件方式寄送給成員。若成員在下單時選擇了通知選項,商店可選擇發送確認通知給成員。

Visual Paradigm 支援序列圖及其他 UML 圖表類型。您可以在使用序列圖建模系統的動態行為時,找到所有所需的工具。
快速影片 – 繪製序列圖的 5 個步驟
總結
序列圖是基於時間順序的物件協作模型。它顯示物件在特定使用案例情境中如何與其他物件互動。透過先進的視覺化建模功能,您只需點幾下即可建立複雜的序列圖。此外,Visual Paradigm 可根據您在使用案例描述中定義的事件流程,自動產生序列圖。
參考資料
- 序列圖教學
- 如何繪製序列圖?
- UML 序列圖工具
- 什麼是序列圖?
- Visual Paradigm. (無日期). 什麼是序列圖? .
- 序列圖 – 統一建模語言 (UML)
- GeeksforGeeks. (2017年10月27日). 序列圖 – 統一建模語言 (UML) .
- 建立 UML 序列圖
- Microsoft 支援. (無日期). 建立 UML 序列圖 .
- 序列圖教學
- Visual Paradigm. (無日期). 序列圖教學 .
- 統一建模語言 (UML) 圖表
- GeeksforGeeks. (2017年10月27日). 統一建模語言 (UML) 圖表.
- 理解序列圖:軟體互動的視覺藍圖 – Visual Paradigm 指南
- Visual Paradigm. (2023年9月13日). 理解序列圖:軟體互動的視覺藍圖 – Visual Paradigm 指南 .
- 免費的 UML 工具
- Visual Paradigm. (2018年11月28日). 免費的 UML 工具 .
- Visual Paradigm UML 繪圖指南 | Restackio
- Restackio. (2024年12月12日). Visual Paradigm UML 繪圖指南 | Restackio .
- Visual Paradigm 中的 UML 圖表入門 – ArchiMetric
- ArchiMetric. (2024年8月23日)。Visual Paradigm 中的 UML 圖表入門 – ArchiMetric .
- UML/程式碼產生軟體
- Visual Paradigm. (2019年6月6日)。UML/程式碼產生軟體 .
- 使用 Visual Paradigm 學習類別圖 – ArchiMetric
- ArchiMetric. (2024年8月23日)。使用 Visual Paradigm 學習類別圖 – ArchiMetric .
- 易於使用的 UML 工具
- Visual Paradigm. (未注明日期)。易於使用的 UML 工具 .
- 免費的 UML 教學 – Visual Paradigm Essential | Udemy
- Udemy. (未注明日期)。免費的 UML 教學 – Visual Paradigm Essential | Udemy .