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.
• MSG foundation provides home loans to young couple by providing low cost loans.
• Couple whose income is very low to buy a house can apply for loan at MSG foundation.
• The couple has to first complete the application form filling process. In the mortgage application form the couple has to fill all the relevant information required by MSG foundation.
• Certain conditions are to be satisfied by the couple according to which the MSG foundation determines whether the loan application of the couple qualify for a MSG mortgage or not.
• If the application is accepted then weekly payment is calculated and funds available are estimated.
The data flow diagram of MSG foundation product is as follows:
• The initial input is loan_application.
• When this becomes validated_application it is still a loan application and still is an input data.
• In the compute_weekly_payment module the input is validated_application and its output is estimate_weekly_funds.
• 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 compute_weekly_payment again has to go from next module calculated_weekly_payment. So, that will be the point of highest abstraction of output.
In detailed design each module is designed in detail. This design is also known as modular design, physical design or low level design. Detailed design can be made in two ways:
• Tabular- In this appropriate algorithm are selected and specific data structure are chosen. Her, detailed design for each and every module is developed and then implemented by the programmer. The detailed design of the modules contains module name, type, return type, Input/output arguments, Error messages, files accessed or changed, module called etc. The interconnection between different modules is also designed in detail using algorithms and data structure. This technique specifies the design in a step by step manner which is easy to understand.
• Program description language (PDL) or Pseudocode- it can be used as the technique to represent the detailed design using a language decided by the management. PDL consists of control statements, comments, syntax of any specific language selected, which is used to represent the detailed design. It is simple and clear and only comments are translated into the selected programming language.
The tabular format for the PDL of Figure 14.16 and 14.17 of MSG foundation case study is as follows:
A complete DFD gives precise and complete information about the input and output of the product and 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. So, transaction analysis will be best suitable technique for library circulation system which has different operations to be performed such as add book, remove book, return book, search book, check book.
• In transaction analysis a series of related operations are performed modules having logical cohesion and any one operation should be selected by calling module.
• In transaction analysis software reuse is done and no waste of effort is done of having similar modules again and again.
• One basic module is instantiated any number of time which will result in high cohesion and low coupling.
• Library circulation system works with books, librarian and borrowers. All the books in the library have a unique book number in bar code format. The borrower of the book will also have unique borrower number.
• The borrower should have a card with the borrower number on it, in bar code format. Borrower card should be scanned while issuing a book. Borrower need to enter A=author name, T=book tile, S=Subject area into the terminal before borrowing a book.
• Librarian checks/scans the bar code of the borrower and the book. For this librarian enters C to a terminal. If the book is available then it is issued to the borrower.
• Librarian enters R to a terminal when borrower returns a book. Librarian enters + (plus) to add new book to the collection with book details and enters - (minus) to remove book from the collection. Librarian can enter H with book number to hold any book.
Transaction analysis for library circulation system is as follows: