系統(tǒng)分析與設(shè)計(jì)IBM-64狀態(tài)圖基礎(chǔ)課件_第1頁
系統(tǒng)分析與設(shè)計(jì)IBM-64狀態(tài)圖基礎(chǔ)課件_第2頁
系統(tǒng)分析與設(shè)計(jì)IBM-64狀態(tài)圖基礎(chǔ)課件_第3頁
系統(tǒng)分析與設(shè)計(jì)IBM-64狀態(tài)圖基礎(chǔ)課件_第4頁
系統(tǒng)分析與設(shè)計(jì)IBM-64狀態(tài)圖基礎(chǔ)課件_第5頁
已閱讀5頁,還剩9頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

狀態(tài)圖(State

Chart/State

Machine

Diagram)狀態(tài)圖用來表示一個(gè)類的全生命周期過程1狀態(tài)圖建模建模元素狀態(tài)事件狀態(tài)轉(zhuǎn)移特殊的狀態(tài)初始狀態(tài)、結(jié)束狀態(tài)組合狀態(tài)、嵌套狀態(tài)歷史狀態(tài)狀態(tài)圖的繪制empty1

itemPush()Pop()new()…2狀態(tài)定義:一個(gè)對(duì)象生命期的一個(gè)階段,該階段中對(duì)象要滿足一些特定的條件、執(zhí)行特定的活動(dòng)或等待某個(gè)(些)事件的發(fā)生體現(xiàn)為對(duì)象屬性的取值包含狀態(tài)入口或出口行為描述從不同的抽象層次分析對(duì)象,因此其狀態(tài)是可嵌套(組合)的在給定的場(chǎng)景下,對(duì)象狀態(tài)是確定的,可滿足或不滿足某個(gè)狀態(tài)3事件定義:可以觸發(fā)對(duì)象狀態(tài)改變的外部刺激,也就是消息的發(fā)出與接收決定狀態(tài)遷移何時(shí)發(fā)生4狀態(tài)遷移定義:是狀態(tài)之間的關(guān)系,當(dāng)發(fā)生一個(gè)事件,條件滿足時(shí)就會(huì)發(fā)生從源狀態(tài)(Source

State)到目標(biāo)狀態(tài)的轉(zhuǎn)變(Object

State)當(dāng)且僅當(dāng)遷移條件滿足時(shí)才能觸發(fā)狀態(tài)遷移每個(gè)狀態(tài)遷移都對(duì)應(yīng)一個(gè)觸發(fā)“事件”同時(shí)還需要滿足一定的“警戒條件(Guard

Condition)”當(dāng)觸發(fā)事件發(fā)生,或相關(guān)警戒條件滿足時(shí),進(jìn)行相應(yīng)的狀態(tài)遷移狀態(tài)遷移的過程會(huì)伴隨相關(guān)的對(duì)象操作5UML狀態(tài)圖中的狀態(tài)(State)一個(gè)狀態(tài)表示在某個(gè)時(shí)間段內(nèi)某個(gè)陳述是正確的例如.

(budget

-expenses)

>0某個(gè)動(dòng)作正在執(zhí)行或者在某個(gè)時(shí)間等待觸發(fā)例如.

檢查訂單商品的存貨(checking

inventory

for

order

items)例如.

等待缺貨產(chǎn)品到貨(waiting

for

arrival

of

a

missing

items)狀態(tài)相關(guān)的活動(dòng)類型do/activity只要處于這個(gè)狀態(tài),某個(gè)活動(dòng)就會(huì)一直執(zhí)行,直到離開這個(gè)狀態(tài)entry/action and exit/action當(dāng)進(jìn)入(/離開)某個(gè)狀態(tài)時(shí)執(zhí)行的動(dòng)作include/stateDiagramName調(diào)用另一個(gè)狀態(tài)圖,形成嵌套的狀態(tài)圖狀態(tài)名稱狀態(tài)活動(dòng)初始狀態(tài)結(jié)束狀態(tài)6遷移包括五部分:源狀態(tài)(source

state)、觸發(fā)事件(event

trigger),

警戒條件(guard

condition),動(dòng)作(action),

