流程引擎发展

第一代 第二代 第三代 第三代 第五代 第六代
2003年, jBPM 1.0发布。
运行环境:J2EE 过程定义语言:jPDL(当时工作流厂商都有各自的过程定义语言和建模工具) 当时的主流的技术: applets, Swing桌面和EJB
2004年,jBPM 2.0发布
同时jBPM加入JBoss基金会. 运行环境:任何JAVA环境(POJO实现过程运行时),不需要应用服务器
2005年, jBPM 3.0发布,支持BPEL
- 过程定义语言:过程虚拟机
- 架构:与二代相比,架构发生了巨大变化。可以操作的业务功能大范围扩展,不仅通过JAVA实现状态机,而且支持建模;
- HIBERNETE作为持久机制并同时提供会话对象的概念,
- 工作流引擎所有的相关性交互都纳入contextual block范畴
这为以后的工作流命令设计模式和命令拦截设计模式的广泛应用打下良好的基础
2009年, jBPM 4.0 alpha版发布.
- PVM 成功工作流引擎的核心。
- 过程定义语言:BPMN, jPDL 和 BPEL
- 因为团队人员离开并启动Activiti,正式版没能发布。
- 主要改进:      - 无状态的服务API      - 运行时和历史数据的分离:保证运行时持久的性能
2010年, Activiti 1发布
改变:
- 版权从LGPL转到APACHE. - 过程定义语言:BPMN(唯一) - 从性能和扩展性加强PVM - 多租户支持 - 轻量级架构
2017年,flowable 6.0发布。
改变:
- 过程模型:放弃PVM,使用原生BPMN,实现真正的动态过程执行和复杂的过程迁移 - 数据远完全抽象:支持NoSQL - CMMN支持 - 函数式工作流



Tom Baeyens Effektif 诞生