UML各種圖畫法總結(jié)_第1頁
UML各種圖畫法總結(jié)_第2頁
UML各種圖畫法總結(jié)_第3頁
UML各種圖畫法總結(jié)_第4頁
UML各種圖畫法總結(jié)_第5頁
已閱讀5頁,還剩14頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、一用例圖用例模型是把應(yīng)知足用戶需求的基本功能(集)聚合起來表示的強(qiáng)盛工具。用例模型的基本構(gòu)成零件是用例角色和系統(tǒng)。引入用例的主要目的是:確立系統(tǒng)應(yīng)具備哪些功能這些功能能否知足系統(tǒng)的需求開發(fā)者與用戶磋商達(dá)成共鳴的東西為系統(tǒng)的功能供給清楚一致的描繪,以便為后續(xù)的開發(fā)工作打下優(yōu)秀的溝通基礎(chǔ),方便開發(fā)人員傳達(dá)需求的功能為系統(tǒng)考證工作打下基礎(chǔ)經(jīng)過考證最后實(shí)現(xiàn)的系統(tǒng)能夠履行的功能能否與最先需求的功能相一致保證系統(tǒng)的適用性從需求的功能用例出發(fā)供給追蹤進(jìn)入系統(tǒng)中詳細(xì)實(shí)現(xiàn)的類和方法檢查其能否正確的能力特別是為復(fù)雜系統(tǒng)建模常常用用例模型結(jié)構(gòu)系統(tǒng)的簡化版本(也就是精化系統(tǒng)的變化和擴(kuò)展能力使系統(tǒng)不要過于復(fù)雜)而后利用

2、該用例模型追蹤對系統(tǒng)的設(shè)計和實(shí)現(xiàn)有影響的用例簡化版本結(jié)構(gòu)正確以后經(jīng)過擴(kuò)展達(dá)成復(fù)雜系統(tǒng)的建模圖示用例圖時既要畫出三種模型元素,同時還要畫出元素之間的各樣關(guān)系(通用化關(guān)系依靠)用例代表的是一個完好的功能。怎樣發(fā)現(xiàn)用例實(shí)質(zhì)上從辨別角色起發(fā)現(xiàn)用例的過程就已經(jīng)已開始了關(guān)于已識其他角色經(jīng)過咨詢以下問題便可發(fā)現(xiàn)用例角色需要從系統(tǒng)中獲取哪一種功能角色需要做什么角色需要讀取產(chǎn)生刪除改正或儲存系統(tǒng)中的某種信息嗎系統(tǒng)中發(fā)生的事件需要通知角色嗎或許角色需要通知系統(tǒng)某件事嗎這些事件功能能干些什么假如用系統(tǒng)的新功能辦理角色的平時工作是簡單化了仍是提升了工作效率還有一些與目前角色可能沒關(guān)的問題也能幫助建模者發(fā)現(xiàn)用例比如系統(tǒng)

3、需要的輸入/輸出是什么信息這些輸入/輸出信息從哪兒到達(dá)哪兒去系統(tǒng)目前的這種實(shí)現(xiàn)方法要解決的問題是什么或許是用自動系統(tǒng)取代手工操作UML中的用例UML中的用例用橢圓形表示用例的名字寫在橢圓的內(nèi)部或下方用例位于系統(tǒng)邊界的內(nèi)部角色與用例之間的關(guān)系關(guān)系或通訊關(guān)系關(guān)系用一條直線表示用例和角色之間有連結(jié)關(guān)系用例和角色之間的關(guān)系屬于關(guān)系association又稱作通訊關(guān)系communicationassociation,這種關(guān)系表示哪一種角色能與該用例通訊,關(guān)系關(guān)系是雙向的一對一關(guān)系,即角色能夠與用例通訊,用例也能夠與角色通訊。用例關(guān)系用例之間有擴(kuò)展使用組合三種關(guān)系擴(kuò)展和使用是繼承關(guān)系即通用化關(guān)系的另一種表

