1.介绍
Activiti项目是一项新的基于Apache许可的开源BPM平台,从基础开始构建,旨在提供支持新的BPMN 2.0标准,包括支持对象管理组(OMG),面对新技术的机遇,诸如互操作性和云架构,提供技术实现。
创始人Tom Baeyens是JBoss jBPM的项目架构师,以及另一位架构师Joram Barrez,一起加入到创建Alfresco这项首次实现Apache开源许可的BPMN 2.0引擎开发中来。
Activiti是一个独立运作和经营的开源项目品牌,并将独立于Alfresco开源ECM系统运行。 Activiti将是一种轻量级,可嵌入的BPM引擎,而且还设计适用于可扩展的云架构。 Activiti将提供宽松的Apache许可2.0,以便这个项目可以广泛被使用,同时促进Activiti BPM引擎和的BPMN 2.0的匹配,该项目现正由OMG通过标准审定。 加入Alfresco Activiti项目的是VMware的SpringSource分支,Alfresco的计划把该项目提交给Apache基础架构,希望吸引更多方面的BPM专家和促进BPM的创新。
2.BPM
BPM是Business Process Management的缩写,含义是业务流程管理,是一种达成企业各种业务环节整合的全面管理模式。
BPM是为了实现一定的经营目的而执行的一系列逻辑相关的活动的集合,BPM最早是工作流和企业应用集成逐步融合而发展起来的。
3.生命周期
一个完整的工作流会经过5个步骤:
定义:工作流的定义从流程定义开始,主要是将业务需求转化为流程定义。
发布:由开发人员打包资源文件,讲资源文件部署到流程引擎
执行:按照事先定义的路线执行业务流程
监控:在流程执行过程中需要将业务状态进行调整操作,以适应当前流程节点的业务逻辑
优化:优化当前流程的执行过程,重新开始一个新的周期
4.特点
数据持久化:底层使用mybatis,通过最优sql语句获得最高性能
Service接口:通过各个Service接口进行相应的操作
流程设计器:Eclipse Designer、Activiti Modeler
Spring支持:activiti原生支持spring
数据分离:运行时和历史数据分离,保证运行效率