UML——行爲圖(活動圖、狀態圖)

狀態圖是做什麼的?

描述了一個具體對象的可能狀態以及它們之間的轉換。展現一個對象擁有的狀態,還可以說明時間(如消息的接收、錯誤、條件變更等)如何隨着時間的推移來影響這些狀態。

先上一張導圖看看狀態圖都有哪些內容吧!

                                

         


什麼是活動圖

描述一個過程或操作的工作步驟,描述系統的動態行爲。與流程圖很類似,但他們也有不同點。

                           

活動圖和流程圖的不同點:

  1. 流程圖着重描述處理過程,主要控制結構是順序、分支和循環,各個處理過程之間有嚴格的順序和時間關係

         活動圖描述的是對象活動的順序關係所遵循的規則,它着重表現的是系統的行爲,而非系統的處理過程

  1. 活動圖能夠表示併發活動的情形,而流程圖不能
  2. 活動圖是面向對象的,而流程圖是面向過程的

比方說現在要登錄機房收費系統:步驟分爲輸入用戶名和密碼,系統判斷輸入的密碼是否正確,正確的話走哪一個活動,不正確的話又走哪一個活動。而活動圖是把這些步驟用圖形的方式表現出來了

 

活動圖的作用有哪些?

  • 描述一個操作的執行過程中所完成的工作或者動作
  • 描述對象內部的工作
  • 顯示如何執行一組相關的動作,以及這些動作如何影響周圍對象
  • 描述用例的執行
  • 處理多線程應用

 

一般什麼情況下使用活動圖?

  1. 描述一個並行的過程或者行爲
  2. 描述一個算法
  3. 描述一個跨越多個用例的活動

 

活動圖包含了哪些圖標?

活動(ActionState)

動作的執行

fj4urHWJDgQoGXcG3Q2xycnJ2djadLZLLRZEgwkorDIuqh5cKSumlglJ6qaCUXhqYTP8AgfzkPTD83JcAAAAASUVORK5CYII=

起點(InitialState)

活動圖的開始

Hxg3Xz8w9PfDA+N+H+mJyfQHkN1SAcohrKkAAAAASUVORK5CYII=

終點(FinalState)

活動圖的終點

PYvSAAAAABJRU5ErkJggg==

對象流(ObjectFlowState)

活動之間的交換的信息

nFPEDsQOxA7EDsQOxA7EDsQOxA5Uy339+n4Zx3Hfd1kX0zTNsiy375cHcU4RO1AdHUp9AS88usauldAHAAAAAElFTkSuQmCC

發送信號(SignalSending)

活動過程中發送時間,出發另一活動流程

RwDzBbA4BuaRlJQUdnZ2qCgY0MkRP378mDlz5pcvX3Jzc4HJEyoKA3RyxPz588+cORMTE6OmpgYVQgLojvjz5w8w+VAX7Nq1a+HChTo6Os7OzshJAQ7Qa1FjY2NeXl6ICLXAjRs3gPViR0eHgoICVAgVDIpGzWhrGwZGHQEBDAwA1UVCAe9MsI0AAAAASUVORK5CYII=

接受信號(SignalReceipt)

活動過程中接收事件,接收到信號的活動流程開始執行

5EtmcGAoF4PP7tm9js5AZIe5yRjxMb7nPiuC+YLzDxVb61wQAAAABJRU5ErkJggg==

泳道(SWimLane)

活動的負責者

lmyiKonEcn7yJHETbg4cqsXjeBf++U1ryni0QAAAAAElFTkSuQmCC


活動的關係表示

遷移(transition)

活動的完成與新活動的開始

SduiKhO9xMziAaEiItMugAAAABJRU5ErkJggg==

分支(junction point)

根據條件,控制執行方向

xwc8PH4HuEjgm5gINYIAAAAASUVORK5CYII=

分叉(fork)

以下的活動可併發執行

EdEHzMvhy0PHFgXZYQsCwsHoGXgxMvJuAcy5ShFTqD0ZvYWPlUm7KAAAAAElFTkSuQmCC

結合(join)

以上的併發活動再此結合

K79arUZXN5CU1xwUjIyjqIf3JyGkldvtRlMwuckvPO2RJuvRkCqLYznorl3eK4my4D4Nl0+owa4L+x8PETJeUncRRtpuQdNjWRgmXT5Emew3JP8+iCAoK4IAAAAASUVORK5CYII=

 

我的理解:

  • 活動圖中的“分叉與合併”很像我們平常生活中的兩條路徑,它描述了軟件對象在不同的判斷結果下所執行的不同動作。一條是“Yes”的路,一條是“No”的路,就看你的操作是要執行哪條路徑,但最後終是會走到終點的

                                    

 

  •  “分叉和匯合”像我們學數據庫中“and”的關係,當進入考場後,老師檢查證件,學生對號入座,他們同時在做一件事情

                                                         


機房中“用戶登錄”的應用

狀態圖

 

活動圖

 

            

第一次畫,不足之處歡迎大佬們斧正哦~🙂

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章