UML 活动图、状态图
近期写文档逐渐考虑规范化,带上UML图可让开发方案更为直观,也可理清需求
1,安装画图工具Rational Rose 2007:
https://blog.****.net/lovelry/article/details/120538050
2,活动图定义
活动图可以在分析系统业务时用来演示业务流,也可以在收集系统需求的时候显示一个用例中的事件流。活动图显示了系统中某个业务或者某个用例中,要经历哪些活动,这些活动按什么顺序发生。
3,创建活动图
(1) 用于分析系统业务:在浏览器中右击Use Case视图,选择new→activity diagram。
(2) 用于显示用例中的事件流:在浏览器中选中某个用例,然后右击这个用例,选择new→activity diagram。
4,增加泳道
泳道是框图里的竖段,包含特定人员或组织要进行的所有活动。
可以把框图分为多个泳道,每个泳道对应每个人员或组织。
在工具栏选择swimlane按钮,然后单击框图增加泳道,最后用人员或组织给泳道命名。
注意:先创建一个活动图,才会有swinlane
5,增加活动并设置活动的顺序
(1) 在工具栏中选择Activity 按钮,单击活动图增加活动,命名活动。
(2) 在工具栏中选择Transition按钮,把箭头从一个活动拖向另一个活动。
6,增加同步
(1)选择synchronization工具栏按钮,单击框图来增加同步棒。
(2)画出从活动到同步棒的交接箭头,表示在这个活动之后开始并行处理。
(3) 画出从同步棒到可以并行发生的活动之间的交接箭头。
(4) 创建另一同步棒,表示并行处理结束。
(5) 画出从同步活动到最后同步棒之间的交接箭头,表示完成所有这些活动之后,停止并行处理。
以上来源:https://blog.****.net/gz153016/article/details/49641847
网上找一个完整的流程图
7,个别符号理解
自身转移(Self-Transitions):状态可以有返回自身状态的转移,称之为自身转移;2S后,Poll input事件执行,转移到自己状态【Waiting】
8,活动图和时序图作用对象的区别
活动图泳道的粒度通常比较大,是一个服务,角色,系统;
时序图对象生命线的粒度比较小,通常是一个类
状态和活动(state activity):状态是一种静止的概念(名词),activity是运动的概念(动词)。可以是由activity获得state,也可以根据state去activity某个操作,比如通过增删改操作(activity)获取到设备信息(state)。通过设备信息去进行网关同步(activity)
状态图
状态(state)是指在对象的生命期中的某个条件或状况,在此期间对象将满足某些条件、执行某些活动或等待某些事件。所有对象都具有状态,状态是对象执行了一系列活动的结果,当某个事件发生后,对象的状态发生变化。
活动图和状态图的比较
状态图和活动图元素很像,基本上就少了泳道
活动图粒度大些:
--描述并行的过程或这行为
--描述一个算法
--描述一个跨越多个用例的活动
状态图粒度小些描述了一个具体对象的可能状态以及他们之间的转换。
状态图的一个状态可以将多个行为表示出来
状态图示例:
可参考其他文章:https://blog.****.net/xuxixixi_/article/details/120816384
https://www.cnblogs.com/jingwhale/p/4230235.html
上一篇: 活动图、泳道图、时序图、状态图
下一篇: UML 快速入门 - 活动图
推荐阅读
-
推荐几个常用在线图工具(支持时序图、用例图、类图、活动图、组件图、状态图、对象图、部署图等。同时还支持非 UML 图的甘特图、架构图等)
-
西门子S7-200 SMART:一步步教你配置PID向导、调用子程序与制作状态图测试,以及自适应PID参数设置实例指南
-
如何在西门子S7-200 SMART中设置PID回路控制?具体步骤包括:配置PID向导、调用子程序的详细操作,怎样创建并利用状态图来测试程序,以及如何进行自动PID参数调整?
-
理解工作流:自动化业务流程管理与Activiti实践" **简述** 工作流(Workflow)是一种利用电脑技术自动化管理业务流程的方式,让不同参与者按既定路径执行任务,确保文档、信息或任务在预设规则下顺利传递,最终达成期望的业务目标。 **核心概念** - **工作流自动化**: 计算机驱动业务流程处理与执行,如在参与者间自动传递文档和任务。 - **目标与应用**: 管理工作流程确保按时、由合适的人执行,同时允许人工介入以增强灵活性。 - **工作流框架示例**: Activiti、JBPM、OSWorkflow 和 Workflow,它们背后通常依赖数据库支持。 - **关键组件**: ProcessEngine 在 Activiti 中扮演核心角色,负责流程实例创建、数据管理和流程监控。 **相关领域** - **业务流程管理 (BPM)**: 一种系统性方法论,聚焦于构建并优化端到端卓越业务流程以提升企业业绩,在EMBA、MBA等商业课程中得到关注。 - **业务流程建模与标记语言 (BPMN)**: 用于绘制业务流程图的工具,探讨其在不同场景下的应用精确度、标准化价值以及未来发展愿景。 **辅助术语** - 流对象 (Flow Objects): BPMN 中用于描述流程中活动、决策、序列和其他元素的具体实现单元。
-
UML类图(统一建模语言类图)
-
UML 类图(上):类、继承和实现
-
UML 类图和类关系详解
-
[UML] UML 系列 - 协作图(通信图) 协作图
-
UML各种图
-
作为程序员还看不懂 UML 类图?一篇文章带你零基础学会看UML类图!