BPMN简介
一、简介
业务流程建模表示法(Business Process Modeling Notation)是用于业务分析应用程序和指定企业流程的可视化建模语言,用于定义业务流程工作流的图形,是流程图的开放标准表示法。
BPMN提供业务工作流的图形表示,从业务分析师到利益相关者,任何人都可以轻松理解,并且可以协助业务流程分析、改进业务流程。
二、符号
BPMN符号可以分为以下七类:Event、Activity、Gateway、Flow、Data、Artifact、Swimlane。
1、事件(Event)
事件是发生的事情,可能对业务流程产生影响;事件用圆圈表示。
事件按照位置可以分为:开始事件(Start Event)、中间事件(Intermediate Event)和结束事件(End Event):

- 开始事件
 
表示流程开始的事件:

- 中间事件
 
表示出现在流程中的事件,可以单独作为流程节点的事件或附属于某个流程节点的事件(边界事件):

- 结束事件
 
表示流程结束的事件:

2、活动(Activity)
活动是在业务流程中执行的工作,用圆角矩形表示。
活动主要分为:任务(Task)、嵌入子流程(Sub Process)、调用子流程(Call Activity);其中,子流程是一种特殊的流程活动,可以包含其他的流程元素。

- 任务
 
表示在流程中需要完成的工作:

- 嵌入子流程
 
嵌入子流程是完整定义在父流程中的子流程:

嵌入子流程可以展开:

- 调用子流程
 
调用子流程是在一个流程(父流程)中调用另一个流程(子流程):

3、网关(Gateway)
网关负责控制业务流程的流动方式,用菱形表示。

- 排他网关(Exclusive)
 
判断网关出口顺序流的条件,从第一个满足条件的出口流出。
- 包含网关(Inclusive)
 
判断网关出口顺序流的条件,从所有满足条件的出口流出。
- 并行网关(Parallel)
 
用于对并行流的执行进行建模,而无需检查任何条件,即从所有出口流出。
- 基于事件的网关(Event-Based)
 

4、顺序流(Flow)
顺序流主要用于连接流程中的两个元素,用箭头来表示流程的走向;有四种连接对象:顺序流、消息流、关联和数据关联。

- 顺序流
 

- 消息流
 

- 关联
 

5、数据(Data)
在执行业务流程时,可能会在流程运行期间或结束之后生成数据;这些数据可以由多种类型的”数据”对象建模,例如:数据对象、数据输入、数据输出和数据存储。

6、Artifact

- 分组(Group)
 
分组是一个带有虚线边框的矩形,它提供了一种按不同类别进行分组的机制。
- 文本注释(Text Annotation)
 
文本注释可以对流程对象添加额外的详细信息。
7、泳道
BPMN中的泳道对象是代表业务流程参与者的矩形框,它包含由该泳道(参与者)执行的流程对象;泳道可以水平或垂直布置。

- 泳池(Pool)
 
泳池代表业务流程中的参与者,它可以是特定实体(例如部门)或角(例如助理经理、学生、供应商等)。
- 泳道(Lane)
 
泳道是泳池的子分区;它可以包含其他泳道以在需要时形成嵌套结构。
三、基本规则
1、顺序流
-  
用于显示活动(Activity)在流程中执行的顺序
 -  
不能跨越子流程边界
 -  
不能跨越池边界
 
2、消息流
-  
用于显示参与者之间的通信
 -  
无法连接同一池中的对象
 
3、边界事件
-  
有且只能有一个流出的顺序流
 -  
不能有任何流入的顺序流
 
4、子流程
- 子流程中的开始事件必须是
None Start Event