UML图:活动图详细介绍

UML图:活动图详细介绍活动图简介什么是活动图(ActivityDiagram)活动图是UML用于对系统的动态行为建模的另一种常用工具,它描述活动的顺序,展现从一个活动到另一个活动的控制流,活动图在本质上是一种流程图;活动图着重表现从一个活动到另一个活动的控制流活动图元素动作状态(ActionState)动作状态是指原子的,不可中断的动作,并在此动作完成后通过完成转换转向另一个状态在UML中的动作状态图用平滑的圆角矩形表示动作状态的特点动作状态是原子的,无法分解为更小的部分动作状态是不可中断的,一旦开始

大家好,又见面了,我是你们的朋友全栈君。

活动图简介

什么是活动图(Activity Diagram)
活动图是UML用于对系统的动态行为建模的另一种常用工具,它描述活动的顺序,展现从一个活动到另一个活动的控制流,活动图在本质上是一种流程图;活动图着重表现从一个活动到另一个活动的控制流

在这里插入图片描述

活动图元素

动作状态(Action State)
动作状态是指原子的,不可中断的动作,并在此动作完成后通过完成转换转向另一个状态
在UML中的动作状态图用平滑的圆角矩形表示
在这里插入图片描述

动作状态的特点

  • 动作状态是原子的,无法分解为更小的部分
  • 动作状态是不可中断的,一旦开始运行就不能中断,一直运行到结束
  • 动作状态是瞬时的行为,它所占用的处理时间极短,有时甚至可以忽略
  • 动作状态可以有入转换,入转换可以是动作流,也可以是对象流;动作 状态至少有一条出转换,这条转换以内部的完成为起点,与外部事件无关
  • 动作状态与状态图中的状态不同,它不能有入口动作和出口动作,更不能有内部转移

活动状态(Activity State)
活动状态用于表达状态机中的非原子的运行
在UML中活动状态和动作状态的图标相同,但活动状态可以在图标中给出入口动作和出口动作等信息

在这里插入图片描述
活动状态的特点

  • 活动状态可以分解成其他子活动或者动作状态
  • 活动状态的内部活动可以用另一个活动图来表示
  • 和动作状态不同,活动状态可以有入口动作和出口动作,也可以有内部转移
  • 动作状态是活动状态的一个特例,如果某个活动状态只包括一个动作,那么它就是一个动作状态

开始点
在这里插入图片描述
结束点

整个活动的结束
在这里插入图片描述

子流程的结束
在这里插入图片描述

子活动状态
选课活动图
在这里插入图片描述
分支与合并
分支:一入多出
合并:多入一出
在这里插入图片描述
分叉与汇合
分叉用将控制流分为两个或者多个并发运行的分支
汇合用于同步这些并发分支,以达到共同完成一项事务的目的

在这里插入图片描述
泳道

在这里插入图片描述
对象流

  • 可以把对象放置在活动图中并用一个依赖将其连接到进行创建、修改或撤销等动作状态或者活动状态上,对象的这种使用方法就构成了对象流
  • 对象流是动作状态或者活动状态与对象之间的依赖关系,表示动作使用对象或动作对对象的影响
  • 可以理解为数据流

在这里插入图片描述

活动图示例

图书馆馆员活动图
在这里插入图片描述
系统管理员活动图

在这里插入图片描述

活动图和状态图的区别

活动图着重表现从一个活动到另一个活动的控制流,是内部处理驱动的流程
状态图着重描述从一个状态到另一个状态的流程,主要有外部事件的参与

活动图和流程图的区别

流程图着重描述处理过程,它的主要控制结构是顺序、分支和循环,各个处理之间有严格的顺序和时间关系
活动图描述的则是对象活动的顺序关系所遵循的规则,它着重表现的是系统的行为,而非系统的处理过程
活动图能够表示并发活动的情形,流程图不能

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/132935.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 九章算法_九章算法(杭州)科技有限公司

    九章算法_九章算法(杭州)科技有限公司1BST迭代器注意点:1.实际就是中序遍历的非递归写法,迭代器就是要用Stack存储数据,不过把不同的模块功能进行了分割,而不是一次完成中序遍历;2.可以把添加到Stack单独抽取成一个函数

    2022年8月3日
    2
  • python判断文件后缀_Python 判断文件后缀是否被篡改

    python判断文件后缀_Python 判断文件后缀是否被篡改自己用Python写了个对文件后缀判断的脚本,目前支持的文件类型还不是很多,还有待完善。支持MicrosoftOffice(.pptx.docx.xlsx)Pyhton版本为3.6#!usr/bin/envpython#-*-coding:UTF-8-*-#@Time:2018/7/1015:16#@Author:gumguiimportstructimportos,sy…

    2022年9月15日
    0
  • 2020年前端面试题及答案_结构化面试题库及答案

    2020年前端面试题及答案_结构化面试题库及答案1、javascript基本数据类型?string、number、null、underfined、booleanobject是所有对象的父对象。2、浅谈javascript中变量和函数声明的提升?变量和函数声明的提升会被提升到最顶部去执行;函数的提升高于变量的提升;如果在函数内部用var声明了与外部相同的变量,则不向下寻找;匿名函数不会被提升;不同块中互不影响。3、什么是闭包?闭包有什么特性?闭包就是能够读取其他函数内部变量的函数。闭包的特性:函数内部可以嵌套函数;内部函数可以直接

    2022年8月27日
    3
  • DHCP Option 82详细讲解[通俗易懂]

    DHCP Option 82详细讲解[通俗易懂]option82是dhcp报文中的中继代理信息选项(relayagentinformationoption)。当dhcpclient发送请求报文到dhcpserver时,若需要经过dhcp中继,则由dhcp中继将option82添加到请求报文中。option82包含很多sub-option,本文中的option82只支持sub-option1、sub-option2和sub-

    2022年10月16日
    0
  • 实验7 粒子群优化算法求解tsp问题[通俗易懂]

    实验7 粒子群优化算法求解tsp问题[通俗易懂]传送门(所有的实验都使用python实现)实验1BP神经网络实验实验2som网实验实验3hopfield实现八皇后问题实验4模糊搜索算法预测薄冰厚度实验5遗传算法求解tsp问题实验6蚁群算法求解tsp问题实验7粒子群优化算法求解tsp问题实验8分布估计算法求解背包问题实验9模拟退火算法求解背包问题实验10禁忌搜索算法求解tsp问题…

    2022年10月11日
    0
  • 从excel文件xlsx中特定单元格中提取图片「建议收藏」

    从excel文件xlsx中特定单元格中提取图片「建议收藏」第一种网上通用的用xlsx改zip压缩包,能批量提取出图片。但是无法知道图片在单元格中的顺序信息。另一种方法,通过`fromopenpyxl_image_loaderimportSheetImageLoader`功能已实现好,在github仓库开源,觉得好用请star该库可以实现excel文件转mysql、sqlite等(基于SQLAlchemy)链接传送门pipinstall-rrequrements.txtx=xlsx_pic(‘./test.xlsx’)#

    2022年7月13日
    12

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号