簡述
序列圖主要用于展示對象之間交互的順序。
序列圖將交互關(guān)系表示為一個二維圖。縱向是時間軸,時間沿豎線向下延伸。橫向軸代表了在協(xié)作中各獨立對象的類元角色。類元角色用生命線表示。當(dāng)對象存在時,角色用一條虛線表示,當(dāng)對象的過程處于激活狀態(tài)時,生命線是一個雙道線。
消息用從一個對象的生命線到另一個對象生命線的箭頭表示。箭頭以時間順序在圖中從上到下排列。
序列圖中涉及的元素
1. 生命線
生命線名稱可帶下劃線。當(dāng)使用下劃線時,意味著序列圖中的生命線代表一個類的特定實例。
2. 同步消息
發(fā)送人在它繼續(xù)之前,將等待同步消息響應(yīng)。
3. 異步消息
在發(fā)送方繼續(xù)之前,無需等待響應(yīng)的消息。
4. 注釋
5. 約束
約束的符號很簡單;格式是: [Boolean Test]
6. 組合片段
組合片段****用來解決交互執(zhí)行的條件及方式 。它允許在序列圖中直接表示邏輯組件,用于通過指定條件或子進程的應(yīng)用區(qū)域,為任何生命線的任何部分定義特殊條件和子進程。
常用的組合片段有:
抉擇(Alt)
抉擇用來指明在兩個或更多的消息序列之間的互斥的選擇,相當(dāng)于經(jīng)典的if..else..。
抉擇在任何場合下只發(fā)生一個序列。可以在每個片段中設(shè)置一個臨界來指示該片段可以運行的條件。else 的臨界指示其他任何臨界都不為 True 時應(yīng)運行的片段。如果所有臨界都為 False 并且沒有 else ,則不執(zhí)行任何片段。
選項(Opt)
包含一個可能發(fā)生或不發(fā)生的序列
循環(huán)(Loop)
片段重復(fù)一定次數(shù)。可以在臨界中指示片段重復(fù)的條件。
并行(Par)
下表列出了常用的組合片段:
片段類型 | 名稱 | 說明 |
---|---|---|
Opt | 選項 | 包含一個可能發(fā)生或可能不發(fā)生的序列。可以在臨界中指定序列發(fā)生的條件。 |
Alt | 抉擇 | 包含一個片段列表,這些片段包含備選消息序列。在任何場合下只發(fā)生一個序列。可以在每個片段中設(shè)置一個臨界來指示該片段可以運行的條件。else的臨界指示其他任何臨界都不為 True 時應(yīng)運行的片段。如果所有臨界都為 False 并且沒有else,則不執(zhí)行任何片段。 |
Loop | 循環(huán) | 片段重復(fù)一定次數(shù)。可以在臨界中指示片段重復(fù)的條件。Loop 組合片段具有**“Min”和“Max”**屬性,它們指示片段可以重復(fù)的最小和最大次數(shù)。默認值是無限制。 |
Break | 中斷 | 如果執(zhí)行此片段,則放棄序列的其余部分。可以使用臨界來指示發(fā)生中斷的條件。 |
Par | 并行 | 并行處理。片段中的事件可以交錯。 |
Critical | 關(guān)鍵 | 用在 Par 或 Seq 片段中。指示此片段中的消息不得與其他消息交錯。 |
Seq | 弱順序 | 有兩個或更多操作數(shù)片段。涉及同一生命線的消息必須以片段的順序發(fā)生。如果消息涉及的生命線不同,來自不同片段的消息可能會并行交錯。 |
Strict | 強順序 | 有兩個或更多操作數(shù)片段。這些片段必須按給定順序發(fā)生。 |
有關(guān)如何解釋序列的片段
默認情況下,序列圖表明可能發(fā)生的一系列消息。在運行的系統(tǒng)中,可能會出現(xiàn)您未選擇顯示在關(guān)系圖上的其他消息。
以下片段類型可用于更改此釋義:
片段類型 | 名稱 | 說明 |
---|---|---|
Consider | 考慮 | 指定此片段描述的消息列表。其他消息可發(fā)生在運行的系統(tǒng)中,但對此描述來說意義不大。在**“Messages”**屬性中鍵入該列表。 |
Ignore | 忽略 | 此片段未描述的消息列表。這些消息可發(fā)生在運行的系統(tǒng)中,但對此描述來說意義不大。在**“Messages”**屬性中鍵入該列表。 |
Assert | 斷言 | 操作數(shù)片段指定唯一有效的序列。通常用在 Consider 或 Ignore 片段中。 |
Neg | 否定 | 此片段中顯示的序列不得發(fā)生。通常用在 Consider 或 Ignore 片段中。 |
-
UML
+關(guān)注
關(guān)注
0文章
122瀏覽量
30906 -
序列圖像
+關(guān)注
關(guān)注
0文章
2瀏覽量
5271
發(fā)布評論請先 登錄
相關(guān)推薦
展廳設(shè)計在哪些地方是需要注意的
如果序列圖是這樣的,代碼應(yīng)該是什么?
請問mini板lLwip移植實驗將spi1改成spi2需要注意哪些地方?
MS51FB9AE芯片與N76E003AT20單片機在替換時需要注意哪些地方
TFT GUI硬件設(shè)計須要注意哪些地方?
基于視頻序列圖像的車輛測速研究
PCB工程師需要注意的地方
數(shù)碼相機充電電池使用需要注意的問題和事項
測試光伏逆變器需要注意哪些地方呢?
![測試光伏逆變器<b class='flag-5'>需要注意</b><b class='flag-5'>哪些地方</b>呢?](https://file1.elecfans.com/web2/M00/0C/6A/wKgaomc0breAaB3dAAC3usGtJBY648.png)
評論