UML圖之時序圖
時序圖(Sequence Diagram)是顯示對象之間交互的圖,這些對象是按時間順序排列的。順序圖中顯示的是參與交互的對象及其對象之間消息交互的順序。時序圖中包括的建模元素主要有:角色(Actor)、對象(Actor)、生命線(Lifeline)、控制焦點(Activation)、消息(Message)、自關聯消息、組合片段。
角色
系統角色,可以是人、及其甚至其他的系統或者子系統。
對象
對象包括三種命名方式:
第一種方式包括對象名和類名;
第二中方式只顯示類名不顯示對象名,即表示他是一個匿名對象;
第三種方式只顯示對象名不顯示類名。
生命線
生命線在順序圖中表示為從對象圖標向下延伸的一條虛線,表示對象存在的時間。
控制焦點
控制焦點是順序圖中表示時間段的符號,在這個時間段內對象將執行相應的操作。用小矩形表示。
消息
消息一般分為同步消息(Synchronous Message),異步消息(Asynchronous Message)和返回消息(Return Message)。
同步消息:消息的發送者把控制傳遞給消息的接收者,然後停止活動,等待消息的接收者放棄或者返回控制。用來表示同步的意義。
異步消息:消息發送者通過消息把信號傳遞給消息的接收者,然後繼續自己的活動,不等待接受者返回消息或者控制。異步消息的接收者和發送者是並發工作的。
返回消息:返回消息表示從過程調用返回。
自關聯消息
表示方法的自身調用或者一個對象內的一個方法調用另外一個方法。以一個半閉合的長方形+下方實心剪頭表示。
UML時序圖組合片段簡要說明 :
ref:引用其他地方定義的組合片段;
alt:在一組行為中根據特定的條件選擇某個交互;
opt:表示一個可選的行為;
break:提供了和編程語言中的break類擬的機制;
par:支持交互片段的並發執行;
seq:強迫交互按照特定的順序執行;
strict:明確定義了一組交互片段的執行順序;
neg:用來標誌不應該發生的交互;
region:標誌在組合片段中先於其他交互片斷發生的交互;ignore:明確定義了交互片段不應該響應的消息;
consider:明確標誌了應該被處理的消息
assert:標誌了在交互片段中作為事件唯一的合法繼續者的操作數;
loop:說明交互片段會被重復執行
例如:並行:
例如:循環
UML圖之時序圖