UML 活动图
活动图是UML中另一个重要的图表,用于描述系统的动态方面。
活动图基本上是一个流程图,用于表示从一个活动到另一个活动的流程。活动可以被描述为系统的一个操作。
控制流从一个操作流向另一个操作。这个流程可以是顺序的、分支的或并行的。活动图通过使用不同的元素(如分叉、合并等)来处理各种类型的流程控制。
活动图的目的
活动图的基本目的与其他四个图表类似。它捕捉系统的动态行为。其他四个图表用于显示一个对象到另一个对象的消息流,而活动图用于显示从一个活动到另一个活动的消息流。
活动是系统的一个特定操作。活动图不仅用于可视化系统的动态特性,还可通过使用正向和逆向工程技术构建可执行系统。活动图中唯一缺少的是消息部分。
它不显示从一个活动到另一个活动的任何消息流。活动图有时被认为是流程图。尽管这些图表看起来像流程图,但它们并不是。它显示不同的流程,如并行流程、分支流程、并发流程和单一流程。
活动图的目的可以描述为:
- 绘制系统的活动流程。
-
描述一个活动到另一个活动的序列。
-
描述系统的并行、分支和并发流程。
如何绘制活动图
活动图主要用作系统执行的活动的流程图。活动图不是准确的流程图,因为它们具有一些附加功能。这些附加功能包括分支、并行流程、泳道等。
在绘制活动图之前,我们必须对活动图中使用的元素有清晰的理解。活动图的主要元素是活动本身。活动是系统执行的功能。在确定了活动之后,我们需要了解它们与约束和条件的关联。
在绘制活动图之前,我们应该确定以下元素:
- 活动
-
关联
-
条件
-
约束
一旦确定了上述参数,我们需要对整个流程进行头脑中的布局。然后将这个头脑中的布局转化为活动图。
以下是一个订单管理系统的活动图示例。在图中,识别出四个与条件相关联的活动。一个重要的需要清楚地理解的点是,活动图不能与代码完全匹配。活动图用于理解活动的流程,主要由业务用户使用。
下图绘制了四个主要活动:
- 发送订单给客户
-
订单的接收
-
确认订单
-
派送订单
收到订单请求后,进行条件检查以确定是否为正常订单或特殊订单。确定订单类型后,进行派送活动,并将其标记为流程的终结。
在哪里使用活动图
活动图的基本用途类似于其他四种UML图。具体用法是对从一个活动到另一个活动的控制流进行建模。此控制流不包括消息传递。
活动图适用于建模系统的活动流程。一个应用程序可以有多个系统。活动图还捕捉这些系统,并描述从一个系统到另一个系统的流程。这种特定用法在其他图中不可用。这些系统可以是数据库、外部队列或任何其他系统。
现在我们将研究活动图的实际应用。从上面的讨论可以看出,活动图是从一个非常高的层次绘制的。因此,它提供了系统的高层视图。这种高层视图主要面向业务用户或其他非技术人员。
该图用于建模活动,也就是业务需求。该图对业务理解的影响更大,而不是实现的细节。
活动图可用于以下方面:
-
通过活动来建模工作流程。
-
建模业务需求。
-
对系统功能的高层理解。
-
在后期调查业务需求。