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

简介: 描述了一个具体对象的可能状态以及它们之间的转换。展现一个对象拥有的状态,还可以说明时间(如消息的接收、错误、条件变更等)如何随着时间的推移来影响这些状态。

状态图是做什么的?


描述了一个具体对象的可能状态以及它们之间的转换。展现一个对象拥有的状态,还可以说明时间(如消息的接收、错误、条件变更等)如何随着时间的推移来影响这些状态。


先上一张导图看看状态图都有哪些内容吧!

       2020062308530610.png                      


什么是活动图?


描述一个过程或操作的工作步骤,描述系统的动态行为。与流程图很类似,但他们也有不同点。


  20200623101015171.png                      


活动图和流程图的不同点:


1.流程图着重描述处理过程,主要控制结构是顺序、分支和循环,各个处理过程之间有严格的顺序和时间关系

 

     活动图描述的是对象活动的顺序关系所遵循的规则,它着重表现的是系统的行为,而非系统的处理过程


1.活动图能够表示并发活动的情形,而流程图不能

2.活动图是面向对象的,而流程图是面向过程的


比方说现在要登录机房收费系统:步骤分为输入用户名和密码,系统判断输入的密码是否正确,正确的话走哪一个活动,不正确的话又走哪一个活动。而活动图是把这些步骤用图形的方式表现出来了


活动图的作用有哪些?


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


一般什么情况下使用活动图?


  1. 描述一个并行的过程或者行为
  2. 描述一个算法
  3. 描述一个跨越多个用例的活动


活动图包含了哪些图标?

活动(ActionState)

动作的执行

起点(InitialState)

活动图的开始

终点(FinalState)

活动图的终点

对象流(ObjectFlowState)

活动之间的交换的信息

发送信号(SignalSending)

活动过程中发送时间,出发另一活动流程

接受信号(SignalReceipt)

活动过程中接收事件,接收到信号的活动流程开始执行

泳道(SWimLane)

活动的负责者


活动的关系表示

迁移(transition)

活动的完成与新活动的开始

分支(junction point)

根据条件,控制执行方向

分叉(fork)

以下的活动可并发执行

结合(join)

以上的并发活动再此结合


我的理解:


  • 活动图中的“分叉与合并”很像我们平常生活中的两条路径,它描述了软件对象在不同的判断结果下所执行的不同动作。一条是“Yes”的路,一条是“No”的路,就看你的操作是要执行哪条路径,但最后终是会走到终点的

      20200623091022654.png


  • “分叉和汇合”像我们学数据库中“and”的关系,当进入考场后,老师检查证件,学生对号入座,他们同时在做一件事情

                                                     

20200623091045886.png


机房中“用户登录”的应用


状态图

20200624212221545.png

活动图


2020062421222922.png

         

第一次画,不足之处欢迎大佬们斧正哦~🙂

相关文章
|
7月前
|
测试技术 uml
UML之活动图
UML之活动图
51 0
|
7月前
|
存储 测试技术 开发工具
软考中的UML图、数据流图等二十余种示例
软考中的UML图、数据流图等二十余种示例
613 0
|
6月前
|
应用服务中间件 uml
【UML】软件工程中常用图:类图、部署图、时序图、状态图
【UML】软件工程中常用图:类图、部署图、时序图、状态图
714 1
|
6月前
|
设计模式 uml
设计模式学习心得之前置知识 UML图看法与六大原则(下)
设计模式学习心得之前置知识 UML图看法与六大原则(下)
44 2
|
6月前
|
设计模式 数据可视化 程序员
设计模式学习心得之前置知识 UML图看法与六大原则(上)
设计模式学习心得之前置知识 UML图看法与六大原则(上)
46 0
|
6月前
|
数据可视化 测试技术 uml
如果更好的绘制UML图
如果更好的绘制UML图
45 0
|
7月前
|
Java uml
UML之组件图(构件图)
UML之组件图(构件图)
143 0
|
7月前
|
存储 uml
UML之状态图
UML之状态图
57 0
|
7月前
|
程序员 uml
UML图 | 时序图(顺序、序列图)绘制
UML图 | 时序图(顺序、序列图)绘制
597 0
|
7月前
|
算法 测试技术 uml
UML-状态图
UML-状态图
93 0