开源工作流框架及平台集成分析报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
开源工作流框架及平台集成分析报告
目录
1.Java主要开源工作流列表 (1)
1.1.jBpm (1)
1.2.OSWorkflow (1)
1.3.Enhydra Shark (1)
1.4.Activiti5 (1)
1.5.OpenWFE (1)
1.6.Werkflow (1)
1.7.OFBiz (2)
1.8.Flow4J (2)
1.9.ObjectWeb Bonita (2)
1.10.OBPM (2)
2.四大开源工作流框架分析 (2)
2.1.JBpm (2)
优点 (2)
缺点 (3)
2.2.OSWorkflow (3)
优点 (3)
缺点 (3)
2.3.Enhydra Shark (3)
优点 (3)
缺点 (3)
2.4.Activiti5 (4)
优点 (4)
缺点 (4)
3.与统一开发平台集成 (4)
3.1.流程定义插件集成 (4)
3.2.核心包及jar包集成 (4)
3.3.部署方式 (4)
3.4.版本选择与维护问题 (5)
1.Java主要开源工作流列表
1.1. jBpm
jBpm是一个灵活可扩展的工作流管理系统。作为jBpm运行时server输入的业务流程使用简单强大的语言表达并打包在流程档案中。jBpm将工作流应用开发的便利性和杰出的企业应用集成(EAI)能力结合了起来。
1.2. OSWorkflow
OSWorkflow是一个灵活的工作流引擎,设计成可嵌入到企业应用程序中。它提供了许多的持久化API支持包括:EJB,Hibernate,JDBC和其它。
1.3. Enhydra Shark
Shark完全基于WfMC和OMG标准,使用XPDL作为工作流定义语言。流程和活动的存储使用Enhydra DODS(一个开源OR映射工具)。
1.4. Activiti5
Activit5继承了jBpm4的所有优点,支持最新BPMN2.0规范,实现了流程的可视化以及创新的Activiti Cycle协作组件,此外,通过与Mule的集成加强了其集成能力。
1.5. OpenWFE
OpenWFE是一个开放源码的Java工作流引擎。它是一个完整的业务处理管理套件:一个引擎,一个工作列表,一个Web界面和一个反应器(存放自动代理)。可以与应用程序很好的给合。
1.6. Werkflow
Werkflow是一个灵活可扩展的基于流程和状态的工作流引擎。它的目标是满足可以想象的所有工作流程,从企业级的业务流程到小范围的用户交互流程。通过使用可插拔和分层结构,可以方便地容纳各种工作流语义.
1.7. OFBiz
OFBiz是一个非常著名的开源项目,提供了创建基于最新J2EE/XML规范和技术标准,构建大中型企业级、跨平台、跨数据库、跨应用服务器的多层、分布式电子商务类WEB应用系统的框架。OFBiz最主要的特点是OFBiz提供了一整套的开发基于Java的web应用程序的组件和工具。包括实体引擎, 服务引擎, 消息引擎, 工作流引擎, 规则引擎等。
1.8. Flow4J
Flow4J是一个可在Eclipse平台下以拖放的方式进行工作流建模的插件.。
1.9. ObjectWeb Bonita
Bonita 是一个符合WfMC规范、灵活的协同工作流系统。对于各种动作如流程概念建模、定义、实例化、流程控制和用户交互等提供了全面的集成图形工具。100% 基于浏览器、使用SOAP和XML数据绑定技术的Web Services封装了已有的工作流业务方法并将它们以基于J2EE的Web Service形式发布。
1.10. OBPM
OBPM是一个开源,轻量级的BPM系统。它的目标是让非IT人员也可以轻松构建IT 业务处理流程。OBPM内建工作流引擎(Workflow Engine), Form构建器,Report设计器。OBPM支持浏览器(IE/Firefox)做为客户端,同时还提供了强大的图形客户端。
2.四大开源工作流框架分析
2.1. JBpm
优点
1、JBpm是最适合扩展的代表,是在所有开源引擎中最适宜被商业化应用的一款;
2、JBpm使用了开源框架Hibernate3, 支持当前大多数流行的数据库,针对不同数据库
有一个对应的初始化脚本文件.
3、JBpm将数据的管理职能分离出去,自己专注于商务逻辑的处理
4、使用Jpdl流程定义语言,直观易懂,可以手工修改,并且有一个Eclipse流程定
义插件。
5、文档丰富,用户群最大,开源组织十分活跃,被jboss收购后发展趋势良好;
缺点
1、Eclipse流程定义插件不开源;
2、Hibernate3做持久化层,会产生冗余表和数据;
3、JBpm3、JBpm
4、JBpm5版本互不兼容,发展趋势不明确;
2.2. OSWorkflow
优点
1、OSWorkflow是最轻量型的代表,也是一款非常灵活和低级别定位的工作流引擎的
实现框架,可视化图标的流程在osworkflow 里都可以用代码实现;
2、OSWorkflow 有着非常优秀的灵活性,它能为应用程序开发者提供集成,也能与现
有的代码和数据库进行集成;
3、OSWorkflow基于Action驱动,符合框架开发人员的操作方式及编程习惯;
缺点
1、实现一个工作流系统非常繁琐,每一个流程步骤实现均需要代码改变状态字段;入
门难度较高;
2、组件功能匮乏,复杂流程项目需要基于其引擎做大量的二次开发,不适用;
3、配置项和开发代码量相对较多,后期维护成本较高;
2.3. Enhydra Shark
优点
1、工作流体系最为完备和复杂,秉承“模块化”的思想,比较容易扩展;
2、代码量较少,易于阅读、易于改写、易于维护;
3、有一个Jawe来图形化定义流程,图形化功能相对较强,可以编辑活动变量,流程
逻辑控制属性.
缺点
1、相比其他完全开源的框架,Shark2.0后,很多组件、文档商业化,需要付费;
2、版本更新慢,代码也不再按照开源方式来完成,商业化的定位限制了其发展。