偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

術語匯編 UML建模工具之UML狀態(tài)圖

開發(fā) 架構
在學習UML建模語言的過程中,你經常會遇到關于UML圖的問題,這里就向大家簡單介紹一下UML狀態(tài)圖,相信通過本文的介紹大家對UML狀態(tài)圖的概念和元素有清晰的認識。

本節(jié)向大家介紹一下UML狀態(tài)圖,主要包括UML狀態(tài)圖簡介和包含元素等內容,希望通過本節(jié)的學習大家對UML狀態(tài)圖有深刻的理解。下面讓我們一起來看一下詳細介紹吧。

UML建模之UML狀態(tài)圖(StatechartDiagram)

一、UML狀態(tài)圖簡介(Briefintroduction)

狀態(tài)圖(StatechartDiagram)主要用于描述一個對象在其生存期間的動態(tài)行為,表現(xiàn)為一個對象所經歷的狀態(tài)序列,引起狀態(tài)轉移的事件(Event),以及因狀態(tài)轉移而伴隨的動作(Action)。一般可以用狀態(tài)機對一個對象的生命周期建模,狀態(tài)圖用于顯示狀態(tài)機(StateMachineDiagram),重點在與描述狀態(tài)圖的控制流。
如下圖例子,狀態(tài)機描述了門對象的生存期間的狀態(tài)序列,引起轉移的事件,以及因狀態(tài)轉移而伴隨的動作(Action).

狀態(tài)有Opened、Closed、Locked。

事件有Open、Close、Lock和Unlock。

注意:

1、并不是所有的事件都會引起狀態(tài)的轉移,比如當門是處于【Opened】狀態(tài),不能進行【Lock】事件。

2、轉移(Transition)有警備條件(guardcondition),比如只有doorWay->isEmpty條件滿足時,才會響應事件。


二、UML狀態(tài)圖元素(StateDiagramElements)

1、狀態(tài)(States)
指在對象的生命周期中的某個條件或者狀況,在此期間對象將滿足某些條件、執(zhí)行某些活動活活等待某些事件。所有對象都有狀態(tài),狀態(tài)是對象執(zhí)行了一系列活動的結果,當某個事件發(fā)生后,對象的狀態(tài)將發(fā)生變化。

狀態(tài)用圓角矩形表示

初態(tài)和終態(tài)(InitialandFinalStates)
初態(tài)用實心圓點表示,終態(tài)用圓形內嵌圓點表示。

2、轉移(Transitions)
UML狀態(tài)圖中轉移(Transitions)是兩個狀態(tài)之間的一種關系,表示對象將在源狀態(tài)(SourceState)中執(zhí)行一定的動作,并在某個特定事件發(fā)生而且某個特定的警界條件滿足時進入目標狀態(tài)(TargetState)

事件標記(Trigger):是轉移的誘因,可以是一個信號,事件、條件變化(achangeinsomecondition)和時間表達式。

警界條件(GuardCondition):當警界條件滿足時,事件才會引發(fā)轉移(Transition)。

結果(Effect):對象狀態(tài)轉移后的結果。

3、動作(StateActions)
UML狀態(tài)圖中動作(Actions)是一個可執(zhí)行的原子操作,也就是說動作是不可中斷的,其執(zhí)行時間是可忽略不計的。

在上例中,對象狀態(tài)轉移后的結果顯示在轉移線上,如果目標狀態(tài)有許多轉移,而且每個轉移有相同的結果,這時把轉移后的結果(Effect)展示在目標狀態(tài)中(TargetState)更好一些,可以定義進入動作(EntryAction)和退出動作(ExitAction)。


4、自身轉移(Self-Transitions)
狀態(tài)可以有返回自身狀態(tài)的轉移,稱之為自身轉移(Self-Transitions)
2S后,Pollinput事件執(zhí)行,轉移到自己狀態(tài)【Waiting】

