UML的九種圖:用例圖,類圖,,對(duì)象圖,,狀態(tài)圖,活動(dòng)圖,,序列圖,,協(xié)作圖,構(gòu)件圖,,部署圖,。外加包圖。
(一),、用例圖
1,、定義:由參與者(Actor)、用例(Use Case)以及它們之間的關(guān)系構(gòu)成的用于描述系統(tǒng)功能的動(dòng)態(tài)視圖稱為用例圖.
2,、簡(jiǎn)要介紹:用例圖主要用于為系統(tǒng)的功能需求建模,,它主要描述系統(tǒng)功能,也就是從外部用戶的角度觀察,,系統(tǒng)應(yīng)該完成哪些功能,,有利于開發(fā)人員以一種可視化的方式理解系統(tǒng)的功能需求。同時(shí)也是為了方便用戶和系統(tǒng)分析人員的理解盡量一致,為用戶和系統(tǒng)分析人員提供一個(gè)大眾的,,一致性的方法,準(zhǔn)確地把握系統(tǒng)的需求,,能夠節(jié)省時(shí)間,提高效率,!
用例方法是完全從外部來定義系統(tǒng)功能,,它把需求和設(shè)計(jì)完全的分離開來。我們不用關(guān)心系統(tǒng)內(nèi)部是如何完成各種功能的,,系統(tǒng)對(duì)于我們來說就是一個(gè)黑箱子,。
用例圖清楚地描述了使用者及它們之間的泛化關(guān)系,用例及用例之間的泛化,、擴(kuò)展關(guān)系,,用例和參與者之間的關(guān)聯(lián)關(guān)系,,可從用例圖中得到對(duì)于被定義系統(tǒng)的一個(gè)總體印象,。
3、導(dǎo)圖概述
4,、用例圖(機(jī)房收費(fèi)系統(tǒng))
(二),、類圖
1,、定義:是由若干類關(guān)聯(lián)在一起,反映系統(tǒng)或者子系統(tǒng)組成結(jié)構(gòu)的靜態(tài)圖,。
2,、簡(jiǎn)要介紹:類圖的建模貫穿工程的分析和設(shè)計(jì)階段的始終。
類圖是用來描述系統(tǒng)的靜態(tài)部分,。
3,、導(dǎo)圖概述
4、類圖(機(jī)房收費(fèi)系統(tǒng))
(三),、對(duì)象圖
1,、定義:對(duì)象圖描述一個(gè)系統(tǒng)在某個(gè)具體時(shí)刻的靜態(tài)結(jié)構(gòu)。
2,、簡(jiǎn)要介紹:對(duì)象圖實(shí)際上就是類圖的實(shí)例,。
對(duì)象圖表示一組對(duì)象及他們之間的聯(lián)系,它是系統(tǒng)的詳細(xì)狀態(tài)在某一時(shí)刻的快照,,常用于表示復(fù)雜類圖的一個(gè)實(shí)例,。
UML中對(duì)象圖與類圖具有相同的表示形式。
在UML中,,對(duì)象圖的使用相當(dāng)有限,,主要用于表達(dá)數(shù)據(jù)結(jié)構(gòu)的實(shí)例,以及了解系統(tǒng)在某個(gè)特定時(shí)刻的具體情況,。
3,、導(dǎo)圖概述
4、對(duì)象圖(機(jī)房收費(fèi)系統(tǒng)-注冊(cè))
(四),、狀態(tài)圖
1,、定義:用來描述一個(gè)特定對(duì)象的所有可能狀態(tài)以及由于各種事件的發(fā)生而引起的狀態(tài)之間的轉(zhuǎn)移。
2,、簡(jiǎn)要介紹:狀態(tài)圖(Statechart Diagram)是描述一個(gè)實(shí)體基于事件反應(yīng)的動(dòng)態(tài)行為,,顯示了該實(shí)體如何根據(jù)當(dāng)前所處的狀態(tài)對(duì)不同的事件做出反應(yīng)的。通常我們創(chuàng)建一個(gè)UML狀態(tài)圖是為了以下的研究目的:研究類,、角色,、子系統(tǒng)、或組件的復(fù)雜行為,。
一般可以用狀態(tài)機(jī)對(duì)一個(gè)對(duì)象的生命周期建模,,狀態(tài)圖用于顯示狀態(tài)機(jī)(State Machine Diagram),重點(diǎn)在與描述狀態(tài)圖的控制流,。
3,、導(dǎo)圖概述
4、狀態(tài)圖(機(jī)房收費(fèi)系統(tǒng)-注冊(cè))
(五),、活動(dòng)圖
1,、定義:闡明業(yè)務(wù)用例實(shí)現(xiàn)的工作流程,。
2、簡(jiǎn)要介紹:活動(dòng)圖是UML用于對(duì)系統(tǒng)的動(dòng)態(tài)行為建模的另一種常用工具,,它描述活動(dòng)的順序,,展現(xiàn)從一個(gè)活動(dòng)到另一個(gè)活動(dòng)的控制流。活動(dòng)圖在本質(zhì)上是一種流程圖,?;顒?dòng)圖著重表現(xiàn)從一個(gè)活動(dòng)到另一個(gè)活動(dòng)的控制流,是內(nèi)部處理驅(qū)動(dòng)的流程,。
活動(dòng)圖描述的是對(duì)象活動(dòng)的順序關(guān)系所遵循的規(guī)則,,它著重表現(xiàn)的是系統(tǒng)的行為,而非系統(tǒng)的處理過程,?;顒?dòng)圖能夠表示并發(fā)活動(dòng)的情形,活動(dòng)圖是面向?qū)ο蟮摹?/p>
3,、導(dǎo)圖概述
4,、活動(dòng)圖(機(jī)房收費(fèi)系統(tǒng)-注冊(cè))
(六)、序列圖(又稱順序圖,,時(shí)序圖)
1,、定義:是對(duì)對(duì)象之間傳送消息的時(shí)間順序的可視化表示。
2,、簡(jiǎn)要介紹:序列圖的目的在于描述系統(tǒng)中各個(gè)對(duì)象按照時(shí)間的順序的交互過程,。
序列圖將交互關(guān)系表示為一個(gè)二維圖??v向是時(shí)間軸,,時(shí)間沿豎線向下延伸。橫向軸代表了在協(xié)作中各獨(dú)立對(duì)象的類元角色,。類元角色用生命線表示,。當(dāng)對(duì)象存在時(shí),角色用一條虛線表示,,當(dāng)對(duì)象的過程處于激活狀態(tài)時(shí),,生命線是一個(gè)雙道線。
消息用從一個(gè)對(duì)象的生命線到另一個(gè)對(duì)象生命線的箭頭表示,。箭頭以時(shí)間順序在圖中從上到下排列,。
3、導(dǎo)圖概述
4,、序列圖(機(jī)房收費(fèi)系統(tǒng)-注冊(cè))
(七),、協(xié)作圖(又稱合作圖)
1、定義:描述相互合作對(duì)象間的交互關(guān)系。
2,、簡(jiǎn)要介紹:UML協(xié)作圖是一種交互圖,強(qiáng)調(diào)的是發(fā)送和接收消息的對(duì)象之間的組織結(jié)構(gòu),。
UML協(xié)作圖用于顯示對(duì)象之間如何進(jìn)行交互以執(zhí)行特定用例或用例中特定部分的行為,。設(shè)計(jì)員使用UML協(xié)作圖和序列圖確定并闡明對(duì)象的角色,這些對(duì)象執(zhí)行用例的特定事件流,。它們是主要的信息來源,,用于確定類的職責(zé)和接口。
與序列圖不同,,UML協(xié)作圖顯示了對(duì)象之間的關(guān)系,。序列圖和UML協(xié)作圖表述的是相似的信息,但表述的方式卻不同,。UML協(xié)作圖顯示對(duì)象之間的關(guān)系,,它更有利于理解對(duì)給定對(duì)象的所有影響,也更適合過程設(shè)計(jì),。
UML協(xié)作圖的格式?jīng)Q定了它們更適合在分析活動(dòng)中使用,。它們特別適合用來描述少量對(duì)象之間的簡(jiǎn)單交互。隨著對(duì)象和消息數(shù)量的增多,,理解UML協(xié)作圖將越來越困難,。此外,UML協(xié)作圖很難顯示補(bǔ)充的說明性信息,,例如時(shí)間,、判定點(diǎn)或其他非結(jié)構(gòu)化的信息,而在序列圖中這些信息可以方便地添加到注釋中,。
序列圖常用來表示方案,,協(xié)作圖用于過程的詳細(xì)設(shè)計(jì)。
3,、導(dǎo)圖概述
4,、協(xié)作圖(機(jī)房收費(fèi)系統(tǒng)-注冊(cè))
(八)、構(gòu)件圖
1,、定義:主要用于描述各種軟件構(gòu)件之間的依賴關(guān)系,。
2、簡(jiǎn)要介紹:構(gòu)件圖是從軟件架構(gòu)的角度來描述一個(gè)系統(tǒng)的主要功能,,如子系統(tǒng),、類、包,、構(gòu)件等,。
使用構(gòu)件最重要的是復(fù)用。
構(gòu)件是系統(tǒng)中遵從同一組接口且提供其實(shí)現(xiàn)的物理的、可替換的部分,。
構(gòu)件圖提供系統(tǒng)物理視圖,,在一個(gè)非常高的層次上顯示系統(tǒng)中的構(gòu)件與構(gòu)件之間的依賴關(guān)系。
3,、導(dǎo)圖概述
4,、構(gòu)件圖(機(jī)房收費(fèi)系統(tǒng))
(九)、部署圖
1,、定義:描述了一個(gè)系統(tǒng)運(yùn)行時(shí)的硬件節(jié)點(diǎn),,在這些節(jié)點(diǎn)上運(yùn)行的軟件構(gòu)件將在何處物理運(yùn)行以及它們將如何彼此通信的靜態(tài)視圖
2、簡(jiǎn)要介紹:系統(tǒng)開發(fā)人員和部署人員可以利用部署圖去了解系統(tǒng)的物理運(yùn)行情況,。如果,,開發(fā)的軟件系統(tǒng)只需在一臺(tái)計(jì)算機(jī)上運(yùn)行,且使用的標(biāo)準(zhǔn)設(shè)備,,則不需要為它畫出系統(tǒng)部署圖,。部署圖只需要給那些復(fù)雜的物理運(yùn)行情況進(jìn)行建模。
部署圖顯示了系統(tǒng)的硬件,,安裝在硬件上的軟件,,用于連接硬件的各種協(xié)議和中間件等。
部署模型的目的:描述一個(gè)具體應(yīng)用的主要部署結(jié)構(gòu),,通過對(duì)各種硬件,,在硬件中的軟件以及各種連接協(xié)議的顯示,可以很好的描述系統(tǒng)是如何部署的,;平衡系統(tǒng)運(yùn)行時(shí)的計(jì)算資源分布,;可以通過連接描述組織的硬件網(wǎng)絡(luò)結(jié)構(gòu)或者是嵌入式系統(tǒng)等具有多種硬件和軟件相關(guān)的系統(tǒng)運(yùn)行模型。
3,、導(dǎo)圖概述
4,、部署圖(機(jī)房收費(fèi)系統(tǒng))
(十)、包圖(包圖并非正式的UML圖)
1,、定義:包圖是在 UML 中用類似于文件夾的符號(hào)表示的模型元素的組合
2,、簡(jiǎn)要介紹:包圖是一種維護(hù)和描述系統(tǒng)總體結(jié)構(gòu)的模型的重要建模工具,通過對(duì)包中各個(gè)包以及包之間關(guān)系的描述,,展現(xiàn)出系統(tǒng)的模塊與模塊之間的依賴關(guān)系,。
包圖的作用:包圖可以描述需求,設(shè)計(jì)的高階概況,;包圖通過合理規(guī)劃自身功能反應(yīng)系統(tǒng)的高層架構(gòu),,在邏輯上將系統(tǒng)進(jìn)行模塊化分解;包圖最終是組織源碼的方式,。
一個(gè)包圖可以由任何一種UML圖組成,,通常是UML用例圖或是UML類圖,。
包被描述成文件夾,可以用于UML任何一種的圖上,。
包圖只是把某些類放在一個(gè)包中,,因此可以看做是類圖的一種。
3,、導(dǎo)圖概述
4,、包圖(機(jī)房收費(fèi)系統(tǒng))