开源工作流框架及平台集成分析报告_开源工作流框架对比

工作报告 时间:2020-02-27 19:58:26 收藏本文下载本文
【www.daodoc.com - 工作报告】

开源工作流框架及平台集成分析报告由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“开源工作流框架对比”。

开源工作流框架及平台集成分析报告

目 录

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.1.JBpm.............................................................................................................................2

优点...................................................................................................................................2 缺点...................................................................................................................................3 2.2.OSWorkflow.................................................................................................................3

优点...................................................................................................................................3 缺点...................................................................................................................................3 2.3.Enhydra Shark...............................................................................................................3

优点...................................................................................................................................3 缺点...................................................................................................................................3 2.4.Activiti5........................................................................................................................4

优点...................................................................................................................................4 缺点...................................................................................................................................4 与统一开发平台集成...............................................................................................................4 3.1.流程定义插件集成.......................................................................................................4 3.2.核心包及jar包集成...................................................................................................4 3.3.部署方式.......................................................................................................................4 3.4.版本选择与维护问题...................................................................................................5 1.2.3.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页 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、文档丰富,用户群最大,开源组织十分活跃,被jbo收购后发展趋势良好;

第2页 缺点

1、Eclipse流程定义插件不开源;

2、Hibernate3做持久化层,会产生冗余表和数据;

3、JBpm3、JBpm4、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、版本更新慢,代码也不再按照开源方式来完成,商业化的定位限制了其发展。

第3页 2.4.Activiti5 优点

1、Activiti最大的优势是采用了PVM(流程虚拟机),支持BPMN2.0规范及其之外的流程格式;

2、与外部服务有良好的集成能力扩展,通过与Mule的集成加强了其集成能力;

3、继承了jBpm4的所有优点,实现了流程的可视化以及创新的Activiti Cycle协作组件;

4、对流程引擎运行期实例提供管理及监控的Web控制台。

缺点

1、数据持久层采用MyBatis3,没有遵循JPA规范;网络上反应“回退功能”实现起来比较困难;

2、核心是 BPMN 2.0 的流程引擎,BPMN2规范发展的比较慢,语言本身也过于复杂可读性差。

3.与统一开发平台集成3.1.流程定义插件集成1.JBpm与Activiti都有基于eclipse图形化插件和基于Web的流程设计器,2.OSWorkflow推荐手工编写 xml 格式的工作流程描述符,有基于Eclipse GEF技术开发的osworkflow建模工具;

3.Shark有JAWE作为定义工具,是否可与平台IDE集成还需要预研。

3.2.核心包及jar包集成1.都属于轻量级工作流框架:jBpm.jar 1.06M;activiti-engine-5.9 1.1MB;osworkflow-2.8.0.jar 393KB;

2.Shark核心包大小在6M左右,但是依赖jar包过于庞大,其他三个框架依赖jar包都不多,但是否与平台jar包冲突还需验证;

3.3.部署方式

1.JBpm与Activiti都可以与应用项目集成也可以单独部署;

2.OSWorkflow不可单独部署,一般推荐与spring集成,方便事务管理及功能扩展;

第4页 3.Shark可集成也可单独部署:可以直接作为java库来使用;也可以单独部署,作为CORBA ORB 或 Web 服务来使用;

3.4.版本选择与维护问题

1.JBpm4 积累文档丰富.网上具有大量的共享技术资源,也是最稳定的版本,但是目前已停止开发和更新;jBpm5基本上完全抛弃了jBpm4的代码,所有代码全部来自原先的Drools Flow,资料和文档相对较少;

2.OSWorkflow是opensymphony下的一个开源项,2.8版本稳定,文档不是很详细,有较多网络资源,曾是ERP软件开发中广泛应用的工作流框架,JBpm的出现带走了很多用户,使其发展乏力;

3.Enhydra Shark2.0后,很多组件、文档商业化,需要付费,而且版本更新慢,商业化的定位限制了其发展;

4.Activiti5是JBo jBpm架构师加入Alfresco后的作品,继承了jBpm4的所有优点,保持开发更新中,用户不断增加,较多用户推荐,开源社区活跃,发展前景看好。

4.总结

总体来看,四款工作流引擎框架与平台集成难度都不大,但所依赖第三方jar是否与平台冲突还需具体验证;从应用项目开发角度来看,JBpm4、Activiti5友好度较高,难易程度适中容易上手,而OSWorkflow、Shark则显得较为复杂;从文档资料及后期项目维护角度来看,Activiti5无论从版本升级,网络资料及社区活跃度来看都更胜一筹,其他三款框架都多少存在一些难度和问题。

第5页

下载开源工作流框架及平台集成分析报告word格式文档
下载开源工作流框架及平台集成分析报告.doc
将本文档下载到自己电脑,方便修改和收藏。
点此处下载文档

文档为doc格式

    热门文章
      整站推荐
        点击下载本文