通信圖

通信圖

通信圖一樣是一種互動圖,它描述的是對象和對象之間的關係,即一個類操作的實現。簡而言之就是,對象和對象之間的調用關係,體現的是一種組織關係。

基本信息

概念

v通信圖描述的是和對象結構相關的信息。

v通信圖的用途是表示一個類操作的實現。

v通信圖對互動中有意義的對象和對象之間的鏈建模。 在UML中,通信圖用幾何排列來表示互動作用中的對象和鏈,附在鏈的箭頭代表訊息,訊息的發生順序用訊息箭頭處的編號來說明

UML圖示例 UML圖示例

組成元素

對象:圖中矩形元素即對象,其中冒號前面部分為對象名,後面部分為類名。即表示一個類的實例!當訊息是給對個對象發的時,接收方用重疊的矩形表示。參考後面多態和廣播的圖例。
連結:連結用來在通信圖中關聯對象,目的是讓訊息在不同系統對象之間傳遞。可以理解為連結是公路,訊息是車。用兩個對象之間的單一線條表示。
訊息:是通信圖中對象與對象之間通信的方式。訊息具有如下類型與符號表示。

組成元素的詳細解釋

對象

通信圖與順序圖中的對象的概念是一樣,只不過在通信圖中,無法表示對象的創建和撤銷,所以對於對象在圖中的位置沒有限制。

通信圖中鏈的符號和對象圖中鏈所用的符號是一樣的,即一條連線兩個類角色的實線。

對於連結還可以加上“角色”與“約束”,在鏈角色上附加的約束有global(全局),local(局部),parameter(參數),self(自身),broadcast(廣播)。

訊息

通信圖中的訊息類型與順序圖中的相同,只不過為了說明互動過程中訊息的時間順序,需要給訊息添加順序號。

順序號是訊息的一個數字前綴,是一個整數,由1開始遞增,每個訊息都必須由唯一的順序號。可以通過點表示法代表控制的嵌套關係。

嵌套可以具有任意深度。與順序圖相比,通信圖可以顯示更為複雜的分支。

訊息詳解

訊息類型有返回訊息,同步訊息和異步訊息三種。訊息定義的格式如下:

訊息類型 標號 控制信息:返回值:=訊息名 參數表

標號有3種:

順序執行:按整數大小執行。1,2…

嵌套執行:標號中帶小數點。1.1,1.2,1.3,…

並行執行:標號中帶小寫字母。1.1.1a,1.1.1b,…

順序圖與通信圖

順序圖與通信圖的比較

通信圖與順序圖很相似,兩者語義等價,兩種圖表達的是同一種信息,可以將順序圖轉換為等價的通信圖。

區別:

順序圖強調是互動的時間順序。

通信圖強調的是互動的語境和參與互動的對象的整體組織。

順序圖與通信圖的互換

順序圖與通信圖都表示對象之間的互動作用,只是它們的側重點有所不同:

順序圖描述了互動過程中的時間順序,但沒有明確地表達對象之間的關係。

通信圖描述了對象之間的關係,但時間順序必須從順序號獲得。

兩種圖的語義是等價的,可以從一種形式的圖轉換成另一種形式的圖,而不丟失任何信息。

順序圖與通信圖的互換 順序圖與通信圖的互換

通信圖建模技術

設定互動的語境。

通過識別對象在互動中扮演的角色,設定互動的場景。

對每個對象設定初始特性。

描述對象之間可能有信息沿著它傳遞的鏈。

從引起互動的訊息開始,適當地設定其順序號,然後將隨後的每個訊息附到適當的鏈上。

如果需要說明時間或空間約束,可以用時間標記修飾這個訊息,並附上合適的時間和空間約束。

如果需要更形式化地說明這個控制流,可以為每個訊息附上前置和後置條件。

相關詞條

熱門詞條

聯絡我們