工作流基础

发布时间:2022-07-03 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了工作流基础脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

什么是BPM

BPM是Business PRocess Management的缩写,中文含义是业务流程管理,是一套达成企业各种业务环节整合的全面管理模式

可以简单的理解成是一种管理模式,气概念包括两种含义,一个是管理规范,一个是软件工程,由此引出工作流的概念

什么是BPMN

Business Process Modeling Notation,简称BPMN,中文译为业务流程建模标注,是由BPMN标准组织发布的,其第一版BPMN 1.0规范于2004年5月发布。经过多年的改进新的规范BPMN 2.0于2011年发布。之后各大厂商、开社区均基于2.0规范设计自己的流程引擎,结束了各个厂商“各自为政”的局面,相应地统一了标准,从而利于以后的产品迁移。

什么是工作流

工作流基础

工作流(Workflow),是对工作流程及其各操作步骤之间业务规则的抽象、概括描述。 工作流建模,即将工作流程中的工作如何前后组织在一起的逻辑和规则,在计算机中以恰当的模型表達并对其实施计算。 工作流要解决的主要问题是:为实现某个业务目标,利用计算机在多个参与者之间按某种预定规则自动传递文档、信息或者任务

工作流引擎

简单理解: 工作流是概念,工作流引擎是实现,可以理解是一个框架

应用

  • CRM系统
  • ERP系统
  • OA系统
  • 办公软件

工作流发展

  • 各个发展
    • JBPM

      • 官网

        • https://jbpm.org/
      • 目前最新版本

        • 7.38.0

        • 分水岭jbpm5

          • BPM5使用http://jBoss.org社区的大多数组件,以Drools Flow为核心组件作为流程引擎的核心构成,以hibernate作为数据持久化ORM实现,采用基于JPA/JTA的可插拔的持久化和事务控制规范,使用Guvnor作为流程管理仓库,能够与Seam、Spring、OSGi等集成
        • 特点

          • 从jbpm5以后全新设计,给之前的开发者带来很多不便,采用了apache Mina异步通信技,采用JPA/JTA持久化方面的标准,以功能齐全的Guvnor作为流程仓库,有redhat(http://jBoss.org被红帽收购)的专业化支持;但其劣势也很明显,对自身技术依赖过紧且目前仅支持BPMN2
    • activITi

      • 官网地址

        • https://www.activiti.org/
      • 历史渊源

        • activiti的创始人,Tom BAEyens,也是jbpm的创始人,由于jbpm的未来架构上产生意见,Tom Baeyens在2010年离开jboss,同年发布activiti5.0版本

        • 第一个版本5.0

          • Activiti5是在jBPM3、jBPM4的基础上发展而来的,是原jBPM的延续,而jBPM5则与之前的jBPM3、jBPM4没有太大关联,且舍弃了备受推崇的pvM(流程虚拟机)思想,转而选择jBoss自身产品Drools Flow作为流程引擎的核心实现,工作流最为重要的“人机交互”任务(类似于审批活动)则由单独的一块“Human Task Service”附加到Drools Flow上实现,任务的查询、处理等行为通过Apache Mina异步通信机制完成。
        • 优势

          • 采用了PVM(流程虚拟机),支持除了BPMN2.0规范之外的流程格式,与外部服务有良好的集成能力,延续了jBPM3、jBPM4良好的社区支持,服务接口清晰,链式API更为优雅;
        • 缺点

          • 二次开发难度也挺大,门槛高
          • 流程设计器官网好久不维护了,idea下不方便用,页面设计器需要汉化,而且有bug
          • 团队转向flowable
          • 新版本发展朦胧
      • 主要版本

        • 5.13

          • 历史项目
          • 23张表
        • 5.22

          • 当前主流
          • 25张表
        • 6.0

          • 主要版本
          • 28张表格
        • 7.X

          • 团队重心转移发展activiti-cloud
          • 主要还是基于6.0开发,新特性并不多
      • 现状

        • 很多商业公司多以5.22为主流,
      • 未来发展?

    • flowable

      • 官网

        • https://flowable.COM/
      • 优点

        • 支持jms、rabbitmq、mongodb方式处理历史数据
        • 支持事务子流程
        • 支持条件表达式中自定义juel函数
        • 修复了dmn规范设计器,activit用的dmn设计器还是旧的框架,bug太多
        • 对activiti的代码大量的进行了重构
        • .......
      • 缺点

        • 官网可见,在大力发展商业版产品,部分功能已经不再开源
    • camunda

      • 曾经是activiti5比较大的贡献者
    • 对比

    • Activiti7.1, jBPM7.25, Camunda, Flowable6.3技术组成对比:序号 帓技术组成 帓Activiti7.1 帓jBPM7.25 帓Camunda帓Flowable6.3.1帓1 帓数据库持久层ORM 帓MyBatis3.4.2 帓JPA2.2二次封装 帓Hibernate4.2.0 帓JPA 2.2帓帓持久化标准 帓 JPA规范 帓 JPA规范 帓 JPA规范 帓JPA规范帓3 帓事务管理 帓MyBatis机制/Spring事务控制帓 Bitronix,基于JTA事务管理 帓hibernate机制/Spring事务控制 帓hibernate机制,Spring事务控制帓4 帓数据库连接方式帓Jdbc/DataSource帓Jdbc/DataSource帓Jdbc/DataSource帓Jdbc/DataSource帓5 帓支持数据库 帓oracleSQL Server、MySQL、db2帓Oracle、SQL Server、MySQL、db2帓Oracle、SQL Server、MySQL、db2帓Oracle、SQL Server、MySQL、db2帓6 帓设计模式 帓Command模式、观察者模式等 帓帓帓帓7帓内部服务通讯 帓Service间通过API调用帓基于Apac...h

      • 活跃度
      • 统计时间:截至日期:2020-06-30 参考网站:https://www.oPEnhub.net/
    • 主要人物和发展历史

      • Tom Bayen

        • jbpm创始人
        • activiti创始人
        • 2010年5月第一版
      • Tijs Rademakers

        • 算是activiti5以及6比较核心得leader。现在是flowable框架得leader

          • activiti5

            • 开始参与者有作者,十几位核心开发人员,加上其他一些公司得员工参与
          • activiti6

          • flowable

      • Joram Barrez

        • 算是activiti5以及6比较核心的leader了。目前从事flowable框架开发
      • Salaboy

        • Activiti Cloud BPM leader(Activiti Cloud BPM 也就是目前的activiti7框架)

          • activiti7
          • 维护activiti5和6工作
        • 2019年6月中旬离职

脚本宝典总结

以上是脚本宝典为你收集整理的工作流基础全部内容,希望文章能够帮你解决工作流基础所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。