活動圖::SendSignalAction

今天繼續說調用動作。在UML規格中有如下類圖。

紅框中的CallBehaviorAction和CallOperationAction已經講過了,今天就來說明剩下的SendSignalAction。

在《GB/T 28174.2-2011 統一建模語言(UML) 第2部分:上層結構》中是這樣描述的(紅字部分有修改):

發送信號動作(SendSignalAction)

SendSignalAction是一個動作,根據輸入信息創建一個信號實例,並且把它傳送到目標對象,在那兒它可以啟動狀態機的轉換,或者一個行為的執行。參數值對於相關聯的行為執行有效。請求者馬上繼續執行。任何應答消息被忽略,或者不被傳送到請求者。

設定方法

準備信號

在ProjectBrower中選擇適當的節點,打開上下文菜單,選擇【New Element】

輸入適當的名稱,選擇類型為【Signal】,按下【Save】按鈕以後,可以得到以下的TestSignal信號。

為信號添加屬性

打開TestSignal的上下文菜單,選擇【Attributes】項目打開信號功能設定對話框。根據需要添加信號的屬性。

添加SendSignalAction

添加類型為【Send Signal】的動作到活動圖,得到以下的SendSignalAction,它的形狀為五邊形。

添加輸入引腳

為Action1增加兩個輸入引腳,用於接收傳送給TestSignal屬性的數據。

設定動作名稱

可以在Action1的屬性對話框選擇【General】分類中,然後修改動作名稱。

選擇信號

按下Signal欄右邊的【...】為Action選擇前面準備的TestSignal。

按下【Add】按鈕選擇Action1的輸入引腳,然後在Argument欄中為引腳選擇對應的信號屬性並指定預設值。這樣就建立起了Action1輸入引腳和TestSignal的屬性之間的聯繫。

以上就是今天的文章,拜託點贊,關注並推薦給您的朋友!

閱讀更多更新文章,請關注【面向對象思考】微信公眾號!


推薦閱讀:

如何用面向對象設計一個程序,經典推薦?
你認為最好的 UML 建模工具是哪一個(最好是免費軟體)?
如何反駁 UML 無用論?
如何畫UML的時序圖?

TAG:面向對象編程 | 面向對象分析與設計 | UML建模 |