是否有任何不使用 BPMN 和 BPEL 的工作流引擎?



我们的业务计划构建一个拥有大约2000名用户的大型业务应用程序。

系统中的许多对象需要一系列稍微复杂的批准、通知等。

由于各种原因,我们公司决定拒绝正式使用BPMN或BPEL。我正在寻找的是一个工作流引擎,我可以将这些对象传递给它,作为促进、跟踪和管理这些对象状态的一种手段。我们使用EJB 3.1和WebSphere AS.来实现这个项目

我对工作流引擎的理解是否正确?一切似乎都与BPMN或BPEL有关。。。为什么大多数解决方案似乎都实现了BPMN或BPEL?一些建议会很好!

工作流引擎通常在企业体系结构中发挥积极作用。它们执行一个声明性过程模型,基本上是一个由节点组成的有向图,节点表示活动或任务,边表示这些边之间的控制流。这样的边可以用条件进行注释,以允许表达条件分支/合并。有几种建模语言,如YAWL、XPDL、jPDL、BPEL和BPMN2.0,它们位于这些抽象概念和一些语法、视觉和功能糖之上,但只有后者是官方的行业标准。这对于避免供应商锁定、使模型可互换(至少在一定程度上)、得到专家和不同工具的支持非常重要。在运行时,流程实例基于流程模型创建,并根据模型定义的控制流执行。因此,引擎会主动地从一个活动导航到下一个活动,从而"协调"您的业务逻辑。BPMN2.0和BPEL之间的主要区别在于,BPEL与Web服务紧密耦合,也就是说,要由活动调用的业务函数应该被呈现为Web服务。因此,如果您想要编排WS-*服务,它仍然是最好的选择,因为BPMN2.0缺乏到具体服务实现的定义良好和标准化的绑定。无论如何,我强烈建议使用其中一种标准化语言,因为它们在行业中都被广泛接受,并且得到了各种供应商和开源社区的良好支持。

我试图更详细地解释这一点,因为我不完全确定你所说的"促进、跟踪和管理这些对象的状态"是什么意思。这听起来有点像你更感兴趣的是被动监控对象的状态变化,而不是使用工作流引擎主动控制状态变化。如果这个假设是正确的,那么抽象状态机可能更适合您的需求。

看看jBPM5,它提供了一个非常灵活的核心,允许您在此基础上构建自己的领域特定语言。现在提供的语言是BPMN2,但您可以轻松添加自己的语言。干杯

我们正在构建一个具有BPMN 2.0迁移路径但不在内部使用BPMN的产品。我们相信检查表在实时工作流程中比流程图更容易使用。然而,它仍然具有规则/触发器/条件等-因此它是一个有效地将流程建模为"类固醇检查表"的工具:

查看http://tallyfy.com

最新更新