规则引擎教程多维决策表.docx
- 文档编号:30149016
- 上传时间:2023-08-05
- 格式:DOCX
- 页数:14
- 大小:583.01KB
规则引擎教程多维决策表.docx
《规则引擎教程多维决策表.docx》由会员分享,可在线阅读,更多相关《规则引擎教程多维决策表.docx(14页珍藏版)》请在冰豆网上搜索。
规则引擎教程多维决策表
多维决策表
1.1业务需求2
2.1规则实现3
2.1.1规则包创建3
2.1.2变量定义4
2.1.3逻辑实现4
2.1.4保存和编译10
3.1测试11
1.1业务需求
在交叉决策表以及关联决策表中,条件之间的通常是一对一的关系(也可以实现一对多),但是在实际情况中往往会出现一对多的关系。
如在下面的列子中,一个学生要考很多学科,一个学期又要考很多场试。
若用交叉决策表会造成逻辑上的冗余,而多维决策却很容易的实现一对多的关系,。
学生考试的考试情况如下图所示:
我们可以看到,每个学生每学期要有三次考试,而每次考试要考三门学科。
这样多维决策表的条件部分应该有三个:
学生姓名、考试类型、学科。
而结果只有一个:
分数。
需要注意的是:
虽然多维决策表可以实现多对多的关系,但是在每个条件之间必须公用同一个条件。
例如,在本例子中若实际情况中有的学生没有学习英语,但是在多维决策表中还是会有该学生的英语成绩的。
若要实现每个条件下的子条件不同,就要用交叉决策表来实现了。
2.1规则实现
2.1.1规则包创建
右键名为“功能解析”的工程,点击“新建规则包”,创建一个名为:
“多维决策表的”规则包,如下图所示:
2.1.2变量定义
需要在该规则包的对象库中,定义四个变量:
学生姓名(stuName),考试(test),学科(subject),得分(score)。
如下图所示:
2.1.3逻辑实现
创建名为“学生考试得分”的多维决策表,创建过程如下图所示:
创建好了“多维决策表”我们需要设置其属性,首先要在属性窗口,把条件个数设置为3,赋值元素设置成“得分”(score)。
操作流程如下所示:
属性设置好了之后,我们要在“多维决策表”的条件部分中设置具体的逻辑以及该条件下的“得分”。
条件设置过程如下:
按照上述的步骤,再添加两个学生,添加完成后,如下图所示:
这样学生姓名就设置好了,然后我们再添加考试信息,完成后如下图:
考试信息的条件设置完成之后,我们还要给学科添加信息,其添加完成后如下图所示:
学科的条件设置完成之后,这样多维决策表的条件部分就完成。
多维决策表的条件,如下图所示:
最后,我们要为每个学生的每次考试中的每个学科,赋予相应的分数。
如下图:
2.1.4保存和编译
规则逻辑完成后,我们需要对规则进行编译,步骤如下:
我们选择“全部保存”,然后在消息窗口出现,下图所示的信息:
这两句话表示该规则包已成功保存并编译。
若该规则包出现错误,在消息窗口将会出现红色字体的提示。
3.1测试
在规则包完成之后,我们需要测试该规则包的输入,输出结果值是否正确。
首先,我们为该规则包添加一个“批量测试”,步骤如下图所示:
添加完成后,如下图所示:
然后我们需要给该“批量测试”添加若干个测试用例,点击上图中黑色框中的添加按钮,弹出的界面如下所示,其中“传入值”是你输入值,“期望结果值”是在该输入值下希望输出结果值,若“期望结果值”与实际输出结果值相同,则说明该条测试数据测试成功!
我们多为该规则包添加几条测试数据,完成后结果如下:
保存之后,点击测试按钮,分别在批量测试和消息窗口出现下图所示的提示消息:
最后,可以在消息窗口栏查看该“批量测试”的测试结果。
如下图所示:
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 规则 引擎 教程 多维 决策