jbpm和shark工作流引擎对比_第1页
jbpm和shark工作流引擎对比_第2页
jbpm和shark工作流引擎对比_第3页
jbpm和shark工作流引擎对比_第4页
jbpm和shark工作流引擎对比_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、jbpm和shark工作流引擎对比Xpdl:xml process definition languageBpel:Business Process execution languageJpdl:JBoss Jpbm Process definition language.考察角度:稳固性,易用性,灵活性,可监管,扩展性,可爱护性,进展趋势。SharkJbpm持久层Shark自己的一个0RM的方案 DODS,差不多上没有什么人来使 用DODS,也没有人了解它,表现 也专门一样.能够配置jdbc连接. 支持当前大多数流行的数据库. 能够访咨询LDAP用户左义数据.Jbpm3种使用的是开源框架Hi

2、bernate3, Hibernate是目前Java领域最好的一种数据持 久层解决方案,Jbpm将数据的治理职能分离 出去,自己用心于商务逻借的处理。 能够配置jdbc连接参数.能够配置使用web容器的连接池. 支持当前大务数流行的数据库.安装部 署能够独立部署. 能够和其他应用集成. 自带web治理工具.能够独立部署.能够和其他应用集成.自带web治理工具.针对不同数据库有一个对应的初始化脚本文 件.流程设 计器使用的Xpdl语言泄义流程. 有一个Jawe来图形化泄义流程. Jawe功能图形化功能相对较强. 能够编辑活动变量,流程逻辑操 纵属性.需要改造设计器和平台的权限模 型结合.已有一个

3、Flash版web设计器,感 受不是专门直观好用.引入UML泳道使流程用户模型更 加淸晰,但关于同一用户在多时 期都参与的流程难得画好.使用Jpdl流程定义语言.有一个Eclipse流程定义插件.插件图形化功能较弱,只能绘制流程流转的差 不多元素.对活动属性和流程逻辑操纵需要手工编借 Jpdl文件.没有设计插件的源代码,要和当前平台权限模 型结合需要手工编辑Jpdl文件.初步思路是自己来开发一个w设计器.有泳道概念,但泳道用于工作任务的处理者属 性,不表达在流程图绘制,流程图结构可不能 受到用户泳道的约束.定义语言遵循WfMC规范.内容结构是按元素类型组织的. Xpdl:制定的描述业务流程操纵

4、 流的XML格式规范,格式复杂. 与具体语言无关,不灵活.能够嵌入脚本操纵语言.宣传称也遵守WfMC规范. 内容结构和设计图流转顺序更加一致。 Jpdl:直观易明白,能够手工修改. 内容按结构储存在数据库中.方便扩展自己的逻辑操纵内容.可嵌入一个简单自泄义的脚本操纵语言.表单定制通过活动的变量来宦制处理表 单.能够通过变量来定制处理表单.异构系统交互Shark能够开C0RBA的服务.需要借助java的其他远程访咨询框架. 支持EJB.可改造 性体系和功能最为复杂.秉承“模块化”的思想,比较容 易扩展.Xpdl文件储存在大字段中,难于 分析扩展.活动事件模型专门容易扩展自己的操纵逻辑. Jpdl

5、文件被分析好结构化地储备在各个数協 表中,容易依照需求扩展出特定的活动模型, 如多人会签活动,超时自动处理活动,多人选 择处理活动.号门方便进行二次开发扩展升级.支持文 档公司积存文档丰富.积存文档丰富.网上具有大量的共享技术资源. Jpdl流程定义讲明文档专门好用.运行稳 固性比较稳固.比较稳固.可爱护 性公司对shark有专门多的积存. 熟悉的人员有爾明,明华等. 引擎开源.设计器代码开源.DODS开源吗,熟悉它的人专门少.熟悉的人员有宏伟,文力.对3.2版本流程泄义和操纵模型幽闭叫深入 的研究.比较容易爱护满足业务需求.引擎开源.设计器插件不开源.Hibernat开源,熟悉的技术人员多.

