協作圖(通信圖)collaboration diagram


協作圖(通信圖)collaboration diagram

系列文章

[UML]UML系列——用例圖Use Case

[UML]UML系列——用例圖中的各種關系(include、extend)

[UML]UML系列——類圖Class

[UML]UML系列——類圖class的關聯關系(聚合、組合)

[UML]UML系列——類圖class的依賴關系

[UML]UML系列——類圖class的泛化關系

[UML]UML系列——類圖class的實現關系Realization

[UML]UML系列——包圖Package

[UML]UML系列——活動圖activity  diagram

[UML]UML系列——時序圖(順序圖)sequence diagram

引言

用例圖、活動圖、時序圖之間的關系?

時序圖與協作圖之間的關系

共同點:二者都是用對象間的交互來描述用例的。

案例:時序圖

協作圖

共同點:時序圖與協作圖均顯示了對象間的交互。

不同點:時序圖強調交互的時間次序。

           協作圖強調交互的空間結構。

案例剖析

這里還使用上片文章中的赤壁之戰的時序圖來分析。

思考:孔明向哪些對象發送了消息?又接收了哪些對象發送的消息?(可以根據這個典故,想想)

協作圖

時序圖按照時間順序布圖,而寫作圖按照空間結構布圖

協作圖與時序圖在語義上是等價的,二者可以相互轉換,而不會丟失信息。(通過上面的例子,你可能已經看出他們之間的轉化關系)

協作圖的構成

對象、鏈接、消息

對象

鏈接

1、鏈接的概念

鏈接用來在協作圖中關聯對象,鏈接的目的是讓消息在不同的系統對象之間傳遞。

2、鏈接的符號表示

鏈接以連接兩個對象的單一線條表示。

消息

1、消息的概念

消息是協作圖中對象與對象之間通信的方式

2、消息的類型與符號表示

 

時序圖與協作圖的轉換

時序圖和協作圖在語義上是等價的,所以時序圖和協作圖可以彼此轉換而不會損失信息。(具體轉換方式在下面Rose建模中講到)

協作圖的Rose建模

一、新建協作圖

方法1:

方法2:

二、重命名協作圖並雙擊打開

三、添加對象

方法1: a.將事先創建的類從瀏覽器拖到協作圖中

b.雙擊對象,在彈出的窗口中設置對象的名稱

方法2:
a.通過工具欄的對象按紐在協作圖中添加一個對象        

b.雙擊對象,在彈出的窗口中設置對象名和類

四、添加鏈接

用工具欄中的鏈接按紐進行連接

 

五、添加消息

方法1:
a.用工具欄上的消息按紐點擊鏈接線

b.雙擊消息,在彈出的窗口中設置消息的名稱

方法2:
a.雙擊鏈接線,彈出如下窗口

 

六、設置消息的類型

七、時序圖與協作圖的相互轉換

總結

以上就是協作圖的相關內容,希望對您有所幫助。在實際運用中,時序圖用的比較多,我比較喜歡從時序圖轉換為協作圖,其實時序圖協作圖,要其一就可以。不必要兩種圖都畫,個人見解。

 

img 作者:Wolfy


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM