Structured Decision Analysis Techniques
Structured Decision Analysis Techniques
The primary methods for documenting the logic of structured decisions include structured English, decision tables, and decision trees. Structured English is beneficial for clarifying logic and is straightforward to communicate, especially when there are many repetitious actions . Decision tables are advantageous for handling complex combinations of conditions, actions, and rules, ensuring completeness and accuracy by avoiding impossible situations, redundancies, and contradictions . Decision trees are valuable when branching is complex or when it's critical to keep the sequence of decisions clear, as they highlight the order of condition checks and actions .
Structured English facilitates communication by using simple English statements and structured logic to clarify decision-making processes, making it accessible to non-technical stakeholders . Its clarity and simplicity serve as a bridge between detailed technical descriptions and end-user understanding, especially in systems with repetitious actions .
CASE tools enhance management and organization of process specifications by storing detailed procedural logic in a centralized repository, allowing for efficient tracking, modification, and validation of system processes . This centralized approach aids in maintaining consistency across various documentation outputs and facilitates easier updates and communication among team members.
Effectively using structured English involves expressing logic in sequential, decision, case, or iterative structures, capitalizing keywords like IF, THEN, and ELSE, and clearly indenting nested statements . Words defined in a data dictionary should be underlined to signify special meanings, and logical operations should be used cautiously to avoid ambiguity . These steps ensure clarity and maintain accuracy in translating business logic into a coded framework, facilitating understanding across technical and non-technical team members.
Process specifications contribute to system design validation by reducing process ambiguity, providing precise descriptions of what is accomplished, and ensuring that system design (including data flow diagrams and the data dictionary) is accurately followed . These specs, also known as minispecs, ensure that the logical flow of data and processes aligns with system goals and business needs.
Business rules define the framework and constraints within which business operates, such as terms, conditions, actions, data integrity, mathematical derivations, logical inferences, sequences, and relationships . They guide structured decision-making by determining permissible actions and ensuring decisions conform to business logic and objectives .
A systems analyst should use decision trees when the sequence of conditions and actions is critical, or when not every condition is relevant to every action, as the tree structure efficiently represents varying paths . Decision trees are advantageous when complex branching is involved or when maintaining the decision sequence is essential, making them easily understandable compared to decision tables .
Decision tables provide a clear method for describing conditions, decision alternatives, actions, and related rules, ensuring completeness and accuracy . However, challenges include ensuring the tables do not present incomplete scenarios, impossible situations, contradictions, and redundancy, which require careful evaluation during table development .
Conditions, condition alternatives, actions, and action rules form the core of designing systems for structured decisions as they dictate how inputs are processed to produce outputs . Understanding these elements allows system designers to map decision paths, ensuring the system behaves predictably and fulfills business requirements by executing the correct actions based on predefined scenarios .
Converting data dictionary entries into structured English involves creating sequential statements, using conditions with IF...THEN...ELSE structures, and forming iterations with looping constructs like DO WHILE or PERFORM UNTIL . This conversion is crucial for ensuring that the data's logical structure is maintained consistently, aiding in the clear and accurate representation of system processes for development and communication purposes .