第6章 系統(tǒng)動(dòng)態(tài)分析與行為模型_第1頁
第6章 系統(tǒng)動(dòng)態(tài)分析與行為模型_第2頁
第6章 系統(tǒng)動(dòng)態(tài)分析與行為模型_第3頁
第6章 系統(tǒng)動(dòng)態(tài)分析與行為模型_第4頁
第6章 系統(tǒng)動(dòng)態(tài)分析與行為模型_第5頁
已閱讀5頁,還剩43頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、動(dòng)態(tài)分析動(dòng)態(tài)分析序列圖等序列圖等需求捕獲需求捕獲用例圖用例圖靜態(tài)分析靜態(tài)分析類圖、對(duì)象圖類圖、對(duì)象圖 交互圖交互圖對(duì)象之間的合作在UML里被稱作交互。 交互體現(xiàn)了對(duì)象之間的作用、對(duì)象之間的聯(lián)系。序列(順序、時(shí)序)圖(Sequence Diagram)協(xié)作圖(Collabboration Diagram) 行為圖行為圖主要用來設(shè)計(jì)程序的行為。狀態(tài)圖(Statechart Diagram)活動(dòng)圖(Activity Diagram) 序列圖 協(xié)作圖 狀態(tài)圖 活動(dòng)圖動(dòng)態(tài)分析模型包括下列模型圖:動(dòng)態(tài)分析模型包括下列模型圖:注重表達(dá)交互作用的時(shí)間順序,沒有明確表示對(duì)象間的關(guān)系。 (的交互或?qū)ο笸獠康慕换バ?/p>

2、為)協(xié)作圖注重表示對(duì)象間的關(guān)系,時(shí)間順序可以從消息的序號(hào)中獲得。狀態(tài)圖主要描述系統(tǒng)行為的結(jié)果(表示的狀態(tài)變化)活動(dòng)圖主要描述系統(tǒng)動(dòng)態(tài)行為的過程。 日常生活中,事物狀態(tài)的變化無處不在。 面向?qū)ο蠓治雠c設(shè)計(jì)中,對(duì)象的狀態(tài)、狀態(tài)的轉(zhuǎn)換、觸發(fā)狀態(tài)轉(zhuǎn)換的事件、對(duì)象對(duì)事件的響應(yīng)(即事件的行為)等都可以用狀態(tài)圖來描述。 狀態(tài)圖通過建立類對(duì)象的生命周期模型來描述對(duì)象隨時(shí)間變化的動(dòng)態(tài)行為。 狀態(tài)圖(statechart diagram):用來描述一個(gè)特定的對(duì)象所有可能的狀態(tài),以及由于各種事件的發(fā)生而引起狀態(tài)之間的轉(zhuǎn)移和變化。一個(gè)機(jī)器的狀態(tài)圖 狀態(tài)圖清晰地描述了狀態(tài)轉(zhuǎn)換時(shí)所必須觸發(fā)的事件、監(jiān)護(hù)條件和動(dòng)作等影響轉(zhuǎn)換

3、的因素,有利于程序員避免程序中非法事件的進(jìn)入。 狀態(tài)圖清晰地描述了狀態(tài)之間的轉(zhuǎn)換順序,通過狀態(tài)的轉(zhuǎn)換順序可以清晰看出事件的執(zhí)行順序。 清晰的時(shí)間順序有利于程序員在開發(fā)程序時(shí)避免出現(xiàn)事件錯(cuò)序的情況。 狀態(tài)圖通過判定可以更好地描述工作流因?yàn)椴煌臈l件發(fā)生的分支。由狀態(tài)、轉(zhuǎn)換、判定、同步、事件等組成: 狀態(tài)指的是對(duì)象在其生命周期中的一種狀況,處于某個(gè)特定狀態(tài)中的對(duì)象必然會(huì)滿足某些條件、執(zhí)行某些動(dòng)作或者是等待某些事件。 狀態(tài)用于對(duì)實(shí)體在其生命周期的各種狀況進(jìn)行建模,一個(gè)實(shí)體總是在有限的一段時(shí)間內(nèi)保持一個(gè)狀態(tài)。 狀態(tài)圖中的狀態(tài)一般是給定對(duì)象中的一組屬性值。這組屬性值是對(duì)象所有屬性的子集。 若對(duì)象的任何一

4、個(gè)屬性值都是一個(gè)狀態(tài),全部的狀態(tài)構(gòu)成一個(gè)龐大的狀態(tài)空間。 事實(shí)上,并非狀態(tài)空間的每一個(gè)狀態(tài)都是值得關(guān)注的。 在對(duì)系統(tǒng)建模時(shí),我們只關(guān)心那些明顯影響對(duì)象行為的屬性,以及由它們表達(dá)的對(duì)象狀態(tài),而不理睬那些與對(duì)象行為無關(guān)的狀態(tài)。 例:飛機(jī)對(duì)象 所有飛機(jī)的屬性值的笛卡兒積構(gòu)成了“飛機(jī)”對(duì)象龐大的狀態(tài)空間飛機(jī)每飛行飛機(jī)每飛行1km1km,就處,就處于一個(gè)全新的狀態(tài)于一個(gè)全新的狀態(tài) 飛機(jī)每使用飛機(jī)每使用1 1年就會(huì)處年就會(huì)處于一個(gè)新的狀態(tài)于一個(gè)新的狀態(tài) 顯然,列出對(duì)象的全部狀態(tài)并繪制狀態(tài)圖是不現(xiàn)實(shí)的(也沒有必要)。 建模的時(shí)候只需要考慮與對(duì)象當(dāng)前行為有關(guān)的屬性狀態(tài)即可。: 累計(jì)飛行10000km與1500

