【工作流引擎】BPMN2.0介绍

  • BPMN2.0
  • 1、 BPMN 基本建模元素
  • 2、 事件 (Event)
  • 3、活动 (Activity)
  • 4、网关 (Gateway)
  • 5、子流程和调用活动
  • 6、描述性建模符号

BPMN2.0

BPMN(Business Process Modeling Notation)是一种流程建模的通用和标准语言,用来绘制业务流程图,以便更好地让各部门之间理解业务流程和相互关系,旨在促进业务流程的沟通和理解。

1、 BPMN 基本建模元素

2、 事件 (Event)

  • 开始(Start Event) - 表示一个流程的开始。
  • 中间 (Intermediate Event)- 发生的开始和结束事件之间,影响处理的流程。
  • 结束(End Event) - 表示该过程结束。

注意:如果您添加一个信封的图标给上述任何某个事件,那你将触发一个消息事件。即可以是由一个消息的到达而启动一个进程,也可以是在中间的某个位置与中间事件中发送一个消息(或捕获消息),或者可以在一个过程结束时发送的消息。详细查看BPMN Quick Guide

3、活动 (Activity)


活动是工作或任务的一个通用术语。首先,一个活动可以是一个任务,或者它可以是一个当前流程的子处理流程; 其次,你还可以指定不同类型的活动。

例如,任务可以是需要人工完成的任务,也可以自动完成的任务,比如由脚本完成的任务,或服务任务(交由web服务器处理的指令)。

4、网关 (Gateway)

  • 排他网关(Exclusive Gateway) —— 只有一条路径会被选择
    流程执行到该网关时,按照输出流的顺序逐个计算,当条件的计算结果为true时,继续执行当前网关的输出流;

    如果多条线路计算结果都是 true,则会执行第一个值为 true 的线路。如果所有网关计算结果没有true,则引擎会抛出异常。

    排他网关需要和条件顺序流结合使用,default 属性指定默认顺序流,当所有的条件不满足时会执行默认顺序流。

  • 并行网关 (Parallel Gateway) —— 所有路径会被同时选择
    拆分 —— 并行执行所有输出顺序流,为每一条顺序流创建一个并行执行线路。
    合并 —— 所有从并行网关拆分并执行完成的线路均在此等候,直到所有的线路都执行完成才继续向下执行。

  • 包容网关 (Inclusive Gateway) —— 可以同时执行多条线路,也可以在网关上设置条件
    拆分 —— 计算每条线路上的表达式,当表达式计算结果为true时,创建一个并行线路并继续执行
    合并 —— 所有从并行网关拆分并执行完成的线路均在此等候,直到所有的线路都执行完成才继续向下执行。

  • 事件网关(Event-Based Gateway)
    专门为中间捕获事件设置的,允许设置多个输出流指向多个不同的中间捕获事件。当流程执行到事件网关后,流程处于等待状态,需要等待抛出事件才能将等待状态转换为活动状态。

5、子流程和调用活动

子流程是嵌入在主流程中,可以被主流程或其他流程通过ID调用,即不用重复画出子流程的细节;

子流程的限制:

1)只能且仅能包含一个空启动事件

2)至少要有一个结束事件

3)子流程中顺序流不能直接设置输出流到子流程之外的活动上,如果需要可以通过边界事件代替。

6、描述性建模符号

泳道(Pool):代表流程中的参与者,用来对活动进行组织和分类;

泳池 (Lane):泳道里的一个子划分;

信息流(message flow):虚线表示;


数据对象和仓库;

详细查看BPMN Quick Guide

