一、简介

业务流程建模表示法(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
参考资料