目標(biāo)狀態(tài)(targetstate).對(duì)于給定的狀態(tài),最終只能產(chǎn)生一個(gè)遷移,因此從相同的狀態(tài)出來的、事件相同的幾個(gè)遷移之間的條件應(yīng)該是互斥的。UML狀態(tài)圖中的遷移(Transitions)源狀態(tài)目標(biāo)狀態(tài)事件名[‘(’用逗號(hào)分隔的參數(shù)表‘)’][警戒條件]‘/’動(dòng)作表達(dá)式7UML狀態(tài)圖中的事件(Event)事件(Events)的意義在于系統(tǒng)需要了解正在發(fā)生什么狀態(tài)圖中,事件僅需和系統(tǒng)或當(dāng)前建模的對(duì)象相關(guān)從系統(tǒng)角度出發(fā),事件必須建模成一個(gè)瞬間可完成的動(dòng)作例如.

完成工作,考試未通過,系統(tǒng)崩潰在OOD(面向?qū)ο笤O(shè)計(jì))中通過傳遞消息的方式實(shí)現(xiàn)事件在UML中,有四種類型的事件變更事件(Change

events)

,當(dāng)給定條件成立時(shí)就會(huì)發(fā)生變更事件調(diào)用事件(Call

events)

,當(dāng)給定對(duì)象的操作被調(diào)用執(zhí)行時(shí)會(huì)發(fā)生調(diào)用事件時(shí)間事件(Elapsed-time

events)

,表明時(shí)間段過去,或某個(gè)特殊時(shí)間點(diǎn)的觸發(fā)信號(hào)事件(Signal

events)

,當(dāng)給定對(duì)象收到某實(shí)時(shí)信號(hào)8變更事件(Change

event):

通過布爾表達(dá)式中變量的改變,使得表示式成立的事件,通過”when”關(guān)鍵字進(jìn)行提示例:變更事件和警戒條件(guardcondition)的區(qū)別:警戒條件只在所相關(guān)的事件出現(xiàn)后計(jì)算一次,如果值為false,則不進(jìn)行狀態(tài)轉(zhuǎn)移。UML狀態(tài)圖中的事件(Event)——變更(Change)事件9調(diào)用事件(Call

event):

在這一類事件中,狀態(tài)遷移的動(dòng)作會(huì)調(diào)用對(duì)象的方法語法格式如下: 事件名(

[逗號(hào)分隔的參數(shù)列表])其中參數(shù)列表中的參數(shù)格式為: 參數(shù)名:類型例:UML狀態(tài)圖中的事件(Event)——調(diào)用(Call)事件10時(shí)間事件(Time

event):

通過時(shí)間表達(dá)式是否滿足來表示事件,例如一個(gè)絕對(duì)時(shí)間點(diǎn)的到來,或者經(jīng)過時(shí)間段過去后對(duì)象進(jìn)入一個(gè)新狀態(tài)用關(guān)鍵字after或when表示例:UML狀態(tài)圖中的事件(Event)——時(shí)間(Time)事件11信號(hào)事件(Signal

event):

表示接受一個(gè)對(duì)象發(fā)送的信號(hào)(信息)的事件,有可能引發(fā)狀態(tài)遷移(狀態(tài)改變)語法格式如下:事件名(

[逗號(hào)分隔的參數(shù)列表])信號(hào)事件與調(diào)用事件的區(qū)別:信號(hào)事件是一個(gè)異步事件,調(diào)用事件一般是一個(gè)同步事件。UML狀態(tài)圖中的事件(Event)——信號(hào)(Signal)事件12動(dòng)作是在狀態(tài)內(nèi)部或者狀態(tài)間遷移時(shí)執(zhí)行的原子操作兩種特殊的動(dòng)作:入口動(dòng)作(entry

action)和出口動(dòng)作(exit

action)Entry動(dòng)作:進(jìn)入狀態(tài)時(shí)執(zhí)行的活動(dòng),格式如下:‘entry’

‘/’action-expressionExit動(dòng)作:退出狀態(tài)時(shí)執(zhí)行的活動(dòng),格式如下:‘exit’

‘/’action-expression(其中action-expression

可以引用對(duì)象本身的屬性和輸入事件的參數(shù))UML狀態(tài)圖中的動(dòng)作(Action)13OrderStartgetnext

item[Notallitems

checked][Allitemschecked

&&

Checking all

items

available] Dispatching

do:

check

item do:initiate

deliveryWaitingItem

Received[someitemsnotin

stock

溫馨提示

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

評(píng)論

0/150

提交評(píng)論