Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Drools 描述业务逻辑的BPMN和DMN符号还有其他选择吗?_Drools_Dsl_Bpmn_Business Rules - Fatal编程技术网

Drools 描述业务逻辑的BPMN和DMN符号还有其他选择吗?

Drools 描述业务逻辑的BPMN和DMN符号还有其他选择吗?,drools,dsl,bpmn,business-rules,Drools,Dsl,Bpmn,Business Rules,我正在寻找一些能够创建复杂的数据处理过程的工具,不编写代码的人可以或多或少地修改这些过程 例如,我的任务是: 从sourceA获取数据 2.1如果数据已满-根据条件45对其进行过滤 2.2如果数据未满-从源B获取其他数据 如果结果通过验证-返回1,否则返回0 这应该以可读的方式进行描述,最好的选择是,如果可以在某个UI工具中修改此过程 要求是什么? 每个过程由两部分组成:步骤和按顺序排列它们的方法 (一) 每个步骤中的流程应该能够 1.发出用于从数据源获取某些数据并将其插入流程上下文的命令 2.

我正在寻找一些能够创建复杂的数据处理过程的工具,不编写代码的人可以或多或少地修改这些过程

例如,我的任务是:

  • 从sourceA获取数据
  • 2.1如果数据已满-根据条件45对其进行过滤

    2.2如果数据未满-从源B获取其他数据

  • 如果结果通过验证-返回1,否则返回0
  • 这应该以可读的方式进行描述,最好的选择是,如果可以在某个UI工具中修改此过程

    要求是什么?

    每个过程由两部分组成:步骤和按顺序排列它们的方法

    (一) 每个步骤中的流程应该能够 1.发出用于从数据源获取某些数据并将其插入流程上下文的命令 2.过滤、充实、转换获得的数据集 因此,这个过程的每个步骤都应该用一些或多或少简单的DSL来描述

    (二) 要执行的步骤的选择,即步骤的结果,应该通过某种可视化工具来描述,或者再次,如(1)中所述,使用一些简单的dsl来描述

    在我看来,你能为这项典型的任务提供一些建议吗?

    同时,以下是我自己的想法。

    首先想到的是BPMN和口水

    对于步骤,我可以使用DRL规则:它们本身只能进行基本的数据操作,但如果需要一些复杂的东西,我可以从它们调用Java函数

    对于步骤结果,我可以使用标准BPMN图表


    当然,还有更好的吗?

    BPMN与DMN的结合确实可以让您用这些视觉标准来描述流程的执行和应用的决策逻辑,以便实现“例如”一段中的内容

    为了使业务人员能够完全访问BPMN,应提前准备用于获取数据或执行与外部系统的任何交互的BPMN任务,并在BPMN/DMN图的组成过程中提供该任务

    作为BPMN+DMN组合的替代,您可以查看FuseFuse Online,它无法描述BPMN+DMN组合的所有语义,但例如,使用Fuse Online,您可以完全直观地执行“示例”段落中描述的步骤