How to Use Decision Table in Enterprise Architecture?
In this ever changing business environment driven by information technology, it becomes critical for businesses not only to transform their business models rapidly, but also to ensure that their information system remains aligned with their latest business strategies. Decision table is a technique that enables business rules to be made, adjusted and integrated into a running information system quickly and efficiently. Decision table provides a common interface that allows enterprise architects and developers to work from the same piece of information - the business rules. While enterprise architects plan and document businesses rules with decision table, developers study the same decision table and translate the business rules into programming logic. This ensures that the information system is always aligned with the business strategy to achieve the expected business outcome.
In this tutorial, we will demonstrate the use of a decision table in representing the business rules of a store. To complete this tutorial, you will need to have:
- Basic knowledge of modeling in Visual Paradigm
- Visual Paradigm Enterprise installed
Layout of a Decision Table
A decision table is a two-dimensional matrix composed of conditions, actions, and rules, and is divided into four quadrants:
| Conditions | Condition Alternatives |
| Actions | Action Entries |
The quadrant of conditions contains rows of conditions that may affect the action to be performed. The quadrant of actions lists the actions that may be taken. Condition alternatives and action entries together represent a set of rules, with each rule (column) representing a certain combination of conditions and actions.
Benefits of Using a Decision Table
A decision table is particularly helpful when dealing with a large number of conditions, and when the conditions can be combined into a variety of situations.
- It is able to group conditions regardless of their complexity and present them in the simplest manner.
- It is able to uncover all possible combinations of conditions.
- It enables the user to concentrate on a single rule out of all possibilities. This makes understanding business rules much easier than taking any other approaches.
Building a Decision Table
A store wants to run a discount campaign to attract new customers. The store owner has decided to offer different discounts based on the following conditions:
- The customer is a youth customer (under the age of 18).
- The customer is a member.
- The transaction is over $1,000.
However, he has no idea about the amount of discounts to offer yet. He wants to find out the answer by developing a decision table. The result will be integrated into the store's ordering system.
Let's develop a decision table to show all the possible combinations of conditions and determine the amount of discounts to offer.
- Let's start by creating a new decision table. Select Diagram > New from the toolbar.
- In the New Diagram window, enter decision table in the search field and click Next.
- Then, fill in the Diagram Name and Description (if any). Click OK to confirm the diagram creation.
- Add the conditions to the upper-left quadrant of the decision table. You can add a condition by clicking the Add Condition button in the toolbar above the decision table.

Here, you have three conditions to add: Youth customer (Age < 18), Customer is a member, Transaction > $1,000.
- Determine the possible actions to be taken. Obviously, one of the actions is Offer discounts. You can add multiple condition rows for each possible discount amount, i.e., "Offer 10% discount," "Offer 20% discount," etc. In this case, we will take another approach. Add a single action, Offer discount. We will specify the discount amount directly in the table cells. This will be explained later in this tutorial.
- Besides offering discounts, the store owner also wants to convert customers who paid more than $1,000 into long-term members. This is achieved by inviting them to become members when they pay. So, let's add an action: Suggest membership. You can add an action by clicking the Add Action button in the decision table's toolbar.
- We are going to add rule columns to the decision table. There must be enough columns to accommodate all the possible situations, formed by different unique combinations of conditions. To know the number of columns to add, first determine the number of alternatives for each condition. In this case, there will be two alternatives (either Y or N) for each condition. The maximum number of columns is calculated by multiplying the number of alternatives for each condition. Since there are three conditions and two alternatives for each, there will be 8 sets of conditions.
- Add 8 rule columns to the table. You can add a rule by clicking the Add Rule button in the decision table's toolbar.
- Fill in the condition alternatives to represent all possible combinations. "Y" is inserted for conditions that are met, and "N" for those that are not.
- Before we move on to the actions part of the table, let's review the rule columns and eliminate any invalid situations. According to the store's policy, membership is only available for adults. In other words, a customer cannot be both a youth and a member. Therefore, the combination of conditions reflected by rules 1 and 2 are mutually exclusive. Remove them.
- Now, let's study the situations one by one. Let's say a 20% discount is offered for a youth customer with a transaction of more than $1,000. Enter "20%" in the cell that intersects rule 1 and the Offer discount action.
- Only adults are allowed to become members, so just leave the Suggest membership action unfilled.
- Study the other situations and complete the table. For the fifth rule, "X" is marked for the "Suggest membership" action to indicate that the customer will be invited to become a member.
- The decision table is basically complete. Check it for any invalid situations or redundancies. In this case, rules 3 and 4 can be combined because the transaction amount does not affect the action to be taken. Let's combine them and replace the alternative for Transaction > $1000 with a dash, which signifies that the condition can be either Y or N and the same set of actions will be taken.