1. 首页
  2. 科技部落

信也科技工作流平台的技术实践

1 背景

随着公司业务发展及内部业务流程诉求的增长,目前信息化系统不能够很好满足期望,主要体现如下:

  • 目前OA流程引擎无法满足企业特定业务流程需求,且移动端体验差,定制化困难,使用门槛高,影响简单流程快速上线
  • 企业内部系统无统一流程引擎平台,面向公司HR、运维、资产等相关IT系统流程化需求对接复杂,系统内集成流程功能重复开发,对接无统一标准造成严重资源浪费,主要体现方面如下:
信也科技工作流平台的技术实践
现状与项目背景

2 开源框架选型

2.1 技术选型-流程引擎

信也科技工作流平台的技术实践
开源技术对比

Flowable是一个流行的轻量级的采用Java开发的业务流程引擎。通过Flowable流程引擎,可以部署BPMN2.0的流程定义(一般为XML文件),通过流程定义创建流程实例,查询和访问流程相关的实例与数据。Flowable可以灵活地添加到我们的服务、应用、架构中,可以通过引入Flowable jar包,或者直接使用Flowable的Rest API来进行业务流程引擎的操作,相关核心服务如下:

信也科技工作流平台的技术实践
Flowable引擎架构
信也科技工作流平台的技术实践
Flowable引擎服务
  • RepositoryService:操作和管理流程定义和部署,deployment(部署)是ProcessEngine的基本单元
  • RuntimeService:每个流程都可以创建许多的运行实例,RuntimeService启动流程的实例,检索和存储实例的变量信息
  • IdentityService:管理组和用户的身份认证信息
  • FormService:流程表单引擎相关服务操作
  • HistoryService:检索ProcessEngine的历史数据,和相关流程数据
  • ManagementService:检索数据库的元数据和表的信息
  • DynamicBpmnService:动态的改变流程的定义

2.2 技术选型-Web端

信也科技工作流平台的技术实践
Web选型对比

2.3 信也工作流解决方案

  • 整体架构设计

引入Flowable之后,将相关服务处理分为身份认证服务,报表服务、任务调度、流程监控服务等、底层Flowable提供流程引擎相关基础能力

信也科技工作流平台的技术实践
整体设计
信也科技工作流平台的技术实践
系统架构设计

核心功能点:

  • BPM流程设计引擎

基于BPM2标准的流程设计规范,可视化流程设计与配置,构建企业业务流程服务:灵活配置实现跨系统的业务编排整合,为业务高效流转提供了坚实的技术支持,无需代码即可轻松创建、改变、维护业务流程应用,核心体现如下:

  1. 支持多节点类型:目前支持审批节点&服务节点&抄送节点&延时节点&流程分支,同时支持节点类型自定义扩展
信也科技工作流平台的技术实践
流程节点类型

2. 分支判定规则:满足不同条件的数据通过不同的分支进行流转,合理使用让业 务流程更“智能”

信也科技工作流平台的技术实践
流程分支

3. 动态节点负责人:不仅可以固定流程节点负责人,还可以根据表单内的字段值,http和DB动态数据以及企业架构等设置动态的节点负责人

信也科技工作流平台的技术实践
关联组织架构

4. 节点权限控制:每个节点都可以单独配置对表单的操作权限

信也科技工作流平台的技术实践
节点字段权限设置
  • Form表单引擎设计

像“乐高”一样,拖拽式设计表单,字段类型丰富 还可以定义表单样式,设置数据联动、公式函数、逻辑规则、来源标记等 强大、实用且美观。自定义您的企业数据入口,目前支持多达18种基础控件,支持几十种常用表单控件及多种校验规则在线配置功能:

信也科技工作流平台的技术实践
表单组建
信也科技工作流平台的技术实践
表单设计
  • 支持动态数据源接入
  1. 支持HTTP/DB 两种方式
  2. 支持动态JS脚本对内容进行转换
  3. 支持流程&前端调用
信也科技工作流平台的技术实践
动态数据设置
  • 中国特色功能
  1. 支持抄送:类似邮件抄送
  2. 支持代办:指定他人代理审批
  3. 动态加签:临时增加流程内的动态审批人
  • 三方集成—应用
信也科技工作流平台的技术实践
三方集成——应用

三方集成——接口

信也科技工作流平台的技术实践
三方集成——接口

3 总结

信也工作流平台(BPM)目前能够高效的,较好的快速贴合业务需求,并根据流程配置中心的配置减少大量重复工作从而提高执行效率。同时集成到米粒通及企业微信中,提高了用户体验,目前不足的地方是产品的工具化属性,平台属性不够凸显。后续会继续贴合公司相关业务更好扩充产品能力。( 如下附部分使用效果图)

信也科技工作流平台的技术实践
使用效果
信也科技工作流平台的技术实践
使用效果

【参考文献】

[1] Flowable文档: https://flowable.com/open-source/docs/bpmn/ch05a-Spring-Boot/

[2] Flowable官网:https://flowable.com/open-source/

[3] Vue文档:https://cn.vuejs.org/ [markdown-nice-docs(https://docs.mdnice.com “更多文档”)