【问题标题】:How to implement Business Rules如何实施业务规则
【发布时间】:2015-07-13 18:50:19
【问题描述】:

我一直在试图弄清楚如何处理以下格式的业务规则:

  • 一个预订有 1 到 n (n = 200) 篇文章
  • 问题 P 应由系统 XYZ 处理
  • 系统 XYZ 应支持特定数据类
  • 与客户的沟通应由组织 Z 完成。
  • 可以更改订单中的特定值
  • 系统 XYZ 应能够评估客户是否能够支付月费

此外,我得到的许多规则都解释了为了让未来的系统正常工作而需要满足的某些事情。在我看来,这些规则是技术要求。那么,最好的选择是什么?在业务流程中硬编码这些业务规则(听起来很不对)或在业务流程管理旁边嵌入业务规则管理系统(带有规则引擎)?

我的猜测是规则引擎不是最好的选择。有时,每个业务规则中都记录了不止一种可能性和场景,常见的“if-then”语句在大多数情况下并不适用。 所以我发现在大多数情况下都有这个“if-then”语句(文献等),但随后来自 OMG 的 SBVR 出现了(业务词汇和业务规则的语义)。它让我感到困惑,因为不需要用“if-then”等来制定规则。

我认为这些规则并非专门用于构建在规则引擎中,而是在软件实施期间和此过程之后密切关注。但我认为这些业务规则可能会改变。在业务流程中对它们进行硬编码不是很幼稚吗?

如果有人有提示,我将非常感谢。

BR

【问题讨论】:

    标签: business-process-management business-rules


    【解决方案1】:

    是的,您只需要为工作选择正确的工具即可。您应该看看 Drools 和 JBPM 项目。其中主要目标是使规则引擎与流程引擎共存。因此,对于其中一些“规则”,您可以创建一个业务流程来处理它,而对于另一个“规则”,您只需编写一个适当的业务规则。第三种选择是混合两个世界。

    【讨论】:

    • 感谢您的回答!我认为我们可以像处理需求一样处理业务规则,因为它们只有大约 90 条左右。我猜一个带有规则引擎的业务规则管理工具会是最重要的。
    • 嗯,这实际上取决于这些规则的更改频率以及谁对它们负责。业务流程和业务规则的巨大优势在于可以自我记录,并且易于非 IT 人员理解
    猜你喜欢
    • 1970-01-01
    • 2011-06-27
    • 1970-01-01
    • 1970-01-01
    • 2014-04-29
    • 2010-09-18
    • 2020-05-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多