日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

UML时序图(Squence diagram)的设计介绍[通俗易懂](30分钟学会UML类图)

發布時間:2023/12/19 综合教程 41 生活家
生活随笔 收集整理的這篇文章主要介紹了 UML时序图(Squence diagram)的设计介绍[通俗易懂](30分钟学会UML类图) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

本文以starUML工具為例。

一、概念

UML時序圖,也叫順序圖,是一種詳細表示對象之間以及對象與參與者實例之間交互的圖,它由一組協作的對象(或參與者實例)以及它們之間可發送的消息組成,它強調消息之間的順序。

它詳細而直觀地表現了一組相互協作的對象在執行一個(或少量幾個)用例時的行為依賴關系,以及操作和消息的時序關系。

類圖是反映類、對象、接口等事物之間的依賴、繼承、實現關系等,主要是靜態關系,對對象之間的消息(交互情況)表達不夠詳細;;而順序圖既詳細又直觀的表達了消息傳遞,一張時序圖能表示跟該行為相關的少數幾個對象之間的交互。

二、時序圖的結構

序列圖(Sequence Diagram)是由對象(Object)、生命線(Lifeline)、激活(Activation)、消息(Messages)、分支與從屬流、組合片段(Combined Fragment)等元素構成的。

1、對象(Object)

對象就是指類的實例。我認為在序列圖中對象有三種狀態:激活、運行(存在)和銷毀。

2、生命線

生命線(Lifeline)是一條垂直的虛線,用來表示序列圖中的對象在一段時間內的存在。

3、激活

序列圖可以描述對象的激活(Activation),激活是對象操作的執行,它表示一個對象直接或通過從屬操作完成操作的過程。在UML圖中通過一個窄長的矩形來表示,矩形的高度表示對象存在的過程。

4、消息

消息(Messages)是對象間的一種通信機制。由發送對象向另一個或其他幾個接收對象發送信號,或由一個對象(發送者或調用者)調用另一個對象(接收者)的操作。

StarUML中,位置如下圖:

同步消息=調用消息(Synchronous Message

消息的發送者把控制傳遞給消息的接收者,然后停止活動,等待消息的接收者放棄或者返回控制。用來表示同步的意義。

異步消息(Asynchronous Message

消息發送者通過消息把信號傳遞給消息的接收者,然后繼續自己的活動,不等待接受者返回消息或者控制。異步消息的接收者和發送者是并發工作的。

自關聯消息

表示方法的自身調用以及一個對象內的一個方法調用另外一個方法。如下圖所示

5、執行者

表示這個對象是由誰來操作的.如下圖,都是由員工來操作的。

6、約束

約束的符號很簡單;格式是: [Boolean Test]

我的StarUML版本上,對于約束或條件,只有迭代器,返回值等幾個選項,如下圖:

7、組合片段

組合片段用來解決交互執行的條件及方式。它允許在序列圖中直接表示邏輯組件,用于通過指定條件或子進程的應用區域,為任何生命線的任何部分定義特殊條件和子進程。

在StarUML的左側工具欄中,符號如下:

選擇某一種組合片段的位置,在右側的屬性欄中:

常用的組合片段有:

a.抉擇(Alt)

抉擇用來指明在兩個或更多的消息序列之間的互斥的選擇,相當于經典的if..else..。

抉擇在任何場合下只發生一個序列。可以在每個片段中設置一個臨界來指示該片段可以運行的條件。else的臨界指示其他任何臨界都不為True時應運行的片段。如果所有臨界都為False并且沒有else,則不執行任何片段。

b.循環(Loop)

片段重復一定次數。可以在臨界中指示片段重復的條件。

c.并行(Par)

下表列出了常用的組合片段:

片段類型

名稱

說明

Opt

選項

包含一個可能發生或可能不發生的序列。可以在臨界中指定序列發生的條件。

Alt

抉擇

包含一個片段列表,這些片段包含備選消息序列。在任何場合下只發生一個序列。

可以在每個片段中設置一個臨界來指示該片段可以運行的條件。else的臨界指示其他任何臨界都不為True時應運行的片段。如果所有臨界都為False并且沒有else,則不執行任何片段。

Loop

循環

片段重復一定次數。可以在臨界中指示片段重復的條件。

Loop組合片段具有“Min”“Max”屬性,它們指示片段可以重復的最小和最大次數。默認值是無限制。

Break

中斷

如果執行此片段,則放棄序列的其余部分。可以使用臨界來指示發生中斷的條件。

Par

并行

并行處理。片段中的事件可以交錯。

Critical

關鍵

用在Par或Seq片段中。指示此片段中的消息不得與其他消息交錯。

Seq

弱順序

有兩個或更多操作數片段。涉及同一生命線的消息必須以片段的順序發生。如果消息涉及的生命線不同,來自不同片段的消息可能會并行交錯。

Strict

強順序

有兩個或更多操作數片段。這些片段必須按給定順序發生。

有關如何解釋序列的片段

默認情況下,序列圖表明可能發生的一系列消息。在運行的系統中,可能會出現您未選擇顯示在關系圖上的其他消息。

以下片段類型可用于更改此釋義:

片段類型

名稱

說明

Consider

考慮

指定此片段描述的消息列表。其他消息可發生在運行的系統中,但對此描述來說意義不大。

“Messages”屬性中鍵入該列表。

Ignore

忽略

此片段未描述的消息列表。這些消息可發生在運行的系統中,但對此描述來說意義不大。

“Messages”屬性中鍵入該列表。

Assert

斷言

操作數片段指定唯一有效的序列。通常用在Consider或Ignore片段中。

Neg

否定

此片段中顯示的序列不得發生。通常用在Consider或Ignore片段中。

下面是一個完整的例子:(中間的用法,可能不太正確,請當做示意圖湊合著看)

總結

以上是生活随笔為你收集整理的UML时序图(Squence diagram)的设计介绍[通俗易懂](30分钟学会UML类图)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。