系統(tǒng)分析設計_第1頁
系統(tǒng)分析設計_第2頁
系統(tǒng)分析設計_第3頁
系統(tǒng)分析設計_第4頁
系統(tǒng)分析設計_第5頁
已閱讀5頁,還剩36頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第3章系統(tǒng)動態(tài)分析建模本章目錄3.1活動和狀態(tài)分析3.2 時序與協(xié)作分析3.3 過程建模本章小結和習題動態(tài)模型用來描述系統(tǒng)的動態(tài)行為,可分為狀態(tài)模型和交互模型,顯示對象在系統(tǒng)運行期間不同時刻的狀態(tài)、以及其動態(tài)交互與協(xié)作。在UML中,用順序圖和通信圖為交互模型建模,用活動圖和狀態(tài)圖為狀態(tài)模型建模。§3.1活動和狀態(tài)分析1.活動圖概述活動圖是用來描述達到一個目標所實施一系列活動的過程,描述了系統(tǒng)的動態(tài)特征。活動圖類似結構化程序設計中的流程圖,不同之處在于它支持并行活動。在UML中,活動圖主要是由起點、終點、活動、分支、分叉與匯合、泳道等元素組成?!?.1.1活動和狀態(tài)的確定2.活動圖組成元素⑴起點和終點⑵活動在活動圖中,可以包含動作狀態(tài)和活動狀態(tài)。動作是由可執(zhí)行的、不可分的計算組成,這些計算可以引起系統(tǒng)的狀態(tài)發(fā)生變化或者返回一個值?;顒訝顟B(tài)表示工作流過程中命令的執(zhí)行或活動的執(zhí)行,用于等待計算處理工作的完成。與動作狀態(tài)相反,活動狀態(tài)是非原子的、可以分解的,也就是說活動狀態(tài)是可以被打斷的。§3.1.1活動和狀態(tài)的確定2.活動圖組成元素⑶轉移⑷分支與監(jiān)護條件⑸分叉和匯合§3.1.1活動和狀態(tài)的確定2.活動圖組成元素⑹泳道泳道代表對象對活動的職責,通過帶泳道的活動圖,可以清楚地了解活動的過程、動作的執(zhí)行者、以及活動與對象之間的合作?!?.1.1活動和狀態(tài)的確定2.活動圖組成元素⑺對象流將對象放在活動圖中,并用箭頭將對象和產(chǎn)生、破壞或修改該對象的活動或轉移連接起來,這被稱作對象流。對象流代表了對象在控制流中的參與?!?.1.1活動和狀態(tài)的確定1.活動圖建模步驟一、業(yè)務過程建模步驟

確定活動圖描述的范圍。

確定活動對象。

確定活動(動作)序列。

確定控制流的轉移。

確定工作流中涉及的重要對象。§3.1.2活動和狀態(tài)圖的建造P811.活動圖建模步驟二、操作建模步驟

確定相關元素。

確定邊界范圍。

確定活動(動作)序列。

如果需要,使用分支和合并來描述條件路徑和迭代。

如果操作屬于主動類,在需要時可以用分叉和匯合來描述并發(fā)的控制流?!?.1.2活動和狀態(tài)圖的建造1.活動圖建模示例§3.1.3活動和狀態(tài)的建模示例P8513活動圖的應用

構建活動圖首先需要找到業(yè)務過程中的活動,可以通過以下的問題來幫助尋找業(yè)務過程中的活動。

該業(yè)務過程需要完成哪些工作步驟。每個參與者都將執(zhí)行哪些操作。有沒有哪些事件啟動了哪些工作步驟。例:

旅客登機的過程一般如下:旅客進入候機大廳后,首先要出示機票和身份證號碼,當身份核對無誤時,可以辦理登記手續(xù),得到登機牌;如果有行李,需要辦理行李托運手續(xù);通過安檢后就可以登機了。14活動圖的應用根據(jù)這個過程我們可以得到下面一些主要的活動:領取登機牌:旅客進入候機大廳后,輸入自己的身份證號碼,領取登機牌。辦理行李托運:如果旅客隨身攜帶的行李超重,則需要辦理行李托運手續(xù),通過安檢:旅客憑登機牌進行安全檢查,通過安檢后可以準備登機。旅客登機:旅客按照指示,到指定入口處登機。