5、組合狀態(tài)(CompoundStates)
嵌套在另外一個狀態(tài)中的狀態(tài)稱之為子狀態(tài)(sub-state),一個含有子狀態(tài)的狀態(tài)被稱作組合狀態(tài)(CompoundStates).如下圖,【CheckPIN】是組合狀態(tài),【EnterPIN】是子狀態(tài)。

也可用以下方式進行描述 ,狀態(tài)機【CheckPIN】的細節(jié)被分割到另外一個圖中了。


6、進入節(jié)點(EntryPoint)
由于一些原因并不會執(zhí)行初始化(initialization),而是直接通過一個節(jié)點進入狀態(tài)【Ready】,則此節(jié)點稱之為進入節(jié)點(EntryPoint)

7、退出節(jié)點(ExitPoint)

8、歷史狀態(tài)(HistoryStates)

歷史狀態(tài)是一個偽狀態(tài)(Pseudostate),其目的是記住從組合狀態(tài)中退出時所處的子狀態(tài),當再次進入組合狀態(tài),可直接進入這個子狀態(tài),而不是再次從組合狀態(tài)的初態(tài)開始。

在上面的UML狀態(tài)圖中,正常的狀態(tài)順序是:【Washing】->【Rinsing】->【Spinning】。

如果是從狀態(tài)【Rinsing】突然停電(PowerCut)退出,,洗衣機停止工作進入狀態(tài)【PowerOff】,當電力恢復時直接進入狀態(tài)【Running】。


9、并發(fā)區(qū)域(ConcurrentRegions)
UML狀態(tài)圖可以分為區(qū)域,而區(qū)域又包括退出或者當前執(zhí)行的子狀態(tài)。說明組合狀態(tài)在某一時刻可以同時達到多個子狀態(tài)。如下圖剎車系統(tǒng),同時進入前剎車【ApplyingFrontBrakes】狀態(tài)和后剎車【ApplyingRearBrakes】狀態(tài)。

三、總結(Summary)

狀態(tài)圖重點在于描述對象的狀態(tài)及其狀態(tài)之間的轉移,UML狀態(tài)圖的基本元素主要有:狀態(tài)、轉移、動作、自身轉移、組合狀態(tài)、進入節(jié)點、退出節(jié)點、歷史狀態(tài)、并發(fā)區(qū)域等,狀態(tài)中的事件分為調用事件(Call)、變化事件(Change)、時間事件(Time)和信號事件(Singal)。***以實例對狀態(tài)對進行了分析。

【編輯推薦】

  1. UML基礎專題之UML狀態(tài)圖與活動圖
  2. 在回歸測試中UML狀態(tài)圖切片的應用 
  3. UML用例圖用法實例剖析
  4. 術語匯編 UML統(tǒng)一建模語言簡介
  5. 技術分享 嵌入式建模中UML狀態(tài)圖的形式化方法


 

責任編輯:佚名 來源: csdn.net
相關推薦

2010-07-09 17:21:32

UML狀態(tài)圖

2010-06-30 14:24:02

UML類圖建模

2010-06-29 15:06:14

UML建模

2010-06-12 11:37:40

UML建模技術

2010-06-08 17:18:50

UML建模技術

2010-06-11 18:27:39

UML對象圖

2010-07-08 09:50:11

UML構件圖

2010-06-11 09:33:47

UML順序圖

2010-07-09 13:16:46

UML動態(tài)建模機制

2010-06-09 09:16:15

UML活動圖

2010-07-08 09:57:14

UML活動圖

2010-06-11 10:44:14

UML部署圖

2010-07-01 09:38:39

Visio UML建

2010-06-30 17:46:36

UML用例建模

2010-07-05 17:28:57

UML動態(tài)模型圖

2010-06-09 19:07:35

UML用例圖

2010-07-01 14:04:23

UML時序圖

2010-07-02 10:38:53

UML模型圖

2010-06-07 17:40:09

UML

2010-07-06 11:21:37

UML狀態(tài)圖
點贊
收藏

51CTO技術棧公眾號