Activiti6 - 第一篇:工作流概述

2020-05-25  本文已影响0人  Tian_Peng

前言

在计算机尚未普及时,许多工作流程采用手工传递纸张表单的方式,一级一级审批签字,工作效率非常低下,对于数据统计和生成报表的功能,需要经过大量的手工操作才能实现。
随着计算机的普及,这些工作的参与者只需要在计算机的系统中填入工作内容,系统就会按照预先定义好的流程自动执行,各级审批者可以得到工作的信息并作出相应的审批和管理操作,数据统计和报表的生成均由系统代为完成,这样大大提高了工作效率。
在这种背景下,各种的工作流应用以及中间件应运而生。

基本概念

BPMN2.0规范简述

早在20世纪70年代,办公自动化概念出现的时候,工作流思想就已经出现,人们希望新的技术可以改善,但是由于当时计算机没有普及,网络技术还不普遍等原因工作流技术仅仅提留在研究领域,到了20世纪90年代以后,各种技术条件逐渐成熟,工作流技术被应用于电信、软件、制造、金融和办公自动化领域。
随着工作流技术的兴起,为了给全部业务的参与者提供易于理解的标准标记法,由业务流程管理倡议组织(BPMI)开发出了“业务流程建模标记法”(Business Process Modeling Notation),简称BPMN。
BPMN规范1.0版本由BPMI组织于2004年发布,BPMN规范的发布是为了让业务流程的全部参与人员可以对流程进行可视化管理,BPMI组织于2005年合并到OMG(Object Management Group)组织中,2008年1月发布BPMN1.1规范。
BPMN2.0规范于2011年1月正式发布,并且全称改为Business Process Model And Notation(业务流程和建模符号),它继承了1.0版本的内容,并且注重流程执行语法和标准格式转换

BPMN2.0元素

BPMN中定义了5个基础的元素类别:

Activiti介绍

当BPMN2.0规范在2011年被发布时,各个工作流引擎的供应商均向其靠拢,包括jBPM5和Activiti。
Activiti的第一个版本为5.0alphal,一直到2010年12月发布了Activiti5.0的正式版中间经历了4个alphal版本、2个beta版本、1个rc版本,直到5.0正式版才出现对BPMN2.0规范的支持,Activiti6.0于2017年5月发布。
Activiti的创始人Tom Baeyens原是jBPM的创始人,由于在jBPM的未来架构上产生意见分歧,Tom Baeyens于2010年离开了jBoss并加入Alfresco公司,Tom Baeyens的离开使得jBPM5完全放弃了jBPM4的架构,基于Drools Flow重新开发。
而在2010年的5月Tom Baeyens发布了第一个Activiti版本(5.0alphal),由此看来它更像是jBPM4的延续,也许为了让其看起来更像jBPM4的延续,Activiti团队直接将Activiti的第一个版本定义为5.0.

Avtiviti和jBPM对比

技术组成 Activiti5 jBPM5
数据库持久层ORM MyBatis3 Hibernate3
持久化标准 JPA规范
事务管理 MyBatis机制/Spring事务控制 Bitronix,基于JTA事务管理
数据库连接方式 Jdbc/DataSource Jdbc/DataSource
支持数据库 Oracle、SQL Server、Mysql等多种数据库 Oracle、SQL Server、Mysql等多种数据库
设计模式 Command模式、观察者模式
内部服务通讯 Service间通过API调用 基于Apache Mina异步通讯
集成接口 SOAP、Mule、RESTful 消息通讯
支持的流程格式 BPMN2、xPDL、jPDL等 目前仅支持BPMN2 xml
引擎核心 PVM(流程虚拟机) Drools
技术前身 jBPM3、jBPM4 Drools Flow
所属公司 Alfresco jBoss.org
上一篇下一篇

猜你喜欢

热点阅读