一:定义
1,活动图(Activity Diagram)用来表示系统中各种活动的次序,它的应用非常广泛,既可用来描述用例的工作流程,也可以用来描述类中某个方法的操作行为。
2,活动图是UML中的流程图,它是事件流的另一种建模方式。
3,活动图是一种描述工作流的方式,它用来描述采取何种动作、做什么(对象状态改变)、何时发生(动作序列)以及在何处发生(泳道)
二:活动图的作用
*描述业务流程
*描述用例路径
*描述方法执行流程(程序流程图)
三:活动图实例
图书管理系统:
四:活动图组成元素
活动图由起始活动(Start Activity)、终止活动(End Activity)、活动(Activity)、转移(Transition)或流(Flow)、决策(Decision)、守护条件(Condition)、同步条(Synchronization)和泳道(Swimlane)等组成。
1,起始活动显式地表示活动图工作流程的开始,用实心圆饼来表示,在一个活动图中,只有一个起始活动。
2,终止活动表示一个活动图的最后和终结活动,一个活动图中可以有0个或多个终止活动,终止活动用实心圆点外加一个小圆圈来表示。
3,活动图中的活动用一个圆角矩形表示,其内部的文本串用来说明采取的动作。活动是指一组动作,它是实现操作的一个步骤,活动之间的转移用箭头来表示,称为转移或流,转移是由事件的发生所引起的活动的改变,用带有箭头的实线表示。箭头上可能还带有守护条件,发送短句和动作表达式。
4,守护条件用来约束转移,守护条件为真时转移才可以开始。
5,用菱形符号来表示判定,判定符号可以有一个或多个进入转移,两个或更多的带有守护条件的发出转移。
6,对象流是活动与对象之间的依赖关系,可以将与活动涉及的对象放在活动图中,用一个依赖将其连接到相应的活动中,对象的这种使用方法构成了对象流。在活动图中,对象流使用带箭头的虚线表示,对象用矩形表示,矩形内是该对象的名称,名称下的方括号表示该对象此时的状态。
7,可以将一个转移分解成两个或更多的转移,从而导致并发的动作。所有的并行转移在合并之间必须被执行。一条粗黑线表示将转移分解成多个分支(fork),同样用粗黑线来表示分支的合并(join),这种粗黑线称为同步条。
8,泳道用于划分活动图,有助于更好地理解执行活动的场所。泳道划分负责活动的对象,明确地表示哪些活动是由哪些对象进行的,每个活动只能明确地属于一个泳道。
9,在活动图中,泳道一般用垂直实线绘出,垂直线分隔的区域就是泳道。
五:活动图的绘制技巧
1,使用活动图来描述用例路径更加直观。
2,对面向对象建模而言,用活动图描述业务流程并不是对每个系统都必不可少的工作。
3,不要把描述业务流程的活动图看成可编程的模型,它与系统的实际构造情况和执行情况有很大的差距。
4,首先要对主要的业务流建模,然后再标出分支、合并和对象流。
5,尽量减少交叉线,如果图形较为复杂,适当使用颜色和注释。
六:案例
某教学管理系统增加课程信息用例路径如下,绘制相应的活动图。