当前位置: 首页 > ai >正文

UML 活动图详解之小轿车启动活动图分析

目录

一、UML 活动图概述

二、UML 活动图的构成元素详解

(一)活动

(二)动作状态

(三)活动状态

(四)迁移(转换)

(五)初始节点

(六)终止节点

(七)决策节点

(八)合并节点

三、题目原型

四、小轿车启动活动图分析

五、活动图绘画

六、总结

一、UML 活动图概述

UML 活动图是一种行为图,用于描述系统的动态行为,主要关注业务流程和工作流建模。它通过展现一系列状态和转换来表示系统在不同条件下的行为变化,能够清晰、直观地展现整个系统的动态行为和工作流程。

二、UML 活动图的构成元素详解

(一)活动

活动是指系统中执行的操作或功能,是活动图的基本组成单位。它可以是一个简单的操作,如 “点击按钮”,也可以是一个较为复杂的处理过程,如 “处理订单”。活动通常用圆角矩形表示,圆角矩形内写上活动的名称。

(二)动作状态

动作状态表示一个原子操作或动作,它不能被中断,完成执行后才会转换到下一个状态。它是活动图中最小的、不可再分的操作单元。动作状态一般用带有关键字 “:” 的小矩形表示。

(三)活动状态

活动状态包含两个或两个以上的动作状态,代表一个更复杂的处理过程,可拆分为多个活动。它将多个相关联的动作状态整合在一起,形成一个相对独立的功能模块或业务环节。活动状态用一个矩形框表示。

(四)迁移(转换)

迁移从一个活动状态或动作状态指向另一个活动状态或动作状态的箭头,表示流程的走向,反映了系统在不同状态之间的转移关系和执行顺序。迁移用箭头表示,在箭头旁通常标注转换的条件或触发事件。

(五)初始节点

初始节点标志着活动的开始,是整个流程的起点。它表示系统即将进入该活动图所描述的业务流程或功能执行过程。初始节点用实心圆表示。

(六)终止节点

终止节点代表着流程的结束,表明系统已经完成了该活动图所描述的业务流程或功能的执行。终止节点用实心圆外加一个圆圈表示。

(七)决策节点

决策节点用于根据不同的条件分支流程,通常有多个出口转换,每个出口对应一个条件。决策节点用菱形节点表示,在菱形内部通常会写上决策的条件表达式或判断依据。

(八)合并节点

合并节点与决策节点相反,用于将多个并行的转换合并为一个,确保流程的收敛。合并节点也是用菱形节点表示,但入口有多个,出口只有一个。

三、题目原型

        建立一个小轿车启动时的活动图模型。首先是插入点火钥匙,最后是引擎发动。图中还要考虑到如果引擎没有立刻发动怎样执行活动?

四、小轿车启动活动图分析

  1. 插入点火钥匙与车辆系统检查

    • 插入点火钥匙,转动钥匙到 ON 位置,此时检查车辆系统。若检查发现车辆系统异常,则显示故障信息,流程结束;若检查正常,则启动车辆电子系统,转动钥匙到 STAR 位置,尝试启动引擎。

  2. 尝试启动引擎与故障排查

    • 尝试启动引擎后,判断启动是否成功。若启动成功,引擎发动成功,释放钥匙回到 ON 位置,车辆启动完成。

    • 若启动失败,则检查启动失败原因,首先检查电池电量。若电量不足,则更换电池后再次启动引擎;若电量充足,则检查燃油。若油量不足,则加油后再次启动引擎;若油量充足,则检查维修车辆,检查完成后再次启动引擎。

  3. 再次启动引擎与最终结果

    • 再次启动引擎后,判断启动是否成功。若启动成功,引擎发动成功,释放钥匙到 ON 位置,车辆启动完成;若启动失败,则显示启动失败信息,流程结束。

五、活动图绘画

六、总结

UML 活动图在描述小轿车启动这个业务流程时,通过各种构成元素如活动、动作状态、活动状态、迁移、初始节点、终止节点、决策节点和合并节点等,清晰、直观地展现了整个系统的动态行为和工作流程。从插入点火钥匙到引擎发动的完整流程涵盖了小轿车启动过程中的各个环节,使得使用者能够快速熟悉和掌握车辆启动的步骤和可能遇到的问题及解决方法。

http://www.xdnf.cn/news/2358.html

相关文章:

  • 【dockerredis】用docker容器运行单机redis
  • ASP.NET图片盗链防护指南
  • Java接口默认方法冲突
  • 2025.4.27_C_Struct,Enum,Union
  • 单片机学习笔记9.数码管
  • Redis使用总结
  • 相机DreamCamera2录像模式适配尺寸
  • 使用c++实现一个简易的量子计算,并向外提供服务
  • 一文说清Token这个大模型中的数字乐高积木的作用
  • MIT6.S081 - Lab10 mmap(文件内存映射)
  • 内耗型选手如何能做到不内耗?
  • MySQL最新安装、连接、卸载教程(Windows下)
  • Linux进程学习【环境变量】进程优先级
  • T8332FN凯钰LED驱动芯片多拓扑车规级AEC-Q100
  • 秒杀压测计划 + Kafka 分区设计参考
  • IP地址与子网计算工具
  • 0302洛必达法则-微分中值定理与导数的应用.md
  • 云原生课程-Docker
  • openstack创建虚拟机
  • 什么是模块化区块链?Polkadot 架构解析
  • 在Linux中,使用标准IO库,进行格式化IO操作
  • 深度解析Zemax优化函数:让光学设计从“能用”到“极致”的核心密码
  • 驱动开发硬核特训 · Day 22(下篇): # 深入理解 Power-domain 框架:概念、功能与完整代码剖析
  • I-CON: A Unifying Framework for Representation Learning
  • qt 3d航迹图
  • Scala集合操作与WordCount案例实战总结
  • Linux高效IO
  • SQL面试之--明明建了索引为什么失效了?
  • docker部署ruoyi系统
  • Rule.resourceQuery(通过路径参数指定loader匹配规则)