# Modeling Logic with Decision Tables and Trees. 2 Decision Trees and Decision Tables Often our problem solutions require decisions to be made according.

## Presentation on theme: "Modeling Logic with Decision Tables and Trees. 2 Decision Trees and Decision Tables Often our problem solutions require decisions to be made according."— Presentation transcript:

Modeling Logic with Decision Tables and Trees

2 Decision Trees and Decision Tables Often our problem solutions require decisions to be made according to two or more conditions or combinations of conditions Decision trees represent such decision as a sequence of steps Decision tables describe all possible combinations of conditions and the decision appropriate to each combination Decision table: a matrix representation of the logic of a decision which specifies the possible conditions for the decision and the resulting actions. Best used for complicated decision logic.

3 Example Decision Trees/Tables Consider the following excerpt from an actual requirements document: If the customer account is billed using a fixed rate method, a minimum monthly charge is assessed for consumption of less than 100 kwh. Otherwise, apply a schedule A rate structure. However, if the account is billed using a variable rate method, a schedule A rate structure will apply to consumption below 100 kwh, with additional consumption billed according to schedule B. [taken from Software Engineering: A Practitioner's Approach by Roger Pressman]

4 Decision Tree for this Example fixed rate variable rate < 100 kwh >= 100 kwh < 100 kwh >= 100 kwh minimum charge schedule A ?

5 Decision Tree for this Example fixed rate variable rate < 100 kwh >= 100 kwh < 100 kwh >= 100 kwh minimum charge schedule A schedule A on first 99 kwh schedule B on kwh 100 and above

6 Decision Table for Example – Version 1 Conditions 1 2 3 4 5 Rules Fixed rate acct T T F F F Variable rate acct F F T T F Consumption < 100 kwh T F T F Consumption >= 100 kwh F T F T Minimum charge X Schedule A X X Schedule A on first 99 kwh, X Schedule B on kwh 100 + Actions Is this a valid business case? Did we miss something?

7 Decision Table for Example – Version 2 Conditions 1 2 3 4 Rules Account type fixed fixed variable variable Consumption =100 = 100 Minimum charge X Schedule A X X Schedule A on first 99 kwh, X Schedule B on kwh 100 + Actions

8 Exercise Consider the following description of a companys matching retirement contribution plan: Acme Widgets wants to encourage its employees to save for retirement. To promote this goal, Acme will match an employees contribution to the approved retirement plan by 50% provided the employee keeps the money in the retirement plan at least two years. However, the company limits its matching contributions depending on the employees salary and time of service as follows. Acme will match five, six, or seven percent of the first \$30,000 of an employee's salary if he or she has been with the company for at least two, five, or ten years respectively. If the employee has been with the company for at least five years, the company will match up to four percent of the next \$25,000 in salary and three percent of any excess. Ten-year plus workers get a five percent match from \$30,000 to \$55,000. Long-term service employees (fifteen years or more) get seven percent on the first \$30,000 and five percent after that.

9 Exercise (contd) 1)Do one of the following (your choice): a)Create a decision tree that captures the decision rules in this policy. b)Create a decision table that captures the decision rules in this policy. 2)Did your analysis uncover any questions, ambiguities, or missing rules? 3)If so, do you think these would be as easy to spot and to analyze using only the narrative description of this policy?

More Complex Description of a Decision Table

© 2011 Pearson Education, Inc. Publishing as Prentice Hall 12 Chapter 7 Modeling Logic with Decision Tables FIGURE 7-18 Complete decision table for payroll system example

© 2011 Pearson Education, Inc. Publishing as Prentice Hall 13 Chapter 7 Modeling Logic with Decision Tables (Cont.) Condition stubs: that part of a decision table that lists the conditions relevant to the decision Action stubs: that part of a decision table that lists the actions that result for a given set of conditions

© 2011 Pearson Education, Inc. Publishing as Prentice Hall 14 Chapter 7 Modeling Logic with Decision Tables (Cont.) Rules: that part of a decision table that specifies which actions are to be followed for a given set of conditions Indifferent condition: in a decision table, a condition whose value does not affect which actions are taken for two or more rules

© 2011 Pearson Education, Inc. Publishing as Prentice Hall 15 Chapter 7 Modeling Logic with Decision Tables (Cont.) Procedure for Creating Decision Tables – Name the condition and the values that each condition can assume. – Name all possible actions that can occur. – List all possible rules. – Define the actions for each rule. – Simplify the table.

LAB EXERCISE

© 2011 Pearson Education, Inc. Publishing as Prentice Hall 17 Chapter 7 Modeling Logic with Decision Tables (Cont.) FIGURE 7-19 Reduced decision table for payroll system example

Decision Table Construction

Decision Table Construction – the final table

Download ppt "Modeling Logic with Decision Tables and Trees. 2 Decision Trees and Decision Tables Often our problem solutions require decisions to be made according."

Similar presentations