UML状态图的画法讲解
- 格式:ppt
- 大小:2.34 MB
- 文档页数:89


UML图详解(⼋)——状态机(状态图和活动图)⼀、概念状态图和活动图是状态机的两种表现形式。
利⽤状态机可以精确地描述对象的⾏为。
从对象的初始状态起,开始响应事件并执⾏某些动作,这些事件引起状态的转换;对象在新状态下⼜开始响应事件和执⾏动作,如此连续进⾏直到终结状态。
⼆、状态图状态图(State Diagram)=状态(State)+迁移(Transition)⼀个状态图描述⼀个状态机。
状态图表现从⼀个状态到另⼀个状态的控制流。
<1>状态图的语法1>除了状态中的初始状态(实⼼圆)和终⽌状态(⽜眼形状),其它状态⽤⼀个圆⾓矩形表⽰转换表⽰状态间可能的路径,⽤箭头表⽰事件/动作写在由它们触发引起的转换上<2>状态2>状态⼀般是给定类对象中的⼀组属性值,在其所在的上下⽂中应该唯⼀,但可以匿名。
在对系统建模时,我们可以只关⼼那些明显影响对象⾏为的属性以及由他们表达的对象状态,⽽不⽤理睬那些于对象⾏为⽆关的状态。
表⽰⽅式:状态由⼀个带圆⾓的矩形表⽰。
应⽤标签标⽰状态的内部活动。
语法:标签/活动表达式UML提供的标签:1. entry:当进⼊⼀个状态的时候被⾃动触发,该活动在状态中其它任何活动之前被⾃动触发。
2. do:当状态处于激活时执⾏do活动,do活动在进⼊活动之后执⾏,并且⼀直运⾏到它本⾝完成为⽌。
3. exit:当离开⼀个状态的时候被⾃动触发,该活动在该状态结束之前、所有其它活动都完成后被触发。
状态可以嵌套状态图,此时状态称为组成状态,否则为简单状态。
⼊⼝事件表⽰⼀个⼊⼝的动作序列,它在进⼊状态时执⾏。
⼊⼝事件的动作是原⼦的,并且先于⼈和内部活动或转换。
出⼝事件表⽰⼀个出⼝的动作序列,它在退出状态时执⾏。
出⼝事件也是原⼦的,它跟在所有的内部活动之后,但是先于所有的出⼝转换。
1. 简单状态(Simple State)2. 复合状态(Composite State)复合状态可以有多组状态图,每组⽤虚线分割开来。
UML中的状态图绘制指南和使用技巧UML(Unified Modeling Language)是一种用于软件系统建模的标准化语言,它提供了一套丰富的图形符号和规范,方便开发人员进行系统设计和分析。
在UML中,状态图是一种常用的建模工具,用于描述对象在不同状态之间的转换和行为。
本文将为您介绍UML中的状态图绘制指南和使用技巧。
1. 状态图的基本概念在绘制状态图之前,我们首先需要了解状态图的基本概念。
在UML中,状态图由状态(State)、转换(Transition)、事件(Event)和动作(Action)等元素构成。
状态是指对象所处的特定情况或条件,它可以是一个简单的状态,也可以是一个复杂的状态集合。
状态之间通过转换来连接,转换表示对象在不同状态之间的切换。
转换可以由事件触发,事件是导致状态转换的原因或条件。
转换发生时,可以执行相应的动作。
2. 绘制状态图的步骤在绘制状态图时,我们可以按照以下步骤进行:(1)确定对象:首先确定需要建模的对象,这可以是一个系统、一个组件或者一个类等。
(2)确定状态:根据对象的特性和需求,确定对象的状态。
状态应该具有明确的含义和可辨识性。
(3)确定事件和转换:确定导致状态转换的事件,并将其与相应的转换关联起来。
事件可以是外部的,也可以是内部的。
(4)确定动作:对于每个状态转换,确定需要执行的动作。
动作可以是简单的操作,也可以是复杂的行为。
(5)绘制状态图:根据以上确定的元素,使用UML提供的符号和规范进行绘制。
状态图应该清晰明了,易于理解和沟通。
3. 使用技巧在绘制状态图时,我们可以采用一些技巧来提高建模效果和可读性。
(1)合理使用分区:状态图可以使用分区来组织和分组状态,提高可读性。
可以根据功能、角色或者其他特性进行分区。
(2)使用注释和说明:在状态图中,可以使用注释和说明来解释状态、转换和动作的含义和目的。
这有助于其他人理解和使用状态图。
(3)避免过多细节:状态图应该关注对象的状态和转换,而不是过多的细节。