UML狀態圖活動圖畫法和基礎_第1頁
UML狀態圖活動圖畫法和基礎_第2頁
UML狀態圖活動圖畫法和基礎_第3頁
UML狀態圖活動圖畫法和基礎_第4頁
UML狀態圖活動圖畫法和基礎_第5頁
已閱讀5頁,還剩37頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

1、復習:順序圖、協作圖v順序圖順序圖(sequence diagram): 用來描述為了用來描述為了完成確定事務,對象之間按照時間消息交互完成確定事務,對象之間按照時間消息交互的順序關系。的順序關系。對象對象消息消息生命線生命線激發激發v協作協作圖圖(collaboration diagram): 用來描述用來描述為了完成確定事務,各對象之間消息聯系的為了完成確定事務,各對象之間消息聯系的結構關系。結構關系。對象對象消息消息v狀態圖狀態圖v活動圖活動圖v面向對象方法在進行系統分析時,與傳統方法的需求分析一樣,有時應分析對象的狀態,畫出狀態圖,才能正確地認識對象的行為并定義它的服務。v并不是所有的

2、類都需要畫狀態圖,有明確意義的狀態,在不同狀態下行為有所不同的類才需要畫狀態圖1.1 什么是狀態圖什么是狀態圖 1. 狀態圖的概念狀態圖的概念 狀態圖狀態圖(statechart diagram): 用來描述一個特用來描述一個特定的對象所有可能的狀態定的對象所有可能的狀態,以及由于各種事件的發以及由于各種事件的發生而引起的狀態之間的轉移和變化。生而引起的狀態之間的轉移和變化。 狀態圖的例子狀態圖的例子:一個機器一個機器的狀態圖的狀態圖:一個發貨單一個發貨單的狀態圖的狀態圖:1.2 狀態圖的要素狀態圖的要素v橢圓或圓角矩形:表示對象的一種狀態,橢圓內部填寫狀態名v箭頭:表示從箭頭出發的狀態可以轉

3、換到箭頭指向的狀態v事件:引起狀態轉換的原因。事件名可在箭頭線上方標出v條件:事件名后加方括號,括號內寫狀態轉換條件v實心圓:初始狀態v內部實心的同心圓:最終狀態開始開始狀態狀態事件事件狀態狀態結束結束狀態狀態貨品發貨的狀態圖貨品發貨的狀態圖1 狀態狀態 1. 狀態的概念狀態的概念 狀態狀態(state): 是指對象在其生命周期中是指對象在其生命周期中,滿足某些滿足某些條件、執行某些活動、或等待某些事件時的一個狀況。條件、執行某些活動、或等待某些事件時的一個狀況。 狀態指的是對象的狀態。例如狀態指的是對象的狀態。例如: 發票發票(對象對象)被支付被支付(狀態狀態) 小車小車(對象對象)正在停著

4、正在停著(狀態狀態) 發動機發動機(對象對象)正在工作正在工作(狀態狀態) 電燈電燈(對象對象)開著開著(狀態狀態)1 狀態狀態 2.2.狀態的表示和要素狀態的表示和要素 狀態的表示:用圓角的矩形框表示狀態。狀態的表示:用圓角的矩形框表示狀態。 狀態的要素:包括狀態名,進入、退出、狀態的要素:包括狀態名,進入、退出、內部轉移的動作,子狀態等。內部轉移的動作,子狀態等。 狀態名狀態名進入動作進入動作退出動作退出動作內部轉移內部轉移動作動作1 狀態狀態 3. 狀態的類型狀態的類型 初始狀態初始狀態 中間狀態中間狀態 結束狀態結束狀態 組合狀態和子狀態組合狀態和子狀態 子狀態子狀態:被嵌套在另外一個

5、狀態中的狀態。:被嵌套在另外一個狀態中的狀態。 組合狀態組合狀態:含有子狀態的狀態。組合狀態也可以有:含有子狀態的狀態。組合狀態也可以有初態和終態。初態和終態。 組合組合狀態狀態子狀態子狀態 并發狀態并發狀態 并發狀態并發狀態:指一個對象在同一時刻可以處在多種狀態。:指一個對象在同一時刻可以處在多種狀態。 付款確認付款確認已確認已確認 并發中的同步:并發狀態之間需要通信,或具有確定的并發中的同步:并發狀態之間需要通信,或具有確定的時序關系,稱為并發中的同步。時序關系,稱為并發中的同步。2 轉移轉移 1. 轉移的概念轉移的概念 轉移轉移(transition): 是一個狀態向另外一個狀態的轉是一

6、個狀態向另外一個狀態的轉換。對象處在源狀態時換。對象處在源狀態時,發生一個事件發生一個事件,如果條件滿足如果條件滿足,則則執行相應的動作執行相應的動作,對象由源狀態轉移到目標狀態。對象由源狀態轉移到目標狀態。 轉移用箭頭表示,如果沒有標注事件,則本轉移為轉移用箭頭表示,如果沒有標注事件,則本轉移為自動轉移。自動轉移。 轉移轉移2 轉移轉移 2. 轉移的類型轉移的類型 自轉移自轉移: 源狀態和目標狀態為同一狀態的轉移。源狀態和目標狀態為同一狀態的轉移。 自轉移自轉移 自動轉移自動轉移: 一個一個 狀態根據本狀態的有關情況,自狀態根據本狀態的有關情況,自動觸發進入目標狀態,在轉移上沒有事件。動觸發

