评估业务规则引擎的标准

10

我们正在寻找商业规则引擎。 我们希望使我们的核心应用程序可定制为适应略有不同需求的不同客户。 实际进行定制的人员是分析员。即非程序员但拥有技术技能(通常具有科学学位)。

哪些标准可以用来评估商业规则引擎? 是否存在开源和商用规则引擎? 您在易用性、文档、支持、价格等方面的经验如何?

我们的应用程序是Java编写的。

4个回答

14
我曾担任行业领先规则引擎的顾问近三年。商业规则引擎价格昂贵,您需要决定是否值得为其支付费用以获取可能的功能和支持。所有规则引擎供应商都会声称自己是最好的;我可以给您的最佳建议是使用每个考虑中的规则引擎进行限制范围但代表所需功能的原型制作。不要让销售人员向您展示华丽的演示文稿;您应该积极地构建原型。我见过太多人购买规则引擎,却真的不知道他们正在购买什么。如果您非常想使用规则引擎,个人建议选择开源规则引擎(有人已经提到了Drools)。然而,我认为在考虑规则引擎的同时,应认真考虑不使用规则引擎的可能性。规则引擎可能会使您在最初节省时间(忽略学习曲线),但定制解决方案很可能在长期内更优秀,以满足您的特定需求。
以下是Martin Fowler网站上与您问题相关的几个链接:

非常有帮助,谢谢。我们正在寻找一种规则引擎来管理数千个金融合规规则。然而,Drools对我们来说并不是一个好的解决方案。 - Peter Delaney
@PeterDelaney - 为什么你认为Drools不是一个好的规则引擎?由于我们正在寻找规则引擎,你能否提供一些快速的观点?非常感谢您的任何想法。 - avijendr

11

Drools(曾用名为Drools,然后是JBoss Rules,然后再次回到Drools)是一个非常好的开源规则引擎,值得一看。

我认为评估规则引擎的最佳标准是:

  • 是否可配置(否则您将编写代码)
  • 它的性能如何。
  • 非技术人员更改规则有多容易
  • 新规则集的部署(以及旧规则集的取消)有多容易。

几个规则引擎都有业务规则管理系统(BRMS),Drools也不例外。这使得非技术人员更容易进行部署。

通过网络上的文档和教程甚至IRC频道,可以为Drools提供良好的支持。

我还使用过随IBM WebSphere Process Server捆绑的规则引擎,发现那也相当不错(但价格昂贵)。


3
我与许多商业供应商合作,与Martin不同的是,我与他们的许多客户交流。事实是,业务规则管理系统确实有效,并且在第一个项目中就可以学习曲线等回报投资,远在减少维护和增加业务用户参与的好处之前。 Drools作为开源解决方案非常出色,领先的商业产品包括: IBM/ILOG Rules (.Net、Java和COBOL) FICO Blaze Advisor (.Net、Java和COBOL) InRule Technology (.Net) Innovations Software (Java) Oracle和SAP都在其平台上拥有越来越完整的规则引擎。 我审查了许多新发布的产品以及少数产品,网址是http://jtonedm.com/category/product-news/ Forrester有一份关于业务规则的很好的波浪报告,我推荐阅读,并且我的网站上也有相关文章(但stackoverflow不允许我添加第二个链接),如果您需要答案,请联系我。

4
这只是我的个人意见,但我使用FICO Blaze的经验是,它具有非常好的图形用户界面,但在内部,它与其他引擎并没有太大区别。后者主要是因为这是一个相当成熟的领域,因此大多数产品都能很好地处理基础技术。因此,如果你有钱,它看起来不错;如果没有,Drools等工具也能很好地完成工作。此外,我个人认为非技术用户使用业务规则引擎(BREs)的可能性被夸大了——这不是完全错误的想法,但它也不是一件容易、自动发生或者必要的事情,即使在最优情况下。 - StaxMan

0
很多人决定他们想要一个规则引擎,而他们想要的是一个包括规则引擎作为执行流程一部分的整个工作流管理过程。
工作流是一个有向动作图。动作是发生的事情,例如规则集、计算、Web服务调用等。您应该能够有一个可以调用其他工作流的动作。
这使您的业务分析师能够进行整个流程实现,不仅仅是简单的if-then-else(有些商业规则引擎甚至不能做else!请参见有关在决定之前评估选项的评论)规则,无论是简单的顺序规则还是FCIRE(前向链接推理规则引擎)。大多数业务分析师认为简单的顺序规则集更容易思考。它需要在工作流级别完成,因为业务分析师将第三方解释成规则时,这些第三方往往会在极短的时间内改变他们的整个决策/接受/拒绝/魔法过程。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接