6、使用简单,易上手,源代码也易读.可配置 性各模块按接口调用,能够替换模 块的实现,专门灵活.能够配置数据库连接和日志输岀等. 没有那么灵活.SharkJbpm体系结 构结构淸晰,参见附图1.Activity-Assignment-UserT作列表产生于Activity- Assignment结构淸晰,参加附图2.Node-Task-User工作列表产生于Node-Task.活动和 流转模 型流程包.活动(泄义任务和处理页面). 块活动.子流程活动.工具活动(自动执行一些后台功 能).路由结点.转移.条件转移.否则转移. 例外转移.(依照活动或转移里泄义的条件 选择路径流转)没有包概念.任务结点

7、(能够泄义多个任务,每个任务有 自己的处理页而和处理人员)二TaskNode.状态结点(执行会中断,直到外部触发一个 信号signal,方便实现分布式系统)=State. 自动结点(执行可不能中断,自动连续流转) 二Node.决策结点(自动)二Decision.超结点(相当于块结点)二SuperNode. 子流程结点=ProcessNode.分支和汇聚结点=ForkNode和JoinNode. 转移(每个转移有一个名字,引擎的Token 依照名字操纵转移路径,路径命名使流程图 的业务逻辑更加宜观)二Transition.可用操 纵机制包,流程,活动能够定义属性操 纵变量.流程实例挂起,复原,终

8、止,舍 弃.活动实例的接收,完成,挂起, 复原,终止,舍弃,改派.改造后实现工作的回退,收回?流程,结点,任务能够左义属性操纵变量. 变量分为流程级不和任务级不,具备不同可 见性范畴.Action, Handle等也能够操纵变疑.每个结点能够左义事件(进入,退岀,专门, 超时等)处理逻W(Event-Action模型). 转移发生时也能够泄义事件的处理逻辑. 工作任务生成能够泄义自己的操纵逻辑. 超时事件.流程实例挂起,复原,终上,舍弃.任务实例的接收,完成,挂起,复原,终止, 舍弃,改派.改造实现任务的回退,收回(需要研究确认) 假如不改造,特定环节的回退能够通过流仪 设计来实现.可监控 管

9、内容流程泄义的加载,删除. 流程实例的创建,删除.能够实现任务执行情形査询和催 办.能够查询到相关环节日志记录.流程定义的创建,删除.流程实例的创建,删除.能够实现任务执行情形查询和催办.能够对流程流转,任务操作,变量操作等多 类日志进行查询分析.进展趋 势IBM早期支持(收购FileNet). 早期中国也有一批公司支持. 早期好评较多(20032005),活 跃了 1年半左右时刻.靠山是Enhydra.思想保守,不思进取,排除异己. 版本更新比较慢,代码的更新也 没有按照开源的方式来完成.Shark2. 0后,有专门多组件不开 源了,而且差不多上只有Demo, 假如要用,需要付费.仍有为数许

10、多基于Shark开发的 系统在运行爱护.进展已进入暮年.IBM/Oracle现在是支持BPEL的老大.BEA 支持 BPEL (收购 uego).是近年java&j2ee界极力举荐的开源选型 (2005到现在).靠山是jboss, jboss用户群专门庞大.RedHat收购了 Jboss.以后RedHat系统可能 会内嵌Jbpm.Jbpm组织当前仍保持专门活跃状态. Eclipse在组织BPEL的开源设计器. 越来越务的软件厂商采纳JBpm做为自己产品 中的工作流子系统.网上对Jbpm的正面评判比较多. 今年显现Jbpm原创人员离开组织现象.以后进展仍存在一定的不确泄性.三亠-出 1 (sha

11、rkBfQM) “tpcrfwwr 一WfPmcrw寥wCCE 王亍s-ltllc-p=8fe.n2 QsupEwurhlt1:纟-ory&.At vnsMk - uriflg jiubkd 3ehbunKkFth4-Bc pruccanytliw&s.gnalll) d2=-l.xn=e *9 mzrproem InqsErttuW necIH-|0|一dcunptF: nrinm4 二-ring priority 二-3gSus - =Hat proc? uatm: FnxcfsFtl=J4lllh_og u cum- sutci) rMJCIFEJ ,&d lrtes=rcwinwOum

