UML之活动图、状态图

之前的文章讲解到了用例图、类图、包图、对象图。其中用例图展示了系统中的角色以及用户的功能需求。类图、包图、对象图是UML中的静态图,展示了系统的静态结构。

接下来本文主要讲解UML中的动态行为图:活动图和状态图。

(一)活动图

1、概念:首先回顾以下流程图:其常被用来建立算法模型,使用流程图可以表示一个算法的执行序列、过程、判定点、分支和循环。活动图与流程图十分类似。不同之处在于它支持并行活动。活动图的缺点:很难清楚的描述动作与对象之间的关系,没有交互图直接。

2、基本要素:

UML之活动图、状态图_第1张图片其中保证条件指:只有保证条件为真时转移才发生。

同步条(synchronization bar):一种表示活动之间的同步的特殊活动。

起点和终点:起点有且只有一个,终点可以有一个或多个。









接下来看一下活动图的图符:

起始状态:                                                                   终止状态:

UML之活动图、状态图_第2张图片UML之活动图、状态图_第3张图片









同步条: 决策点:

UML之活动图、状态图_第4张图片UML之活动图、状态图_第5张图片


3、泳道:用于对活动图中的活动进行分组,用于描述对象之间的合作关系。它将活动用线分成一些纵向区域,这些纵向区域称为泳道。每个区域代表一个特定类,或者人,或者部门的责任区。泳道技术是活动图中引入的一种面向对象机制。可为提取类及分析各个对象之间的交互提供方便。

下面我会附上我绘制的带泳道的机房收费系统的图。

4、作用:它描述对象内部的工作,在内部工作中描述一个操作的执行过程中所完成的工作或者动作。它显示了如何执行一组相关的动作,以及这些动作如何影响周围的对象。它处理多线程的应用,描述了用例的执行。

(二)状态图

用来描述一个特定对象的所有可能状态以及由于各种事件的发生而引起的状态之间的转移。

1、状态机:是这样一种行为。它描述了一个对象或一个交互在生命期内响应事件所经历的状态序列。单个类或一组类之间的协作的行为可以用状态机来描述。它包括:状态、转换、事件(触发转换的事物)和活动(每一个转换的响应)。

UML之活动图、状态图_第6张图片

开始时机器处于闲置状态,当按下键盘后,机器成为运作状态

(三)区别:

状态图侧重于从行为的结果来描述(状态)

活动图侧重从行为的动作来描述(活动)

(四)下面是我绘制的机房收费系统的带泳道的活动图:


下面是机房收费系统的状态图:


如果有错误,希望大家指正。









UML之活动图、状态图_第7张图片









你可能感兴趣的:(------UML,☆,CS之旅)