​  市场上基于Java语言的开源工作流引擎有:osworkflow、jbpm、activiti、flowable、camunda等,其中osworkflow、jbpm流程引擎已经过时,目前主流的开源流程引擎主要有activiti、flowable、camunda这三款,无论选择哪一个开源流程引擎,都不可能拿来即用,需要做大量的功能扩展,才能满足项目需求。以下以camunda开源流程引擎为例说明,需要扩展哪些功能才能满足中国特色的流程项目需求。

1、扩展中国特色流程操作功能

开源流程引擎默认就是基于节点连线进行流程流转,没有其它流程操作功能。需要增加中国特色流程操作功能,包括:办理、加签、减签、跳转、退回申请人、退回上一步、任意退回、委托、转办、传阅、催办、收回、撤销等,这些功能配置即生效,无需编码。

2、重新开发组织用户模型

camunda自带的用户组织模型很简单,无法适用中国企业组织架构,需要扩展了多组织用户模型,多组织架构、一人多岗、一人多部门、兼职部门等。

3、重新开发电子表单功能

camunda自带电子表单过于简单,仅仅是一个单表,字段按顺序排列显示,没有布局,没有扩展事件等功能,无法满足企业复杂业务需求,需要扩展了电子表单功能。

4、扩展流程配置选人规则

Camunda自带的流程审批人配置仅仅有user和group,无法满足中国企业复杂的选人需求,需要扩展流程多维度配置选人规则,包括:用户、部门、岗位、角色、关系等多种选人规则,尤其关系动态规则,审批类流程应用最多。

5、重新开发流程门户界面

Camunda自带的流程门户页面,包括发起流程、待办任务,流程审批,流程跟踪等功能,基本上不符合中国人操作习惯,以及对UI界面的审美需求,这部分前端界面均需要重新开发。

6、增加流程监控管理功能

Camunda开源版本功能较为简单,流程监控管理功能在Camunda商业版上才有,我们基于开源版本需要自行扩展流程管理监控的功能,包括:流程实例管理功能,方便管理员后台管理流程:增加办理人、减少办理人、流程删除、流程挂起等;流程分析功能:流程模板统计分析、任务办理统计分析、流程超时统计分析、流程实例统计分析。

7、完善流程设计器配置化功能

优化了流程设计器,camunda大部分手动输入项改成界面配置功能,提升流程设计效率,配置功能包括:流程选人、表单配置、按钮权限、流转规则、字段权限、超时流转、任务提醒、待办标题、启动权限等。

8、增加对国产数据库的适配

Camunda默认支持mysql\oracle\pg等主流的数据库,但对信创国产数据库(达梦、人大金仓、神州通用等)没有支持,我们需要按需求增加对国产数据库的适配,这部分需要修改Camunda进行扩展开发。

参考:http://www.yunchengxc.com/

