
一飞开源,介绍创意、新奇、有趣、实用的开源应用、系统、软件、硬件及技术,一个探索、发现、分享、使用与互动交流的开源技术社区平台。致力于打造活力开源社区,共建开源新生态!
JDEasyFlow是一款通用流程编排组件, 适用于服务编排、工作流、任务审批等场景。它的特点是简单、灵活、易扩展。开发人员30分钟可入门上手,半天可掌握其原理。
使用Apache-2.0开源协议
支持顺序流转、条件流转、循环流转等。

支持脚本节点、用户节点和消息节点。

支持串行执行、并行执行、串并组合执行等。

支持单次交互一次执行多节点、多次交互一次执行一节点、多次交互一次执行多节点等。

JDEasyFlow支持子流程的场景,可将把复杂的流程节点拆分为子流程,便于业务逻辑抽象。

JDEasyFlow提供了流程任务审批的能力;常用的审批、撤销、驳回、会签、加签等功能都可支持;内置了简单的动态表单。既支持从页面发起和操作流程任务,也支持API的方式,京东OA审批系统也有对接。

JDEasyFlow是企业金融研发部自研的通用流程编排技术组件,适用于服务编排、工作流、审批流等场景,目前在部门的内部业务系统和科技输出系统中广泛应用,其他部门也有使用。
它的特点是简单、灵活、易扩展,开发人员一般30分钟可入门上手,半天可掌握其原理。它分为一个核心模块和若干扩展模块,模块之间松耦合,开发使用时可按需选择、快速集成、渐进式应用,同时支持JSON内置规范和BPMN规范。它的实现原理也有其特色,后面有介绍。
JDEasyFlow整体的特色为简单:

理论上JDEasyFlow可满足任何流程场景,它主要可解决三类问题:
在实际软件系统开发过程中,如果有如下诉求,可考虑使用流程编排:
JDEasyFlow的功能架构如下图,功能模块之间松耦合, 开发时可按需选择、快速集成、渐进式应用。最简单的使用方式为只在业务应用端引入jar包使用流程引擎。如果需要流程可视化功能,可集成BPMN规范模块,如果还需要流程实例持久化、流程定义持久化等更丰富功能,则可以集成其他相关模块。

JDEasyFlow的完整系统架构如下,主要有三个端:业务应用端、流程服务端、流程管理端,三个端可部署在单体应用中,也可分开部署。

JDEasyFlow底层为流程引擎/状态机模块(使用时选一便可,建议优先使用流程引擎),此模块提供了基于JSON格式的JDEasyFlow规范进行流程编排的能力。
BPMN模块提供了基于BPMN规范进行流程定义和可视化的能力,流程可视化基于bpmn-js,其本质为提供了将BPMN格式流程定义转换为JDEasyFlow格式的能力。

访问一飞开源:https://code.exmay.com/
#一飞开源 #开源项目 #工作流 #流程编排