辦理登機手續(xù)的活動圖:151.活動圖建模示例§3.1.3活動和狀態(tài)的建模示例例:過程:一個咨詢公司會見一個客戶時的業(yè)務過程如下:1、公司業(yè)務員打電話給客戶,確立約定。2、如果約定在公司內(nèi),公司技術人員為會議準備會議室。3、如果約定在公司之外,咨詢顧問就要用電腦準備一份陳述報告4、咨詢顧問和業(yè)務員與客戶在約定的時間和地點見面。5、業(yè)務員隨后給他們準備好會議用紙6、如果會議產(chǎn)生了一個問題陳述,咨詢顧問就根據(jù)問題陳述建立編寫一個提案并把該提案發(fā)給客戶?!締栴}】請設計上述過程的活動圖?!?.1.3活動和狀態(tài)的建模示例2.狀態(tài)圖概述狀態(tài)圖描述系統(tǒng)中類和對象隨時間變化的動態(tài)行為。狀態(tài)圖通過狀態(tài)與狀態(tài)轉換來描述用例、協(xié)作和方法的動態(tài)行為?!?.1.1活動和狀態(tài)的確定4.狀態(tài)圖結構元素⑴起始狀態(tài)與終止狀態(tài)⑵狀態(tài)在顯示狀態(tài)詳細組成的圖符中,一般來說,可以列出該狀態(tài)要執(zhí)行的事件和動作,如入口動作、出口動作、內(nèi)部轉換、延遲事件、內(nèi)部活動及子狀態(tài)等組成部分?!?.1.1活動和狀態(tài)的確定4.狀態(tài)圖結構元素⑶事件“事件”是指在時間和空間上某點發(fā)生的、能夠引起某些動作執(zhí)行的事情,即任何能夠影響到對象的東西都可以稱為事件,它在某一個時間點上發(fā)生,沒有持續(xù)時間。在UML狀態(tài)圖中,主要包含調用事件、改變事件、信號事件和時間事件四類。⑷轉換轉換是兩個狀態(tài)之間的一種關系,表示當一個特定事件出現(xiàn)時,且滿足一定的條件,對象會從第一個狀態(tài)(源)進入第二個狀態(tài)(目標),并執(zhí)行一定的動作或活動?!?.1.1活動和狀態(tài)的確定4.狀態(tài)圖結構元素⑸子狀態(tài)與組合狀態(tài)歷史狀態(tài):表示上次離開組合狀態(tài)時的最后一個子狀態(tài)。如果希望轉換激活上次離開組合狀態(tài)時的最后一個活動子狀態(tài),則將組合狀態(tài)外的這個轉換直接轉移到歷史狀態(tài)中。§3.1.1活動和狀態(tài)的確定4.狀態(tài)圖結構元素⑸子狀態(tài)與組合狀態(tài)順序子狀態(tài)也稱非正交狀態(tài),即其中子狀態(tài)之間的關系是互斥的,不能存在兩個或兩個以上的狀態(tài)被同時激活?!?.1.1活動和狀態(tài)的確定4.狀態(tài)圖結構元素⑸子狀態(tài)與組合狀態(tài)并發(fā)子狀態(tài)也稱正交子狀態(tài),是一個組合狀態(tài)中包含兩個或多個并發(fā)執(zhí)行的子狀態(tài),§3.1.1活動和狀態(tài)的確定2.狀態(tài)圖建模過程狀態(tài)圖模型的基本步驟

確定狀態(tài)圖描述的范圍。

確定描述主體在其生存期的各種穩(wěn)定狀態(tài)。

確定狀態(tài)的序號。

對象狀態(tài)可能響應的事件。

確定必要的動作。

確定高層控制,優(yōu)化、簡化狀態(tài)圖?!?.1.2活動和狀態(tài)圖的建造P833.活動圖與狀態(tài)圖的對比狀態(tài)圖與活動圖會有一些相同的特點:⑴

描述圖符基本一樣。⑵

可以描述一個系統(tǒng)或對象在生存期間的狀態(tài)或行為。⑶

可以描述一個系統(tǒng)或對象在多進程操作中的并發(fā)行為。⑷

