成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

UML狀態圖及其組成元素簡介

開發 架構
統一建模語言UML中有五類圖,你對其中的UML狀態圖是否熟悉,這里就向大家簡單介紹一下UML狀態圖,希望通過本文的介紹你對UML狀態圖有一定的認識。

本節和大家一起學習一下UML狀態圖,主要包括UML狀態圖簡介和狀態圖組成元素兩大部分內容,相信通過本節的學習你對UML狀態圖的概念有明確的認識。

一、UML狀態圖簡介(Brief introduction)

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

狀態有Opened、Closed、Locked。

事件有 Open、Close、Lock和Unlock。

注意:

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

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

二、UML狀態圖元素(State Diagram Elements)

1、狀態(States)

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

狀態用圓角矩形表示

初態和終態(Initial and Final States)初態用實心圓點表示,終態用圓形內嵌圓點表示。

2、轉移(Transitions)

UML狀態圖中轉移(Transitions)是兩個狀態之間的一種關系,表示對象將在源狀態(Source State)中執行一定的動作,并在某個特定事件發生而且某個特定的警界條件滿足時進入目標狀態(Target State)

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

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

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

3、動作(State Actions)

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

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

4、自身轉移(Self-Transitions)

狀態可以有返回自身狀態的轉移,稱之為自身轉移(Self-Transitions)

2S后,Poll input事件執行,轉移到自己狀態【Waiting】

5、組合狀態(Compound States)

UML狀態圖中嵌套在另外一個狀態中的狀態稱之為子狀態(sub-state),一個含有子狀態的狀態被稱作組合狀態(Compound States). 如下圖,【Check PIN】是組合狀態,【Enter PIN】是子狀態。

狀態機【Check PIN】的細節被分割到另外一個圖中了。

6、進入節點(Entry Point)

由于一些原因并不會執行初始化(initialization),而是直接通過一個節點進入狀態【Ready】,則此節點稱之為進入節點(Entry Point)

7、退出節點(Exit Point)

8、歷史狀態(History States)

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

在上圖的UML狀態圖中,正常的狀態順序是:【Washing】- >【Rinsing】->【Spinning】。

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

9、并發區域(Concurrent Regions)

UML狀態圖可以分為區域,而區域又包括退出或者當前執行的子狀態。說明組合狀態在某一時刻可以同時達到多個子狀態。如下圖剎車系統,同時進入前剎車【Applying Front Brakes】狀態和后剎車【Applying Rear Brakes】狀態。

【編輯推薦】

  1. UML狀態圖創建過程中需要注意問題
  2. 在回歸測試中UML狀態圖切片的應用 
  3. 如何繪制UML用例圖
  4. UML中各種UML圖形的建立步驟簡明介紹
  5. 技術分享 嵌入式建模中UML狀態圖的形式化方法


 

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

2010-07-09 16:30:31

UML狀態圖

2010-07-06 11:21:37

UML狀態圖

2010-07-06 12:00:23

UML活動圖

2010-06-09 14:31:31

UML狀態圖

2010-06-13 15:03:25

UML實踐

2009-12-17 10:14:04

UML建模

2010-06-11 11:09:14

UML部署圖

2010-07-05 12:21:36

UML行為圖

2010-07-06 16:19:56

UML圖形

2010-06-09 15:19:20

UML狀態圖

2010-07-09 17:21:32

UML狀態圖

2010-06-09 18:06:52

UML活動圖

2010-06-10 09:41:11

UML時序圖

2010-07-09 11:01:30

UML動態建模

2010-07-12 14:16:19

UML活動圖

2010-06-17 16:29:57

UML組成

2010-06-13 16:16:21

UML狀態圖

2010-06-09 14:21:05

UML狀態圖

2010-07-06 10:12:48

UML部署圖

2010-06-12 13:21:56

UML全稱
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 日本三级网址 | 国产又色又爽又黄又免费 | 999国产精品视频 | 在线观看成人 | 亚洲播放一区 | 自拍偷拍3p | 91看片网 | 伊人伊人伊人 | 色噜噜亚洲男人的天堂 | 国产成人免费 | 欧美lesbianxxxxhd视频社区 | 中文一区二区 | 日本亚洲精品 | 羞羞的视频免费观看 | 亚洲综合国产 | 国产在线不卡 | www视频在线观看 | 亚洲成人动漫在线观看 | 成人h视频在线 | 日韩高清国产一区在线 | 在线看片国产精品 | 欧美大片一区二区 | 日韩视频免费在线 | 狠狠入ady亚洲精品经典电影 | 国产精品免费一区二区三区 | 久久国产精品一区二区三区 | 国产精品久久久久久影视 | 久久久久久综合 | 自拍偷拍第一页 | 国产精品亚洲成在人线 | 91精品在线播放 | 99成人| 国产精品天堂 | 午夜精品一区二区三区三上悠亚 | 日韩色图视频 | 久久视频一区 | 国产精品成人品 | 精品视频久久久久久 | 亚洲二区视频 | 欧美一级大片 | 午夜小影院 |