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