UML交互圖

2018-08-25 10:05 更新

UML 交互圖概述:

  • UML 交互圖描述的是對(duì)象之間的動(dòng)態(tài)合作關(guān)系以及合作過(guò)程中的行為次序。
  • UML 交互圖常常用來(lái)描述一個(gè)用例的行為,顯示該用例中所涉及的對(duì)象以及這些對(duì)象之間的消息傳遞情況,即一個(gè)用例的實(shí)現(xiàn)過(guò)程。
  • UML 交互圖包括兩種:序列圖和協(xié)作圖。
    • 序列圖 :顯示對(duì)象之間的關(guān)系,強(qiáng)調(diào)對(duì)象之間消息的時(shí)間順序,顯示對(duì)象之間的交互。

    • 協(xié)作圖 :描述對(duì)象之間的交互關(guān)系。

UML 交互圖作用:

UML 交互圖主要包括對(duì)象消息兩類(lèi)元素,創(chuàng)建交互圖的過(guò)程實(shí)際上就是向?qū)ο蠓峙淙蝿?wù)的過(guò)程,是可視化系統(tǒng)的交互行為。

由于可視化的交互是一個(gè)困難的任務(wù),所以要使用不同類(lèi)型的模型來(lái)捕獲不同方面的相互作用,這也是序列圖和時(shí)序圖的作用。

總而言之,對(duì)交互圖的描述如下:

  • 交互圖捕捉一個(gè)系統(tǒng)的動(dòng)態(tài)行為;

  • 交互圖用來(lái)描述該系統(tǒng)中的消息流;

  • 交互圖用來(lái)描述對(duì)象的結(jié)構(gòu)組織;

  • 交互圖是為了描述對(duì)象之間的互動(dòng)。

UML 交互圖如何繪制?

我們已經(jīng)了解了交互圖的作用就是捕捉系統(tǒng)的動(dòng)態(tài)環(huán)節(jié)。因此,關(guān)于動(dòng)態(tài)捕捉,我們需要知道一個(gè)動(dòng)態(tài)的環(huán)節(jié)是如何實(shí)現(xiàn)可視化的。

動(dòng)態(tài)環(huán)節(jié)可以定義為在一個(gè)特定的時(shí)刻運(yùn)行的系統(tǒng)快照。

在繪制交互圖之前,確定以下條件:

  • 參與互動(dòng)的對(duì)象;

  • 對(duì)象之間的消息流;

  • 消息的順序流程;

  • 對(duì)象的組織。

下面描述了兩個(gè)交互圖建模的訂單管理系統(tǒng):第一個(gè)圖是序列圖,第二個(gè)圖是協(xié)作圖。

序列圖:

序列圖中包含了四個(gè)對(duì)象:客戶(hù)、訂單、特殊訂單和正常訂單。

下面的關(guān)系圖所示的消息序列為 SpecialOrder 對(duì)象和 NormalOrder 對(duì)象在相同的情況下使用?,F(xiàn)在重要的是要了解時(shí)間順序的消息流,與消息流無(wú)關(guān),使用一個(gè)對(duì)象的方法調(diào)用。

首先調(diào)用的是 sendOrder(),這是一個(gè)訂單對(duì)象的方法;在下一次調(diào)用 confirm (),這是一個(gè) SpecialOrder 對(duì)象的方法;最后調(diào)用 Dispatch (),它是一種方法的 SpecialOrder 對(duì)象。所以這里的圖主要描述方法從一個(gè)對(duì)象到另一個(gè)對(duì)象的調(diào)用,在系統(tǒng)運(yùn)行時(shí)這也是實(shí)際情況:

145F9B05-0

協(xié)作圖:

協(xié)作圖顯示對(duì)象的組織,如下圖所示。

這里協(xié)作圖的方法調(diào)用序列是表示,由一些數(shù)字技術(shù),如下所示。

該數(shù)字表示方法如何被稱(chēng)為此起彼伏。我們已經(jīng)采取了相同的訂單管理系統(tǒng),協(xié)作圖來(lái)描述。

這些調(diào)用方法類(lèi)似的序列圖。但不同的是,序列圖中未介紹的對(duì)象組織,而協(xié)作圖中示出的對(duì)象的組織。

現(xiàn)在選擇這兩個(gè)圖表之間主要強(qiáng)調(diào)的是需求類(lèi)型。如果時(shí)間序列是很重要的,那么序列圖中被使用,并且,如果需要的組織,那么使用協(xié)作圖。

145F93605-1

使用交互圖的場(chǎng)合

我們現(xiàn)在來(lái)討論交互圖在實(shí)際情況中的應(yīng)用。要了解實(shí)際應(yīng)用中,我們需要了解的基本性質(zhì)序列圖和協(xié)作圖。

這兩個(gè)圖的主要目的,是相似的,因?yàn)樗鼈兪怯脕?lái)捕捉系統(tǒng)的動(dòng)態(tài)行為:序列圖是用來(lái)捕獲從一個(gè)對(duì)象到另一個(gè)消息流的順序;協(xié)作圖用來(lái)描述參與相互作用中的對(duì)象的結(jié)構(gòu)組織。

一個(gè)單一的圖是不足以說(shuō)明整個(gè)系統(tǒng)的動(dòng)態(tài)環(huán)節(jié),這樣的一套圖是用來(lái)捕獲一個(gè)整體。

使用交互圖,當(dāng)我們想要了解的消息流和組織結(jié)構(gòu)。消息流裝置控制流從一個(gè)對(duì)象到另一個(gè)序列和結(jié)構(gòu)組織的裝置,在一個(gè)系統(tǒng)中的元素的視覺(jué)組織。

以下是交互圖的用法:

  • 按時(shí)間順序的控制流建模。

  • 為了模擬流結(jié)構(gòu)組織控制。

  • 對(duì)于正向工程。

  • 逆向工程。

以上內(nèi)容是否對(duì)您有幫助:
在線(xiàn)筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)