1. 程式人生 > >狀態圖和活動圖的區別

狀態圖和活動圖的區別

一,活動圖

活動圖(activity diagram,動態圖)是闡明瞭業務用例實現的工作流程。業務工作流程說明了業務為向所服務的業務主角提供其所需的價值而必須完成的工作。業務用例由一系列活動組成,它們共同為業務主角生成某些工件。工作流程通常包括一個基本工作流程和一個或多個備選工作流程。工作流程的結構使用活動圖來進行說明。

工作流程活動圖用於研究實現業務目標時所要執行的各項任務或活動的順序安排。活動既可以是手動執行的任務,也可以是自動執行的任務。它可完成一個工作單元。

活動圖是狀態圖的一種特殊形式。其中所有或多數狀態都是活動狀態,而且所有或多數轉移都在源狀態中的活動完成時立即觸發。

一個活動圖可能包括以下元素:

活動狀態表示在工作流程中執行某個活動或步驟。

轉移表示各種活動狀態的先後順序。這種轉移可稱為完成轉移。它不同於一般的轉移,因為它不需要明顯的觸發器事件,而是通過完成活動(用活動狀態表示)來觸發。

決策,為其定義了一組警戒條件。這些警戒條件決定在活動完成後將執行一組備選轉移中的哪一個轉移。您也可以使用判定圖示來表示執行緒重新合併的位置。決策和警戒條件使您能夠顯示業務用例的工作流程中的備選執行緒。

同步示意條用於顯示平行分支流。同步示意條使您能夠顯示業務用例的工作流程中的並行執行緒。

開始結束

泳道:對活動進行分組。怎麼分組——每一個區域都代表特定的類,或者是人,或者是部門責任區。

在含有泳道的活動圖中,清晰的表明了每個活動的執行物件。在活動圖中每個活動只可以屬於一個泳道。

物件流:活動圖中可以將活動涉及到得物件通過依賴將其連線在狀態或者活動上。物件用矩形框表示。

下邊是例項:

二,狀態圖

狀態圖(Statechart Diagram)是描述一個實體基於事件反應的動態行為,顯示了該實體如何根據當前所處的狀態對不同的事件做出反應。通常我們建立一個UML狀態圖是為了以下的研究目的:研究類、角色、子系統、或元件的複雜行為。 狀態圖用於顯示狀態機(它指定物件所在的狀態序列)、使物件達到這些狀態的事件和條件、以及達到這些狀態時所發生的操作。

狀態圖包括:狀態,事件,組合狀態。

1、狀態。

狀態名字,進入動作,退出動作,狀態中發生的活動(狀態內活動,狀態向外傳送的活動)。

2、事件

使狀態發生變化的某時刻發生的動作,或者活動。狀態發生轉化的條件。

3、組合狀態

一個狀態內部包含其他狀態,成為組合狀態,內部被包含的狀態被成為子狀態。

如果被包含的是一個子狀態圖,那麼該子狀態圖必須有自己的起始狀態和終止狀態。

例項: