UML之活动图

          之前学过并画了类图,它属于静态图。除了它还有对象图、包图,在这里先不介绍。先来学习行为图。系统建模,需要从系统的结构和行为两个方面来描述,其中系统的行为是通过状态图、活动图、序列图和协作图来描述的。我们先来学习活动图,下图则为一个活动图的大体框架。


          一、概念

          我们熟知的是流程图,它常被用来建立算法模型,使用流程图可以表示一个算法的执行序列、过程、判定点、分支和循环。今天学习的活动图与流程图十分类似,不同之处在于它支持并行活动。但它也有它的缺点:很难清楚地描述动作与对象之间的关系,没有交互图直接。

         二、基本元素

         从上图中我们可以知道活动图包含如下元素。

         活动状态Action states

         活动状态之间的转移transitions

         判断decisions,一种表示判断决策的特殊活动

         保证条件guard conditions,只有保证条件为真时转移才发生。

         同步条synchronization bar,一种表示活动之间的同步的特殊活动。

         起点和终点:起点有且只有一个,终点可有一个或多个。

         三、作用

         描述一个操作的执行工程中所完成的工作或者动作;描述对象内部的工作;显示如何执行一组相关的动作,以及这些动作如何影响周围对象;描述用例的执行;处理多线程应用。不是任何场合都能使用活动图的,显示对象之间的合作时不能用,显示对象在生命周期内的运转情况时也不能用。

        四、泳道

        所谓泳道技术,是将活动用线分成一些纵向区域,这些纵向区域成为泳道。每个区域代表一个特定类,或者人,或者部门的责任区。泳道技术是活动图中引入的一种面向对象机制。可为提取类及分析各个对象之间的交互提供方便。举个例子,顾客到商场购物的流程如下图。

UML之活动图_第1张图片 

        五、应用实践

        针对机房收费系统,画了四个活动图:登录、添加用户、删除用户和查找记录,有不完善的地方欢迎大家 指出改正。

UML之活动图_第2张图片

UML之活动图_第3张图片

             六、总结

             活动图,故名思议,就是有活动流程的图,找出一个活动流程,分析好它的起始点和活动流程,就会很容易地画出来。

         

    

         

         

      

你可能感兴趣的:(活动图)