`
Tonyguxu
  • 浏览: 277791 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Decision Table

 
阅读更多

本文来自http://www.freetutes.com/systemanalysis/sa4-decision-tables.html

 

 

A decision table is a table with various conditions and their corresponding actions . Decision tree is a two dimensional matrix. It is divided into four parts, condition stub, action stub, condition entry, and action entry . See the first figure listed below. Condition stub shows the various possible conditions.

 

Condition Stub
Condition Entry
1
2
3
4
5
6
Customer is individual ?
Y
Y
.
.
.
.
Customer shopkeeper or retailer ?
.
.
Y
Y
Y
Y
Order-size 85 copies or more ?
.
.
Y
.
.
.
Order-size 49-84 sarees ?
.
.
.
Y
.
.
Order-size 13-48 copies ?
.
.
.
.
Y
.
Order-size 12 or more ?
.
Y
.
.
.
.
Order-size less than 12?
Y
.
.
.
.
Y
Allow 50% discount
.
X
X
.
.
Allow 40% discount
.
.
.
X
.
.
Allow 30% discount
X
.
.
.
X
.
Allow 15% discount
.
.
.
.
.
X

Decision table-Discount Policy

 

Condition entry is used for specifying which condition is being analyzed. Action stub shows the various actions taken against different conditions.

And action entry is used to find out which action is taken corresponding to a particular set of conditions.

The steps to be taken for a certain possible condition are listed by action statements. Action entries display what specific actions to be undertaken when selected conditions or combinations of conditions are true. At times notes are added below the table to indicate when to use the table or to distinguish it from other decisions tables.

The right side columns of the table link conditions and actions and form the decision rules hence they state the conditions that must be fulfilled for a particular set of actions to be taken. In the decision trees, a fixed ordered sequence is followed in which conditions are examined. But this is not the case here as the decision rule incorporates all the required conditions, which must be true.

Developing Decision Tables

Before describing the steps involved in building the decision table it is important to take a note of few important points. Every decision should be given a name and the logic of the decision table is independent of the sequence in which condition rules are written but the action takes place in the order in which events occur . Wherever possible, duplication of terms and meaning should be avoided and only the standardized language must be used.

The steps of building the concerned tables are given below.

  1. Firstly figure out the most essential factors to be considered in making a decision.

    This will identify the conditions involved in the decision. Only those conditions should be selected which have the potential to either occur or not but partial occurrences are not permissible.

  2. Determine the most possible steps that can take place under varying conditions and not just under current condition. This step will identify the actions.

  3. Calculate all the possible combinations of conditions.

    For every N number of conditions there are 2*2*2…. (N times) combinations to be considered.

  4. Fill the decision rules in the table.

    Entries in a decision table are filled as Y/N and action entries are generally marked as "X" . For the conditions that are immaterial(不重要的,无关紧要的) a hyphen "-" is generally put. Decision table is further simplified by eliminating and consolidating certain rules. Impossible rules are eliminated(排除). There are certain conditions whose values do not affect the decision and always result in the same action. These rules can be consolidated into(统一放到) a single rule.

Example: Consider the recruitment policy(招聘策略) of ABC Software Ltd.

It the applicant is a BE then recruit otherwise not. If the person is from Computer Science, put him/her in the software development department and if the person is from non-computer science background put him/her in HR department. If the Person is from Computer Science and having experience equal to or greater than three years, take him/her as Team leader and if the experience is less than that then take the person as Team member. If the person recruited is from non Computer Science background, having experience less than three years, make him/her Management Trainee otherwise Manager.

 

The first decision table for the problem stated above can be drawn as shown in the figure below.

This table can further be refined by combining condition entries 2, 4, 6, and 8. The simplified table is displayed in the figure below.

 

 

扩展阅读

1.Ruling the Business: About Business Rules and Decision Tables 见br_dt.pdf

2.Building Decision Tables    http://it.toolbox.com/blogs/enterprise-solutions/building-decision-tables-15903#4571496

3.http://en.wikipedia.org/wiki/Decision_table

4.Decision Table Creator http://sourceforge.net/projects/decisiontablecr/?_test=b

分享到:
评论

相关推荐

    DecisionTable:用于在Visual Paradigm中创建决策表的插件

    现在,通过"DecisionTable"插件,Visual Paradigm用户可以更加便捷地在模型中创建和管理决策表。 "DecisionTable"插件是开源的,这意味着它的源代码可供公众查看、修改和分发,这对于开发者来说是一个巨大的优势,...

    Decision Table Creator-开源

    决策表创建器是创建/编辑/导出决策表的工具。 可以检查表的一致性和完整性。 可以将结果表复制到剪贴板,以将其合并到Word,Excel或PowerPoint中。 存在计划以扩展到多价值决策。 请请求此扩展名或其他扩展名,这样...

    spring-camel-drools-decision-table-example-6.1.0.CR1.zip

    标题中的"spring-camel-drools-decision-table-example-6.1.0.CR1.zip"表明这是一个关于Spring、Apache Camel和Drools决策表的开源项目示例,使用的版本是6.1.0的候选发布版1(CR1)。这个项目可能展示了如何在...

    Decision Tables for Java (dt4j):Java中基于优秀决策表的规则引擎实现-开源

    决策表(Decision Table)是一种用于表示多种条件和对应结果的工具,它在业务规则管理系统中被广泛使用。它通过清晰地列出所有可能的条件组合及其相应的行动,使得复杂的逻辑易于理解和维护。在Java开发中,决策表...

    DMN FEEL表达语言

    在DMN中,所有的decision logic都是用boxed expression展现的。Clause 7.2介绍了boxed expression的概念并且定义了两个简单类:boxed literal expressions 和boxed invacations。Clause 8 中定义的decision tables...

    decision-table:表格布局中的紧凑决策逻辑

    var DecisionTable = require('decision-table') var table = new DecisionTable( ['type', 'count', 'applied', 'emotion'], [ ['a', 1, true, 'happy', 1], ['a', 1, true, 'sad', 2], ['a', 1, false, '...

    Decision Table Preprocessor:Ccide是决策表预处理器。-开源

    输入示例:// DECISION_TABLE:// 1 3 2 2 | 浅== $$ / * 1 =红色,2 =黄色,3 =绿色。 * / // N---| 速度==停止///--Y-| 速度==慢///-N-Y | 速度==快// // ______ | ___________________ // X-X-| 停止(); //---...

    数据挖掘实验二1

    - 在60%的训练数据占比下,以智能系统为class,对比了多种算法的准确率:C4.5(J48)达到96.45%,SimpleLogistic和DecisionTable为95.92%,RandomForest为95.21%,BayesNet为93.97%,RandomTree为90.96%,SMO为95....

    Drools Workbench7.8 lib.rar

    它提供了直观的用户界面,用于编写、验证和维护规则流图(Drools Flow)以及决策表(Decision Table)。此外,它还支持规则的版本控制和协同编辑,以促进团队间的合作。 在7.8版本中,Drools Workbench可能包含以下...

    Recommended Loan Products.7z

    DMN模型通常包括决策表(Decision Table)、信息要求(Information Requirements)和决策(Decision)等元素,它让业务专家和IT人员能更有效地协作。 在这个"Recommended Loan Products"的场景中,DMN文件...

    Drools workbench文件及DEMO项目代码

    在该项目中,你可以学习到如何配置Drools工作台,如何创建规则流(RuleFlow)、决策表(Decision Table)或者DRL(Drools Rule Language)文件,并通过Web界面进行交互式测试。同时,你可能会发现Maven或Gradle的...

    Flowable v6.4.2版本中文文档

    Flowable v6.4.2版本包含了对DMN 1.1的支持,允许用户创建决策表(Decision Table)和决策树(Decision Tree),并将其集成到流程中,实现智能决策点的自动化。 3. Form 表单: Flowable提供了灵活的表单支持,...

    1_21计科XXX《软件工程》实验报告new.doc

    **判定表与判定树(Decision Table & Decision Tree)** 实验四涉及过程设计工具——判定表和判定树。判定表用于表示复杂条件与相应动作的对应关系,而判定树则以图形方式更直观地展示这些关系。交易所手续费计算的...

    HANA Studio 操作手册

    - **Create Decision Table**:创建决策表,支持基于规则的决策逻辑,常用于业务流程自动化。 - **Create Table**:定义新的数据表,包括字段、数据类型和约束条件。 - **Create Virtual Table**:创建虚拟表,...

    第五次-龙行超-20171414631451

    判定树(Decision Tree)和判定表(Decision Table)则用于清晰表达复杂的逻辑决策过程。 2. 面向对象(Object-Oriented,OO)的需求分析中,统一建模语言(Unified Modeling Language,UML)是一种标准的建模工具...

    资料处理之分析模型(ppt 43).ppt

    数据处理之分析模型是指使用数据流程图(Data Flow Diagram,DFD)、结构化英语(Structured English)和决策表(Decision Table)等工具对数据处理过程进行分析和设计。 数据流程图(DFD)是指用来描述数据处理...

    Drools7 demo

    Drools7支持GDL(Guided Decision Table Language)和MVEL,这两种规则语言都得到了进一步的发展。GDL允许通过表格形式编写规则,适合非技术人员理解;MVEL是Drools的内建表达式语言,提供了更灵活的语法。 3. **...

Global site tag (gtag.js) - Google Analytics