4、現(xiàn)形式組合則是把有關(guān)的用例打成包package看作一個整體對待1擴(kuò)展關(guān)系一個用例中加入一些新的動作后則構(gòu)成了另一個用例這兩個用例之間的關(guān)系就是通用化關(guān)系又稱擴(kuò)展關(guān)系后者經(jīng)過繼承前者的一些行為得來前者往常稱為通用化用例后者常稱為擴(kuò)展用例擴(kuò)展用例能夠依據(jù)需要有選擇地繼承通用化用例的部分行為擴(kuò)展用例也必定擁有完好性2使用關(guān)系一個用例使用另一個用例時這兩個用例之間就構(gòu)成了使用關(guān)系一般狀況下假如若干個用例的某些行為都是同樣的則能夠把這些同樣的行為提拿出來獨(dú)自作成一個用例這個用例稱為抽象用例這樣當(dāng)某個用例使用該抽象用例時就好象這個用例包含了抽象用例的所有行為二類圖所謂對象就是能夠控制和操作的實(shí)體,類是對象

5、的抽象描繪,它包含屬性的描繪和行為的描繪二方面,建立面向?qū)ο竽P偷幕A(chǔ)是類對象和它們之間的關(guān)系類圖是用類和它們之間的關(guān)系描繪系統(tǒng)的一種圖示屬于一種靜態(tài)模型類圖是建立其余圖的基礎(chǔ)沒有類圖就沒法表示系統(tǒng)的其余各個方面是從靜態(tài)角度表示系統(tǒng)的所以類圖就沒有狀態(tài)圖協(xié)作圖等其余圖也類圖中同意出現(xiàn)的模型元素只有類和它之間的關(guān)系類用長方形表示長方形分紅上中下三個地區(qū)每個地區(qū)用不一樣的名字表記用以代表類的各個特色上邊的地區(qū)內(nèi)用黑體字標(biāo)識類的名字中間的地區(qū)內(nèi)標(biāo)類的名字識類的屬性下邊的地區(qū)內(nèi)表記類的操作方法即行為這三部分作為一個整體描繪某個類屬性的可見性能夠不限于上述的三種某些詳細(xì)的程序設(shè)計語言還能夠定義其余的可見

6、性種類可是在表示類圖時一定含有公有種類和私有種類在類圖中公有種類表示為加號+私有種類表示為減號它們表記在屬性名稱的左邊如圖4-4所示假如屬性名稱旁沒有表記任何符號表示該屬性的可見性還沒有定義描繪屬性的語法格式為可見性屬性名種類名=初值性質(zhì)串列舉種類的屬性常常使用性質(zhì)串操作在類圖中操作部分位于長方形的最底部一個類能夠有多種操作名參數(shù)表返回值種類等幾部分構(gòu)成標(biāo)準(zhǔn)語法格式為每種操作由操作可見性操作名參數(shù)表返回值種類性質(zhì)串參數(shù)表由多個參數(shù)用逗號分開構(gòu)成參數(shù)的語法格式為參數(shù)名參數(shù)種類名=缺省值有一種特其他類叫做長久類persistentclass如圖4-11所示的類就是一個長久類當(dāng)產(chǎn)生對象的程序draw

7、運(yùn)轉(zhuǎn)結(jié)束時所需的對象便生成了同時生成的對象將自己存入數(shù)據(jù)庫文件或其余永遠(yuǎn)性的儲存器中類之間的關(guān)系類圖由類和它們之間的關(guān)系構(gòu)成類與類之間往常有關(guān)系通用化(繼承)依靠和精化等四種關(guān)系關(guān)系可分為一般關(guān)系遞歸關(guān)系限制關(guān)系或關(guān)系有序關(guān)系三元關(guān)系和聚合等七種一般關(guān)系:因?yàn)殛P(guān)系是雙向的能夠在關(guān)系的一個方向上為關(guān)系起一個名字而在另一個方向上起另一個名字也可不起名字名字往常緊挨著直線書寫導(dǎo)航關(guān)系:類與類之間的關(guān)系是單向的類圖中圖示關(guān)系中的數(shù)目關(guān)系-重數(shù)0.1表示零到1個對象0.*或*表示零到多個對象5.17表示5到17個對象表示2個對象關(guān)于多對多的雙向關(guān)系能夠轉(zhuǎn)變?yōu)閮蓚€一對多的關(guān)系來實(shí)現(xiàn)對象圖對象的圖示方式與類

