事件Event是BPMN2.0执行语义中重要的概念,是流程运行过程中发生的对象,会影响流程的流转。
从不同的角度来看,事件有不同的分类。从流程生命周期角度定义,事件可以分为开始,中间,结束三种类型,从事件的动作处理,触发方式角度定义,事件又分为捕获,抛出事件。还有很多其他的事件类型,包含在上述主要分类之下。利用事件机制,可以通过事件控制器为系统增加功能,如与其他业务系统集成,报警等。
事件的图形符号是一个圆。其中空心圆表示开始事件,代表流程的起点,初始化流程并触发第一个活动的执行。两个嵌套的圆代表中间事件,发生在开始事件和结束事件的中间,会影响流程的发展,但不会导致流程的开始和结束。结束事件是一个黑体的圆,标志一个事件或者流程的结束,当它发生在参与者的活动之后,通常标记流程结束,用户的业务活动结束,但只代表业务活动结束,并不代表业务活动达成用户的期待结果。
站在触发方式的角度,捕获事件的发生需要动作或者状态的变化来触发,在这里这个动作和状态的变化定义为触发器,当触发器被触发或者激活的时候,捕获事件将发生,根据捕获事件的类型和定义,将影响流程的执行。可能导致流程的开始,流程的继续执行,当前的任务或者流程的取消等。
与捕获事件相反,抛出事件是自己触发的,可以在流程执行过程中触发,也可以在流程结束时触发。
捕