uml系列(六)——行为图:活动&状态
说完uml的静态图了,说一下uml的动态的表示吧。
uml的行为图,uml的行为图主要用来设计程序的行为。还是老规矩,先来张图:
行为图包含活动图和状态图两种。
先来说下活动图:活动图是由活动的节点和流程构成的图。比较清晰的表达了各个步骤的流程。
首先是起点和终点,活动图由一个实心圆表示起点,一个实心圆外加一个圆圈来表示终点。
然后是节点,节点这个词比较高大上,其实它很简单,就是说的流程进行的状态,进行到哪一步了。上图的“用户下订单”、“生产送货单”等都是节点。
在用户选择支付方式的节点下边,有个菱形的图形,在这里根据用户是否取消订单的条件,将流程分成了两条路,这就是分支,而这里的条件,也有个高大上的名词:监护条件,感觉就像大人监护孩子一样,根据孩子的表现决定接下啦的动作。
在用户下订单的下面,和供应商供货之前,有个横条(竖条)这就是uml对数据的并发操作的描述。不了解并发是啥?ok我来简单的介绍一下:并发就是两件事情一起进行。比如说,小学的时候,老师经常让我们用“一边、、、一边、、、”造句,我们可能会说:“小明一边看电视,一边吃饭。”这里的“看电视”和“吃饭”就是小明的并发操作。这两个条是同步条,同步条肯定是同步出现的。
泳道,在这张图里,我们把各个活动的负责主体用一条竖线隔离,以便于我们分析系统你给的负责人。这样,每个负责人的下面就形成一个类似游泳时的泳道一样的效果。这就是我们说的泳道。泳道一般是在系统分析后期以及系统设计阶段使用。
活动图一般用作对系统的工作流建模和对系统的操作建模。
描述行为的除了活动图外还有一种图是状态图。
状态图主要强调的是状态,表示的是在某个时间段内,某个对象会保持在某个状态中,在发生某个事件后,状态就会改变。
状态机主要描述的是一个类的实例在接到消息时所作出的响应。如上图所示,描述的就是一个热水器在工作时的行为。是描述一个状态图的局部的对象的行为的视图,可以对状态图里的某个对象的行为精确的描述。
一个状态图包含以下部分:源状态、目标状态、触发事件、监护条件和动作等。在上图中,off就是源状态,turnOn就是触发的事件,当收到这个消息后,监护条件就需要判断是否有水,如果没有,就不执行打开的操作,如果有水就允许操作执行。等进行验证后,变成了On的状态就是目标状态的实现。在turnOn转换完成后,就结束了么?这些都是状态的改变,如果定义了在On的状态,就一直给水加热,那么,在这个状态实现后,就一直给水加热,这就是烧水的动作。
状态图的绘制,状态图的绘制有以下步骤:
3.细化状态内部的活动与装换。
状态图的作用:
状态图主要对对象的生命周期建模:状态机图是单个对象在整个系统中的行为的建模,主要描述的是对象的能响应的事件,响应事件后对行为的影响。
状态图对反应型对象建模:描述一个对象从一个状态到另一个状态装换时所需的触发事件。以及事件发生时发生的动作。
uml系列(六)——行为图:活动&状态的更多相关文章
- [UML]UML系列——活动图activity diagram
系列文章 [UML]UML系列——用例图Use Case [UML]UML系列——用例图中的各种关系(include.extend) [UML]UML系列——类图Class [UML]UML系列——类 ...
- [UML]UML系列——状态机图statechart diagram
系列文章 [UML]UML系列——用例图Use Case [UML]UML系列——用例图中的各种关系(include.extend) [UML]UML系列——类图Class [UML]UML系列——类 ...
- [UML]UML系列——时序图(顺序图)sequence diagram
系列文章 [UML]UML系列——用例图Use Case [UML]UML系列——用例图中的各种关系(include.extend) [UML]UML系列——类图Class [UML]UML系列——类 ...
- [UML]UML系列——协作图(通信图)collaboration diagram
系列文章 [UML]UML系列——用例图Use Case [UML]UML系列——用例图中的各种关系(include.extend) [UML]UML系列——类图Class [UML]UML系列——类 ...
- UML系列图--用例图
UML-Unified Model Language 统一建模语言,又称标准建模语言.是用来对软件密集系统进行可视化建模的一种语言. 在UML系统开发中有三个主要的模型: 功能模型: 从用户的角度展示 ...
- UML用法及状态图,活动图介绍
统一建模语言UML(Unified Modeling Language)是非专利的第三代建模和规约语言.UML是一种开放的方法,用于说明.可视化.构建和编写一个正在开发的.面向对象的.软件密集系统的制 ...
- UML系列图--用例图(转)
UML-Unified Model Language 统一建模语言,又称标准建模语言.是用来对软件密集系统进行可视化建模的一种语言. 在UML系统开发中有三个主要的模型: 功能模型: 从用户的角度展 ...
- [UML]UML系列——类图Class
相关文章 [UML]UML系列——用例图Use Case [UML]UML系列——用例图中的各种关系(include.extend) 一.类图的概念及组成 1.类图的概念 类图是描述类.接 ...
- [UML]UML系列——类图class的关联关系(聚合、组合)
关联的概念 关联用来表示两个或多个类的对象之间的结构关系,它在代码中表现为一个类以属性的形式包含对另一个类的一个或多个对象的应用. 程序演示:关联关系(code/assocation) 假设:一个公司 ...
- [UML]UML系列——类图class的依赖关系
相关文章 [UML]UML系列——用例图Use Case [UML]UML系列——用例图中的各种关系(include.extend) [UML]UML系列—— ...
随机推荐
- Spring--Bean scope
singleton, prototype,request, session, global session bean.xml: <?xml version="1.0" enc ...
- mvn
http://blog.csdn.net/z69183787/article/category/2265961
- 不停的实例化对象导致OOM
使用axis调用webService,系统运行一段时间后,出现了 OOM,还好日志中 记下了错误信息. Exception in thread "Thread-1301" java ...
- Android L(5.0)源码之手势识别GestureDetector
本人新手,最近下了Android L的源码,正在研究手势识别,能力有限,现总结如下: Android识别触摸屏手势使得用户体验大大提高.在View类中有个View.OnTouchListener内部接 ...
- tp框架实现ajax注册验证
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- coding菜鸟养成记
http://www.cnblogs.com/xdp-gacl/category/563690.html http://www.cnblogs.com/vincent-blog/p/4402327.h ...
- UE4上传图片到服务器
客户端代码: void AHttpTestCharacter::MyHttpCall(FString Url){ // TexturePath contains the local file full ...
- session锁问题
碰到个问题,在使用了session时(如用户登录),如果当前请求时间过长,再执行其他请求都不会有响应,查找了网上资料发现,这个是session锁的问题 目前我们的程序基本流程如下: (1)加载Sess ...
- BZOJ 2038: [2009国家集训队]小Z的袜子(hose)&&莫对算法
这里跟曼哈顿最小生成树没有太大的关系. 时间复杂度证明: [BZOJ2038 小Z的袜子 AC代码] 排序方式: 第一关键字:l所在的块: 第二关键字:r从小到大. #include<cstdi ...
- MySQL安装 MySQL5.7.10免安装版配置,mysql5.7.10免安装版
MySQL5.7.10免安装版配置,mysql5.7.10免安装版 最新版的 Mysql 不提供图形界面的安装了, 下载下来是一个压缩包的形式, 那么我们如何来使用它呢, 让它为我们工作呢? 环境: ...