MANAGEMENT INFORMATION SYSTEMS Chapter 6: Chapter 6 Tools For Determining System Requirements And System Analysis 6.1 Learning Outcomes After complete this lesson, you would be able to: Discuss about decision tree and its advantages. Know when could you use decision table. Explain the advantages and disadvantages of structured English. Illustrate the steps of to do decision table. 6.2 Tools For Requirement Specification There exist lots of tools that could be used in helping SA to perform the analysis tasks. All these tools are to ensure that the tasks of analysis are performed with accuracy and efficiency. Some of these tools include: - Decision Tree - Decision Table - Structured English 6.2.1 Decision Tree It is a graphical tool that used to represent conditions and their respective result actions. Used when complex branching occurs in a structured decision process. It is essential to keep a string of decision in a particular process. The root of the tree is on the left-hand side, branching out to the right. This orientation allows the analyst to write on the branches in order to describe conditions and actions. The sequence of the condition and actions are important. We begin to build the tree from left to right while making sure that we complete listing all possible alternatives before moving over to the right. It is useful to distinguish between conditions and actions when drawing decision trees. Uses a square node to indicate an action while a circle to represent a condition. Also, use of notation to make the decision tree more readable. Think of a circle as signifying IF while the square means THEN. A tree might not always be symmetrical all the times, where we could have a complex decision tree. TOOLS FOR DETERMINING SYSTEM REQUIREMENTS AND SYSTEM ANALYSIS Page 1 of 9 MANAGEMENT INFORMATION SYSTEMS Chapter 6 The steps involved in building a decision tree: - Identify the conditions - Identifies the condition alternatives - Identify the actions - Identify action rules (enter actions) - Create key and title Advantages of using decision trees: The order of checking conditions and executing actions is immediately noticeable. Conditions and actions of decision trees are found on some branches but not on others, unlike decision tables where they are all part of the same table. Those conditions and actions that are connected directly to other conditions and actions, while those conditions that do not matter are absent. Compared to decision tables, decision trees are more readily understood by others in the organization. Thus, they are more appropriate as a communication tools. Disadvantages of decision trees: Disadvantages of decision tree are taking up space and consequently a minimum amount of description on the conditions and actions can be written on the trees. Example of decision tree: Bad Payment Rating Has Account No Account 4 Credit Allowed Manager Disapprove 5 Credit Disallowed 3 2 Good Payment Rating 1 Manager Approve 6 7 TOOLS FOR DETERMINING SYSTEM REQUIREMENTS AND SYSTEM ANALYSIS Credit Allowed Credit Disallowed Page 2 of 9 MANAGEMENT INFORMATION SYSTEMS Chapter 6 6.2.2 Decision Table A decision table is a table of rows and columns, separated into four quadrants. Conditions Condition Alternatives Actions Action Entries In order to build a decision table, the analyst needs to determine the maximum size of the table, eliminate any impossible situations, inconsistencies or redundancies and simplify the table as mush as possible. The steps of building a decision tables are as follows: 1. Determine the number of conditions that may affect the decision. 2. Determine the number of possible actions that can be taken. 3. Determine the number of condition alternatives for each condition. 4. Calculate the maximum number of columns in the decision table by multiplying the number of alternatives for each condition. 5. Fill in the condition alternatives. 6. Complete the table by inserting an ‘X’ where rules suggest certain actions. 7. Create a key to explain the abbreviations, if any. 8. Apply combine rules, where it is apparent that an alternative does not make a difference in the outcome. 9. Condition 1: Y Y Condition 1: Y Condition 2: Y N Condition 2: – (can be ‘Y’ or ‘N’) Action 1: X X Action 1: X Action 2: Action 2: 10. Check the table for any impossible situation, contradiction and redundancies. Conditions And Actions Salary > RM 50,000/year Salary < RM 2,000/month Action 1 Action 2 Rules 1 2 Y Y Y N 3 N Y 4 N N This is an impossible situation TOOLS FOR DETERMINING SYSTEM REQUIREMENTS AND SYSTEM ANALYSIS Page 3 of 9 MANAGEMENT INFORMATION SYSTEMS Conditions And Actions Condition 1 Condition 2 Condition 3 Action 1 Action 2 Action 3 Rules 1 Y Y X 2 Y Y N Chapter 6 3 Y Y - 4 Y N X 5 Y N X 6 N Y N X X X X Contradiction 11. 7 N N Y Redundancy Contradictions occur when rules suggest different actions but satisfy the same conditions. Contradictions often occur if the dashes (-) are incorrectly inserted into the table. Contradictions could also be a result of discrepant information gathered from different systems users. Redundancy occurs when identical sets of alternatives require the exact same action. Rearrange the condition and actions if this makes the decision table more understandable. Decision table sample Conditions And Actions Raining Days Weekend Stay at home Go to neighbor’s house Go shopping with friends Conditions And Actions Raining Days Weekend Stay at home Go to neighbour’s house Go shopping with friends Rules 1 2 Y Y Y N X X 3 N Y 4 N N X X Rules 1 2 Y Y N X X 3 N Y X TOOLS FOR DETERMINING SYSTEM REQUIREMENTS AND SYSTEM ANALYSIS Page 4 of 9 MANAGEMENT INFORMATION SYSTEMS Chapter 6 Enhanced decision tables Decision tables can become very burdensome because they grow rapidly as the number of conditions and alternatives increase. For instance, a table with only seven conditions would have 128 columns. Use of extended entries, ELSE rule or construct multiple tables could resolve this situation. Extended-Entry Form A narrative action approach is used instead of simply a Y or N in the case of a limited-entry form table. Conditions And Actions Staff Member Associate Member Master Student Member Other Member Maximum 2 borrowed books Maximum 4 borrowed books No limit of borrowed books Conditions And Actions Types of membership Maximum borrowed books 1 Y N N N Rules 2 3 N N Y N N Y N N X X 4 N N N Y X X Rules Staff No limit Associate master 4 2 others 2 ELSE-Entry Form This form is useful in helping to eliminate many repetitious rules requiring the same exact action. It is also useful in preventing errors of omission. Conditions And Actions Types of membership Maximum borrowed books Rules Staff No limit Associate 4 TOOLS FOR DETERMINING SYSTEM REQUIREMENTS AND SYSTEM ANALYSIS ELSE 2 Page 5 of 9 MANAGEMENT INFORMATION SYSTEMS Chapter 6 Multiple Tables Multiple tables are used to control the size of the table. Conditions And Actions Book is lost Returned book is damaged Book us overdue Stamp ‘Cancel’ on the date-due PERFORM TABLE B Charge price of book Issue an official receipt Conditions And Actions Overdue less than 30 days Overdue more than 30 days Staff/associate member Fine 10 cents per day Fine 20 cents per day Fine $10 RETURN 1 2 Rules 3 4 5 N Y Y X X X Rules 1 2 3 4 5 Y N Y X X Case: Suppose you have to get up at around 8am if you are going to get work on time. You go to work on Monday to Friday only and have your weekends free. If you woke up on Tuesday morning at 8:05am, you would be faced with the following appalling dilemma where you will be late for work. An X marks the actions you should take where you are either stay in bed or wake up. 6.2.3 Structured English Many functional operations simply involve straightforward sequence of tasks or the iteration of smaller operations. In such case, a series of concise English statements, called Structured English, can be used to communicate the processing rules. It is a Standard English that similar to pseudocode of the structured programming. Users are generally comfortable with English statements. As the format of structured English is sufficiently precise so that it will not be misinterpreted by designers or programmers. TOOLS FOR DETERMINING SYSTEM REQUIREMENTS AND SYSTEM ANALYSIS Page 6 of 9 MANAGEMENT INFORMATION SYSTEMS Chapter 6 A Structured English must conform to the following rules: (i). Use only the 3 building blocks of sequence, selection and iteration. (ii). Use indentation for readability (iii). Use a limited vocabulary including standard terms used in the data dictionary and specific words that describe the processing rules. Three basic constructs of Structured English are: 1. Sequence The completion of one of two steps in sequential order, one after another. One or more of the steps might represent a sub process that contains additional logical structures. Verify Product Code Verify Price Verify Stock Level Example: Request the borrower’s library card. Check the borrower is the owner of the card. Receive the books from the borrower. Check the books are non-reference materials. Stamp due dates on the books. Return the library card and the stamped books to the borrower. 2. Selection Often, we need to make decision where the successive actions are based on certain decision made. Two possible forms are the IF-THEN-ELSE-ENDIF form and CASE-OTHERWISE-ENDCASE form. IF-THEN-ELSE-ENDIF form is probably easier for the user to understand when there are only two options possible for the selection. Use of indentation and the separation of lines will enhance the readability. When three or more options are possible for a selection, the CASEOTHERWISE-ENDCASE construct usually communicates better. TOOLS FOR DETERMINING SYSTEM REQUIREMENTS AND SYSTEM ANALYSIS Page 7 of 9 MANAGEMENT INFORMATION SYSTEMS Hours > 40? Chapter 6 Yes Calculate Overtime Pay No The system that test the input and if the hours are greater then 40, it performs the “Calculate Overtime Pay” process. Example: IF the books are overdue THEN Compute the overdue fine. Collect the fine from the borrower. Issue a receipt. Return the books to the shelves. ELSE Return the books to the shelves. ENDIF Identify the category of the books CASE(Artificial Intelligent category) Label the book index with prefix ‘AI’ CASE (Database category) Label the book index with prefix ‘DB’ CASE (Programming category) Label the book index with prefix ‘PG’ OTHERWISE Label the book index with prefix ‘XX’ ENDCASE 3. Iteration / Repetition It shows the repetition of a group of statements some number of times until it is done (or met some condition). The group of statements to be repeated is indented directly below the conditional statement. The condition statement specifies the number of times the iteration is to occur. TOOLS FOR DETERMINING SYSTEM REQUIREMENTS AND SYSTEM ANALYSIS Page 8 of 9 MANAGEMENT INFORMATION SYSTEMS Chapter 6 It has three possible forms: FOR-ENDFOR, DO WHILE- ENDDO and REPEAT-UNTIL. End of file? No Print Paycheck Yes Example: FOR each purchased book Check the title matches with the invoice statements. Browse through the book to ensure no torn pages. IF the book is torn THEN Reject the book. ENDIF ENDFOR DO WHILE there are unpacked books Check the book is not torn. Return the book to appropriate book shelves. ENDDO REPEAT Create an overdue reminder letter for the member. Mail the letter to the reminder. UNTIL no more overdue cases. Review Questions 1. What is decision tree? 2. What are the advantages of decision tree? 3. Explain the advantages and disadvantages of structured English. 4. What are the steps to do decision table? TOOLS FOR DETERMINING SYSTEM REQUIREMENTS AND SYSTEM ANALYSIS Page 9 of 9