可以用條件分支圖符描述一個系統(tǒng)或對象的行為控制流。最主要的不同點是:(1)觸發(fā)一個系統(tǒng)或對象的狀態(tài)(活動)發(fā)生轉移的機制不同。(2)描述多個對象共同完成一個操作的機制不同。§3.1.2活動和狀態(tài)圖的建造2.狀態(tài)圖建模示例§3.1.2活動和狀態(tài)的建模示例P86可以通過以下幾個方面來尋找轉換事件。

哪些事件可以創(chuàng)建或刪除對象。

哪些事件可以定義或修改屬性值。

哪些事件可以創(chuàng)建或結束與其他對象的關系。

哪些事件可以導致對象狀態(tài)的轉換。1.順序圖概述順序圖描述的是參與交互的對象及對象之間消息交換的順序,用來表示用例中的行為順序。順序圖可以把用例描述的需求,轉化為進一步、更加正式的精細表達,所以用例常常被細化為一個或多個順序圖。在UML中,順序圖采用二維形式描述各個對象間的交互關系。§3.2.1時序與協(xié)作的確定2.順序圖組成元素

對象

生命線

消息§3.2.1時序與協(xié)作的確定⑷

順序圖中的結構化控制在UML2.x中引入了交互框架(InteractionFrame),有效地解決了順序圖中各種控制結構的表述問題?!?.2.1時序與協(xié)作的確定⑷

順序圖中的結構化控制§3.2.1時序與協(xié)作的確定1.順序圖建模步驟

確定交互范圍及涉及的對象。

合理安排對象順序

確定消息及傳遞。§3.2.2時序與協(xié)作圖的建造P931.順序圖建模示例§3.2.3時序與協(xié)作的建模示例P943.通信圖概述通信圖是一種強調發(fā)送和接收消息的對象及其組織結構的交互圖,用以描述對象以及對象之間的交互關系。通訊圖與順序圖一樣,都是用來展示對象間的鏈接及組織結構的交互,但兩者的側重點卻不同。順序圖著重于描述交互的時間順序,而通信圖則側重于描述協(xié)作對象間的交互和鏈接?!?.2.1時序與協(xié)作的確定P914.通信圖結構元素

對象

消息

鏈§3.2.1時序與協(xié)作的確定2.通信圖建模過程

確定交互范圍及涉及的對象。

合理安排對象順序

確定鏈接與消息?!?.2.2時序與協(xié)作圖的建造P933.順序圖與通信圖的對比順序圖和通信圖都屬于交互圖,用于描述對象間的動態(tài)關系,并且兩者之間可以相互轉化。順序圖和通信圖都有各自不同的建模切入點,順序圖強調消息的時間順序,通信圖強調參與交互的對象的組織。2.通信圖建模示例§3.2.3時序與協(xié)作的建模示例P95過程建模概述過程建模以數(shù)據(jù)流圖為基礎。數(shù)據(jù)流圖是一種系統(tǒng)模型,它通過描述系統(tǒng)的數(shù)據(jù)流、以及系統(tǒng)實施的工作或處理過程來為系統(tǒng)建模?!?.3過程建模過程建模的主要任務是繪制數(shù)據(jù)流圖。數(shù)據(jù)流圖:由外部實體、處理過程、數(shù)據(jù)流、數(shù)據(jù)存儲組成。§3.3.2過程建模的元素1.構造系統(tǒng)上下文數(shù)據(jù)流圖,確認系統(tǒng)的項目范圍。2.繪制功能分解圖,將系統(tǒng)劃分成邏輯子系統(tǒng)。3.編寫事件響應或用例清單表,以確定并證實系統(tǒng)必須提供響應的業(yè)務事件。4.為分解圖中的每個事件添寫處理過程。此時的分解圖可作為系統(tǒng)的概要提綱。5.作為備選,為每個事件構造一個事件圖,并進行驗證。6.通過合并事件圖構造一個或者多個系統(tǒng)圖,幫助顯示系統(tǒng)的“整體視圖”。7.對需要進一步處理細節(jié)的事件過程構造基本圖,幫助顯示單個事件的所有基本過程、數(shù)據(jù)存儲和數(shù)據(jù)流?!?.3.3過程建模步驟§3.3.3過程建模步驟上下文

溫馨提示

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

評論

0/150

提交評論