Activiti和Drools ......够了吗?

时间:2016-05-06 06:21:19

标签: drools activiti rule-engine bpmn

我被要求开始为一些客户端演示探索Activiti工具。 该演示还将有JBoss Drools与Activiti集成。 我是这些工具和业务流程领域的新手,所以如果问题愚蠢,请原谅。

问题是你为什么需要Drools?没有足够的活动来完成这项工作吗? 它们都有条件元素,那你为什么需要在drools之上激活?

1 个答案:

答案 0 :(得分:9)

这个问题不太符合StackOverflow的目的,所以如果你得到一些旗帜,不要感到惊讶。但我会尝试简短的回答。

Activity是一个工作流引擎,Drools是一个业务规则引擎。它们有两个不同的用途。

  • 当您需要以编程方式控制不同参与者的操作流时,工作流引擎非常有用。

  • 如果您有自动执行某些任务的业务规则,并且想要以声明方式描述,则规则引擎非常有用。

这两个目的彼此正交,这意味着您必须解决的问题可能不需要,只需要一个或两个。

想象一下客户报告事件的工作流程,一些专家必须对其进行处理,最后生成一个账单,但这些任务背后没有繁重的算法。没有规则引擎的工作流引擎可能会支持这一点。

想象一下产品的复杂价格模型,例如具有可订购的各种特殊功能的汽车。 (高保真扬声器的价格为400欧元,除非订购了汽车的执行版本,如果与智能手机适配器一起订购,它们的成本仅为200欧元......)这里的规则引擎可能很有用,虽然没有人谈到工作流程,所以不需要工作流引擎。

想象一下第一个例子(事件工作流程)和复杂的计费方案。这里可以使用这两种工具。

我想知道为什么这两种类型的工具在某些地方被描述为非常合适。 (也许这种说法激发了你的问题。)它们有两个不同的目的,你是否需要它们取决于你必须解决的问题。