5、0km在行為上并無實(shí)質(zhì)性的區(qū)別 建模時(shí),也許系統(tǒng)關(guān)心的只是飛機(jī)的當(dāng)前使用狀況,如飛行、著陸、機(jī)場(chǎng)停放、維修和報(bào)廢等。 可以根據(jù)飛機(jī)使用的幾種情況將建立狀態(tài)圖,其中可以建立“飛行”、“著陸”、“機(jī)場(chǎng)停放”、“維修”、“報(bào)廢”等幾種狀態(tài)。初始狀態(tài)終止?fàn)顟B(tài)簡(jiǎn)單狀態(tài)添加動(dòng)作的狀態(tài) 狀態(tài)名指的是狀態(tài)的名字。 每個(gè)狀態(tài)圖都應(yīng)該有一個(gè)初始狀態(tài),它代表狀態(tài)圖的起始位置。初始狀態(tài)是一個(gè)偽狀態(tài)(一個(gè)和普通狀態(tài)有鏈接的假狀態(tài)),對(duì)象不可能保持在初始狀態(tài)。 在UML中一個(gè)狀態(tài)圖只能有一個(gè)初始狀態(tài)。 終止?fàn)顟B(tài)是一個(gè)狀態(tài)圖的終點(diǎn),一個(gè)狀態(tài)圖可以擁有一個(gè)或者多個(gè)終止?fàn)顟B(tài)。對(duì)象可以保持在終止?fàn)顟B(tài),但終止?fàn)顟B(tài)不可能有任何形式的

6、觸發(fā)轉(zhuǎn)換。 有些特殊的狀態(tài)圖,可以沒有終止?fàn)顟B(tài)。 在特定的狀態(tài)下對(duì)象可執(zhí)行的動(dòng)作包括: 1. entry/EntryAction 進(jìn)入狀態(tài)時(shí)執(zhí)行的動(dòng)作 2.do/DoAction 狀態(tài)激活時(shí)一直執(zhí)行的動(dòng)作 3.exit/ExitAction 離開狀態(tài)時(shí)執(zhí)行的動(dòng)作 嵌套在另外一個(gè)狀態(tài)中的狀態(tài)稱之為子狀態(tài)(sub-state),一個(gè)含有子狀態(tài)的狀態(tài)被稱作組合狀態(tài)(Compound States)。 歷史狀態(tài)是一個(gè)偽狀態(tài),其目的是記住從組合狀態(tài)中退出時(shí)所處的子狀態(tài),當(dāng)再次進(jìn)入組合狀態(tài),可直接進(jìn)入這個(gè)子狀態(tài),而不是再次從組合狀態(tài)的初態(tài)開始。 歷史狀態(tài)分為兩種: 淺歷史狀態(tài) 只記住最外層組合狀態(tài)歷史 淺

7、歷史狀態(tài) 可以記錄任意深度的組合狀態(tài)的歷史。 同步是為了說明并發(fā)工作流的分支與匯合。 一個(gè)事件的發(fā)生能觸發(fā)狀態(tài)的轉(zhuǎn)換。UML中的事件有:調(diào)用事件、信號(hào)事件、改變事件、時(shí)間事件。 調(diào)用事件(CallEvent) 調(diào)用事件至少涉及兩個(gè)及以上的對(duì)象,一個(gè)對(duì)象請(qǐng)求調(diào)用另一個(gè)對(duì)象的操作。 調(diào)用事件一般為同步調(diào)用,也可以是異步調(diào)用。如果調(diào)用者需等待操作的完成,則是同步調(diào)用,否則是異步調(diào)用。 信號(hào)事件(signalEvent) 信號(hào)是作為兩個(gè)對(duì)象之間的通信媒介的命名的實(shí)體,信號(hào)的接收是接收對(duì)象的一個(gè)事件。 發(fā)送對(duì)象明確地創(chuàng)建并初始化一個(gè)信號(hào)實(shí)例并把它送到一個(gè)或一組對(duì)象。 改變事件(ChangeEvent)

8、改變事件指的是依賴與特定屬性值的布爾表達(dá)式所表示的條件滿足時(shí),事件發(fā)生改變。 如: when(number申購交易銀行折扣 申購交易-銀行分行基金管理費(fèi) 申購交易-基金庫存單位數(shù) 申購交易 活動(dòng)圖描述滿足用例要求所要進(jìn)行的活動(dòng)以及活動(dòng)間的約束關(guān)系,有利于識(shí)別并行活動(dòng)?;顒?dòng)圖是一種特殊的狀態(tài)圖,它對(duì)于系統(tǒng)的功能建模特別重要,強(qiáng)調(diào)對(duì)象間的控制流程。活動(dòng)圖是一種表述過程基理、業(yè)務(wù)過程以及工作流的技術(shù)。它可以用來對(duì)業(yè)務(wù)過程、工作流建模,也可以對(duì)用例實(shí)現(xiàn)甚至是程序?qū)崿F(xiàn)來建模 流程圖著重描述處理過程,它的主要控制結(jié)構(gòu)是順序、分支和循環(huán),各個(gè)處理過程之間有嚴(yán)格的順序和時(shí)間關(guān)系。 活動(dòng)圖描述的是對(duì)象活動(dòng)的順序關(guān)系所遵循的規(guī)則,它著重表現(xiàn) 的是系統(tǒng)的行為,而非系統(tǒng)的處理過程

溫馨提示

  • 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)論