8、的圖示方式幾乎是同樣的劃線對象名有以下三種表示格式第一種格式形如主要差異在于對象的名字下邊要加下即對象名在前第二種格式形如對象名類名類名在后中間用冒號連結(jié)類名這種格式用于還沒有給對象命名的狀況第三種格式形如注意類名前的冒號不可以省略對象名這種格式不帶類名即省略類名遞歸關(guān)系假如一個類與它自己有關(guān)系關(guān)系那么這種關(guān)系稱為遞歸關(guān)系recursiveassociation角色任何關(guān)系關(guān)系中都波及到與此關(guān)系有關(guān)的角色也就是與此關(guān)系相連的類中的對象所扮演的角色引入角色的利處是指了然類和類的對象之間的聯(lián)系(CONTEXT)限制關(guān)系限制關(guān)系用于一對多或多對多的關(guān)系關(guān)系中在限制關(guān)系中使用限制詞將關(guān)系中多的那一端的

9、詳細(xì)對象分紅對象集限制詞能夠理解為一種重點(diǎn)詞用重點(diǎn)詞把全部的對象分開用限制關(guān)系能夠把模型中的重數(shù)從一對多變?yōu)橐粚σ活悎D中限制詞擱置在關(guān)系關(guān)系尾端的一個小方框內(nèi)緊挨著開始導(dǎo)航的類利有序關(guān)系對象與對象之間的連結(jié)能夠擁有必定的序次就像應(yīng)把窗口安排在屏幕之上同樣一般狀況下對象之間的關(guān)系都是無序的假如要明確表示關(guān)系中的序次關(guān)系必定要將規(guī)格說明排序放在表示關(guān)系的直線旁且緊挨著對象被排序的類三元關(guān)系類與類之間的關(guān)系關(guān)系不單限于兩個類之間多個類之間也能夠有關(guān)系關(guān)系假如三個類之間有關(guān)系關(guān)系則稱之為三元關(guān)系三元關(guān)系圖示為一個大的菱形菱形的角與關(guān)系的類之間用直線相連也能夠用虛線連結(jié)聚合聚合是關(guān)系的特例假如類與類之間

10、的關(guān)系擁有整體與部分的特色則把這樣的關(guān)系稱為聚合如圖4-35是一個帶角色的復(fù)合聚合的示例圖中給出了三種圖示方法角色名位于部分類一方按鈕和圖標(biāo)a是帶角色名的復(fù)合聚合圖示b是帶角色的復(fù)合聚合的標(biāo)準(zhǔn)語法形式c采納將屬性名變?yōu)榻巧麑傩缘姆N類變?yōu)轭惖姆椒ǖ男问綀D示復(fù)合聚合通用化一個類通用元素的全部信息屬性或操作能被另一個類詳細(xì)元素承某個類的類中不單能夠有屬于自己的信息并且還擁有了被繼承類中的信息就是通用化繼承襲這種體制受限通用化給通用化關(guān)系附帶一個拘束條件進(jìn)一步說明該通用化關(guān)系的使用方法或擴(kuò)大方法這樣的通用化關(guān)系稱為受限通用化預(yù)約義的拘束有四種多重不訂交完好和不完好圖4-44圖示了二種拘束通用化的表

11、示方法圖4-44a是多個子類共用一個箭頭指向父類拘束用花括號括起來放在直線旁邊多個拘束之間用逗號分開圖4-44b中的繼承關(guān)系是獨(dú)自圖示的這種狀況下要此外附帶一條虛線穿越全部的繼承關(guān)系多重繼承多重繼承指的是子類的子類能夠同時繼承多個上一級子類圖4-45所示的水陸兩用類就是經(jīng)過多重繼承獲取的依靠和精化關(guān)系依靠關(guān)系描繪的是兩個模型元素類組適用例等之間的語義上的連結(jié)關(guān)系UML中的規(guī)則稱為拘束和派生拘束用于限制一個模型我們已經(jīng)議論過的拘束有或關(guān)系有序關(guān)系和四種繼承拘束多重不訂交完好和不完好派生用于描繪某種事物的產(chǎn)生規(guī)則拘束關(guān)系派生關(guān)系派生屬性由其余屬性經(jīng)過某種方式計算得來派生屬性前面加一個斜線表示正出此

