在flowable平台中,执行流(Execution)完成了流程实例/执行分支/任务/子流程之间关系的建立。
flowable整个体系以执行流为基础,完成上下游数据的关联,让bpmn图纸能按照约定进行流转,形成了第一层概念。
1.执行流分类
在统一流程平台中,基于具体的业务需求,我们对flowable进行了限定:

(1)根执行流:对应流程实例。
(2)任务执行流:对应运行的并行运行分支,用于支持并行分支,实现同等级业务部门并行处理。
(3)会签执行流:用于管理会签组内的下级执行流对象【自身关联下级执行流的计数参数】。
(4)会签执行流,用于解决任务与执行流一对一映射关系。
(5)调度节点执行流,用于关联子流程,在统一流程平台中,上行审批是一个收模型,在顶层组织中业务会趋向统一,所以采用子流程来描述统一的业务。在业务流程中直接把统一部分的子流程引入及完成标准化流程处理。
(6)子流程实例
(7)(子流程)任务执行流
(8)(子流程)会签根执行流
2.统一流程平台中的执行流层级
为什么在统一流程平台中只让流程控制在两层呢?flowable本身是无限制的。
在统一流程平台中,以上行审批为设计初衷,所以基于运营与业务实际需求,我们把统一流程平台中的执行流设计为2级时合适的。如果层级太多,统一流程平台的设计中对执行流的操作将更为复杂,为什么呢?
统一流程平台是基于业务方向的定义,flowable是面向数据方向的实现。flowable以执行流为核心,关联流程实例与任务对象,提供基础的流转操作。统一流程平台以业务为核心,需要处理满足中国业务需求的特殊性功能期望。
在统一流程平台中,除了正常的运行使用flowable外,还需要在员工进行操作前完成实时数据流转权限验证,同时在统一流程平台中,存在大量基于系统运营需求改进的数据清理与改造方案,让统一流程平台的业务实现进行了大量的执行流对象操作,让flowable的流转基础与统一流程平台实时状态统一。所以,在统一流程平台中,子流程嵌套限制在了2个层级。
3.统一流程平台的功能

在这些功能中,存在大量需要对执行流程操作或重新构建的功能,流程实例控制在2个层级,既能满足超大规模企业流转的需求,同时也把运营的难度限制在可接受范围内。
经过近三年的不断改造与完善,统一流程平台已经具备支撑超大规模企业集中式统一审批的业务需求,并在实践中不断得到验证。