7、進入目標狀態,在轉移上沒有事件。 自動轉移自動轉移 條件轉移條件轉移: 通過分支判斷所確定的轉移。通過分支判斷所確定的轉移。 條件轉移條件轉移3 事件事件 1. 事件的概念事件的概念 事件事件(event): 是指在確定的時間和位置所發是指在確定的時間和位置所發生的對對象起作用的事情。事件的發生將引起一生的對對象起作用的事情。事件的發生將引起一些動作,使對象發生狀態的轉移。些動作,使對象發生狀態的轉移。 動作:動作:動作是對象類中一個操作的執行,動動作是對象類中一個操作的執行,動作具有中間性和不可中斷特性。作具有中間性和不可中斷特性。 2. 事件的描述事件的描述 事件名稱事件名稱參數表參數表字

8、符串,常為接收對象類中字符串,常為接收對象類中的一個操作。的一個操作。事件的形式參數事件的形式參數,可以省略,可以省略 3. 事件的類型事件的類型 調用事件:調用事件:是表示對操作的調度。是表示對操作的調度。 事件事件 變化事件:變化事件:因滿足某種條件而引起的事件因滿足某種條件而引起的事件,變化條件變化條件用用when表示。表示。 事件事件 時間事件:時間事件:滿足某一時間表達式而引起的滿足某一時間表達式而引起的事件事件,時間事件用時間事件用after,when表示。表示。 事件事件1.3 狀態圖的作用狀態圖的作用 狀態圖狀態圖: 用來描述一個對象在其生命周期中所表現出來用來描述一個對象在其

9、生命周期中所表現出來的狀態和行為。的狀態和行為。 當在系統建模過程中需要描述某個事物或對象的不同當在系統建模過程中需要描述某個事物或對象的不同狀態,以及狀態之間轉移的事件和動作時,用狀態圖。狀態,以及狀態之間轉移的事件和動作時,用狀態圖。 圖書館中圖書館中“圖書圖書”的狀態圖的狀態圖一個電子鐘的狀態圖一個電子鐘的狀態圖2.1 什么是活動圖什么是活動圖 1. 活動圖的概念活動圖的概念 活動圖活動圖(activity diagram)是是UML的動態視圖之一,用的動態視圖之一,用來描述事物或對象的活動變化流程。來描述事物或對象的活動變化流程。 2.2 活動圖的要素活動圖的要素活動活動活動流活動流匯

10、合匯合分劈分劈泳道泳道1 活動活動 活動活動(Action): 是活動圖主要結點是活動圖主要結點,用兩邊為弧的條用兩邊為弧的條形框表示形框表示,中間填活動名中間填活動名 。 活動分為簡單活動和復合活動。活動分為簡單活動和復合活動。 簡單活動:不能再分解的活動;簡單活動:不能再分解的活動; 復合活動:可以再分解的復雜活動。復合活動:可以再分解的復雜活動。簡單簡單活動活動復合復合活動活動2 活動流活動流 活動流活動流(ActionFlow): 描述活動之間的有向關系,描述活動之間的有向關系,反映一個活動向另外一個活動之間的轉移。用帶箭頭的反映一個活動向另外一個活動之間的轉移。用帶箭頭的實線表示。實

11、線表示。活動流活動流3 分支分支 分支分支: 表示活動流的分叉和合并。表示從一個活動表示活動流的分叉和合并。表示從一個活動按照某種條件轉移到幾個不同的活動。按照某種條件轉移到幾個不同的活動。分叉分叉合并合并4 分劈和匯合分劈和匯合 分劈和匯合分劈和匯合: 表示并發的同步行為,用同步桿表示。表示并發的同步行為,用同步桿表示。分劈分劈匯合匯合5 泳道泳道 泳道泳道(swimlane): 是活動圖中的區域劃分,每一個是活動圖中的區域劃分,每一個泳道代表一個責任區域。一個泳道中包括一組相關活動。泳道代表一個責任區域。一個泳道中包括一組相關活動。泳道泳道6 對象流對象流 對象流對象流: 反映活動與對象之間的依賴關系,表示對反映活動與對象之間的依賴關系,表示對象對活動的作用或活動對對象的影響,用依賴關系表示。象對活動的作用或活動對對象的影響,用依賴關系表示。對象流對象流表現軟件開發過程的活動圖表現軟件開發過程的活動圖2.3 活動圖的用途活動圖的用途 活動圖具有廣泛地用途活動圖具有廣泛地用途,在軟件建模中在軟件建模中,活動圖可以用來活動圖可以用來: 1. 描述工作流描述工作流 工作流工作流:也被稱為業務流程也被稱為業務流程, 屬于業務活動的過程屬于業務活動的過程,可可以用活動圖來描述。以用活動圖來描述。 2. 描述工程組織過程描述

溫馨提示

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

評論

0/150

提交評論