【工作流引擎】BPMN2.0介绍相关推荐

  1. .NET CORE WEBAPI+VUE前后端分离工作流引擎ROADFLOW3.0更新发布

    经过长达大半年之久的开发升级,基于VUE为前端,.NET CORE WEBAPI为后端的前后端分离工作流引擎ROADFLOW3.0更新发布了.欢迎下载试用,下载地址:http://www.roadfl ...

  2. 首个Laravel工作流引擎发布 V1.0正式版

    工作流在日常得系统开发中不常见,因为大部分能应用上流程引擎得都是大系统,大集团,或者政企客户.Tpflow作为开发比较久得工作流引擎,一直不支持Laravel. 辛酸历程: 2022年3月,我们立项开 ...

  3. flac3d命令流实例大全_Activiti6.0工作流引擎深度解析

    本课程将系统且深入源码讲解Activiti6.0工作流引擎的使用.配置.核心api以及BPMN2.0规范.数据库设计及模型映射,Spring Boot2.0集成,工作流平台搭建.部署与运维等,通过本课 ...

  4. 工作流引擎添新丁:Flowable6.0发布

    为什么80%的码农都做不了架构师?>>>    如果你在还纠结该选择JPMB还是Acitiviti的时候,或者还在纠结于是否该从JPMB迁移到Activiti的阵营中的时候,很不幸地 ...

  5. Activiti7工作流入门和基本使用-工作流引擎介绍

    目录 一.工作流介绍 1.1 概念 1.2 工作流系统 1.3 适用行业 1.4 具体应用 1.5 实现方式 二.Activiti7概述 2.1 介绍 2.1.1 BPM 2.1.2 BPM软件 2. ...

  6. BPMN2.0规范及流程引擎选型方案

    BPMN2.0规范及流程引擎选型方案 一.基本概念 二.BPMN意义 三.主要元素 3.1 活动 任务 子流程 调用活动 事件子流程 事务 3.2 网关 排他网关 包容网关 并行网关 事件网关 复杂网 ...

  7. 工作流activity_开源、强大的工作流引擎:camunda入门介绍

    原创不易,请多多支持!对Java技术感兴趣的童鞋请关注我,后续技术分享更精彩. 简介 Camunda is a Java-based framework supporting BPMN for wor ...

  8. 最近进行的一次技术选型(工作流引擎)及相关知识介绍

    前言 最近有个新项目,需要实现类似工作流引擎的效果,如果不知道是啥,看完本文就懂了. 公司内其实也有些自研的,可能就是不像开源的这些那样,还支持这个那个规范,都是基于需求定制开发的,扩展性稍微差点. ...

  9. 小白学流程引擎-FLowable(五) — BPMN2.0模型规范

    前言: 不用到处百度BPMN2的博客了,本篇文章带你系统掌握BPMN2规范的核心知识点.全文2万字,全覆盖BPMN2知识点,图文并茂,泡杯咖啡,慢慢细品- 一.BPMN是什么 BPMN(Busines ...

最新文章

  1. 拉勾教育专栏文章转markdown
  2. python使用os和shutil模块进行文件创建,删除,移动,复制,重命名
  3. Excel 设定密码保护特定的内容
  4. SAP UI5 Fiori startup service
  5. 德国可能在年底前决定特斯拉柏林电池工厂将获得多少国家补贴
  6. jsp校园二手交易平台的设计答辩PPT模板
  7. 你与30W奖金只差一个 Apache Flink 极客挑战赛的报名
  8. python qt build environment
  9. 极速办公(PPT)字体如何设置斜体
  10. SHP格式数据点线面无边界坐标生成经纬度边界点集合数据
  11. 基于自抗扰控制adrc的高速列车运行控制算法研究
  12. 计算机属性资源管理器已停止工作,windows资源管理器已停止工作,教您windows资源管理器已停止工作如何解决...
  13. 从市盈率、市净率、增值率看公司盈利经营发展状况
  14. win7电脑变身WiFi热点,让手机、笔记本共享上网
  15. HTML基础实战-HTML内的页面跳转及常用标签用法(图文:刺客信条英灵殿测评)
  16. Python简单99例-训练每天
  17. 设计模式系列:搞懂装饰器模式,增加自身技能
  18. 【云原生网关】Kong 使用详解
  19. Linux SPI驱动学习——调用SPI读写函数
  20. 华为、华三设备日常工作使用配置命令

热门文章

  1. 拿到8000元的火焰杯比赛奖金,感谢霍格沃兹测试开发学社
  2. 发展五年后,网易云信冲击融合通信头把交椅
  3. RTP/RTSP/RTCP有什么区别?
  4. hydd的Linux笔记Day72
  5. 【JAVA】接入苹果授权登录
  6. 华为ac配置radius认证服务器_AC6005内置portal+外置radius认证失败
  7. 芯片低功耗设计方法概述。
  8. SpringBoot集成JWT(极简版)
  9. Qt使用QSettings读写ini文件
  10. jquery的insertBefore(),insertAfter(),after(),before()