UML--------行为图(状态图、活动图)

简介: UML--------行为图(状态图、活动图)

行为图是描述系统 动态模型和对象组成的交换关系的图,包括状态图和活动图。活动图侧重描述业务实现用例的工作 流程,状态图侧重描述状态到 状态转换,常用于动态特性建模。

状态图(state diagram)

什么是状态图?

通过建立类对象的生存周期模型来描述对象随时间变化的动态行为

通俗来说,在系统分析员对某对象建模的时候,最直观的不是着眼于活动到活动的控制流,而是着眼于对象的状态到状态的转换。例如:按下电灯的开关,电灯改变了它的亮灭状态,拉上卧室的窗帘,屋子里的亮度状态发生改变,所以在UML图中,我们使用状态图展现状态的变化。

状态图是由什么组成的?

状态图=状态+转换

状态

状态:状态(state)是指在对象的生命期中的某个条件或状况,在此期间对象将满足某些条件、执行某些活动或等待某些事件。所有对象都具有状态,状态是对象执行了一系列活动的结果,当某个事件发生后,对象的状态发生变化。

转换

一个状态到另一个状态的变化过程。表示对象将在第一个状态中执行一定的动作,并在某个特定事件发生而某个特定的条件满足时进入第二个状态。

引发转换的事件(条件):

  • 信号事件,系统运行时,对象受到了来自系统的信号使得对象发生状态迁移的事件。例如:开电脑这个操作,我们按下开机键,外界压机系统通过开关将信号传入内部系统,电脑变为开机状态。
  • 变化事件,对象的内部或者外部条件发生变化使得对象发生状态迁移。例如:对象执行某一行为时,当布尔条件的值为true时,对象状态因此发生迁移。
  • 时间事件,对象的状态因系统设定的时间点或时间段而自动发生迁移。例如:你的身份证的有效身份状态由户籍系统设定的日期时间段控制,当日期过了之后自动变为失效状态。
  • 调用事件,系统之外的其他系统通过接口等直接执行该系统内部的对象行为,引发状态迁移。例如:办公室计算机远程操控自己家的各种家用电器,使电器的状态发生迁移。

转换由五个部分组成:源状态,目标状态,触发事件,监护条件,动作。

状态图图标

椭圆或圆角矩形:表示对象的一种状态,椭圆内部填写状态名

箭头:表示从箭头出发的状态可以转换到箭头指向的状态

事件:引起状态转换的原因。事件名可在箭头线上方标出

条件:事件名后加方括号,括号内写状态转换条件

实心圆:初始状态

内部实心的同心圆:最终状态

使用范围

对反应型对象建模一般使用状态图。

反应型对象的特点:

1、响应外部事件,即来自对象语境之外的事件

2、有清晰的生命周期,可以被建模为状态,迁徙,事件的演化

3、当前行为和过去行为存在着依赖关系

4、对事件做出反应后**,他又回到空闲状态,等待下一个事件。**

活动图

什么是活动图?

活动图用于展现参与行为的类的活动或者动作。更加突出活动。

活动图和流程图的区别

  • 流程图着重描述处理过程,有严格的时间关系,而活动图更加强调对象活动的顺序关系所遵守的准则。着重表现是系统的行为,而不是处理过程。
  • 活动图可以并发
  • 活动图是面向对象的,流程图是面向过程的。

活动图图标

事物

关系

有问题请指正。

相关文章
|
6月前
|
测试技术 uml
UML之活动图
UML之活动图
44 0
|
6月前
|
存储 测试技术 开发工具
软考中的UML图、数据流图等二十余种示例
软考中的UML图、数据流图等二十余种示例
566 0
|
5月前
|
应用服务中间件 uml
【UML】软件工程中常用图:类图、部署图、时序图、状态图
【UML】软件工程中常用图:类图、部署图、时序图、状态图
508 1
|
5月前
|
设计模式 uml
设计模式学习心得之前置知识 UML图看法与六大原则(下)
设计模式学习心得之前置知识 UML图看法与六大原则(下)
37 2
|
5月前
|
设计模式 数据可视化 程序员
设计模式学习心得之前置知识 UML图看法与六大原则(上)
设计模式学习心得之前置知识 UML图看法与六大原则(上)
42 0
|
5月前
|
数据可视化 测试技术 uml
如果更好的绘制UML图
如果更好的绘制UML图
42 0
|
6月前
|
Java uml
UML之组件图(构件图)
UML之组件图(构件图)
100 0
|
6月前
|
存储 uml
UML之状态图
UML之状态图
52 0
|
6月前
|
uml
UML之类图
UML之类图
95 1
|
6月前
|
数据可视化 Java uml
IDEA中一个被低估的功能,一键把项目代码绘制成UML类图
IDEA中一个被低估的功能,一键把项目代码绘制成UML类图
273 1