第7章狀態(tài)機(jī)圖_第1頁
第7章狀態(tài)機(jī)圖_第2頁
第7章狀態(tài)機(jī)圖_第3頁
第7章狀態(tài)機(jī)圖_第4頁
第7章狀態(tài)機(jī)圖_第5頁
已閱讀5頁,還剩153頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、1 1、下面、下面4 4種圖中種圖中,( ),( )可以描述一個可以描述一個用例中多個對象之間的相互協(xié)作關(guān)系用例中多個對象之間的相互協(xié)作關(guān)系以及協(xié)作過程中的行為次序關(guān)系以及協(xié)作過程中的行為次序關(guān)系. . A A 交互圖交互圖 B B 狀態(tài)圖狀態(tài)圖 C C 對象圖對象圖 D D 用例圖用例圖?2 2、下面、下面( )( )建模元素不能在協(xié)作圖建模元素不能在協(xié)作圖中表示出來。(多選)中表示出來。(多選) A A 狀態(tài)狀態(tài) B B 消息消息 C C 活動活動 D D 多對象多對象?3 3、下面說法錯誤的是、下面說法錯誤的是: :A A 順序圖和協(xié)作圖都反映對象之間發(fā)順序圖和協(xié)作圖都反映對象之間發(fā)送的

2、消息送的消息B B 順序圖和協(xié)作圖在語義上是等價的順序圖和協(xié)作圖在語義上是等價的C C 順序圖強(qiáng)調(diào)發(fā)送和接收消息的對象順序圖強(qiáng)調(diào)發(fā)送和接收消息的對象之間的結(jié)構(gòu)組織關(guān)系之間的結(jié)構(gòu)組織關(guān)系D ROSED ROSE可以實(shí)現(xiàn)順序圖和協(xié)作圖之間可以實(shí)現(xiàn)順序圖和協(xié)作圖之間的等價轉(zhuǎn)換的等價轉(zhuǎn)換?4 4、從嚴(yán)格意義上講,下列四個選項(xiàng)中、從嚴(yán)格意義上講,下列四個選項(xiàng)中不屬于順序圖的內(nèi)容是(不屬于順序圖的內(nèi)容是( ) A A 對象對象 B B 參與者參與者 C C 消息消息 D D 控制焦點(diǎn)控制焦點(diǎn)?第第第第第第7 7 7 7 7 7章章章章章章 狀態(tài)圖和活動圖狀態(tài)圖和活動圖狀態(tài)圖和活動圖狀態(tài)圖和活動圖狀態(tài)圖和活

3、動圖狀態(tài)圖和活動圖信息工程學(xué)院信息工程學(xué)院7.1狀態(tài)圖概述狀態(tài)圖概述7.2狀態(tài)圖基本組成狀態(tài)圖基本組成l 狀態(tài)狀態(tài)l 轉(zhuǎn)換轉(zhuǎn)換l 事件事件7.3 繪制狀態(tài)機(jī)圖繪制狀態(tài)機(jī)圖7.4狀態(tài)機(jī)圖應(yīng)用狀態(tài)機(jī)圖應(yīng)用7.5活動圖活動圖l 概述概述l 組成組成l 用途用途2022-5-1772022-5-178狀態(tài)機(jī)狀態(tài)機(jī)用于描述一個對象在其生存期間的動態(tài)行為,表現(xiàn)對象用于描述一個對象在其生存期間的動態(tài)行為,表現(xiàn)對象響應(yīng)事件所經(jīng)歷的狀態(tài)序列以及伴隨的動作。響應(yīng)事件所經(jīng)歷的狀態(tài)序列以及伴隨的動作。狀態(tài)圖(狀態(tài)圖(State Machine Diagram)用來顯示狀態(tài)機(jī),一個狀態(tài)機(jī)可用多張狀態(tài)圖描述。用來顯示狀態(tài)

4、機(jī),一個狀態(tài)機(jī)可用多張狀態(tài)圖描述。2022-5-17Copy Right Copy Right X.Shi,DHUX.Shi,DHU9狀態(tài)機(jī)圖與交互圖的區(qū)別:狀態(tài)機(jī)圖與交互圖的區(qū)別: 交互圖不顯示對象所有可能的交互圖不顯示對象所有可能的動態(tài)動態(tài)行為,只顯示特定交行為,只顯示特定交互(一個具體的用例)中對象的行為?;ィㄒ粋€具體的用例)中對象的行為。狀態(tài)機(jī)圖可以顯示對象所有的狀態(tài)機(jī)圖可以顯示對象所有的動態(tài)動態(tài)行為。行為。狀態(tài)圖機(jī)與活動圖的區(qū)別:狀態(tài)圖機(jī)與活動圖的區(qū)別:狀態(tài)機(jī)圖只建模一個對象的行為,活動圖可以建模多個狀態(tài)機(jī)圖只建模一個對象的行為,活動圖可以建模多個對象的活動對象的活動活動圖中也允許建

5、模特定活動中對象的某個狀態(tài)活動圖中也允許建模特定活動中對象的某個狀態(tài)2022-5-1710狀態(tài)狀態(tài)轉(zhuǎn)換轉(zhuǎn)換事件事件2022-5-17112022-5-1712什么是狀態(tài)(什么是狀態(tài)(state)對象生命期中的某個條件或狀況,在此期間對象將滿足對象生命期中的某個條件或狀況,在此期間對象將滿足某些條件、執(zhí)行某些活動或等待某些事件。某些條件、執(zhí)行某些活動或等待某些事件。理解理解對象在任何時候都會處于某種狀態(tài)中,所有對象都有狀對象在任何時候都會處于某種狀態(tài)中,所有對象都有狀態(tài)。態(tài)。對象所處的狀態(tài)決定了它如何響應(yīng)所檢測到的事件或所對象所處的狀態(tài)決定了它如何響應(yīng)所檢測到的事件或所接收的消息。接收的消息。通

6、常,事件使對象從一個狀態(tài)轉(zhuǎn)向另一個狀態(tài)(即狀態(tài)通常,事件使對象從一個狀態(tài)轉(zhuǎn)向另一個狀態(tài)(即狀態(tài)的轉(zhuǎn)移)的轉(zhuǎn)移)2022-5-17132022-5-1714幾種類型:幾種類型:初態(tài)初態(tài)終態(tài)終態(tài)中間狀態(tài)中間狀態(tài)組合狀態(tài)組合狀態(tài)歷史狀態(tài)歷史狀態(tài)2022-5-1715初態(tài)(初態(tài)(start state)顯示狀態(tài)圖中狀態(tài)機(jī)的執(zhí)行(顯示狀態(tài)圖中狀態(tài)機(jī)的執(zhí)行(execution)的開始。的開始。一個狀態(tài)機(jī)只能有一個初態(tài),因?yàn)槊恳粋€執(zhí)行都是從相一個狀態(tài)機(jī)只能有一個初態(tài),因?yàn)槊恳粋€執(zhí)行都是從相同的地方開始的。同的地方開始的。如果如果一個狀態(tài)機(jī)用多張圖描述,則多一個狀態(tài)機(jī)用多張圖描述,則多張圖用同一個初態(tài);張圖用

7、同一個初態(tài);嵌套狀態(tài)中可以使用新的初態(tài);嵌套狀態(tài)中可以使用新的初態(tài);終態(tài)(終態(tài)(End State)表示一個最后的或者終端狀態(tài);表示一個最后的或者終端狀態(tài);終態(tài)的數(shù)目可以不確定。終態(tài)的數(shù)目可以不確定。NewState2NewState2NewState3NewState3NewState4NewState4NewState3NewState3NewState4NewState4NewStateNewState2022-5-1716中間狀態(tài)的組成:中間狀態(tài)的組成:狀態(tài)名(狀態(tài)名(name)進(jìn)入進(jìn)入/退出動作(退出動作(entry/exit action)內(nèi)部轉(zhuǎn)換(內(nèi)部轉(zhuǎn)換(internal tr

8、ansition)不導(dǎo)致狀態(tài)改變的轉(zhuǎn)換,不會執(zhí)行不導(dǎo)致狀態(tài)改變的轉(zhuǎn)換,不會執(zhí)行 entry 和和 exit 動作。動作。子狀態(tài)(子狀態(tài)(substate)嵌套在另外一個狀態(tài)中的狀態(tài)。嵌套在另外一個狀態(tài)中的狀態(tài)。延遲事件(延遲事件(deferred event)延遲到下一狀態(tài)中處理的事件。延遲到下一狀態(tài)中處理的事件。lightinglightingentry/ turnOnentry/ turnOndo/ blankFiveTimesdo/ blankFiveTimesevent power off/ powerSupplySelfevent power off/ powerSupplySelf

9、exit/ turnOffexit/ turnOffevent self/ deferevent self/ defer2022-5-1717延遲事件延遲事件是一種特殊的事件,它是指該事件不會觸發(fā)狀態(tài)的轉(zhuǎn)換,是一種特殊的事件,它是指該事件不會觸發(fā)狀態(tài)的轉(zhuǎn)換,當(dāng)對象處于該狀態(tài)時事件不會丟失,但會被延遲執(zhí)行。當(dāng)對象處于該狀態(tài)時事件不會丟失,但會被延遲執(zhí)行。例如,當(dāng)例如,當(dāng)E-mail程序中正在發(fā)送第一封郵件時,用戶下程序中正在發(fā)送第一封郵件時,用戶下達(dá)發(fā)送第二封郵件執(zhí)令就會被延遲,但第一封郵件發(fā)送達(dá)發(fā)送第二封郵件執(zhí)令就會被延遲,但第一封郵件發(fā)送完成后,這封郵件就會被發(fā)送。這種事件就屬于延遲事完成后

10、,這封郵件就會被發(fā)送。這種事件就屬于延遲事件件2022-5-1718含有子狀態(tài)的狀態(tài)被稱為復(fù)合(組合)狀態(tài)。含有子狀態(tài)的狀態(tài)被稱為復(fù)合(組合)狀態(tài)。2022-5-1719順序復(fù)合狀態(tài)圖(表示方法順序復(fù)合狀態(tài)圖(表示方法1)2022-5-1720順序復(fù)合狀態(tài)圖(表示方法順序復(fù)合狀態(tài)圖(表示方法2)2022-5-1721并發(fā)復(fù)合狀態(tài)圖并發(fā)復(fù)合狀態(tài)圖2022-5-1722將子狀態(tài)機(jī)單獨(dú)定義,并對其進(jìn)行命名(通常以大將子狀態(tài)機(jī)單獨(dú)定義,并對其進(jìn)行命名(通常以大寫字母開頭),然后在需要使用的地方來引用它寫字母開頭),然后在需要使用的地方來引用它 2022-5-1723例:例:2022-5-1724His

11、tory state一種偽狀態(tài)。可以存儲退出組合狀態(tài)時所處的子狀態(tài),一種偽狀態(tài)??梢源鎯ν顺鼋M合狀態(tài)時所處的子狀態(tài),則返回組合狀態(tài)時可以直接回到到相應(yīng)的子狀態(tài)。則返回組合狀態(tài)時可以直接回到到相應(yīng)的子狀態(tài)。power power offoffpower onpower onplay no cd play no cd runningrunningplayingplayingpausingpausingH HplayingplayingplayplaypausingpausingH Hcloseclosepausepauseplayplaycloseclosestopstop2022-5-1725例

12、例當(dāng)從狀態(tài)當(dāng)從狀態(tài)“結(jié)賬結(jié)賬”和和“顯示購物車顯示購物車”返回子狀態(tài)返回子狀態(tài)“顯示顯示索引信息索引信息”時,將進(jìn)入的是離開時的歷史狀態(tài)。時,將進(jìn)入的是離開時的歷史狀態(tài)。也就是說,轉(zhuǎn)到購物或結(jié)賬區(qū)之后,再回到也就是說,轉(zhuǎn)到購物或結(jié)賬區(qū)之后,再回到“瀏覽目錄瀏覽目錄”的頁面時,其中的內(nèi)容是不變的,仍然保留原來的信息。的頁面時,其中的內(nèi)容是不變的,仍然保留原來的信息。 2022-5-1726入口點(diǎn)入口點(diǎn)狀態(tài)內(nèi)的一個外部可見的偽狀態(tài),外部轉(zhuǎn)換可以將它作狀態(tài)內(nèi)的一個外部可見的偽狀態(tài),外部轉(zhuǎn)換可以將它作為目標(biāo),從而被有效連接到指定狀態(tài)上。為目標(biāo),從而被有效連接到指定狀態(tài)上。出口點(diǎn)出口點(diǎn)狀態(tài)內(nèi)的一個外部可

13、見的偽狀態(tài),外部轉(zhuǎn)換可以將它作狀態(tài)內(nèi)的一個外部可見的偽狀態(tài),外部轉(zhuǎn)換可以將它作為源,代表狀態(tài)內(nèi)的一個終點(diǎn)。為源,代表狀態(tài)內(nèi)的一個終點(diǎn)。2022-5-1727Transition兩個狀態(tài)之間的一種關(guān)系,表示對象在第一個狀態(tài)中執(zhí)兩個狀態(tài)之間的一種關(guān)系,表示對象在第一個狀態(tài)中執(zhí)行一定的動作,并在某個特定事件發(fā)生而且滿足某個條行一定的動作,并在某個特定事件發(fā)生而且滿足某個條件時進(jìn)入第二個狀態(tài)。件時進(jìn)入第二個狀態(tài)。每個轉(zhuǎn)換只允許一個事件,一個每個轉(zhuǎn)換只允許一個事件,一個事件只允許一個動作事件只允許一個動作轉(zhuǎn)換的五要素轉(zhuǎn)換的五要素源狀態(tài)源狀態(tài)目標(biāo)狀態(tài)目標(biāo)狀態(tài)觸發(fā)事件觸發(fā)事件監(jiān)護(hù)條件監(jiān)護(hù)條件動作動作2022

14、-5-1728轉(zhuǎn)換類型轉(zhuǎn)換類型描述描述語法語法外部轉(zhuǎn)換外部轉(zhuǎn)換 對事件做出響應(yīng),引起狀態(tài)變化或?qū)κ录龀鲰憫?yīng),引起狀態(tài)變化或自身轉(zhuǎn)換,同時引發(fā)一個特定動作,如自身轉(zhuǎn)換,同時引發(fā)一個特定動作,如果離開或進(jìn)入狀態(tài)將引發(fā)進(jìn)入轉(zhuǎn)換、離果離開或進(jìn)入狀態(tài)將引發(fā)進(jìn)入轉(zhuǎn)換、離開轉(zhuǎn)換開轉(zhuǎn)換事件事件(參數(shù)參數(shù))監(jiān)護(hù)條監(jiān)護(hù)條件件/活動活動內(nèi)部轉(zhuǎn)換內(nèi)部轉(zhuǎn)換 對事件做出響應(yīng),并執(zhí)行一個特定對事件做出響應(yīng),并執(zhí)行一個特定的活動,但并不引起狀態(tài)變化或進(jìn)入轉(zhuǎn)的活動,但并不引起狀態(tài)變化或進(jìn)入轉(zhuǎn)換、離開轉(zhuǎn)換換、離開轉(zhuǎn)換事件事件(參數(shù)參數(shù))監(jiān)護(hù)條監(jiān)護(hù)條件件/活動活動進(jìn)入轉(zhuǎn)換進(jìn)入轉(zhuǎn)換 當(dāng)進(jìn)入某一狀態(tài)時,執(zhí)行相應(yīng)活動當(dāng)進(jìn)入某一狀態(tài)時,

15、執(zhí)行相應(yīng)活動entry/活動活動退出轉(zhuǎn)換退出轉(zhuǎn)換 當(dāng)離開某一狀態(tài)時,執(zhí)行相應(yīng)活動當(dāng)離開某一狀態(tài)時,執(zhí)行相應(yīng)活動exit/活動活動2022-5-1729進(jìn)入和退出轉(zhuǎn)換:進(jìn)入和退出轉(zhuǎn)換:當(dāng)進(jìn)入一個狀態(tài)時,執(zhí)行某個動作;或當(dāng)退出某個狀態(tài)當(dāng)進(jìn)入一個狀態(tài)時,執(zhí)行某個動作;或當(dāng)退出某個狀態(tài)時,執(zhí)行什么動作。這時就可以使用進(jìn)入和退出轉(zhuǎn)換來時,執(zhí)行什么動作。這時就可以使用進(jìn)入和退出轉(zhuǎn)換來表示表示內(nèi)部轉(zhuǎn)換:內(nèi)部轉(zhuǎn)換:用來處理一些不離開該狀態(tài)的事件用來處理一些不離開該狀態(tài)的事件2022-5-1730發(fā)送成功發(fā)送成功發(fā)送失敗發(fā)送失敗2022-5-1731Event是對一個時間和空間上占有一定位置的有意義的事情的是對

16、一個時間和空間上占有一定位置的有意義的事情的規(guī)格說明。規(guī)格說明。事件觸發(fā)狀態(tài)的轉(zhuǎn)移事件觸發(fā)狀態(tài)的轉(zhuǎn)移四類主要事件四類主要事件信號事件信號事件調(diào)用事件調(diào)用事件變化事件變化事件時間事件時間事件2022-5-1732信號(信號(signer)事件事件所謂信號,是指由一個對象異步地發(fā)送、并由另外一個所謂信號,是指由一個對象異步地發(fā)送、并由另外一個對象接收的一個已命名的對象。對象接收的一個已命名的對象。信號事件表示對象接收到某個信號。信號事件表示對象接收到某個信號。信號可以作為狀態(tài)機(jī)中一個狀態(tài)轉(zhuǎn)換的動作而被發(fā)送,信號可以作為狀態(tài)機(jī)中一個狀態(tài)轉(zhuǎn)換的動作而被發(fā)送,也可作為交互中一個的消息發(fā)送。也可作為交互中

17、一個的消息發(fā)送。hardwareFaulthardwareFaultRobotFaultRobotFault2022-5-17332022-5-1734調(diào)用(調(diào)用(call)事件事件表示一個操作的調(diào)度。請求調(diào)用另一個對象的操作。表示一個操作的調(diào)度。請求調(diào)用另一個對象的操作。一般是同步調(diào)用。一般是同步調(diào)用。變化(變化(change)事件事件用關(guān)鍵字用關(guān)鍵字When,后面跟布爾表達(dá)式。后面跟布爾表達(dá)式。When(temperature 120) / alerm()2022-5-1735時間(時間(time)事件事件滿足某一時間表達(dá)式的情況的出現(xiàn),例如到達(dá)某一時間滿足某一時間表達(dá)式的情況的出現(xiàn),例如

18、到達(dá)某一時間或經(jīng)過了某一時間段。用關(guān)鍵字或經(jīng)過了某一時間段。用關(guān)鍵字After或或When表示。表示。空閑空閑活動活動after( 2 seconds ) / dropConnectionafter( 2 seconds ) / dropConnectionwhen( 11:35 ) / selfTestwhen( 11:35 ) / selfTest2022-5-1736步驟:步驟:尋找主要的狀態(tài)尋找主要的狀態(tài)確定狀態(tài)之間的轉(zhuǎn)換確定狀態(tài)之間的轉(zhuǎn)換細(xì)化狀態(tài)內(nèi)的活動與轉(zhuǎn)換細(xì)化狀態(tài)內(nèi)的活動與轉(zhuǎn)換用復(fù)合狀態(tài)來展開細(xì)節(jié)用復(fù)合狀態(tài)來展開細(xì)節(jié)2022-5-1737源目標(biāo)源目標(biāo)無預(yù)訂無預(yù)訂部分預(yù)訂部分預(yù)訂預(yù)

19、訂完預(yù)訂完預(yù)訂關(guān)閉預(yù)訂關(guān)閉無預(yù)訂無預(yù)訂預(yù)訂預(yù)訂()不直接轉(zhuǎn)換不直接轉(zhuǎn)換關(guān)閉關(guān)閉()部分預(yù)訂部分預(yù)訂退訂退訂(),使預(yù)訂人使預(yù)訂人=0預(yù)訂預(yù)訂(),無空座無空座關(guān)閉關(guān)閉()預(yù)訂完預(yù)訂完不直接轉(zhuǎn)換不直接轉(zhuǎn)換退訂退訂()關(guān)閉關(guān)閉()預(yù)訂關(guān)閉預(yù)訂關(guān)閉無轉(zhuǎn)換無轉(zhuǎn)換無轉(zhuǎn)換無轉(zhuǎn)換無轉(zhuǎn)換無轉(zhuǎn)換2022-5-1738細(xì)化狀態(tài)內(nèi)的活動與轉(zhuǎn)換細(xì)化狀態(tài)內(nèi)的活動與轉(zhuǎn)換2022-5-1739使用復(fù)合狀態(tài)使用復(fù)合狀態(tài)2022-5-1740用途用途對對象生命周期建模:對對象生命周期建模:主要描述對象能夠響應(yīng)的事件、對這些事件的響以及過去對當(dāng)主要描述對象能夠響應(yīng)的事件、對這些事件的響以及過去對當(dāng)前行為的影響前行為的影響 對反應(yīng)

20、型對象建模:對反應(yīng)型對象建模:這個對象可能處于的穩(wěn)定狀態(tài)、從一個狀態(tài)到另一個狀態(tài)之間這個對象可能處于的穩(wěn)定狀態(tài)、從一個狀態(tài)到另一個狀態(tài)之間的轉(zhuǎn)換所需的觸發(fā)事件,以及每個狀態(tài)改變時發(fā)生的動作的轉(zhuǎn)換所需的觸發(fā)事件,以及每個狀態(tài)改變時發(fā)生的動作 狀態(tài)機(jī)圖既可以用來表示一個業(yè)務(wù)領(lǐng)域的知識,也可以狀態(tài)機(jī)圖既可以用來表示一個業(yè)務(wù)領(lǐng)域的知識,也可以用來描述設(shè)計階段對象的狀態(tài)變遷用來描述設(shè)計階段對象的狀態(tài)變遷2022-5-1741訂單處理系統(tǒng)訂單處理系統(tǒng)取消取消收到貨物收到貨物 齊全齊全 檢查檢查do/ do/ 檢查商品檢查商品 未檢查完未檢查完 / / 取下一個取下一個辦理發(fā)貨辦理發(fā)貨do/ do/ 啟動發(fā)

21、貨啟動發(fā)貨 檢查完,商品齊全檢查完,商品齊全 等待等待 檢查完,缺部分商品檢查完,缺部分商品 收到商品收到商品 部分缺部分缺 取消訂單取消訂單取消取消取消取消已發(fā)貨已發(fā)貨發(fā)貨發(fā)貨2022-5-1742復(fù)合復(fù)合(rose)取消訂單取消訂單已發(fā)貨已發(fā)貨訂單處理訂單處理辦理發(fā)貨辦理發(fā)貨do/ 啟動發(fā)貨do/ 啟動發(fā)貨檢查檢查do/ 檢查商品do/ 檢查商品等待等待辦理發(fā)貨辦理發(fā)貨do/ 啟動發(fā)貨do/ 啟動發(fā)貨發(fā)貨發(fā)貨檢查檢查do/ 檢查商品do/ 檢查商品 未檢查完 / 取下一個 未檢查完 / 取下一個 檢查完,商品齊全 檢查完,商品齊全 等待等待 檢查完,缺部分商品 檢查完,缺部分商品 收到商品

22、 部分缺 收到商品 部分缺 收到貨物 齊全 收到貨物 齊全 取消取消2022-5-1743復(fù)雜圖復(fù)雜圖(售票機(jī))(售票機(jī))簡單的數(shù)字手表表面上有一個顯示屏和兩個設(shè)置按簡單的數(shù)字手表表面上有一個顯示屏和兩個設(shè)置按鈕鈕A和和B,有兩種操作模式:顯示時間和設(shè)定時間,有兩種操作模式:顯示時間和設(shè)定時間。在顯示時間模式下,手表會顯示小時和分鐘,小。在顯示時間模式下,手表會顯示小時和分鐘,小時和分鐘由閃爍的冒號分隔。設(shè)定時間模式有兩種時和分鐘由閃爍的冒號分隔。設(shè)定時間模式有兩種子模式:設(shè)定小時和設(shè)定分鐘。按鈕子模式:設(shè)定小時和設(shè)定分鐘。按鈕A選擇模式,選擇模式,每次按下此按鈕時,模式會連續(xù)前進(jìn):設(shè)定小時、

23、每次按下此按鈕時,模式會連續(xù)前進(jìn):設(shè)定小時、設(shè)定分鐘等。在子模式內(nèi),每次只要按下按鈕設(shè)定分鐘等。在子模式內(nèi),每次只要按下按鈕B,就會撥快小時或分鐘。繪制一個數(shù)字手表的狀態(tài)機(jī)就會撥快小時或分鐘。繪制一個數(shù)字手表的狀態(tài)機(jī)圖。圖。 2022-5-17447.5.1 概述概述7.5.2 組成組成7.5.3活動圖用處活動圖用處7.5.4 實(shí)例實(shí)例2022-5-17452022-5-1746活動圖和交互圖是活動圖和交互圖是UML中對系統(tǒng)動態(tài)方面建模的兩中對系統(tǒng)動態(tài)方面建模的兩種主要形式種主要形式交互圖強(qiáng)調(diào)的是對象到對象的控制流,而活動圖則強(qiáng)調(diào)交互圖強(qiáng)調(diào)的是對象到對象的控制流,而活動圖則強(qiáng)調(diào)的是從活動到活動

24、的控制流的是從活動到活動的控制流 活動圖是一種表述過程基理、業(yè)務(wù)過程以及工作流的技活動圖是一種表述過程基理、業(yè)務(wù)過程以及工作流的技術(shù)。它可以用來對業(yè)務(wù)過程、工作流建模,也可以對用術(shù)。它可以用來對業(yè)務(wù)過程、工作流建模,也可以對用例實(shí)現(xiàn)甚至是程序?qū)崿F(xiàn)來建模例實(shí)現(xiàn)甚至是程序?qū)崿F(xiàn)來建模2022-5-1747存款存款2022-5-17482022-5-1749活動活動決策決策轉(zhuǎn)換轉(zhuǎn)換同步同步泳道泳道(分區(qū)分區(qū))對象流對象流2022-5-1750Activity/ActionSynchronizationBar (Fork)GuardConditionSynchronizationBar (Join)De

25、cisionConcurrent ThreadsTransitionSelect Course add course Check ScheduleCheck Pre-requisitesAssign to CourseResolve ConflictsUpdate ScheduleDelete Course checks completed checks failed delete course 2022-5-1751Activity表示工作流中任務(wù)的執(zhí)行或者職責(zé)。表示工作流中任務(wù)的執(zhí)行或者職責(zé)。也可以表示過程(也可以表示過程(procedure)中語句的執(zhí)行。)中語句的執(zhí)行。初始節(jié)點(diǎn)和活動終

26、點(diǎn)初始節(jié)點(diǎn)和活動終點(diǎn)用一個實(shí)心圓表示初始節(jié)點(diǎn),用一個圓圈內(nèi)加一個實(shí)心用一個實(shí)心圓表示初始節(jié)點(diǎn),用一個圓圈內(nèi)加一個實(shí)心圓來表示活動終點(diǎn)圓來表示活動終點(diǎn)活動節(jié)點(diǎn)活動節(jié)點(diǎn)是活動圖中最主要的元素之一,它用來表示一個活動是活動圖中最主要的元素之一,它用來表示一個活動2022-5-1752Transition當(dāng)一個活動結(jié)束時,控制流就當(dāng)一個活動結(jié)束時,控制流就會馬上傳遞給下一個活動節(jié)點(diǎn)會馬上傳遞給下一個活動節(jié)點(diǎn),在活動圖中稱之為,在活動圖中稱之為“轉(zhuǎn)換轉(zhuǎn)換”,用一條帶箭頭的直線來表示,用一條帶箭頭的直線來表示2022-5-1753Decision根據(jù)不同的分支,根據(jù)不同的分支,轉(zhuǎn)向不同的活動,轉(zhuǎn)向不同的活

27、動,每個轉(zhuǎn)移是一個分每個轉(zhuǎn)移是一個分支。支。用菱形表示的,它用菱形表示的,它有一個進(jìn)入轉(zhuǎn)換,有一個進(jìn)入轉(zhuǎn)換,一個或多個離開轉(zhuǎn)一個或多個離開轉(zhuǎn)換。而每個離開轉(zhuǎn)換。而每個離開轉(zhuǎn)換上都會換上都會有一個監(jiān)護(hù)條件,有一個監(jiān)護(hù)條件,用來表示滿足什么用來表示滿足什么條件的時候執(zhí)行該條件的時候執(zhí)行該轉(zhuǎn)換。轉(zhuǎn)換。enter PINenter PINverify PINverify PIN incorrect incorrect continuecontinue correct correct 2022-5-1754Synchronizations用來建模并發(fā)活動。用來建模并發(fā)活動。包含分叉(包含分叉(fork)

28、和匯合(和匯合(join)。)。接到會議通知接到會議通知安排行程安排行程準(zhǔn)備發(fā)言稿準(zhǔn)備發(fā)言稿參加會議參加會議返回返回接到會議通知接到會議通知安排行程安排行程準(zhǔn)備發(fā)言稿準(zhǔn)備發(fā)言稿參加會議參加會議返回返回2022-5-1755Swimlanes( Partitions )用來將活動分用來將活動分組,顯示活動組,顯示活動的負(fù)責(zé)者。的負(fù)責(zé)者。一個泳道顯示一個泳道顯示一個活動軌跡一個活動軌跡。2022-5-1756Object Flow用來描述活動和活動所創(chuàng)建的(輸出)或所使用(輸入用來描述活動和活動所創(chuàng)建的(輸出)或所使用(輸入)的對象之間的關(guān)系。)的對象之間的關(guān)系。付款付款賬單賬單已付已付2022-

29、5-1757帶對象流的活動圖帶對象流的活動圖詳細(xì)設(shè)計詳細(xì)設(shè)計 活動圖具有廣泛地用途活動圖具有廣泛地用途,在軟件建模中在軟件建模中,活動圖可以用來活動圖可以用來: 1. 描述工作流描述工作流 工作流工作流:也被稱為業(yè)務(wù)流程也被稱為業(yè)務(wù)流程, 屬于業(yè)務(wù)活動的過程屬于業(yè)務(wù)活動的過程,可以可以用活動圖來描述。用活動圖來描述。 2. 描述工程組織過程描述工程組織過程 各種工程組織過程各種工程組織過程,管理過程均可以用活動來描述。管理過程均可以用活動來描述。 3. 描述算法流程描述算法流程 1、李曉在大學(xué)二年級時參加計算機(jī)等級考試。他持自己的身份證和學(xué)生證到學(xué)校的計算機(jī)等級考試管理辦公室報名。工作人員首先

30、檢查李曉的證件,在檢查合格后,交給李曉一份登記表,讓李曉填寫。李曉填好登記表,交給工作人員。工作人員把他的登記表信息錄入計算機(jī)系統(tǒng),并用數(shù)碼相機(jī)給李曉拍照,然后打印計算機(jī)等級考試證,要求李曉繳納報名費(fèi)。李曉繳納報名費(fèi)后,工作人員把考試證和繳費(fèi)收據(jù)交給李曉。分析計算機(jī)等級考試的報名過程,并用活動圖描述報名過程。2、分析醫(yī)院掛號的業(yè)務(wù)過程,用活動圖描述醫(yī)院掛號的業(yè)務(wù)過程 7.17.1狀態(tài)圖概述狀態(tài)圖概述7.27.2狀態(tài)圖基本組成狀態(tài)圖基本組成l狀態(tài)狀態(tài)l轉(zhuǎn)換轉(zhuǎn)換l事件事件7.3 7.3 繪制狀態(tài)機(jī)圖繪制狀態(tài)機(jī)圖7.47.4狀態(tài)機(jī)圖應(yīng)用狀態(tài)機(jī)圖應(yīng)用7.57.5活動圖活動圖l概述概述l組成組成l用途用

31、途用例圖用例圖1 用例用例2 參與者參與者3 用例之間的關(guān)系用例之間的關(guān)系4 用例圖用例圖5 發(fā)現(xiàn)用例發(fā)現(xiàn)用例2022-5-17701. 用例的概念和用例的概念和表示表示 1. 用例的概念和表示用例的概念和表示 用例用例(use case)(use case): : 表示參與者與系統(tǒng)的一次交互表示參與者與系統(tǒng)的一次交互過程。過程。 用例用橢圓表示用例用橢圓表示2022-5-17712. 用例的特點(diǎn)用例的特點(diǎn)2. 用例的特點(diǎn)用例的特點(diǎn) 用例用于描述系統(tǒng)的功能,這個功能是外部使用用例用于描述系統(tǒng)的功能,這個功能是外部使用者看到的系統(tǒng)功能,不反映功能的實(shí)現(xiàn)方式。者看到的系統(tǒng)功能,不反映功能的實(shí)現(xiàn)方式

32、。 用例描述用戶提出的一些可見需求,對應(yīng)一個具用例描述用戶提出的一些可見需求,對應(yīng)一個具體的用戶目標(biāo)。體的用戶目標(biāo)。 用例反映系統(tǒng)與用戶的一次交互過程,應(yīng)該具有用例反映系統(tǒng)與用戶的一次交互過程,應(yīng)該具有交互的信息的傳遞。交互的信息的傳遞。 用例是對系統(tǒng)行為的動態(tài)描述,屬于用例是對系統(tǒng)行為的動態(tài)描述,屬于UML的動態(tài)的動態(tài)建模。建模。 2022-5-17723. 3. 參與者參與者3. 3. 參與者參與者參與者參與者(actor)是外部需要與系統(tǒng)交互的事物。也被)是外部需要與系統(tǒng)交互的事物。也被稱為活動者。稱為活動者。 參與者的三種類型參與者的三種類型 : . 人人:客戶,讀者,庫管員客戶,讀者

33、,庫管員 . 設(shè)備設(shè)備:計算機(jī),磁盤,讀卡機(jī)計算機(jī),磁盤,讀卡機(jī)等等 . 外部系統(tǒng)外部系統(tǒng):上層系統(tǒng)等上層系統(tǒng)等 2022-5-17733. 3. 參與者參與者參與者可以表示為下面三種形式。參與者可以表示為下面三種形式。2022-5-17743. 3. 參與者參與者參與者之間可以有泛化關(guān)系。參與者之間可以有泛化關(guān)系。2022-5-17754. 4. 用例之間的關(guān)系用例之間的關(guān)系4. 用例之間的關(guān)系用例之間的關(guān)系 用例之間可以具有以下幾種關(guān)系:用例之間可以具有以下幾種關(guān)系: . 關(guān)聯(lián)關(guān)系關(guān)聯(lián)關(guān)系 . 泛化關(guān)系泛化關(guān)系 . 包含關(guān)系包含關(guān)系 . 擴(kuò)展關(guān)系擴(kuò)展關(guān)系2022-5-17764. 4. 用

34、例之間的關(guān)系用例之間的關(guān)系1. 關(guān)聯(lián)關(guān)系關(guān)聯(lián)關(guān)系 參與者與用例之間是關(guān)聯(lián)關(guān)系,表示參與者與用參與者與用例之間是關(guān)聯(lián)關(guān)系,表示參與者與用例之間具有使用,交互信息的關(guān)聯(lián)。例之間具有使用,交互信息的關(guān)聯(lián)。2022-5-17774. 4. 用例之間的關(guān)系用例之間的關(guān)系 2. 泛化關(guān)系泛化關(guān)系 參與者與參與者之間,用例與用例之間存在一般參與者與參與者之間,用例與用例之間存在一般與特殊的關(guān)系。與特殊的關(guān)系。2022-5-17784. 4. 用例之間的關(guān)系用例之間的關(guān)系 3. 包含關(guān)系包含關(guān)系 兩個用例之間,一個用例兩個用例之間,一個用例( (基本用例基本用例) )的行為包含的行為包含了另外一個用例了另外一

35、個用例( (包含用例包含用例) )的行為。的行為。 包含關(guān)系用依賴關(guān)系的包含關(guān)系用依賴關(guān)系的構(gòu)造型來表構(gòu)造型來表示。示。2022-5-17794. 4. 用例之間的關(guān)系用例之間的關(guān)系 4. 擴(kuò)展關(guān)系擴(kuò)展關(guān)系 擴(kuò)展關(guān)系表示基本用例在擴(kuò)展點(diǎn)要增加新的行為擴(kuò)展關(guān)系表示基本用例在擴(kuò)展點(diǎn)要增加新的行為或功能,以擴(kuò)展到新用例?;蚬δ?,以擴(kuò)展到新用例。 擴(kuò)展關(guān)系用依賴關(guān)系的擴(kuò)展關(guān)系用依賴關(guān)系的構(gòu)造型來表示構(gòu)造型來表示。2022-5-17805. 用例圖用例圖1). 用例圖的作用用例圖的作用 用例圖用例圖用來描述軟件需求模型中的系統(tǒng)功能,通用來描述軟件需求模型中的系統(tǒng)功能,通過一組用例可以描述軟件系統(tǒng)能夠給用

36、戶提供的功過一組用例可以描述軟件系統(tǒng)能夠給用戶提供的功能。能。 用例圖用例圖可以可以作為整個系統(tǒng)開發(fā)過程中的開發(fā)依據(jù)作為整個系統(tǒng)開發(fā)過程中的開發(fā)依據(jù),指導(dǎo)和驅(qū)動其他模型。,指導(dǎo)和驅(qū)動其他模型。2022-5-17812). 用例圖的形式用例圖的形式2022-5-1782取款用例描述實(shí)例取款用例描述實(shí)例用例用例:取款取款參與者:參與者:儲戶儲戶操作流:操作流: 通過讀卡機(jī),儲戶插入通過讀卡機(jī),儲戶插入ATMATM卡卡 ATMATM系統(tǒng)從卡上讀取銀行系統(tǒng)從卡上讀取銀行IDID、帳號、并驗(yàn)證帳號。、帳號、并驗(yàn)證帳號。 儲戶鍵入密碼,系統(tǒng)檢驗(yàn)密碼。儲戶鍵入密碼,系統(tǒng)檢驗(yàn)密碼。 儲戶按確認(rèn)鍵,輸入取款金額

37、。儲戶按確認(rèn)鍵,輸入取款金額。 ATMATM把帳號和取款金額傳遞給銀行系統(tǒng),取回確認(rèn)信息把帳號和取款金額傳遞給銀行系統(tǒng),取回確認(rèn)信息和帳戶余額。和帳戶余額。 ATMATM輸出現(xiàn)金,并顯示帳戶余額。輸出現(xiàn)金,并顯示帳戶余額。 ATMATM記錄事務(wù)到日志文件。記錄事務(wù)到日志文件。2022-5-1783 某某“遠(yuǎn)程網(wǎng)絡(luò)教學(xué)系統(tǒng)遠(yuǎn)程網(wǎng)絡(luò)教學(xué)系統(tǒng)”的功能需求如下:的功能需求如下: A學(xué)生登錄網(wǎng)站后,可以瀏覽課件、查找課件、學(xué)生登錄網(wǎng)站后,可以瀏覽課件、查找課件、下載課件、觀看教學(xué)視頻。下載課件、觀看教學(xué)視頻。 B學(xué)生需要登錄學(xué)生需要登錄“遠(yuǎn)程網(wǎng)絡(luò)教學(xué)系統(tǒng)遠(yuǎn)程網(wǎng)絡(luò)教學(xué)系統(tǒng)”后才能正后才能正常使用該系統(tǒng)的所

38、有功能。如果忘記密碼,可與通過常使用該系統(tǒng)的所有功能。如果忘記密碼,可與通過“找回密碼找回密碼”功能恢復(fù)密碼。功能恢復(fù)密碼。2022-5-17842 類圖及對象圖類圖及對象圖1 1 類的概念類的概念2 2 類的屬性類的屬性3 3 類的操作類的操作4 4類類的的類型類型5 5類的關(guān)系類的關(guān)系6 6類圖類圖7 7類類圖和代碼圖和代碼2022-5-17851. 類的概念類的概念1. 類的定義類的定義 類類(class): 具有相似結(jié)構(gòu)、行為和關(guān)系的一組對象具有相似結(jié)構(gòu)、行為和關(guān)系的一組對象。 2.2.類的表示類的表示 2022-5-1786類名類名屬性屬性操作操作 3. .類的其他幾種表示形式類的其

39、他幾種表示形式 2022-5-1787 簡化表示簡化表示 縮略表示縮略表示實(shí)體類實(shí)體類界面類界面類控制類控制類4. .類名類名 2022-5-1788 名詞或名詞短語名詞或名詞短語(動詞或動詞短語表示控制類動詞或動詞短語表示控制類) 盡可能用明確、簡短,業(yè)務(wù)領(lǐng)域中事物的名稱盡可能用明確、簡短,業(yè)務(wù)領(lǐng)域中事物的名稱,避免使用抽象、無意義的名詞避免使用抽象、無意義的名詞例如:人,桌子,圖形,匯總例如:人,桌子,圖形,匯總 用英文,第用英文,第1 1個字母大寫個字母大寫例如:例如:Shape, Person, CheckingAccdount 可分為簡單類名,帶路徑類名可分為簡單類名,帶路徑類名例如

40、:例如: CheckingAccdount Banking:CheckingAccdount例如:帳戶,訂單,例如:帳戶,訂單,事物事物2. 類的屬性類的屬性2022-5-1789 1. 屬性的含義屬性的含義 屬性屬性(attribute): 描述類所表示事物的靜態(tài)性質(zhì)。描述類所表示事物的靜態(tài)性質(zhì)。 2.2.屬性的格式屬性的格式 可見性可見性 屬性名屬性名:類型類型 多重性多重性 次序次序 =初始值初始值特性特性+studentName:String=“黎明黎明”#studentBirthDay:Date=1999-10-213. 類的操作類的操作2022-5-1790 1. 操作的含義操作的

41、含義 操作操作(operation): 描述類所表示事物的動態(tài)性質(zhì)。描述類所表示事物的動態(tài)性質(zhì)。 2.2.操作的格式操作的格式 可見性可見性操作名操作名(參數(shù)列表參數(shù)列表):返回類型返回類型特性特性+setName(String:name)+getName():String4. 類的類型類的類型2022-5-1791 邊界類位于系統(tǒng)與外界的交界處邊界類位于系統(tǒng)與外界的交界處, ,承擔(dān)系承擔(dān)系統(tǒng)與外界的信息功能統(tǒng)與外界的信息功能. .1.1.邊界類邊界類2022-5-1792 實(shí)體類對應(yīng)著現(xiàn)實(shí)中的客觀實(shí)物,用來保存實(shí)體類對應(yīng)著現(xiàn)實(shí)中的客觀實(shí)物,用來保存信息,一般對應(yīng)著數(shù)據(jù)表、文件等。信息,一般對

42、應(yīng)著數(shù)據(jù)表、文件等。2.2.實(shí)體類實(shí)體類2022-5-1793 控制類承擔(dān)著事務(wù)處理,控制調(diào)控的控制控制類承擔(dān)著事務(wù)處理,控制調(diào)控的控制作用。作用。3.控制類控制類1) 關(guān)聯(lián)關(guān)聯(lián)2) 泛化泛化3) 依賴依賴4) 實(shí)現(xiàn)實(shí)現(xiàn)2022-5-17Copy right X.Shi,DHU94 關(guān)聯(lián)名關(guān)聯(lián)名導(dǎo)航性導(dǎo)航性關(guān)聯(lián)的角色和多重性關(guān)聯(lián)的角色和多重性受限關(guān)聯(lián)受限關(guān)聯(lián)關(guān)聯(lián)類關(guān)聯(lián)類關(guān)聯(lián)約束關(guān)聯(lián)約束/依賴依賴聚合、組合聚合、組合自反關(guān)聯(lián)自反關(guān)聯(lián)派生關(guān)聯(lián)派生關(guān)聯(lián)2022-5-17Copy right X.Shi,DHU952022-5-17Copy right X.Shi,DHU961 關(guān)聯(lián)關(guān)聯(lián)2022-5-

43、17Copy right X.Shi,DHU97關(guān)聯(lián)的角關(guān)聯(lián)的角色色如果關(guān)聯(lián)名與角色名相同,則不標(biāo)出角色名如果關(guān)聯(lián)名與角色名相同,則不標(biāo)出角色名 關(guān)聯(lián)的多重性關(guān)聯(lián)的多重性關(guān)聯(lián)的角色名關(guān)聯(lián)的角色名箭頭表示關(guān)聯(lián)的導(dǎo)航性,有箭頭表示單向關(guān)聯(lián),箭頭表示關(guān)聯(lián)的導(dǎo)航性,有箭頭表示單向關(guān)聯(lián),如果沒有箭頭一般表示雙向關(guān)聯(lián)如果沒有箭頭一般表示雙向關(guān)聯(lián)public class Document private String title; private byte content; private String description; private User creator;要注意,如果類的屬性已經(jīng)用關(guān)聯(lián)表示,

44、則不需要注意,如果類的屬性已經(jīng)用關(guān)聯(lián)表示,則不需要在屬性列表中列出來,參見要在屬性列表中列出來,參見Document類的圖類的圖示表示示表示1 關(guān)聯(lián)關(guān)聯(lián)2022-5-17Copy right X.Shi,DHU991 關(guān)聯(lián)關(guān)聯(lián)2022-5-17Copy right X.Shi,DHU100通過關(guān)聯(lián)類描述關(guān)聯(lián)的屬性,通過關(guān)聯(lián)類描述關(guān)聯(lián)的屬性,操作,及其它信息。操作,及其它信息。1 關(guān)聯(lián)關(guān)聯(lián)2022-5-17Copy right X.Shi,DHU1011 關(guān)聯(lián)關(guān)聯(lián)2022-5-17Copy right X.Shi,DHU102聚集與組合的區(qū)別聚集與組合的區(qū)別 聚集松散聚集松散, ,組合緊密組合緊

45、密; ; 一個部分事物對象可以屬于多個聚集對象一個部分事物對象可以屬于多個聚集對象, ,但一但一個部分事物對象僅能屬于一個組合對象個部分事物對象僅能屬于一個組合對象; ; 聚集的對象生命周期可以不同聚集的對象生命周期可以不同, ,但組合對象則是但組合對象則是同存同亡。同存同亡。1 關(guān)聯(lián)關(guān)聯(lián)1、計算機(jī)由、計算機(jī)由CPU、內(nèi)存、軟盤、硬盤、顯示器、內(nèi)存、軟盤、硬盤、顯示器、鍵盤、鼠標(biāo)組成,用類圖表示這種關(guān)系。鍵盤、鼠標(biāo)組成,用類圖表示這種關(guān)系。2、舉出一個具有聚合關(guān)系的類圖的例子。、舉出一個具有聚合關(guān)系的類圖的例子。?2022-5-17Copy right X.Shi,DHU1061 關(guān)聯(lián)關(guān)聯(lián)20

46、22-5-17Copy right X.Shi,DHU1071 關(guān)聯(lián)關(guān)聯(lián) “教師教師”和和“學(xué)生學(xué)生”兩個類之間存在授課關(guān)系,兩個類之間存在授課關(guān)系,一個教師可以教授多個學(xué)生,一個學(xué)生可以由一個教師可以教授多個學(xué)生,一個學(xué)生可以由多個教師授課,標(biāo)出這兩個類的關(guān)系。多個教師授課,標(biāo)出這兩個類的關(guān)系。? 采購員從供貨商處訂貨,雙方需要簽訂訂單,采購員從供貨商處訂貨,雙方需要簽訂訂單,一個采購員可以訂多個供貨商的貨品,一個供一個采購員可以訂多個供貨商的貨品,一個供貨商也可以給多個采購員供貨。貨商也可以給多個采購員供貨。 提取這個問題涉及的類,并確定各個類之間提取這個問題涉及的類,并確定各個類之間的關(guān)

47、系。的關(guān)系。?1 關(guān)聯(lián)關(guān)聯(lián)泛化表示泛化表示泛化目的泛化目的繼承繼承多態(tài)多態(tài)抽象類抽象類2022-5-17Copy right X.Shi,DHU1112022-5-17Copy right X.Shi,DHU112注意:注意:泛化關(guān)系除了表示類與類之間的關(guān)系之外,還可以表泛化關(guān)系除了表示類與類之間的關(guān)系之外,還可以表示參與者、用例、包、構(gòu)件、接口等建模元素之間的關(guān)系。示參與者、用例、包、構(gòu)件、接口等建模元素之間的關(guān)系。 2022-5-17Copy right X.Shi,DHU1132022-5-17Copy right X.Shi,DHU1142022-5-17Copy right X.Sh

48、i,DHU115*OLine2022-5-17117依賴含義依賴含義依賴表示依賴表示2022-5-17Copy right X.Shi,DHU1182022-5-17Copy right X.Shi,DHU119依賴的含義依賴的含義 依賴依賴(dependency): 表示兩個元素表示兩個元素X、Y,如果,如果X的變化必然導(dǎo)致的變化必然導(dǎo)致Y的變化,則稱的變化,則稱Y依賴依賴X。 依賴關(guān)系不僅限于類,用例、包、構(gòu)件之間都可以存在依賴關(guān)系依賴關(guān)系不僅限于類,用例、包、構(gòu)件之間都可以存在依賴關(guān)系依賴關(guān)系依賴關(guān)系 從代碼看起從代碼看起 依賴關(guān)系依賴關(guān)系 真的有必要畫出來嗎?真的有必要畫出來嗎? 下面

49、幾個模型圖中,(下面幾個模型圖中,( )能夠正確地表示出)能夠正確地表示出“一個雇員最多有一個經(jīng)理,經(jīng)理可以管理多一個雇員最多有一個經(jīng)理,經(jīng)理可以管理多個雇員,也可以不管理一個雇員個雇員,也可以不管理一個雇員”這樣的意思。這樣的意思。?2022-5-17Copy right X.Shi,DHU123類圖的概念類圖的概念類圖類圖(Class Diagram): 是由類,相關(guān)建模元素,及其是由類,相關(guān)建模元素,及其關(guān)系構(gòu)成的圖,用來描述類之間的靜態(tài)關(guān)系。關(guān)系構(gòu)成的圖,用來描述類之間的靜態(tài)關(guān)系。 類圖在系統(tǒng)中處在核心位置。也是類圖在系統(tǒng)中處在核心位置。也是UML中最為中最為重要的一種圖。重要的一種圖

50、。2022-5-171242022-5-17125對象圖對象圖 看圖回答下面問題看圖回答下面問題類類Student和類和類Course之間是什么關(guān)系?并用文字性之間是什么關(guān)系?并用文字性語言描述該類圖表達(dá)意思語言描述該類圖表達(dá)意思。寫出寫出Student類生成的類生成的java代碼(省略注釋、代碼(省略注釋、get和和set方法)方法)2022-5-17126根據(jù)類圖寫代碼根據(jù)類圖寫代碼2022-5-17127public class A public class A private private intint i; i;private B b;private B b;public void

51、 test1() public void test1() public void A() public void A() public class B public class B private private intint j; j; public void B() public void B() public void test2() public void test2() public class C extends A public class C extends A private private intint k; k;public void C()public void C()

52、public void test3()public void test3()1. 交互圖的概念交互圖的概念2. 順序圖的概念順序圖的概念3. 順序圖樣式和元素順序圖樣式和元素 4. 消息消息 5. 協(xié)作圖的概念協(xié)作圖的概念 6. 協(xié)作圖樣式和元素協(xié)作圖樣式和元素2022-5-17128 1. 交互圖的概念交互圖的概念 交互圖交互圖(interaction): 用來描述對象之間用來描述對象之間,以及對象以及對象與參與者之間的動態(tài)協(xié)作關(guān)系以及協(xié)作過程中行為與參與者之間的動態(tài)協(xié)作關(guān)系以及協(xié)作過程中行為次序的圖形文檔。次序的圖形文檔。 2.2.交互圖的類型交互圖的類型 順序圖,協(xié)作圖順序圖,協(xié)作圖 3

53、. 交互圖的作用交互圖的作用 分析實(shí)現(xiàn)分析實(shí)現(xiàn)用例用例功能所對應(yīng)的功能所對應(yīng)的類類,及類相互之間的,及類相互之間的消息消息聯(lián)系。聯(lián)系。2022-5-17129順序圖順序圖(sequence diagram): 用來描述為了完成確定用來描述為了完成確定事務(wù),對象之間按照時間消息交互的順序關(guān)系。事務(wù),對象之間按照時間消息交互的順序關(guān)系。 2022-5-17130對象對象消息消息生命線生命線控制焦點(diǎn)控制焦點(diǎn) 3. 順序圖樣式和元素順序圖樣式和元素 對象的命名對象的命名 生命線生命線 表示對象存在的時間,對象下面一條虛線表示。表示對象存在的時間,對象下面一條虛線表示。 控制焦點(diǎn)控制焦點(diǎn) 小矩形,表示這

54、個時間對象將執(zhí)行操作。小矩形,表示這個時間對象將執(zhí)行操作。 消息消息 帶箭頭的連線,表示對象之間傳輸?shù)男畔ⅰЪ^的連線,表示對象之間傳輸?shù)男畔ⅰ?022-5-17131 4. 消息消息 4. 消息消息 消息消息:對象之間傳輸?shù)男畔ⅰO⒂幸韵骂愋停簩ο笾g傳輸?shù)男畔?。消息有以下類型?調(diào)用消息調(diào)用消息 異步消息異步消息 返回消息返回消息 阻止消息阻止消息 超時消息超時消息2022-5-17132手機(jī)用戶可通過某個移動公司的網(wǎng)站發(fā)送短信,過程如下:手機(jī)用戶可通過某個移動公司的網(wǎng)站發(fā)送短信,過程如下:用戶先編輯短信,然后確定目標(biāo)號碼,然后確定發(fā)送;服務(wù)用戶先編輯短信,然后確定目標(biāo)號碼,然后確定發(fā)

