The systems analyst approaching process specifications and structured decisions has many options for documenting and analyzing them. In Chapters “Using Data Flow Diagrams” and “Analyzing Systems Using Data Dictionaries” you noted processes such as VERIFY AND COMPUTE FEES, but you did not explain the logic necessary to execute these tasks. The methods available for documenting and analyzing the logic of decisions include structured English, decision tables, and decision trees. It is important to be able to recognize logic and structured decisions that occur in a business and how they are distinguishable from semistructured decisions that tend to involve human judgment. Then it is critical to recognize that structured decisions lend themselves particularly well to analysis with systematic methods that promote completeness, accuracy, and communication.
Once the analyst works with users to identify data flows and begins constructing a data dictionary, it is time to turn to process specification and decision analysis. The three methods for decision analysis and describing process logic discussed in this chapter are structured English, decision tables, and decision trees. Process specifications (or minispecs) are created for primitive processes on a data flow diagram as well as for some higher-level processes that explode to a child diagram. These specifications explain the decision-making logic and formulas that will transform process input data into output. The three goals of process specification are to reduce the ambiguity of the process, to obtain a precise description of what is accomplished, and to validate the system design.
One way to describe structured decisions is to use the method referred to as structured English, in which logic is expressed in sequential structures, decision structures, case structures, or iterations. Structured English uses accepted keywords such as IF, THEN, ELSE, DO, DO WHILE, and DO UNTIL to describe the logic used, and it indents to indicate the hierarchical structure of the decision process.
Decision tables provide another way to examine, describe, and document decisions. Four quadrants (viewed clockwise from the upper left corner) are used to (1) describe the conditions, (2) identify possible decision alternatives (such as Y or N), (3) indicate which actions should be performed, and (4) describe the actions. Decision tables are advantageous because the rules for developing the table itself, as well as the rules for eliminating redundancy, contradictions, and impossible situations, are straightforward and manageable.
The use of decision tables promotes completeness and accuracy in analyzing structured decisions. The third method for decision analysis is the decision tree, consisting of nodes (a square for actions and a circle for conditions) and branches. Decision trees are appropriate when actions must be accomplished in a certain sequence. There is no requirement that the tree be symmetrical, so only those conditions and actions that are critical to the decisions at hand are found on a particular branch.
Each of the decision analysis methods has its own advantages and should be used accordingly. Structured English is useful when many actions are repeated and when communicating with others is important. Decision tables provide a complete analysis of complex situations while limiting the need for change attributable to impossible situations, redundancies, or contradictions. Decision trees are important when proper sequencing of conditions and actions is critical and when each condition is not relevant to each action.
Once you have mastered the material in this chapter you will be able to:
- Understand the purpose of process specifications.
- Recognize the difference between structured and semistructured decisions.
- Use structured English, decision tables, and decision trees to analyze, describe, and document structured decisions.
- Choose an appropriate decision analysis method for analyzing structured decisions and creating process specifications.