Shark
Shark是体系和功能最为复杂的代表。它是另一款遵循WfMC的XPDL标准开源工作流引擎,并且同时遵循OMG组织的Workflow Management Facility规范。在所有开源工作流引擎中,Shark的体系最为完备和复杂。其一直秉承着“模块化”的思想,所以比较容易扩展。但是自从被Together公司收购后,Shark的商业化色彩已经越来越浓,改称为Together Workflow Server,并仅以Community Edition的形式提供了部分开源代码供参考。
OSWorkflow
OSWorkflow是最轻量型的代表,也是一款非常灵活和低级别定位的工作流引擎的实现框架。低级别定位的意思是说,它不是定位在解决流程模型对象和运转场景,而是提供一套可维护调度的机制,供开发人员自主扩展。这个维护流程调度机制OSWorkflow选择的是基于行为(Action)的FSM理论,所以OSWorkflow更像是一个复杂而灵活的有限状态调度机。
OSWorkflow在国内项目应用得较多,很多国内的简易审批流程项目都是基于其引擎二次开发而来。这主要是由于OSWorkflow是基于Action驱动的,而国内的客户也很容易接受这样的操作习惯。但OSWorkflow所依赖的FSM模型对于分支、聚合、子流程的支持度很低,这一点在实施过程中需要注意。
jBpm
jBpm是最适合扩展的代表,是在所有开源引擎中最适宜被商业化应用的一款。首先其流程建模模型是基于Activity Diagram(活动图)的,并在引擎构建上融入了FSM和PetriNet思想,所以其内核和根基比较牢固扎实。其次,自从被JBoss收购后,其3. x系列的结构更加趋于微内核,Plug-in思想也更加深入。其同时还提供了对BPEL扩展,存储支持JBoss Hibernate实现,集成了JBoss seam,规则引擎准备采用JBoss rules,并准备集成JBoss Messaging。这样,不论从内核和外围应用,jBpm都具有了强劲的动力。
另外,jBpm对Token的应用也很有特色,巧妙地利用Parent-Child Token的机制处理分支、父子流程等复杂应用场景。这个设计思想很值得大家学习参考。
YAWL
YAWL是算法和模式最值得研究的代表,它是Alast力主倡导的一款基于PetriNet建模的工作流引擎,其将PetriNet的Token与And、XOR、OR算法进行了融合,并对Workflow Patterns(工作流模式)中所有模式提供支持。但YAWL本身仅是一个研究性项目,所以其结构和实现缺少了商业化应用的特点。但有必要研究一下YAWL,一方面可以加深对工作流模式的理解,另一方面,YAWL的一些建模思想、处理算法很值得推敲和吸纳。
ActiveBPEL
ActiveBPEL 是BPEL引擎的代表,也是一款可执行BPEL4WS规范的开源流程引擎,其结构和实现方式具有很高的参考价值。目前国内很多正在开发基于BPEL产品的中小型软件厂商,其实现的很多基础性内容和思想都参考自ActiveBPEL。受目前国内中小型客户对流程需求的限制,基于BPEL的开源引擎或小型产品被市场接受度还很低。但BPEL所围绕的业务流程及流程整合应用是一个发展趋势。
- 浏览: 14413 次
- 性别:
- 来自: 广州
相关推荐
《Java轻量级工作流引擎框架开发文档》 Snaker是一个专为Java设计的轻量级工作流框架,它的设计理念类似于权限控制框架Spring Security和Shiro之间的关系,提供了简单易用且学习成本低的特性。相比如JBoss的JBPM等...
在“开发java工作流范例”这个主题中,我们将深入探讨如何定义、生成以及实现工作流实例,特别是在Java环境中。这个压缩包文件包含了一个名为"osworkflow例子"的示例项目,它很可能是基于OSWorkflow框架的一个实例,...
"jeeplus带工作流开发框架ani.zip"包含了完整的JEEPLUS工作流开发示例,可以用于研究和学习。通过分析源码,开发者可以深入理解JEEPLUS如何与Activiti协同工作,以及如何在实际项目中应用工作流。 总结,JEEPLUS...
Java平台上的工作流引擎在企业级应用中扮演着至关重要的角色,它们帮助企业自动化业务流程,提高效率。本文将深入分析四个主流的开源工作流引擎:Shark、osworkflow、jbpm和jflow。 首先,Shark是Enhydra项目的一...
二、Java工作流框架 1. Activiti:Activiti 是一个开源的工作流引擎,基于 BPMN 2.0 标准,提供了强大的图形化建模工具和丰富的API,便于开发人员集成到各种应用程序中。 2. jBPM:jBPM 是一个全面的业务流程管理...
《Activiti7精讲&Java通用型工作流开发实战》是一个全面深入的视频教程,旨在帮助初学者和有经验的开发者掌握Activiti7框架,并利用Java技术构建高效、灵活的工作流系统。本教程覆盖了从基础到高级的全方位内容,...
jBPM是另一个Java工作流引擎,它不仅支持BPMN 2.0,还支持DMN(决策模型与notation)和TDM(测试驱动的流程管理)。jBPM提供了一个全面的开发环境,包括流程设计器、规则引擎和事件处理,适合构建端到端的业务解决...
Java工作流引擎开发框架源码带代码生成器 工作流模块: 1.模型管理 :web在线流程设计器、预览流程xml、导出xml、部署流程 2.流程管理 :导入导出流程资源文件、查看流程图、根据流程实例反射出流程模型、激活挂起...
1. Willow:由Huihoo Power开发,Willow是一个Java工作流引擎,提供中文主页以获取更多信息。这个引擎设计用于与现有应用程序集成,帮助管理业务流程。 2. OpenWFE:OpenWFE是一个完整的业务流程管理解决方案,包括...
工作流技术是组织内部自动...了解并掌握常见的Java工作流框架,结合Web技术,可以开发出满足不同需求的业务流程管理系统,提升企业的运营效率。通过学习提供的文档,可以从基础到实践,逐步掌握Java工作流的实现方法。
6. **集成Java工作流引擎**: 开发者可以通过API将工作流引擎集成到Java应用程序中,如Spring Boot应用。这通常涉及配置、初始化引擎、部署流程定义,以及在业务逻辑中调用引擎的服务。 7. **最佳实践**: - 尽量...
OSWorkflow是一款轻量级的Java工作流框架,它强调简单性和易用性。OSWorkflow允许开发者通过简单的API来控制流程,并且支持自定义扩展。然而,相比其他框架,它的功能较为有限,不支持BPMN,对于复杂流程的管理可能...
Java 实现工作流可以通过各种技术和方法来实现,例如使用 Java 语言和相关框架来构建工作流系统。 工作流的发展 工作流的概念已经存在很久了,但是在近些年来,随着计算机技术和网络技术的发展,工作流的应用场景...
它可能是一个开源的Java工作流框架,支持基于XML的工作流定义语言,提供图形化的流程设计工具,以及丰富的API供开发者集成到自己的应用中。通过这个工具,开发者可以快速构建出具有流程控制功能的应用。 4. 源码和...
Java工作流是一个重要的软件开发领域,它涉及到流程的自动化、管理和监控。在这个“最简约的java工作流源代码”中,我们有机会深入理解如何在Java环境中实现基础的工作流功能。这个压缩包仅300多K,却包含了实现基本...
Java工作流在其中扮演的角色尤为重要,因为它不仅能够借助Java语言的跨平台特性,实现不同操作系统之间的无缝衔接,还可以利用Java丰富的生态系统,包括各种强大的框架和工具,来构建稳定可靠的应用程序。...
Java开发框架是软件开发中的重要组成部分,主要用于简化和加速Java应用程序的构建过程。在这个场景中,我们关注的是基于Java的开发环境,特别是JDK(Java Development Kit),它是一组用于开发和运行Java程序的工具...