BPMN 2.0:新一代业务流程标注语言发布
BPMN是什么?
BPMI(The Business Process Management Initiative)开发了一套标准叫业务流程建模符号(BPMN)。在 BPMI Notation Working Group 努力下,2004年5月发布了BPMN 1.0 规范,2011年1月发布了BPMN2.0!
BPMN的主要目标是提供一些被所有业务用户容易理解的符号,从创建流程轮廓的业务分析到这些流程的实现,直到最终用户的管理监控。BPMN也支持提供一个内部的模型可以生成可执行的BPEL4WS。因此BPMN的出现,弥补了从业务流程设计到流程开发的间隙。
BPMN定义了一个业务流程图(Business Process Diagram),该业务流程图基于一个流程图(flowcharting),该流程图被设计用于创建业务流程操作图形化模型。而一个业务流程模型 (Business Process Model),指一个由图形对象(graphical objects)组成的网状图,图形对象包括活动(activities)和用于定义这些活动执行顺序的流程控制器(flow controls) 。
BPMN基础
业务流程图由一组图形元素构成。这些元素让很容易开发一个简单的,为大多数业务分析人员更熟悉的流程图。
对于建模者来说,这些图形都是易于区分和识别的。比如活动是长方形,路由是菱形。
需要强调的是,开发BPMN的一个动机就是创建一套简单的机制来创建业务流程模式,与此同时,还要能够应付业务流程内在的复杂性。
寻找一个可以处理这些相互冲突的需求的途径,是将这些图形符号组织并分类。
BPMN四种基本元素是:
• Flow Objects(工作流对象)
• Connecting Objects(连接对象)
• Swimlanes(泳道图)
• Artifacts(人造物品)
工作流对象(Flow Objects)
流对象是BPD的核心元素。有三个流对象 Event, Activity, Gateway
用一个圆圈代表事件(Event),它指的是在业务流程的运行过程中发生的事情。这些事件影响流程的流转,事件通常有一个cause (trigger)或者impact (result)。
有三种类型的事件:Start, Intermediate和 End
用圆角矩形表示一个活动,表示公司所执行的通用意义上的工作。一个活动可以由多个活动组成,活动的类型包括:Task 和Sub-Process
菱形代表网关,用来控制流程的分支和聚合。
连接对象(Connecting Objects)
在一个图中,连接对象将流程对象连接起来组成业务流程的结构。三种连接对象:
用实线实心箭头表示,代表流程中将被执行的活动的执行顺序。
用虚线空心箭头表示,用来表示2个分开的流程参与者(业务实体或业务角色)之间发送或者接收到的消息流。
点状虚线表示,用于显示活动的输入输出。
泳道图(Swimlanes)
用以区分不同的功能和职责。
BPMN有2种类型的泳道:
代表流程中的一个参与者。它也可以用作一个图形容器来与其他的pool相分隔。通常在交互流程中出现(B2B)。
Pool主要用于2个独立的实体或者参与者之间的物理划分。
各个pool中的活动通常是有自身的流程的。因此,顺序流(the Sequence Flow)通常不会越过多个pool的,而消息流是可以的,如下图就是一个带pool的业务流程图。
Pool的子划分,可以垂直或者水平的,用来对活动的组织和分类。
Lane更加接近传统的泳道的概念,Lane常用来将活动按照角色划分,流程可以在一个pool中跨Lane流转,但是在同一个pool中消息流通常不跨lane流转。
一个简单业务流程的例子:
详细的部分业务流程图:
描述对象(Artifacts)
为了扩展基本符号,提供描述额外的上下文,BPMN使用了描述对象artifact。
Data Objects是用于描述活动所需或者产生的数据。他们用连线与活动连接起来。
用于描述和解释目的,不会影响流程的流转。
提供一些附加性的文本信息给流程图的阅读者。
一个使用artifacts的例子:
BPMN分类
业务流程模型(Business process modeling )提供不同的模型,以面向不同的读者,使用BPD可以有2个基本的模型:
- Collaborative (Public) B2B Processes 协作流程模型
- Internal (Private) Business Processes 独立式流程模型
Collaborative B2B Processes 协作流程模型,该模型描述了2个以上的业务实体之间的交互,不是从某一个特殊的参与者的角度,而是从一个全局的角度描述了这些流程的交互。描述的方式是使用活动的执行顺序和参与者之间的消息的流转。
BPMN 的用途(通过 BPD 创建的业务流程种类)
<1>Collaborative(Public) B2B Processes
用Pool 的方式描述两个或多个业务实体(流程)之间的互动(参与者之间的互动);主要描述业务实体之间可视(Public)的活动之间的互动。
<2>Internal(Private) Business Processes
主要描述独立的业务实体(流程),也会描述出与外部参与者的互动关系,但主要描述业务实体之间不可见(Private,独立业务实体内部)的活动。
(例子:泳道内的业务实体为 Internal,泳道之间的业务实体为Collaborative)
使用BPMN建模的巨大价值
众多的成员保障了BPMN作为一个业务流程建模语言的标准。 BPMN的发展也是减少现有过多的流程建模工具和语言的局面。同时,BPMI组织借鉴了很多已有建模语言的技术和经验,例如UML的活动图,UML EDOC的业务流程图,IDEF等等。推动BPMN发展的另一个因素是,以往的业务流程模型和系统设计开发从技术上被分开,这样就要手动的将业务流程模型 转化为运行模型。这样会使流程所有者很容易出错,而且很难理解流程的升级和执行。虽然BPMN规范还在不断完善过程中,目前很多主流业务流程建模工具已经或即将支持这一新标准。
SIMUL8已全面支持基于BPMN2.0规范的业务流程建模,为主流的商业流程改进者提供了系统仿真巨大的威力!想了解SIMUL8如何应用BPMN对象进行标准业务流程建模? 请立即下载试用,更多资讯请联系我们技术服务人员(xunhetech@163.com) 。