12、inEjri-Mlm一as- MKC dni) 亍 mEpwhi fpenu wllyjbtcjwn=wmc一一 MH- hew C8艮Jtiap :Tunlu:uc 一 g JH*【c.s-y。.:乂 ring bvi-yfuunc: 王lk.3ring -2l-x2n: szin? 2l-=l-5- -C3.=TasHnstance)TasxMentInstanceXVariablelnstanceVariableLogPooledActorI仝ActionlLogToke nActionTansition NodeActionToke n Processin stance Tasklns

13、tanceSwinlanelnstanceMessaseLocProcezzInztanceCreateLosProcessInstanceEndLo流程图借软发起部门禎卑审批按交申PJode埴写借藏申诫、申诸通过w申诸不通过却件通紂财务按鮫Fork和join范例(这也是和shark区不较大的一个地点):引擎数据表讲明(能够明白jbpm大致包括哪些内容):JBPM.ACTION action 记录表JBPM.DECISIONCONDITIONS 结果条件表JBPM.DELEGATION 托付表JBPM_EVENT事件表处理进入或者离开事件JBPM.EXCEPTIONHANDLER 专门处理表J

14、BPM_ID_GROUP 用户组表JBPM_IDJEMBERSHIP用户成员表表现用户和组之间的多对多关系JBPM_ID_PERMISSIONS 用户权限表JBPM_ID_USER 用户表JBPM.MODULEDEFINITION 模块立义表JBPM.MODULEINSTANCE 模块实例表JBPM_NODE流程节点表JBPM_POOLEDACTOR聚拢参与着表JBPM_PROCESSDEFINITION 流程怎义表JBPM.PROCESSFILE 流程文件表JBPM.PROCESSFILEBLOCK 流程文件块表JBPM.PROCESSINSTANCE 流程实例表JBPM.RUNTIMEAC

15、TION运行中行为表JBPM_SCRIPTVARIABLES 脚本变量表JBPM.SWIMLANE 泳道表JBPM.SWIMLANEINSTANCE 泳道实例表JBPM_TASK任务表JBPM.TASKACTORPOOL用户行为汇总 JBPM_TASKINSTANCE 任务实例JBPM.TIMER 计时表JBPM.TOKEN 令牌表JBPM_TOKENVARIABLEMAP令牌变量影射表JBPM.TRANSITION 转换表JBPMVARIABLEINSTANCE 变量实例表 JBPM_VARIABLEINSTANCEBLOCK 变量实例块表JBPM.VARIABLEMAPPING 变量影射表

16、摘录Xpdl和Bpel对比:WFMC认为BPEL才是“执行语言”,而认为XPDL要紧用来“建模”。XPDL领域要紧依旧利用了活动图,状态图和FSM等元素:这些元素的结合专门容易用来表 达一个流程的建模模型:然而,我们的平常的做法,确实是直截了当拿那个建模模型来作为 了执行语言。我们如此做有什么缺点呢?第一,我们用XPDL表达了流程的建模模型,然而我们为了让它可执行,加入了太多的 业务人员不能明白得的元素,导致业务人员不能直截了当使用它;其次,我们用XPDL表达 了可执行的元素,为了容易“建模”,加入了专门多“活动”等“建模”元素,这些元素一 样会需要去配宜专门多的属性,而这些属性是干扰和阻碍“

17、执行”的。XPDL确实是一个建模和执行的混合体,是一个分析和实现的混合体。实现模型依旧要靠BPELo摘录Petia whohedPatterns-based Evaluation of Open Source BPM Systems: The Cases of jBPM, OpenWFE, and Enhydra Shark(分析角度操纵流、数据和资源)研 究报告的总结:总的来讲,能够概括为开源系统与开发人员(相关于业务分析师)结合得更加紧密。假 如有人对Java专门熟悉,jBPM或许是一个好的选择,否则不建议使ffljBPM:类似地,尽管从 工作流模式的角度看,OpenWFE拥有一种针对工作流标准的强大语言,我们却能够推断出它 关于非程序员来讲专门

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论