NODE: 此篇是本人入门BPMN的时候看文档时做的一个小总结,未总结完结,仅供学习!
一、任务
1. 服务任务
(Service Task)一般由软件自动完成,用于调用服务。
2. 发送任务
(Send Task),用来把消息发送给外部参与者,发送完毕任务就结束。
3. 用户任务
(User Task),用于为需要由人工参与者完成的工作建模。
4. 业务规则任务
(Business Rule Task),主要是用来对接业务规则引擎(Business Rules Engine),用于同步执行一个或者多个规则
5. 脚本任务
(Script Task),自动化活动。当执行到脚本任务时,将执行相应的脚本。
6. 接收任务
(Receive Task),等待特点消息的到来。执行到接收任务时,流程状态将提交给持久性存储。
7. 手工任务
(Manual Task) , 定义流程引擎外部的任务。手工任务就当做传递活动处理即可。
8. 任务标记
任务标记为循环,多实例或者补偿。标记可以与任务类型组合【细锁见官网】
二、 网关
菱形表示,(Gateway)网关 —> 逻辑门,控制顺序流的分叉(Fork)与连接(Join)。一个关口,控制是否允许通过。
1. 排他网关
(XOR网关),只会选择一条路径执行。类似
if else
2. 序列流
序列流是流程中俩个元素之间的连接器
-
条件序列流
评估传出序列流上的条件,多个的话就并行执行
-
默认序列流
当无法选择其他序列流时,就以默认的序列流作为活动的传出序列流。如下面的
else
这条路,默认序列流用'/'
来表示
3. 并行网关
在流程模型中引入并发性最直接的网关是并行网关,它允许分叉到多个执行路径或连接多个传入的执行路径(Fork Join).
所有路径会被同时选择
4. 包含网关
可以同时执行多条线路,也可以在网关上设置条件
5. 事件网关
是通过捕获到的事件来选择的,只关心第一件发生的事情
三、事件
ps: 太多了,不记得就查。
四、子流程
子流程(Sub-Process),是一个流程中的复合型或者组合型的活动。分为
- 折叠的子流程(Collapsed Sub-Process)【内部细节不对外公布,黑盒】
- 展开的子流程(Expanded Sub-Process)【白盒】
还可以在子流程上附加事件(Attach Event)
1. 嵌入式子流程和调用活动
- 当流程执行到达活动时,两者都将调用子流程。
不同:调用活动引用流程定义外部的流程,而子流程则嵌入到原始流程定义当中。
- 调用活动的可视化方式与折叠的嵌入式子流程相同,只是边框更粗。
2. 事件子流程
事件子流程由事件触发,不支持空白开始时间。
事件子流程被可视化为轮廓为虚线的嵌入式子流程
3. 事务子流程
事务子流程是一个嵌入式子流程,可用于将多个活动分组到一个事务
- BPMN事务与ACID事务