活动图:可以用于描述系统的工作流程和并发行为。活动图中一个活动结束后将立即进入下一个活动,JBPM就是以活动图为基础。
基本概念
① 活动
② 起点和终点
③ 分支
④ 泳道
⑤分叉和汇合
活动图—活动
活动(activity)表示的是某流程中的任务的执行,它可以表示某算法过程中语句的执行.
在活动图中需要注意区分动作状态和活动状态这两个概念.
动作状态是原子的,不能被分解,没有内部转移,没有内部活动、动作状态的工作所占用的时间是可忽略的。动作状态的目的是执行进入动作(entry
action),然后转向另一个状态。
活动状态是可分解的,不是原子的,其工作的完成需要一定的时间。可以把动作状态看作是活动状态的特例
活动图——分支
在活动图中,对于同一个触发时间,可以根据不同的条件转向不同的活动,每个可能的转移是一个分支(branch)
活动图——分叉(fork)和汇合(join)
分支表示的是从多种可能的活动转移中选择一个,如果要表示系统或对象中的并发行为,则可以使用分叉(fork)和汇合(join)这两种建模元素。
分叉表示的是一个控制流被两个或多个控制流代替,经过分叉后,这些控制流是并发进行的;
汇合正好与分叉相反,表示两个或多个控制流被一个控制流代替
活动图——泳道
泳道(swimlane)是活动图中的区域划分,根据每个活动的职责对所有活动进行划分,每个泳道代表一个职责区。泳道和类并不是一一对应的关系,泳道关系的是其所代表的职责,一个泳道可能由一个类实现,也可能由多个类实现。
案例:在线填写请假条,三天以下,部门经理审核即可,三天以上需要CTO同意和HR批准,以上情况都通过,即可请假。
简单案例(登录)