術(shù)語(yǔ)匯編 UML協(xié)作圖簡(jiǎn)介
在軟件開(kāi)發(fā)過(guò)程中UML協(xié)作圖雖然不常用,但是還是有必要向大家介紹一下,希望通過(guò)本節(jié)的學(xué)習(xí)大家對(duì)UML協(xié)作圖有一定的了解。下面讓我們一起來(lái)學(xué)習(xí)UML協(xié)作圖吧。
UML協(xié)作圖
UML協(xié)作圖(CollaborationDiagram,也叫合作圖)是一種交互圖(interactiondiagram),強(qiáng)調(diào)的是發(fā)送和接收消息的對(duì)象之間的組織結(jié)構(gòu)。一個(gè)協(xié)作圖顯示了一系列的對(duì)象和在這些對(duì)象之間的聯(lián)系以及對(duì)象間發(fā)送和接收的消息。對(duì)象通常是命名或匿名的類的實(shí)例,也可以代表其他事物的實(shí)例,例如協(xié)作、組件和節(jié)點(diǎn)。使用協(xié)作圖來(lái)說(shuō)明系統(tǒng)的動(dòng)態(tài)情況。
協(xié)作圖(CollaborationDiagram)顯示某組對(duì)象如何為了由一個(gè)用例描述的一個(gè)系統(tǒng)事件而與另一組對(duì)象進(jìn)行協(xié)作的交互圖。使用協(xié)作圖可以顯示對(duì)象角色之間的關(guān)系,如為實(shí)現(xiàn)某個(gè)操作或達(dá)到某種結(jié)果而在對(duì)象間交換的一組消息。如果需要強(qiáng)調(diào)時(shí)間和序列,最好選擇序列圖;如果需要強(qiáng)調(diào)上下文相關(guān),最好選擇協(xié)作圖。
UML協(xié)作圖用于顯示對(duì)象之間如何進(jìn)行交互以執(zhí)行特定用例或用例中特定部分的行為。設(shè)計(jì)員使用協(xié)作圖和序列圖確定并闡明對(duì)象的角色,這些對(duì)象執(zhí)行用例的特定事件流。它們是主要的信息來(lái)源,用于確定類的職責(zé)和接口。
與序列圖不同,UML協(xié)作圖顯示了對(duì)象之間的關(guān)系。序列圖和協(xié)作圖表述的是相似的信息,但表述的方式卻不同。協(xié)作圖顯示對(duì)象之間的關(guān)系,它更有利于理解對(duì)給定對(duì)象的所有影響,也更適合過(guò)程設(shè)計(jì)。
協(xié)作圖的格式?jīng)Q定了它們更適合在分析活動(dòng)中使用(請(qǐng)參見(jiàn)活動(dòng):用例分析)。它們特別適合用來(lái)描述少量對(duì)象之間的簡(jiǎn)單交互。隨著對(duì)象和消息數(shù)量的增多,理解協(xié)作圖將越來(lái)越困難。此外,協(xié)作圖很難顯示補(bǔ)充的說(shuō)明性信息,例如時(shí)間、判定點(diǎn)或其他非結(jié)構(gòu)化的信息,而在序列圖中這些信息可以方便地添加到注釋中。
UML協(xié)作圖強(qiáng)調(diào)參與一個(gè)交互對(duì)象的組織,它由以下基本元素組成:活動(dòng)者(Actor)、對(duì)象(Object)、連接(Link)和消息(Message)。在UML中,使用實(shí)線標(biāo)記兩個(gè)對(duì)象之間的連接,
協(xié)作圖中的消息,由標(biāo)記在連接上方的帶有標(biāo)記的箭頭表示。協(xié)作圖包含類元角色和關(guān)聯(lián)角色,而不僅僅是類元和關(guān)聯(lián)。類元角色和關(guān)聯(lián)角色描述了對(duì)象的配置和當(dāng)一個(gè)協(xié)作的實(shí)例執(zhí)行時(shí)可能出現(xiàn)的連接。當(dāng)協(xié)作被實(shí)例化時(shí),對(duì)象受限于類元角色,連接受限于關(guān)聯(lián)角色。關(guān)聯(lián)角色也可以被各種不同的臨時(shí)連接所擔(dān)當(dāng),例如過(guò)程參量或局部過(guò)程變量。連接符號(hào)可以使用構(gòu)造型表示臨時(shí)連接(《parameter》或《local》)或調(diào)用同一個(gè)對(duì)象(《self》)。雖然整個(gè)系統(tǒng)中可能有其他的對(duì)象,但只有涉及到協(xié)作的對(duì)象才會(huì)被表示出來(lái)。換而言之,協(xié)作圖只對(duì)相互之間具有交互作用的對(duì)象和對(duì)象間的關(guān)聯(lián)建模,而忽略了其他對(duì)象和關(guān)聯(lián)。
UML協(xié)作圖的內(nèi)容
協(xié)作圖中可以有對(duì)象和主角實(shí)例,以及描述它們之間關(guān)系和交互的連接和消息。通過(guò)說(shuō)明對(duì)象間如何通過(guò)互相發(fā)送消息來(lái)實(shí)現(xiàn)通信,協(xié)作圖描述了參與對(duì)象中發(fā)生的情況。您可以為用例事件流的每一個(gè)變化形式制作一個(gè)協(xié)作圖。
在UML協(xié)作圖中,您可以按照以下方式使用對(duì)象:
·可以不指定對(duì)象的類。通常先制作只帶有對(duì)象的協(xié)作圖,而后再指定它們的類。
·可以給對(duì)象命名,但如果您要區(qū)分同一個(gè)類的不同對(duì)象,則應(yīng)給對(duì)象命名。
·如果對(duì)象的類主動(dòng)參與了協(xié)作,則可以將類本身在協(xié)作圖中表現(xiàn)出來(lái)。
【編輯推薦】
- UML基礎(chǔ)專題之UML用例圖
- UML基礎(chǔ) UML時(shí)序圖的用途和組成元素
- 如何繪制UML用例圖
- UML狀態(tài)圖及其組成元素簡(jiǎn)介
- 六步輕松實(shí)現(xiàn)UML活動(dòng)圖繪制