可视化开发主流开源流程引擎与设计器研究对比

开发低代码平台、工单系统、OA 系统和 BPM 软件等均需要可视化的业务流程设计器和业务流转功能,核心是流程引擎和流程设计器。主流开源流程引擎包括 Activiti、Flowable、Camunda、jBPM 和 osworkflow,主流流程设计器则有 bpmn-js、mxGraph、activiti-modeler、flowable-modeler 和 reactflow。本文对比分析这些框架。

Activiti 由 Alfresco 公司开发,最新版本为 Activiti cloud 7.1.0,其核心功能为工作流整合和云托管。Flowable 基于 activiti6,修复了 bug,并实现了 DMN 和 BPEL 支持。Camunda 与 Flowable 相似,基于 activiti5,支持 BPMN、CMMN 和 DMN,功能完善。jBPM 由 JBoss 公司开发,最高版本 7.61.0.Final,保留了 PVM。osworkflow 是一个轻量级流程引擎,基于状态机机制,适合流程简单的情况。

bpmn-js 是一个 BPMN 2.0 渲染工具,易于集成到项目中。mxGraph 是一个强大的 JavaScript 流程图库,支持交互式图表。Activiti-modeler 和 flowable-modeler 是 Activiti 和 Flowable 的 web 版流程设计器,集成简单但界面不美观。react-flow 是基于 react 的节点编辑库,允许高度自定义节点。

Camunda 的功能更强大,性能和稳定性更优,适合企业级应用。bpmn-js 支持 BPMN 图表构建,react-flow 图形高度可定制。Camunda 和这两个框架均适合集成开发。

展望未来,业务系统需微服务化并上云,流程引擎将微服务化,减少耦合,通过 HTTP 接口实现工作流能力整合。AI 和 RPA 的融合使得智能业务流程平台诞生,RPA 功能强大,开始替代和介入 BPM,两者出现融合趋势。全象低代码平台将采用 golang 语言重新设计工作流框架,拆分流程引擎,选择支持高度定制的流程设计器,以提供操作性强且美观的流程设计器。