12、刻類的對象中派生屬性的計算公式用括號括起來放在類的下方它其實(shí)不真對UML模型元素應(yīng)用的拘束和派生規(guī)則也能夠用UML語語言法體制表示表示規(guī)則的語法稱為導(dǎo)航表達(dá)式它構(gòu)成說明一個詳細(xì)規(guī)則的基本語句依據(jù)需要有時可以擴(kuò)展導(dǎo)航表達(dá)式下邊介紹五種常有語法的書寫形式形式一set是一個表達(dá)式代表一個對象或?qū)ο蠹痑ttribute是set所代表對象的一個屬性名它們之間用.號相連結(jié)形式一的結(jié)果是屬性的值結(jié)果值可能是單值也可能是多值詳細(xì)結(jié)果依靠于關(guān)系的重數(shù)形式二此中set的含義同形式一role代表關(guān)系關(guān)系中目的方角色名它們之間用.相連形式二的結(jié)果為一個或多個對象對象的多少依靠于關(guān)系的重數(shù)形式三set.role形式三與

13、形式二的含義差不多不一樣之處在于role名role前面多加一個符號表示對關(guān)系關(guān)系的逆轉(zhuǎn)有關(guān)的對象或?qū)ο蠹问剿膕et布爾表達(dá)式代表關(guān)系關(guān)系中的開端方角色詳細(xì)結(jié)果仍舊是與關(guān)系的重數(shù)set是代表一個對象或多個對象的表達(dá)式布爾表達(dá)式用方括號括起來形式四的結(jié)果值是使布爾表達(dá)式為真的對象是set形式五set.限制詞的值set中的對象書寫的一個子集并用set是代表一個對象或多個對象的表達(dá)式限制詞指明一個限制set的限制關(guān)系限制詞代表限制關(guān)系中的限制屬性值動向建模全部系統(tǒng)均可表示為兩個方面靜態(tài)結(jié)構(gòu)和動向行為UML構(gòu)和行為類圖(classdiagram)最合適于描繪系統(tǒng)的靜態(tài)結(jié)構(gòu)的關(guān)系而狀態(tài)序列協(xié)作和活動圖則

14、合適于描繪系統(tǒng)的動向行為象在履行時期不一樣的時間點(diǎn)是怎樣動向交互的供給圖來描繪系統(tǒng)的結(jié)類對象以及它們之間即描繪系統(tǒng)中的對系統(tǒng)中的對象需要互相通訊它們互相發(fā)送信息本章中描繪的動向圖有狀態(tài)圖狀態(tài)圖描繪對象在生命周期內(nèi)處于哪些狀態(tài)每一種狀態(tài)的行為以及什么樣的事件惹起對象狀態(tài)發(fā)生改變比如一張發(fā)票能夠是已付(狀態(tài)paid)和未付(狀態(tài)unpaid)序列圖描繪對象怎樣互訂交互和通訊序列圖中的最要的是時間經(jīng)過序列圖能夠看出為了達(dá)成某種功能一組對象怎樣發(fā)送和接收一序列信息協(xié)作圖協(xié)作圖也是描繪對象交互的但重視于空間的協(xié)作意即明確地給出對象間的關(guān)系(鏈接)活動圖也是描繪對象交互的但重視于工作的描繪當(dāng)對象互訂交互時

15、需要履行一些工作或活動這些活動以及它們的出現(xiàn)次序就是活動圖所要描繪的簡單信息表示一般的控制流它不過表示控制是怎樣從一個對象傳給另一個對象而沒有描繪通訊的任何細(xì)節(jié)這種信息種類主要用于通訊細(xì)節(jié)未知或不需要考慮通訊細(xì)節(jié)的場合它也能夠用于表示一個同步信息的返回也就是說箭頭處理信息的對象指向調(diào)用者表示控制返回給調(diào)用者同步信息一個嵌套控制流典型狀況下表示一個操作調(diào)用辦理信息的操作在調(diào)用者恢復(fù)履行以前達(dá)成(包含任安在本次辦理中發(fā)送的其余信息)返回能夠用一個簡單信息來表示或當(dāng)信息被辦理完成隱含地表示異步信息異步控制流中沒有直接的返回給調(diào)用者發(fā)送者發(fā)送完信息后不需要等候信息辦理達(dá)成而是持續(xù)履行在及時系統(tǒng)中當(dāng)對象