开源流程引擎camunda如何扩展的更多相关文章

  1. 开源流程引擎Camunda BPM如何扩展数据库表

    前言 在使用开源流程引擎(如:JBPM.Activiti.Flowable.Camunda等)的时候,经常会遇到这样的需求,我们需要按照业务需求增加一张数据库的表,而且这张表是跟工作流引擎有交互的(注 ...

  2. 开源流程引擎osworkflow、jbpm、activiti、flowable、camunda哪个好?

    市场上比较有名的开源流程引擎有osworkflow.jbpm.activiti.flowable.camunda.其中:Jbpm4.Activiti.Flowable.camunda四个框架同宗同源, ...

  3. 开源流程引擎该如何选择flowable还是camunda

    市场上比较有名的开源流程引擎有osworkflow.jbpm.activiti.flowable.camunda.现在国内用的最多的是activiti.flowable.camunda,下面主要从功能 ...

  4. 基于camunda开源流程引擎如何实现会签及会签原理解析

    一.背景 市场上比较有名的开源流程引擎有osworkflow.jbpm.activiti.flowable.camunda.由于jbpm.activiti.flowable这几个流程引擎出现的比较早, ...

  5. Camunda开源流程引擎快速入门——Hello World

    市场上比较有名的开源流程引擎有osworkflow.jbpm.activiti.flowable.camunda.由于jbpm.activiti.flowable这几个流程引擎出现的比较早,国内人用的 ...

  6. 基于开源流程引擎开发BPM或OA有哪些难点

    前言     如何基于开源流程引擎开发OA系统?开源流程引擎哪个好?把它整合到自己的产品里难不难,有没有啥风险?这是大家经常遇到的问题.笔者从2006年开始参与流程引擎开发,经历了三代流程引擎研发,支 ...

  7. Fixflow引擎解析(一)(介绍) - Fixflow开源流程引擎介绍

    Fixflow引擎解析(四)(模型) - 通过EMF扩展BPMN2.0元素 Fixflow引擎解析(三)(模型) - 创建EMF模型来读写XML文件 Fixflow引擎解析(二)(模型) - BPMN ...

  8. camunda开源流程引擎的数据库表结构介绍

    Camunda bpm流程引擎的数据库由多个表组成,表名都以ACT开头,第二部分是说明表用途的两字符标识.本文以Camunda7.11版本为例,共47张表. ACT_RE_*: 'RE'表示流程资源存 ...

  9. 基于laravel的有偿开源流程引擎

    系统主要文档已经编写完成,具体请前往查看[系统文档](https://www.kancloud.cn/lijianlin/jishullin_workflow_engine/1894424 " ...

随机推荐

  1. FastAPI(七十二)实战开发《在线课程学习系统》接口开发-- 留言列表开发

    之前我们分享了FastAPI(七十一)实战开发<在线课程学习系统>接口开发-- 查看留言,这次我们分享留言列表开发. 列表获取,也需要登录,根据登录用户来获取对应的留言.逻辑梳理如下. 1 ...

  2. IP和静态路由技术概述

    1. IP地址的构成 IP地址:32比特的二进制数字,通常采用点分十进制方式表示. IP地址由两部分组成. 网络号码字段(Net-id)用于区分不同的网络.网络号码字段的前几位成为类别字段(又称为类别 ...

  3. Could not autowire. No beans of 'JavaMailSenderImpl' type found

  4. 解决PHP下载大文件失败,并限制下载速度

    1.问题: PHP在使用readfile函数定义下载文件时候,文件不可以过大,否则会下载失败,文件损坏且不报错: 2.原因: 这个是因为readfile读取文件的时候会把文件放入缓存,导致内存溢出: ...

  5. Mybatis结果集映射问题

    之前的数据库图简单都是纯小写格式,这一次做项目为了显得正规一些,模拟实际的情况,采用了驼峰命名的规则,这时候就遇到了结果匹配的问题. 之前只要 <select id="select&q ...

  6. Fabric2.2中的Raft共识模块源码分析

    引言 Hyperledger Fabric是当前比较流行的一种联盟链系统,它隶属于Linux基金会在2015年创建的超级账本项目且是这个项目最重要的一个子项目.目前,与Hyperledger的另外几个 ...

  7. 别像弱智一样提问 Stop-Ask-Questions-The-Stupid-Ways

    https://github.com/xcr1234/Stop-Ask-Questions-The-Stupid-Ways 你真的准备好了吗? 感谢群友 for you 提供 避免 xy-proble ...

  8. Spring 源码(4)在Spring配置文件中自定义标签如何实现?

    Spring 配置文件自定义标签的前置条件 在上一篇文章https://www.cnblogs.com/redwinter/p/16165274.html Spring BeanFactory的创建过 ...

  9. JDK内置锁深入探究

    一.序言 本文讲述仅针对 JVM 层次的内置锁,不涉及分布式锁. 锁有多种分类形式,比如公平锁与非公平锁.可重入锁与非重入锁.独享锁与共享锁.乐观锁与悲观锁.互斥锁与读写锁.自旋锁.分段锁和偏向锁/轻 ...

  10. python学习-Day5

    目录 今日学习内容详解 流程控制理论 程序执行流程分类: 重点小知识* 分支结构(if 语法) 单 if 分支 if 与 else 分支 if 与 elif 与 else 分支 if嵌套 练习 循环结 ...