55、送;服務(wù)器返回顯示一個頁面,要求用戶輸入一個驗(yàn)證碼,此時用戶器返回顯示一個頁面,要求用戶輸入一個驗(yàn)證碼,此時用戶手機(jī)上將接受一個短信,含有一個驗(yàn)證碼,用戶輸入此碼后手機(jī)上將接受一個短信,含有一個驗(yàn)證碼,用戶輸入此碼后,網(wǎng)站才能發(fā)送用戶編輯的短信。驗(yàn)證碼一次有效。用順序,網(wǎng)站才能發(fā)送用戶編輯的短信。驗(yàn)證碼一次有效。用順序圖描述這個場景。圖描述這個場景。2022-5-171335. 協(xié)作圖的概念協(xié)作圖的概念協(xié)作協(xié)作圖圖(collaboration diagram): 用來描述為了完成用來描述為了完成確定事務(wù),各對象之間消息聯(lián)系的結(jié)構(gòu)關(guān)系。確定事務(wù),各對象之間消息聯(lián)系的結(jié)構(gòu)關(guān)系。2022-5-171

56、341. 狀態(tài)圖的概念狀態(tài)圖的概念2. 狀態(tài)圖的要素狀態(tài)圖的要素3. 狀態(tài)圖的作用狀態(tài)圖的作用4. 活動圖的概念活動圖的概念5. 活動圖的用途活動圖的用途2022-5-171351. 狀態(tài)圖的概念狀態(tài)圖的概念 狀態(tài)圖狀態(tài)圖(statechart diagram): 用來描述一個特定的用來描述一個特定的對象所有可能的狀態(tài)對象所有可能的狀態(tài),以及由于各種事件的發(fā)生而引以及由于各種事件的發(fā)生而引起的狀態(tài)之間的轉(zhuǎn)移和變化。起的狀態(tài)之間的轉(zhuǎn)移和變化。 2022-5-17136狀態(tài)圖的例子狀態(tài)圖的例子2022-5-17137一個機(jī)器一個機(jī)器的狀態(tài)圖的狀態(tài)圖: :一個發(fā)貨單一個發(fā)貨單的狀態(tài)圖的狀態(tài)圖: :2022-5-17138狀態(tài)圖狀態(tài)圖: 用來描述

溫馨提示

  • 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

提交評論