Activiti工作流


1 工作流背景介绍

Activity 第一版在2010年5月发布,当时仅支持最简单的流程处理,之后的版本陆续完善了对BPMN 2.0规范的支持。其核心是使用Java开发的。其前身就是JBPM。
activiti5以及activiti6、flowable是Tijs Rademakers团队开发的,Activiti7是 Salaboy团队开发的。2016.7~2017.5期间,activiti团队内部已经产生了重大的分歧,最终将 Activiti 交给了 Salaboy 团队为(可以理解为离职之前的工作交接),该团队开发了一个新的工作流框架:flowable。
2019年6月中旬 salboy已从alfresco公司离职,activiti7/8开发动向不明确。
flowable以6.4.1版本为分水岭,大力发展其商业版产品。开源版本维护不及时。部分功能已经不再开源版发布,比如表单生成器(表单引擎)、历史数据同步至其他数据源、es等等。dmn目前是个半成品,没有camunda稳定和好用,对于dmn规范支持薄弱。部分商业版的组件被商业化,因此开源版不再维护。Mongdb目前也放到商业产品中了,开源版的几乎不能用。

2 什么是工作流

  1. 工作流(Workflow),就是通过计算机对业务流程自动化执行管理。

  2. 它主要解决的是“使在多个参与者之间按照某种预定义的规则自动进行传递文档、信息或任务的过程,从而实现某个预期的业务目标,或者促使此目标的实现”

3 工作流适用应用场景

关键业务流程:订单、报价处理、合同审核、客户电话处理、供应链管理等
行政管理类:出差申请、加班申请、请假申请、用车申请、各种办公用品申请、购买申请、日报周报等凡是原来手工流转处理的行政表单。
人事管理类:员工培训安排、绩效考评、职位变动处理、员工档案信息管理等。
财务相关类:付款请求、应收款处理、日常报销处理、出差报销、预算和计划申请等。
客户服务类:客户信息管理、客户投诉、请求处理、售后服务管理等。
特殊服务类:ISO系列对应流程、质量管理对应流程、产品数据信息管理、贸易公司报关处理、物流公司货物跟踪处理等各种通过表单逐步手工流转完成的任务均可应用工作流软件自动规范地实施。

4 工作流的优缺点

  1. 优点(太多了,只列举明显的三个)
    • 最大的优点就是免费开源;
    • 过程自动化,自动化办公;
    • 将流程和业务解耦;
  2. 缺点
    • 节点理解不同。外国人对节点的理解为"脚本任务"、“用户任务”,且不可细分、单个人(或角色)操作。而中国式的节点理解大多包含判断等逻辑处理,且可以再细分,可能还涉及多人操作;
    • 回溯难。工作流中,只有指向,没有逆向的思维,回溯往往会牵扯大量的表和表记录。比如不包含驳回功能…
    • 扩展需要与很多的 Event 来实现。
    • 入手简单,但二次开发难度大,门槛高。

5 工作流能帮我们干什么?

下面流程中涉及两个人和三个人的大致所需步骤:

参考文献:

Activit7 工作流应用+实战(全网最详细最全,篇幅巨长,蹲坑别看)_activiti7-CSDN博客