编者按:随着数字化管理的发展,企业对于业务流程系统的要求越来越精细化,有些企业选择自主研发的流程引擎,自主研发的流程引擎怎么样?本文介绍了一款国产自主研发的流程引擎。
为什么要自主研发
企业的流程系统很重要,而流程引擎是决定流程系统的关键。目前国内流程引擎市场主流的开源流程引擎有osworkflow、jbpm、activiti、flowable、camunda,都是国外的,底层架构设计优秀,但是存在一系列“水土不服”引发的的问题:
-
难以满足中国特色流程需求
-
难以满足复杂表单应用需求
-
流程引擎整合难
-
流程引擎统一管理难
上述问题,如果流程引擎本身是国产的,很多问题可以迎刃而解。
为什么能够自主研发——老厂商的底气
作为国内最早从事快速开发平台研发和应用的厂商之一,天翎自2003年开发研发,至今已经18年历史,平台源代码已达200万行,经过多年的研发实践,客户累计授权超10万+,拥有丰富的开发经验,该厂商的流程管理系统具有鲜明的中国特色流程特点。
自主研发的流程引擎能有多惊艳?
1、图形化的流程设计器
可视化开发,通过鼠标拖拽快速定制业务流程;
-
内嵌宏语言,支持复杂、个性化业务流程业务逻辑实现;
-
支持串行、并行、分支、聚合等多种工作流机制;
-
支持子流程节点,支持子流程多实例的配置;
-
支持流程的人工启动、自动启动;
-
节点类型支持开始、人工、自动、终止、完成、挂起、子流程、取消;
-
支持提交、抄送、会签、回退、回撤等动作;
-
支持路径通过条件及路径校验;
-
支持手机短信、邮件、站内短信消息通知;
-
支持过期时间设置及过期提醒;
-
支持流程代理及代理人、代理开始时间、结束时间设置;
-
支持短信审批、手机登录审批。
通过天翎MyApps流程引擎的强大功能,可以对系统流程管理提供强大的、全面的支撑,系统需求中涉及到的各种业务流程,可通过引擎快速配置实现,并且日后实际流程发生变化时,通过流程引擎可以快速的调整,而无需重新开发,极大的保护了前期IT建设成本。同样,由于设计界面友好,易学易用,非技术类的人员也通过可以通过培训掌握MyApps流程设计方法,可自己完成各种业务流程的配置、维护,进一步降低业务系统的开发、维护成本。
2、流程审批模式
天翎天翎平台流程引擎能够支持一般的并联、串联、分支、聚合、同步、异步等模式,如下图。
同时,也可以通过审批人与字段的动态联动,实现“实时选择审批人”、“主办、协办、阅办等分别制定”,或“加签”等模式。
3、审批人或执行人
审批人的制定有三种模式:
-
通过角色制定:
-
通过上下级关系指定:
-
通过自定义规则指定(动态选择审批人也是这种方式,自定义去获取表单手工选择的“审批人”字段来决定审批人)
通过以上脚本,也可以实现节点最大人数、节点人员排他等规则设定。
4、流程回退、回撤、挂起(断点)功能
天翎平台流程节点支持回退、回撤、挂起的功能。
回退,是审批人主动退回至前一个节点,也可以选择退回或跳转至“前面任一节点”。
回撤,是提交者认为提交物有问题,主动撤回。
挂起,如流程设定时间,挂起后时间暂停计算,待线下沟通后再开启。
5、子流程
子流程是流程引擎非常重要的元素,天翎平台支持单实例子流程多实例子流程。除了可以直接指定主流程跳转至指定的流程(或任务)以外,还支持通过条件在不同场景下触发的子流程不一样。
此外,子流程还具备流程启动、子流程审批设置、子流程参数传递、流程同步异步等属性的配置
子流程与主流程本身有相关的链接机制,在数据库层面,通过Parent字段进行标记和绑定,因此数据上天然就已经有所映射,可以通过平台的控件或SQL语句直接调用。
6、流程时限设置
天翎的流程引擎有时限设置的,可以设定每个节点的流程限定时间,如果过了设定的时间,流程会自动通过,或写触发其它动作的条件,如下图。
7、流程版本管理
天翎平台中,流程支持多事例,同时版本管理具有比较高的灵活性,版本管理有两种方式实现:
一是通过流程的版本命名方式直接处理。
文件系统XML文件:在5.0版本中所有配置信息都以XML的形式存储在文件系统中,通过简单的拷贝就可以实现在不同系统中的导入导出,同时方便版本管理器进行版本管理。
8、流程委托代理
流程代理有两种模式:
一是流程完全代理,通过流程后台用户里面设置。
二是某一条流程代理,在前台用户设置里面设置。
9、流程统计分析
天翎平台通过流程监控对流程的效率、最耗时节点等信息进行统计分析,也可以对流程、人员进行排名,以此作为流程优化的依据和条件。
对流程的用户的吞吐量、效率分析是通用功能,如果需要加入组织、岗位等维度,也只需要在我们的报表工具中加入相关列数据即可。
10、流程跟踪和日志
天翎天翎平台前台有多种可视化的方式跟踪流程,如下图。
天翎后台标准配有流程日志的监控,可以监控到某一流程、某一处理人、某一时间段的流程日志,当然天翎平台有相应的日志规范,也可以通过数据库上取相应的日志通过其他方式展现。
11、流程字段控制
在3.3.3.3.描述过,从流程对表单字段控制的角度,可以配置对应的表单对应字段在不同节点的正常、只读、隐藏。
12、流程通知
在流程发送、到达、回退、过期等动作下,天翎平台通过配置的方式可以选择通过站内信、短信、邮件等几种方式的通知和提醒,并且站内信等一些方式可以支持一键进入系统。在后续版本也考虑增加微信作为另一种通知方式。
-
短信
流程设计器中,可以设定通过回复短信识别码、邮件识别码进行审批,如下图。
-
微信企业号
微信企业号,直接通过微信的通知信息,即可链接至单据审批或执行,如下图。
13、流程文件归档
流程完成时,可设置流程文件归档,归档也可分为表单的附件归档和表单本身内容归档,两者都是归档指向到知识管理,天翎MyApps都支持,如下图。
14、流程的二次开发API
天翎天翎平台采用宏语言进行二次开发,因此不需要经过打包、变异、发布等环节,保存即生效,而且宏语言可以调用已经写好的API、也可以自定义API,还可以调用JAVA类、DLL、SQL语句、存储过程等,流程引擎中也不例外,在审批人、路径条件等不同位置,都可以通过宏脚本来进行灵活的二次开发,并支持SOAP Web服务方式调用,如下图。