开源工作流引擎该如何扩展?扩展哪些功能?
目前主流的开源流程引擎有activiti、flowable、camunda等,这几个开源流程引擎的版本很多,哪个开源流程引擎哪个版本的功能更多、性能更好,该如何选择请参考:https://lowcode.blog.csdn.net/article/details/116405594
无论您选择哪一个开源流程引擎,都不可能直接拿来即用,均需要做一定的扩展开发和集成开发,才能满足项目真正的需求。以下是基于开源工作流引擎需要定制和扩展开发的功能。
1、开发组织用户管理
activiti、flowable、camunda等开源流程引擎自带的用户组织模型很简单,无法适用中国企业组织架构,需要扩展了多组织用户模型,多组织架构、一人多岗、一人多部门、兼职部门等。
2、开发动态表单引擎
activiti、flowable、camunda等开源流程引擎自带电子表单过于简单,仅仅是一个单表,字段按顺序排列显示,没有布局,没有扩展事件等功能,无法满足企业复杂业务需求,需要开发表单设计器和表单引擎组件。
3、开发流程门户界面
activiti、flowable、camunda等开源流程引擎自带的流程门户页面,包括发起流程、待办任务,流程审批,流程跟踪等功能,基本上不符合中国人操作习惯,以及对UI界面的审美需求,这部分前端界面均需要重新开发。
4、定制流程设计器功能
开源版的流程设计器基于bpmn2.0规范,但在中国特色流程需求下往往需要扩展一些属性,这就需要定制和完善流程设计器功能,提升流程设计效率,配置功能包括:流程选人、表单配置、按钮权限、流转规则、字段权限、超时流转、任务提醒、待办标题、启动权限等。开源流程设计器很多,选型参考https://lowcode.blog.csdn.net/article/details/134514038
5、开发流程监控管理
activiti、flowable、camunda等流程引擎分社区版和商业版,社区版即开源版上的流程监控分析功能很简单,全部的功能在商业版上才有,需要在开源版本自行扩展开发流程管理监控和流程分析的功能,包括:流程实例管理功能,方便管理员后台管理流程:增加办理人、减少办理人、流程删除、流程挂起等;流程分析功能:流程模板统计分析、任务办理统计分析、流程超时统计分析、流程实例统计分析。
6、开发流程操作按钮
开源流程引擎默认就是基于节点连线进行流程流转,没有其它流程操作功能。需要增加中国特色流程操作功能,包括:办理、加签、减签、跳转、退回申请人、退回上一步、任意退回、委托、转办、传阅、催办、收回、撤销等,这些功能配置即生效,不能硬编码写死,不然很难维护。
7、开发流程选人规则
activiti、flowable、camunda等开源流程引擎自带的流程审批人配置仅仅有user和group,无法满足中国企业复杂的选人需求,需要扩展流程多维度配置选人规则,包括:用户、部门、岗位、角色、关系等多种选人规则,尤其关系动态规则,审批类流程应用最多。
8、国产化信创数据库适配
activiti、flowable、camunda等开源流程引擎均不支持信创国产化数据库(比如:达梦、人大金仓、神州通用等),需要扩展开发完成对国产数据库的适配。
9、集群高可用部署架构
activiti、flowable、camunda等流程引擎分社区版和商业版,社区版默认不提供集群高可用部署架构,需要项目上结合nginx、k8s等负载均衡软件或者云平台,自己开发部署负载均衡集群高可用架构。
流程引擎功能在线体验:http://www.yunchengxc.com