UML 中的活动图:符号、组件和示例

⚡ 智能摘要

UML 中的活动图以活动和动作的流程图形式对系统的动态流程进行建模,使用节点、边、泳道、分支和连接来清晰地捕获工作流程、并发性和决策逻辑。

  • ???? 活动和行动: 活动将较小的动作集合起来,并通过边连接起来。
  • 🟢 初始节点和最终节点: 流程从初始节点开始,到最终节点结束。
  • 🛣️ 泳道: 按职责划分相关操作的组分区。
  • 🍴 分叉与合并: Fork 将数据流分成两条并行路径;join 使它们同步。
  • 🤖 人工智能协助: 人工智能根据流程描述生成活动图。

UML 中的活动图

UML 中的活动图是什么?

活动图 基本上是一种流程图,用于表示从一个活动到另一个活动的流程。活动可以描述为系统的操作。活动图的基本目的是捕捉系统的动态行为。它也被称为面向对象流程图。

本篇 UML图 关注系统行为的执行和流程,而不是实现。活动图由适用于行为建模技术的操作组成的活动组成。

活动图的组成部分

游戏及活动

它是一种分为一个或多个动作的行为。活动是由边连接的节点网络。可以有动作节点、控制节点或对象节点。动作节点表示某些动作。控制节点表示活动的控制流。对象节点用于描述活动内部使用的对象。边用于显示路径或执行流程。活动从初始节点开始,在最终节点终止。

活动分区/泳道

活动分区或泳道是一个高级别的分组ping 一组相关操作。单个分区可以指代许多事物,例如类、用例、组件或接口。

如果分区无法清楚显示,则将分区名称写在活动名称的上方。

分叉和合并节点

使用分叉节点和连接节点,可以生成活动内的并发流。分叉节点有一个传入边和多个传出边。这类似于一个过多的决策参数。当数据到达传入边时,它会被复制并同时分割到多个传出边。单个传入流被分成多个并行流。

连接节点与分叉节点相反,因为它具有多条传入边和一条传出边。它对所有传入边执行逻辑 AND 运算。这可帮助您跨单个输出边同步输入流。

包含大量流程的活动图会变得非常复杂和混乱。

Pin 用于清理事物。它提供了一种通过对所有流程进行排序并清理杂乱事物来管理活动执行流程的方法。它是一个对象节点,表示一个操作的一个输入或一个操作的输出。

输入和输出引脚都恰好有一个边。

为什么要使用活动图?

活动图 UML 允许您将事件创建为活动,其中包含由边连接的节点集合。活动可以附加到任何建模元素以对其行为进行建模。活动图用于建模,

  • 使用场景
  • 精品团课
  • 接口
  • 组件
  • 合作

活动图用于对流程和工作流进行建模。实用活动图的本质在于传达系统动态行为的特定方面。活动图捕获系统的动态元素。

活动图类似于流程图,它直观地显示了从一个活动到另一个活动的流程。活动图与流程图相同,但它不是流程图。可以使用 UML 流程图中的各种控制元素来控制活动流。简而言之,活动图用于描述多个活动之间的执行流程的活动图。

活动图符号

可以使用以下符号生成活动图符号:

  • 初始状态:活动发生之前的开始阶段被描述为初始状态
  • 最终状态:特定过程结束时系统达到的状态称为最终状态
  • 状态或活动框:
  • 决策框:它是一个菱形框,表示具有替代路径的决策。它表示控制流。
活动图符号
活动图符号和标志

如何绘制活动图?

活动图是活动的流程图。它表示各种系统活动之间的工作流程。活动图与流程图相似,但它们不是流程图。活动图是流程图的进步,包含一些独特的功能。

活动图包括泳道、分支、并行流、控制节点、扩展节点和对象节点。活动图还支持异常处理。

要绘制活动图,必须理解并探索整个系统。用户必须了解图中将要使用的所有元素和实体。核心概念——即活动——必须对用户清晰明了。分析所有活动后,应进一步探索这些活动,找出应用于活动的各种约束。如果存在此类约束,则应在开发之前加以记录。ping 活动图。

必须了解所有活动、条件和关联情况。一旦收集齐所有必要信息,就可以进行分析了。trac首先生成一个原型,然后将其转换为实际的图表。

开发过程中必须遵守以下规则ping 活动图

  1. 系统中的所有活动都应命名。
  2. 活动名称应该有意义。
  3. 必须识别出限制因素。
  4. 必须了解活动关联。

活动图示例

让我们将邮件处理活动视为活动图的示例。下图表示处理电子邮件的活动。

UML 中的活动图
活动图

在上面的活动图中,指定了三个活动。当邮件检查过程开始时,用户检查邮件是重要邮件还是垃圾邮件。两个警戒条件 [是必需的] 和 [是垃圾邮件] 决定了流程的执行流程。执行活动后,最终在终止节点终止流程。

何时使用活动图

活动图用于对业务流程和工作流进行建模。这些图用于软件建模以及业务建模。

活动图最常见的用途是,

  1. 以图形的方式对工作流程进行建模,这样很容易理解。
  2. 对系统各个实体之间的执行流程进行建模。
  3. 对系统内部使用的任何功能或算法的详细信息进行建模。
  4. 模拟业务流程及其工作流程。
  5. 捕捉系统的动态行为。
  6. 生成高级流程图来表示任何应用程序的工作流程。
  7. 面向对象或分布式系统的模型高级视图。

常见问题

活动图是一种支持并行流程、泳道和并发的 UML 图,而流程图则显示简单的顺序步骤。活动图既可以对软件行为进行建模,也可以对业务行为进行建模。

活动图展示了活动之间的控制流,而序列图则展示了对象如何随时间交换消息。活动图侧重于工作流程,序列图侧重于交互。

守卫条件是转换中用方括号括起来的布尔表达式。流程仅在条件为真时才遵循该路径,从而控制流程图中的决策。

是的。人工智能工具可以将书面流程描述转换为活动图,建议节点和决策,并将图表转换为代码或文档。

AI 通过根据需求生成 UML 图、检查一致性、推荐设计模式以及将模型转换为代码来辅助建模,从而加快分析和设计速度。

总结一下这篇文章: