Atitit 提升扩展性bpmn艾提拉总结 工作流
目录
1.1. 尽管BPMN 1.1全面地处理了过程建模符号,但它实质上缺少解决交换格式(用于图交换)的问题 1
1.3. 流对象是表示业务流程图(BPD)的核心元素的形状 活动 事件 网关 2
1.4. BPMN 2.0 只要了解以下 三个基本建模元素,就能掌握BPMN2.0的核心。 3
5. 3. 网关 (Gateway) 代替传统的if eles 6
7. BPMN和传统流程图之间最大的区别在于对事件的支持 9
7.1. 开始事件(消息事件),中间错误事件,边界计时器事件和两个结束事件。 9
。这导致实施供应商采用不同的标准(BPEL,XPDL或JBPM的JPDL)来存储BPMN流程模型,这不仅导致跨工具的可移植性损失,而且使各个利益相关者之间的沟通变得困难。
这里我们将总结这些年出现的不同标准的简短描述:
显示BPMN 2.0的所有图标和符号将会非常长。因此,我们只列出其中的一些,分为四种主要类型:
- 连接器:连接工作流中的元素。
- 活动:代表将要完成的工作。
- 网关:显示任务流的拆分和组装。
- 事件:表示影响过程的外部事件
正如我们所说的,流对象是表示业务流程图(BPD)的核心元素的形状,其中包括:
- 活动:是在过程中执行的任何工作。
- 事件:在业务过程中发生的任何事情。
- 网关:用于控制流程的流程。
下图描述了一个包含开始事件,活动(任务),一些网关和结束事件的示例流程:
下图就是本文所介绍的最常用的BPMN符号了。掌握了这些,就可以理解或者设计出大部分的工作流程和业务流程图了。
1. 开始 - 表示一个流程的开始。
2. 中间 - 发生的开始和结束事件之间,影响处理的流程。
3. 结束 - 表示该过程结束。
注意:如果您添加一个信封的图标给上述任何某个事件,那你将触发一个消息事件。即可以是由一个消息的到达而启动一个进程,也可以是在中间的某个位置与中间事件中发送一个消息(或捕获消息),或者可以在一个过程结束时发送的消息。
活动是工作或任务的一个通用术语。首先,一个活动可以是一个任务,或者它可以是一个当前流程的子处理流程; 其次,你还可以指定不同类型的活动。
例如,任务可以是需要人工完成的任务,也可以自动完成的任务,比如由脚本完成的任务,或服务任务(交由web服务器处理的指令)。
网关用来处理决策,有两种常用网关需要了解:
• 排他网关 (x) ——只有一条路径会被选择。
流程执行到该网关时,按照输出流的顺序逐个计算,当条件的计算结果为true时,继续执行当前网关的输出流;
如果多条线路计算结果都是 true,则会执行第一个值为 true 的线路。如果所有网关计算结果没有true,则引擎会抛出异常。
排他网关需要和条件顺序流结合使用,default 属性指定默认顺序流,当所有的条件不满足时会执行默认顺序流。
• 并行网关 (+) ——所有路径会被同时选择。
拆分 —— 并行执行所有输出顺序流,为每一条顺序流创建一个并行执行线路。
合并 —— 所有从并行网关拆分并执行完成的线路均在此等候,直到所有的线路都执行完成才继续向下执行。
• 包容网关 (+) —— 可以同时执行多条线路,也可以在网关上设置条件
拆分 —— 计算每条线路上的表达式,当表达式计算结果为true时,创建一个并行线路并继续执行
合并 —— 所有从并行网关拆分并执行完成的线路均在此等候,直到所有的线路都执行完成才继续向下执行。
• 事件网关 (+) —— 专门为中间捕获事件设置的,允许设置多个输出流指向多个不同的中间捕获事件。当流程执行到事件网关后,流程处于等待状态,需要等待抛出事件才能将等待状态转换为活动状态
子流程是嵌入在主流程中,可以被主流程或其他流程通过ID调用,即不用重复画出子流程的细节;
子流程的限制:
1)只能且仅能包含一个空启动事件
2)至少要有一个结束事件
3)子流程中顺序流不能直接设置输出流到子流程之外的活动上,如果需要可以通过边界事件代替。
泳道(Pool):代表流程中的参与者,用来对活动进行组织和分类;
泳池 (Lane):泳道里的一个子划分;
信息流(message flow):虚线表示;
数据对象和仓库;
文本注释;
。事件是发生了什么事情的信号,BPMN让你说出过程应该如何响应
其中包括a
这种类型的事件用于发送或接收信号。信号用于过程组件内的一般通信。一个BPMN信号与任何可能有兴趣注意并随后作出反应的人都会发射到天空中的信号耀斑类似。
- Bpmn格式与导出
工作流程图BPMN20.bpmn
- 工具
- ref
初学者的BPMN教程 - BPMN for Beginners.html