### Data Flow Diagramming Example

#### Summary of Business ActivityCustomer Rental System

1. Customers apply for a video rental card. They fill out form and provide a means of verifying their identity. They are issued a video rental card.
2. Customers rent videos by giving the clerk their video rental card and the video cassettes or video games. The clerk totals the amount of the rental, which is received from the customers. The customer is given a receipt with the due date on it. A record is created for each item rented.
3. Customers return video cassettes or video games. If the video is returned late a notes and the amount of the late fee is made on their record.
4. If a customer has a late fee they are required to pay the amount the next time they rent an item.
5. The company has several special policies designed to provide a competitive edge in the video rental market. Once a month the customer rental records are reviewed for customers that have rented more than the bonus level, currently set at \$50. Bonus custoemrs are sent a letter thanking them for their business as well as issuing them several free rental coupons (depending on the amount of rental for the month ).
6. Once a year, the customer records are examined for persons that have rented more than a yearly bonus level (currently aet at \$250). A letter, free rental coupons, and a certificate for a free video (if they have rented over two times the bonus level) are sent to the customer.
##### Creating the context diagram

Figure 1.0

• A summary of the business activities obtained from interviews with the owners of FilmMagic is illustrated in Figure 1.0.
• The context-level data flow diagram, representing an overview of the entire system, appears in Figure 2.0.
• Since the system must keep track of the number of videos a customer has rented, the external entity CUSTOMER has the most data flow to and from it.
• Note that the context diagram is relatively simple
##### Drawing 1-Level Diagram

Figure 2.0

• 1-Level Diagram, shown in Figure 2.0, depicts the major activites for the FilmMagic video rental system. Note that there is one process for each major activity. Each process is analyzed to determine the data required and the output produced. Process 1, RENT VIDEO ITEMS, summarizes the main function of the system and is thus a complex process. Notice the many input and output data flows.

• To correctly draw the data flow diagram, question must be asked such as, "What information is needed to rent video a video?" A VIDEO RENTAL ITEM (which may be either a video cassette or a video game), a PAYMENT, and a CUSTOMER ID ( a rental card) are required from the CUSTOMER. The VIDEO RENTAL ITEM is used to find matching information about the video, such as the price and description. The process creates a CASH TRANSACTION, that will eventually produce information about the total cash received. The CUSTOMER RECORD is obtained and updated with the total amount of the rental. A double-headed arrow indicates that the CUSTOMER RECORD is obtained from and replaced in the same file location. the RENTAL RECEIPT and video are given to the CUSTOMER . RENTAL INFORMATION such as the date and the item rented is produced for later use to generate MANAGEMENT REPORTS.

• The other processes are simpler, with less input and output. Process 3, CHECK IN CUSTOMER VIDEO RETURN, updates the CUSTOMER data store indicating that items are no longer checked out. New customers must be added to the CUSTOMER data store before a video may be checked out. Process 5, ADD NEW CUSTOMER, takes NEW CUSTOMER INFORMATION and issues the customer a VIDEO RENTAL CARD. The card must be presented each time a customer wishes to check out a video.

• Processes 2 and 4 produce useful information to manage the business and make decisions, such as when to lower the price of videos that are in demand and when to advertise o draw more customers, thereby increasing cash flow. Processes 6 and 7 use CUSTOMER data store information to PRODUCE MONTHLY and YEARLY CUSTOEMR BONUS LETTERS. Notice that the names of the data flows going into and out of the processes are different, indicating that something has transformed input data to produce output. All processes start with a verb such as RENT, PRODUCE, or ADD.

##### Creating a 2-Level Diagram

Figure 3.0

• Figure 3.0 is the level-2 diagram o the Process 1, RENT VIDEO ITEMS, in the FilmMagic example. The input data flow VIDEO INFORMATION is connected only to the process GET VIDEO RECORD. The source of this input is a blank area on the drawing. This is incomplete interface flow mathces the flow into process 1 on 1-level diagram. The same is true for VIDEO RENTAL, PAYMENT, and CUSTOMER ID.
• The CUSTOMER RECORD is also an interface data flow but is connected on 2-level diagram to the CUSTOMER data store, since data stores on the parent diagram may also be included on the child daigram. the output dta flows CASH TRANSACTION and RENTAL RECEIPT are interface flows that match the parent process output. the flow NOT FOUND ERROR us not depicted in the parent process since an error line is considered a minor output.

• Child diagram processes are more detailed, illustrating the logic required to produce the output. The process GET VIDEO RECORD uses VIDEO RENTAL, indicating which video the customer wishes to rent, to find the matching VIDEO INFORMATION (title, price an so on). Process 1,5, FINF CUSTOMER RECORD, uses the CUSTOMER ID on the video rental card to locate the CUSTOMER record. The CUSTOMER NAME AND ADDRESS are printed on the RENTAL RECEIPT printed from process 1.4.