




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第3章系統動態分析建模本章目錄3.1活動和狀態分析3.2 時序與協作分析3.3 過程建模本章小結和習題動態模型用來描述系統的動態行為,可分為狀態模型和交互模型,顯示對象在系統運行期間不同時刻的狀態、以及其動態交互與協作。在UML中,用順序圖和通信圖為交互模型建模,用活動圖和狀態圖為狀態模型建模。§3.1活動和狀態分析1.活動圖概述活動圖是用來描述達到一個目標所實施一系列活動的過程,描述了系統的動態特征?;顒訄D類似結構化程序設計中的流程圖,不同之處在于它支持并行活動。在UML中,活動圖主要是由起點、終點、活動、分支、分叉與匯合、泳道等元素組成?!?.1.1活動和狀態的確定2.活動圖組成元素⑴起點和終點⑵活動在活動圖中,可以包含動作狀態和活動狀態。動作是由可執行的、不可分的計算組成,這些計算可以引起系統的狀態發生變化或者返回一個值?;顒訝顟B表示工作流過程中命令的執行或活動的執行,用于等待計算處理工作的完成。與動作狀態相反,活動狀態是非原子的、可以分解的,也就是說活動狀態是可以被打斷的。§3.1.1活動和狀態的確定2.活動圖組成元素⑶轉移⑷分支與監護條件⑸分叉和匯合§3.1.1活動和狀態的確定2.活動圖組成元素⑹泳道泳道代表對象對活動的職責,通過帶泳道的活動圖,可以清楚地了解活動的過程、動作的執行者、以及活動與對象之間的合作。§3.1.1活動和狀態的確定2.活動圖組成元素⑺對象流將對象放在活動圖中,并用箭頭將對象和產生、破壞或修改該對象的活動或轉移連接起來,這被稱作對象流。對象流代表了對象在控制流中的參與?!?.1.1活動和狀態的確定1.活動圖建模步驟一、業務過程建模步驟
⑴
確定活動圖描述的范圍。
⑵
確定活動對象。
⑶
確定活動(動作)序列。
⑷
確定控制流的轉移。
⑸
確定工作流中涉及的重要對象。§3.1.2活動和狀態圖的建造P811.活動圖建模步驟二、操作建模步驟
⑴
確定相關元素。
⑵
確定邊界范圍。
⑶
確定活動(動作)序列。
⑷
如果需要,使用分支和合并來描述條件路徑和迭代。
⑸
如果操作屬于主動類,在需要時可以用分叉和匯合來描述并發的控制流?!?.1.2活動和狀態圖的建造1.活動圖建模示例§3.1.3活動和狀態的建模示例P8513活動圖的應用
構建活動圖首先需要找到業務過程中的活動,可以通過以下的問題來幫助尋找業務過程中的活動。
該業務過程需要完成哪些工作步驟。每個參與者都將執行哪些操作。有沒有哪些事件啟動了哪些工作步驟。例:
旅客登機的過程一般如下:旅客進入候機大廳后,首先要出示機票和身份證號碼,當身份核對無誤時,可以辦理登記手續,得到登機牌;如果有行李,需要辦理行李托運手續;通過安檢后就可以登機了。14活動圖的應用根據這個過程我們可以得到下面一些主要的活動:領取登機牌:旅客進入候機大廳后,輸入自己的身份證號碼,領取登機牌。辦理行李托運:如果旅客隨身攜帶的行李超重,則需要辦理行李托運手續,通過安檢:旅客憑登機牌進行安全檢查,通過安檢后可以準備登機。旅客登機:旅客按照指示,到指定入口處登機。
辦理登機手續的活動圖:151.活動圖建模示例§3.1.3活動和狀態的建模示例例:過程:一個咨詢公司會見一個客戶時的業務過程如下:1、公司業務員打電話給客戶,確立約定。2、如果約定在公司內,公司技術人員為會議準備會議室。3、如果約定在公司之外,咨詢顧問就要用電腦準備一份陳述報告4、咨詢顧問和業務員與客戶在約定的時間和地點見面。5、業務員隨后給他們準備好會議用紙6、如果會議產生了一個問題陳述,咨詢顧問就根據問題陳述建立編寫一個提案并把該提案發給客戶?!締栴}】請設計上述過程的活動圖?!?.1.3活動和狀態的建模示例2.狀態圖概述狀態圖描述系統中類和對象隨時間變化的動態行為。狀態圖通過狀態與狀態轉換來描述用例、協作和方法的動態行為?!?.1.1活動和狀態的確定4.狀態圖結構元素⑴起始狀態與終止狀態⑵狀態在顯示狀態詳細組成的圖符中,一般來說,可以列出該狀態要執行的事件和動作,如入口動作、出口動作、內部轉換、延遲事件、內部活動及子狀態等組成部分?!?.1.1活動和狀態的確定4.狀態圖結構元素⑶事件“事件”是指在時間和空間上某點發生的、能夠引起某些動作執行的事情,即任何能夠影響到對象的東西都可以稱為事件,它在某一個時間點上發生,沒有持續時間。在UML狀態圖中,主要包含調用事件、改變事件、信號事件和時間事件四類。⑷轉換轉換是兩個狀態之間的一種關系,表示當一個特定事件出現時,且滿足一定的條件,對象會從第一個狀態(源)進入第二個狀態(目標),并執行一定的動作或活動?!?.1.1活動和狀態的確定4.狀態圖結構元素⑸子狀態與組合狀態歷史狀態:表示上次離開組合狀態時的最后一個子狀態。如果希望轉換激活上次離開組合狀態時的最后一個活動子狀態,則將組合狀態外的這個轉換直接轉移到歷史狀態中。§3.1.1活動和狀態的確定4.狀態圖結構元素⑸子狀態與組合狀態順序子狀態也稱非正交狀態,即其中子狀態之間的關系是互斥的,不能存在兩個或兩個以上的狀態被同時激活?!?.1.1活動和狀態的確定4.狀態圖結構元素⑸子狀態與組合狀態并發子狀態也稱正交子狀態,是一個組合狀態中包含兩個或多個并發執行的子狀態,§3.1.1活動和狀態的確定2.狀態圖建模過程狀態圖模型的基本步驟
⑴
確定狀態圖描述的范圍。
⑵
確定描述主體在其生存期的各種穩定狀態。
⑶
確定狀態的序號。
⑷
對象狀態可能響應的事件。
⑸
確定必要的動作。
⑹
確定高層控制,優化、簡化狀態圖。§3.1.2活動和狀態圖的建造P833.活動圖與狀態圖的對比狀態圖與活動圖會有一些相同的特點:⑴
描述圖符基本一樣。⑵
可以描述一個系統或對象在生存期間的狀態或行為。⑶
可以描述一個系統或對象在多進程操作中的并發行為。⑷
可以用條件分支圖符描述一個系統或對象的行為控制流。最主要的不同點是:(1)觸發一個系統或對象的狀態(活動)發生轉移的機制不同。(2)描述多個對象共同完成一個操作的機制不同?!?.1.2活動和狀態圖的建造2.狀態圖建模示例§3.1.2活動和狀態的建模示例P86可以通過以下幾個方面來尋找轉換事件。
①
哪些事件可以創建或刪除對象。
②
哪些事件可以定義或修改屬性值。
③
哪些事件可以創建或結束與其他對象的關系。
④
哪些事件可以導致對象狀態的轉換。1.順序圖概述順序圖描述的是參與交互的對象及對象之間消息交換的順序,用來表示用例中的行為順序。順序圖可以把用例描述的需求,轉化為進一步、更加正式的精細表達,所以用例常常被細化為一個或多個順序圖。在UML中,順序圖采用二維形式描述各個對象間的交互關系?!?.2.1時序與協作的確定2.順序圖組成元素
⑴
對象
⑵
生命線
⑶
消息§3.2.1時序與協作的確定⑷
順序圖中的結構化控制在UML2.x中引入了交互框架(InteractionFrame),有效地解決了順序圖中各種控制結構的表述問題?!?.2.1時序與協作的確定⑷
順序圖中的結構化控制§3.2.1時序與協作的確定1.順序圖建模步驟
⑴
確定交互范圍及涉及的對象。
⑵
合理安排對象順序
⑶
確定消息及傳遞。§3.2.2時序與協作圖的建造P931.順序圖建模示例§3.2.3時序與協作的建模示例P943.通信圖概述通信圖是一種強調發送和接收消息的對象及其組織結構的交互圖,用以描述對象以及對象之間的交互關系。通訊圖與順序圖一樣,都是用來展示對象間的鏈接及組織結構的交互,但兩者的側重點卻不同。順序圖著重于描述交互的時間順序,而通信圖則側重于描述協作對象間的交互和鏈接?!?.2.1時序與協作的確定P914.通信圖結構元素
⑴
對象
⑵
消息
⑶
鏈§3.2.1時序與協作的確定2.通信圖建模過程
⑴
確定交互范圍及涉及的對象。
⑵
合理安排對象順序
⑶
確定鏈接與消息?!?.2.2時序與協作圖的建造P933.順序圖與通信圖的對比順序圖和通信圖都屬于交互圖,用于描述對象間的動態關系,并且兩者之間可以相互轉化。順序圖和通信圖都有各自不同的建模切入點,順序圖強調消息的時間順序,通信圖強調參與交互的對象的組織。2.通信圖建模示例§3.2.3時序與協作的建模示例P95過程建模概述過程建模以數據流圖為基礎。數據流圖是一種系統模型,它通過描述系統的數據流、以及系統實施的工作或處理過程來為系統建模?!?.3過程建模過程建模的主要任務是繪制數據流圖。數據流圖:由外部實體、處理過程、數據流、數據存儲組成?!?.3.2過程建模的元素1.構造系統上下文數據流圖,確認系統的項目范圍。2.繪制功能分解圖,將系統劃分成邏輯子系統。3.編寫事件響應或用例清單表,以確定并證實系統必須提供響應的業務事件。4.為分解圖中的每個事件添寫處理過程。此時的分解圖可作為系統的概要提綱。5.作為備選,為每個事件構造一個事件圖,并進行驗證。6.通過合并事件圖構造一個或者多個系統圖,幫助顯示系統的“整體視圖”。7.對需要進一步處理細節的事件過程構造基本圖,幫助顯示單個事件的所有基本過程、數據存儲和數據流?!?.3.3過程建模步驟§3.3.3過程建模步驟上下文
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
評論
0/150
提交評論