16、并行履行常常采納這種信息狀態(tài)圖:狀態(tài)圖主要用來描繪對象子系統(tǒng)系統(tǒng)的生命周期經(jīng)過狀態(tài)圖能夠認(rèn)識到一個對象所能抵達(dá)的全部狀態(tài)以及對象收到的事件(收到信息超時錯誤條件知足)對對象狀態(tài)的影響等全部的類只需它有可標(biāo)志的狀態(tài)和復(fù)雜的行為都應(yīng)當(dāng)有一個狀態(tài)圖一個狀態(tài)一般包含三個部分第一部分為狀態(tài)的名稱如安閑已付挪動第二部分為可選的狀態(tài)變量的變量名和變量值屬性(變量)指的是狀態(tài)圖中類的屬性在某些狀況下暫時變量也是很實(shí)用的如計數(shù)器第三部分為可選的活動表列出有關(guān)的事件和活動活動部分的語法以下:事件名參數(shù)表/動作表達(dá)式狀態(tài)轉(zhuǎn)移的語法表示以下event-signatureguard-condition/action-e

17、xpressionsend-clause此中event-signature的語法表示以下事件名參數(shù),send-clause的語法表示以下destination-expression.destination-event-nameargument,從圖5-7中能夠看出event-signature由事件名參數(shù)觸發(fā)狀態(tài)轉(zhuǎn)移的事件與事件有關(guān)的附帶數(shù)據(jù)構(gòu)成參數(shù)由逗號分開的參數(shù)表來表示其語法表示以下參數(shù)名:種類表達(dá)式參數(shù)名:種類表達(dá)式,保衛(wèi)條件是狀態(tài)轉(zhuǎn)移中的一個布爾表達(dá)式假如將保衛(wèi)條件和事件說明放在一同使用的話則當(dāng)且僅當(dāng)事件發(fā)生且布爾表達(dá)式建即刻狀態(tài)轉(zhuǎn)移才發(fā)生假如狀態(tài)轉(zhuǎn)移只有保衛(wèi)條件這一個條件則只需保衛(wèi)條

18、件為真狀態(tài)轉(zhuǎn)移就發(fā)生帶保衛(wèi)條件動作表達(dá)式(Action-Expression)動作表達(dá)式是一個過程表達(dá)式當(dāng)狀態(tài)轉(zhuǎn)移開始時履行以下圖它可以由對象(擁有全部狀態(tài)的對象)的操作和屬性構(gòu)成也能夠由事件說明中的參數(shù)構(gòu)成在一個狀態(tài)轉(zhuǎn)移中同意有多個動作表達(dá)式可是多個動作表達(dá)式之間一定用斜杠(/)分分開動作表達(dá)式按指定次序(從左至右)一個一個地履行不同意有嵌套的動作表達(dá)式或遞歸的動作表達(dá)式可是只帶一個動作表達(dá)式的狀態(tài)轉(zhuǎn)移是可能的表示賦值)下邊就是只有一個動作表達(dá)式的狀態(tài)轉(zhuǎn)移的例子(:=increase()/n:=n+1/m:=m+1add(n)/sum:=sum+n/flash發(fā)送子句是動作的特例它被用來在兩個狀態(tài)轉(zhuǎn)移之間發(fā)送信息句由目的表達(dá)式和事件名構(gòu)成目的表達(dá)式由一個或多個對象構(gòu)成對目的對象(一組對象)存心義的事件的名稱目的對象能夠是對象自己以將:發(fā)送子事件名是可timer=Time-out/godown(firstfloor)變換成一個發(fā)送子句timer=Time-outdown(firstfloor)再舉幾個帶發(fā)送子句的狀態(tài)轉(zhuǎn)移的例子out_of_paper()()left_mouse_btn_down(locat

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論