Quiz 14: Design

Computing

Data flow diagram is a kind of design technique which is used for gaining modules with high cohesion. This technique can be used with any other analysis techniques. A complete DFD gives precise and complete information about the input and output of the product. • The transactions of cheques and deposits are in the bank statement. Each cheque has a number and cheques are to be sorted as per the cheque number order. Transaction entry is to be found for each cheque that matches the check number in the bank statement. • If the matching cheque number is not found in the statement then it means that there is error in statement. Otherwise, entry is marked and then the amount of that entry and the amount on the cheque are matched. If the amount is not same then there is error in statement. • Deposit slips are to be sorted as per deposit date. Matching between deposit slips and statement entry is done according to the date and amount of the deposit. If no match is found then there is error in statement and mark the entry if match found. • When all the cheques and deposit entries are processed find if all the entries of the stamen are marked. If any of the entry is not marked then the statement has error. • Ending balance of the statement should be equal to total of all deposits minus total of all the cheques. If it is not so then the stamen has error otherwise stamen is correct. The data flow analysis for determining whether a bank statement is correct is as follows: img • In the above data flow initial input is cheque_depoist_entry. • When these are sorted according to cheque number and deposit date amount they are still cheque and deposit entry and still are an input data. • In the match_with_statement_entry module the input is sorted_cheque and its output is mark_the_matching_entries. • The output of this module is totally different from the input. So, it is the point of highest abstraction of input. • In the same way the output from match_with_statement_entries again has to go from next module mark_the_matching_entry. So, that will be the point of highest abstraction of output.

Transaction analysis is used for such kind of products in which there are a number of related operations which are similar in outline but are different in details. In transaction analysis the product is broken into two pieces: • Analyser • Dispatcher Analyser tells the transaction type and then passes the information to the dispatcher which performs the transaction. Transaction analysis operates from the user's point of view. In an automated teller machine a customer insert ATM card and inputs the password and can perform operations such as deposit, withdraw and balance check. Transaction analysis for software to control automated teller machine and the operations done by the customer is as follows: img

Transaction analysis is used for such kind of products in which there are a number of related operations which are similar in outline but are different in details. In transaction analysis the product is broken into two pieces: • Analyser • Dispatcher Analyser tells the transaction type and then passes the information to the dispatcher which performs the transaction. Transaction analysis operates from the user's point of view. In an automated teller machine a customer insert ATM card and inputs the password and can perform operations such as deposit, withdraw and balance check. Transaction analysis for software to control automated teller machine of Problem 14.2 along with error handling module is as follows: img • When a series of related operations are performed modules have logical cohesion and any one operation should be selected by calling module. • In the above transaction analysis processing system software reuse is done and no waste of effort is done of having five similar edit modules and five similar update modules. • One basic update and edit module are instantiated five times which will result in high cohesion and low coupling.