SAD/U4 Topic 4 Process Modeling: Structured English, Decision Tree & Decision Table
Structure English is derived from structured programming language which gives more understandable and precise description of process. It is based on procedural logic that uses construction and imperative sentences designed to perform operation for action.
- It is best used when sequences and loops in a program must be considered and the problem needs sequences of actions with decisions.
- It does not have strict syntax rule. It expresses all logic in terms of sequential decision structures and iterations.
For example, see the following sequence of actions:
if customer pays advance
Give 5% Discount
if purchase amount >=10,000
if the customer is a regular customer
then Give 5% Discount
else No Discount
else No Discount
Decision trees are a method for defining complex relationships by describing decisions and avoiding the problems in communication. A decision tree is a diagram that shows alternative actions and conditions within horizontal tree framework. Thus, it depicts which conditions to consider first, second, and so on.
Decision trees depict the relationship of each condition and their permissible actions. A square node indicates an action and a circle indicates a condition. It forces analysts to consider the sequence of decisions and identifies the actual decision that must be made.
The major limitation of a decision tree is that it lacks information in its format to describe what other combinations of conditions you can take for testing. It is a single representation of the relationships between conditions and actions.
For example, refer the following decision tree:
Decision tables are a method of describing the complex logical relationship in a precise manner which is easily understandable.
- It is useful in situations where the resulting actions depend on the occurrence of one or several combinations of independent conditions.
- It is a matrix containing row or columns for defining a problem and the actions.
Components of a Decision Table
- Condition Stub: It is in the upper left quadrant which lists all the condition to be checked.
- Action Stub: It is in the lower left quadrant which outlines all the action to be carried out to meet such condition.
- Condition Entry: It is in upper right quadrant which provides answers to questions asked in condition stub quadrant.
- Action Entry: It is in lower right quadrant which indicates the appropriate action resulting from the answers to the conditions in the condition entry quadrant.
The entries in decision table are given by Decision Rules which define the relationships between combinations of conditions and courses of action. In rules section,
- Y shows the existence of a condition.
- N represents the condition, which is not satisfied.
- A blank – against action states it is to be ignored.
- X (or a check mark will do) against action states it is to be carried out.
For example, refer the following table:
|CONDITIONS||Rule 1||Rule 2||Rule 3||Rule 4|
|Advance payment made||Y||N||N||N|
|Purchase amount = Rs 10,000/-||–||Y||Y||N|
|Give 5% discount||X||X||–||–|
|Give no discount||–||–||X||X|