三大模塊實(shí)現(xiàn)UML組成
本節(jié)向大家介紹一下UML組成方面的內(nèi)容,主要包括構(gòu)造塊,規(guī)則和公共機(jī)制,希望通過(guò)本文的學(xué)習(xí)你對(duì)UML組成有所了解,下面讓我們一起來(lái)看一下UML的組成成分吧。
1.1UML概述
◆UML可以完成的工作:
可視化、詳述、構(gòu)造和文檔化。
1.2UML的概念模型
◆UML組成中的構(gòu)造塊
①事物
⑴結(jié)構(gòu)事物(structuralthing)
⒈類(lèi)(class):拾對(duì)一組具有相同屬性、操作、關(guān)系和語(yǔ)義的對(duì)象的描述。
⒉接口(interface):描述一個(gè)類(lèi)或者構(gòu)件的一個(gè)服務(wù)的操作集合。
⒊協(xié)作(collaboration):定義了一個(gè)交互,他是由一組共同工作以提供某協(xié)作行為的角色和其他元素構(gòu)成的一個(gè)群體。
⒋用例(usecase):是對(duì)一組動(dòng)作序列的描述,系統(tǒng)執(zhí)行這些動(dòng)作將產(chǎn)生一個(gè)對(duì)特定的參與者有價(jià)值而且可觀察的結(jié)果。
⒌主動(dòng)類(lèi)(activeclass):主動(dòng)類(lèi)的對(duì)象至少擁有一個(gè)進(jìn)程或線(xiàn)程,因此他能夠啟動(dòng)控制活動(dòng)。
⒍構(gòu)件(component):是系統(tǒng)中物理的、可替代的部件,他遵循且提供一組接口的實(shí)現(xiàn)。
⒎節(jié)點(diǎn)(node):是在運(yùn)行時(shí)存在的物理元素,他表示了一種可計(jì)算的資源,他通常至少有一些記憶能力和處理能力。
⑵行為事物(behavioralthing)
⒈交互(interaction):是這樣一種行為,它由在特定語(yǔ)境中共同完成一定任務(wù)的一組對(duì)象之間交換的消息組成。
⒉狀態(tài)機(jī)(statemachine):它描述了一個(gè)對(duì)象或者一個(gè)交互在生命周期內(nèi)相應(yīng)事件所經(jīng)歷的狀態(tài)序列。
⑶分組事物(groupingthing)
⒈包(package):是把元素組織成組的機(jī)制,這種機(jī)制具有多種用途。
⑷注釋事物(annotationalthing)
⒈注釋(note):是一個(gè)依附于一個(gè)元素或者一組元素之上,對(duì)它進(jìn)行約束或者解釋的簡(jiǎn)單符號(hào)。
②UML組成中的關(guān)系
⑴關(guān)聯(lián)(dependency):一種結(jié)構(gòu)關(guān)系,它描述了一組鏈,鏈?zhǔn)菍?duì)象之間的連接。聚合()是一種特殊類(lèi)型的關(guān)聯(lián),它描述了整體和部分之間的結(jié)構(gòu)關(guān)系。
⑵依賴(lài)(association):是兩個(gè)事物之間的語(yǔ)義關(guān)系,其中一個(gè)獨(dú)立事物發(fā)生變化會(huì)影響另外一個(gè)依賴(lài)事物的語(yǔ)義。
⑶泛化(generalization):是一種特殊/一般關(guān)系,特殊元素(即子元素)的對(duì)象可以替代一般元素(即父元素)的對(duì)象。
⑷實(shí)現(xiàn)(realization):是類(lèi)之間的語(yǔ)義定義,其中一個(gè)類(lèi)指定了由另外一個(gè)類(lèi)保證執(zhí)行的契約。在兩種地方要用到實(shí)現(xiàn):接口和實(shí)現(xiàn)他們的類(lèi)或者構(gòu)件之間;用例和實(shí)現(xiàn)他們的協(xié)作之間。
③UML組成中的圖
⑴類(lèi)圖(classdiagram):
展現(xiàn)了一組對(duì)象、接口、協(xié)作和他們之間的關(guān)系。在面向?qū)ο笙到y(tǒng)的建模中所建立的最常見(jiàn)的圖就是類(lèi)圖。類(lèi)圖給出系統(tǒng)的靜態(tài)設(shè)計(jì)視圖。包含主動(dòng)類(lèi)的類(lèi)圖給出系統(tǒng)的靜態(tài)進(jìn)程視圖。
Together名稱(chēng):ClassDiagram。
Together對(duì)象:Package、Class、Interface、Enum、ClassByTemplate、AssociationClass、Generalization/ImplementationLink、AssociationLink、LinkByTemplate、DependencyLink、AssociationEnd、Object、Note、NoteLink。
⑵對(duì)象圖(objectdiagram):
UML組成中的對(duì)象圖展現(xiàn)了一組對(duì)象以及他們之間的關(guān)系。對(duì)象圖描述了在類(lèi)圖中所建立的事物的實(shí)例的靜態(tài)快照。和類(lèi)圖一樣,這些圖給出系統(tǒng)的靜態(tài)設(shè)計(jì)視圖或靜態(tài)進(jìn)程視圖,但他們是從真實(shí)的或原型案例的角度建立的。
Together名稱(chēng):無(wú)。
Together對(duì)象:無(wú)。
⑶用例圖(usecasediagram):
展現(xiàn)了一組用例、參與者(一種特殊的類(lèi))以及他們之間的關(guān)系。用例圖給出系統(tǒng)的靜態(tài)用例視圖。這些圖對(duì)于系統(tǒng)的行為進(jìn)行組織和建模是非常重要的。
Together名稱(chēng):UseCaseDiagram。
Together對(duì)象:Actor、UseCase、GeneralizationLink、CommunicatesLink、ExtendLink,IncludeLink、SystemBoundary、Note、NoteLink。#p#
⑷順序圖(sequencediagram):
UML組成中順序圖是一種強(qiáng)調(diào)消息的時(shí)間順序的交互圖。
Together名稱(chēng):SequenceDiagram。
Together對(duì)象:Actor、Object、Message、MessagewithDeliveryTime、Self-Message、Return、Note、NoteLink。
⑸協(xié)作圖(collaborationdiagram):
強(qiáng)調(diào)收發(fā)消息的對(duì)象的結(jié)構(gòu)組織的交互圖。順序圖和協(xié)作圖是同構(gòu)的,這意味著他們是可以互相轉(zhuǎn)換的。
Together名稱(chēng):CollaborationDiagram。
Together對(duì)象:Object、Actor、Message、AssociationLink、AggregationLink、Note、NoteLink。
⑹狀態(tài)圖(statechartdiagram):
UML組成中的狀態(tài)圖展現(xiàn)了一個(gè)狀態(tài)機(jī),他由狀態(tài)、轉(zhuǎn)換、事件和活動(dòng)組成。狀態(tài)圖專(zhuān)注于系統(tǒng)的動(dòng)態(tài)視圖。他對(duì)于接口、類(lèi)或者協(xié)作的行為建模尤為重要,而且他強(qiáng)調(diào)對(duì)象行為的事件順序,這非常有助于對(duì)反應(yīng)式系統(tǒng)建模。
Together名稱(chēng):StateDiagram。
Together對(duì)象:State、StartState、EndState、History、Object、HorizontalFork/Join、VerticalFork/Join、Transition、Note、NoteLink。
⑺活動(dòng)圖(activitydiagram):
是一種特殊的狀態(tài)圖,他展現(xiàn)了在系統(tǒng)內(nèi)從一個(gè)活動(dòng)到另一個(gè)活動(dòng)的流程。活動(dòng)圖專(zhuān)注于系統(tǒng)的動(dòng)態(tài)視圖。他對(duì)于系統(tǒng)的功能建模特別重要,并強(qiáng)調(diào)對(duì)象間的控制流程。
Together名稱(chēng):ActivityDiagram。
Together對(duì)象:Activity、Decision/Merge、SignalReceipt、SignalSending、State、History、Object、StartState、EndState、HorizontalFork/Join、VerticalFork/Join、Swimlane、Transition、ObjectFlow、Note、NoteLink。
⑻構(gòu)件圖(componentdiagram):
UML組成中的構(gòu)件圖展現(xiàn)了一組構(gòu)件之間的組織和依賴(lài)。專(zhuān)注于靜態(tài)視圖,與類(lèi)圖相關(guān),通常把構(gòu)件圖映射成一個(gè)或多個(gè)類(lèi)、接口或者協(xié)作。
Together名稱(chēng):ComponentDiagram。
Together對(duì)象:Subsystem、Component、Interface、SupportsLink、DependencyLink、Note、NoteLink。
⑼實(shí)施圖(deploymentdiagram):
展現(xiàn)了對(duì)運(yùn)行時(shí)處理節(jié)點(diǎn)以及其中的構(gòu)件的配置。他給出了系統(tǒng)的靜態(tài)實(shí)施視圖。與構(gòu)件圖相關(guān),通常一個(gè)節(jié)點(diǎn)包含一個(gè)或多個(gè)構(gòu)件。
Together名稱(chēng):DeploymentDiagram。
Together對(duì)象:Node、Component、Interface、SupportsLink、AssociationLink、AggregationLink、Object、DependencyLink、Note、NoteLink。
◆UML組成中的規(guī)則
①命名為事物、關(guān)系和圖命名
②范圍給一個(gè)名稱(chēng)以特定含義的語(yǔ)境
③可見(jiàn)性怎樣讓其他人使用或者看見(jiàn)名稱(chēng)
④完整性事物如何正確、一致地相互聯(lián)系
⑤執(zhí)行運(yùn)行或模擬動(dòng)態(tài)模型的含義是什么
⑥省略隱藏某些元素以簡(jiǎn)化視圖
⑦不完全性可以遺漏某些的元素
⑧不一致性不保證模型的完整性
◆UML組成中的公共機(jī)制
①規(guī)格說(shuō)明
②修飾
③通用劃分
⑴對(duì)類(lèi)和對(duì)象的劃分。也就是抽象和實(shí)例的劃分,比如類(lèi)和對(duì)象、用例和用例實(shí)例;
⑵接口和實(shí)現(xiàn)的劃分。例如用例和實(shí)現(xiàn)他們的協(xié)作、操作和實(shí)現(xiàn)他們的方法等。
④擴(kuò)展機(jī)制,主要包括:
⑴構(gòu)造型(stereotype)
⑵標(biāo)記值(taggedvalue)
⑶約束(constraint)本節(jié)關(guān)于UML組成的相關(guān)內(nèi)容介紹到這里。
【編輯推薦】