我是靠谱客的博主 风趣飞鸟,最近开发中收集的这篇文章主要介绍浅谈决策树与决策表,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

前言

在程序设计过程中,经常会出现多层逻辑控制的嵌套,而这样的嵌套关系往往会导致我们不能直观的看出程序的逻辑关系,这会导致在测试过程中比较容易出现遗漏。因此我们需要引入决策表、决策树,其中决策表就是设计逻辑控制时十分重要的一个工具。

决策表

先看看定义(虽然并且没多少人能一眼看懂),但我还是决定先列在这里,等你阅读了后面例子之后就会明白。 概念:决策表是分析和表达多逻辑条件下执行不同操作的工具。

其次我们来看看决策表的构成:
  在这里插入图片描述
条件桩——列出问题的所有条件
条件项——针对条件桩给出的条件列出所有可能的取值
动作桩——列出问题规定的可能采取的操作
动作项——支出在条件项的各组取值情况下应采取的动作
规则——任何一个条件组合的特定取值及其相应要执行的操作称为规则。在判定表中贯穿条件项和动作项的一列就是一条规则。

这里我们用一个例子来看看:

一个Party的收费标准:

1、一般男士收费为 1000
    2、一般女士收费为 800
    3、大于30岁的人士收费为 500
    4、月收入超过5w的男士收取 200

首先根据上面的信息我们可以抽取出如下条件:
  在这里插入图片描述一个完整的决策表建立步骤应该是:

1、确定规则个数
    2、列出所有的条件桩和动作桩
    3、填入条件项
    4、填入动作桩和动作项,得到初始决策表
    5、化简,合并相似规则
    6、依据决策表,选择测试数据,设计测试用例

最终生成的决策表样例如下图:
  在这里插入图片描述
这里需要说明一下:我们在看这个表的时候,需要看条件项的列,一列条件项对应一个动作项的结果,也就是一个测试case。

当然决策表也可以是这个样子的:
  在这里插入图片描述

当构建完决策表后,我们可能会担心遗漏一些内容,这个时候就需要用决策树来验证一下。

决策树

判断是否有遗漏就是每个子节点的根需要将其叶子节点的所有结果都画出来,然后检验一下是否有遗漏即可。
在这里插入图片描述
参考链接
http://www.cnblogs.com/by-dream/p/5336918.html

最后

以上就是风趣飞鸟为你收集整理的浅谈决策树与决策表的全部内容,希望文章能够帮你解决浅谈决策树与决策表所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(55)

评论列表共有 0 条评论

立即
投稿
返回
顶部