Part III: The Analysis Process Lecture Note 8 Using Data Flow Diagrams Systems Analysis and Design Kendall & Kendall Sixth Edition Major Topics • A Data Flow Diagram Example for Video Rental System of FilmMagic Co. • The Second Data Flow Diagram Example for Order Processing System of World’s Trent Co. CS206 Syatem Analysis & Design Note 8 By ChangYu 2 A Data Flow Diagram Example • The corporation in our example is FilmMagic, a video rental chain founded by the three people with expertise in the video rental business. • A summary of the business activities are obtained from interviewing with the owners of FilmMagic. • Start with a list of business activities, which will help you identify Processes, External Entities, Data flow and Data Stores. 3 1. Apply a video rental card: a) b) 2. Make a List Rent DVDs with video rental card: a) b) c) d) e) 3. Customers apply for a video rental card. They fill out a form and provide a means of verifying their identity. They are issued a video rental cad. Customers rent videos by giving the clerk their video rental card and the DVDs or video games. The clerk totals the amount of the rental, which is received from the customers. Customers are given a receipt with the due date on it. A record is created for each item rented. The video rent card is returned to customer. Return : a) b) Customers return DVDs or video games. If the item is returned late, a note and the amount of the late fee is made on the record. What information is needed to rent a DVD? 4 4. If a customer has a late fee, he or she is required to pay the amount the next time an item is rented. 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 who have rented more than the bonus level, currently set at $50. Bonus customers are sent a letter thanking them for their business as will 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 customers who have rented more than a yearly bonus level (currently set at $250). A letter, free rental coupons, and a certificate for a free video (if a customer has rented over two times the bonus level) are sent to the customer. 5 Creating the Context Diagram External Entity: • Video Purchase System -- Provide information about Video item. • Management – needs management reports to managing and making decision. • Accounting – accept total cash. 6 Drawing Diagram 0 Diagram 0 for the FilmMagic video rental system shows seven major processes. This logical DFD tell us Rent video Handle new customers case • What the system does, • What is stored, • Who or What provides the inputs, and Update customer data store • Who receives the output. Useful information for managing the business and making decisions. Use customer data store to produce monthly or yearly bonus letter. 7 Creating a Child Diagram Child Diagram: Diagram 1: • Get video record: uses DVD the customer wishes to rent to find matching title, price and so on. • Find Customer Record: use customers ID on the video rent card to locate the customer record, so as to get the customer’s name and address. • Produce Customer Receipt : rental receipt should be included customer’ information and rental information. • Get Customer Payment: produce a cash transaction. • Update Customer Record 8 Creating a Physical Data Flow Diagram This physical data flow diagram corresponds to logical Diagram 0. note the subtle differences. CUSTOMER ID is now CUSTOMER ID BAR CODE, emphasizing physical implementation. The Entity Video Purchase System has been replaced with a Video Master File because the file is used to communicate between systems. Is necessary because videos are rented throughout the day, but the cash received report is produced only once a week. Is used to store information from the time the videos are rented until they are returned. 9 Physical Child DFD This physical child data flow diagram shows details about real world implementation. The logical diagram process 1.1 was GET VIDEO RECORD, but the physical diagram process 1.1 tell us how SCAN VIDEO BAR CODE. Notice that there are processes for scanning bar codes, displaying screens, locating records and creating and updating files. The sequence of activities is important here, because the emphasis in on how the system will work and in what order events happen. 10 Partitioning the DFD Partitioning takes the physical DFD and makes programming and implementation manageable. Notice the use of dotted lines to indicate which processes should be in separate programs. • The process 1 and process 3 operates on a minute-by-minute basis. Returns, are handle at a time later than the rental process, and both procedures should thus be in separate program. • The process 2 is weekly and must be in a separate program. Cash Transaction Record and Cash Received Report are both computer information, the process should be implemented as a batch program. • The process 4, 6 and 7 should be implemented as a batch program. • The process 5 could be either batch or online. Because the customer is probably waiting for the video Rental card on the other side of a counter, an online process would provide the best customer server. 11 The Second Data Flow Diagram Example A summary of business activities for World’s Trent Catalog Division. • World’s Trend is a mail-order supplier of high-quality, fashionable clothing. Customers place orders by telephone, faxing, mailing an order form included with each catalog, or via the web site. • You develop this list using information obtained through interviews, investigation and observation. • The list can be used to identify External Entities as well as some Data Flows, Data Stores and Processes. 12 1. 2. 3. Add new customers to the Customer Master File. When customers are added to the master file, they are assigned a Customer-Number, which is used when placing subsequent orders. Perform inquires to let customers know the current selling price of an item and the quantity available for sale. Process customer orders by Verifying that all order information is accurate and that a record exists for the customer placing the order. If a customer record does not exist, it is added to the master’s file. As orders are entered, customer and item Master Record Fields are updated. List of Business Activities 13 4. If a customer orders more of an item 5. 6. 7. 8. than is currently available in stock, back-ordered item information is sent to the inventory control department. When back-ordered items are received form World’s Trend suppliers, they are shipped to the customers. Orders are sent to the warehouse where they are filled. A shipping statement is attached to the filled order. Mailing labels are prepared, and the order is shipped to the customer. Order information is used to produce a billing statement for all customers charging their goods to their World’s Trend account. Order information is used to produce an accounts receivable report for the accounting department. 14 Creating the Context Diagram External entities: • Inventory Control Department • Accounting Department • Warehouse 15 Diagram 0 Order Processing System has some sub-processes: • Add Customer Order • Add Customer Record • Produce Picking Slips • Prepare Shipping Statement • Ship Customer Order • Create Customer Statement • Produce Accounts Receivable Data Stores: • Item Master • Customer Master 16 Diagram 1 How to Add Customer Order: • Validate Customer Account • Validate Order Item • Determine Quantity Available • Update Item Quantity • Calculate Order Totals • Update Customer Record • Create Pending Order Data Stores: • Customer Master • Shipping and Handling Table • Item Master 17 The Physical Data Flow Child Diagram Produce Picking Slips: When you label a physical model, take care to describe the process in great detail. • Sub-process 3.3 in local model could simply be SORT ORDER ITEM , but in physical model, a better label is SORT ORDER ITEM BY LOCATION WITHIN CUSTOMER. • When you write a label for a data store, refer to the actual file or database, such as CUSTOMER MASTER FILE, SORTED ORDER ITEM FILE, ITEM ORDER FILE AND ORDER ITEM FILE. • When you describe data flows, describe actual form, report or screen. 18 Partitioning the DFD Finally, take the physical data flow diagram and suggest partitioning through combining or separating the processes. • You must group processes 1 and 2, because it would make sense to add new customers at the same time their first order was placed. • You would then put processes 3 and 4 in two separate partitions. Although both are batch processes, they must done at different times from each other and thus cannot be grouped into a single program. 19 Review Questions • What is a data flow diagram? • What is advantages of the Data Flow Diagram Approach? • What are the steps of developing Data Flow Diagrams ? • What is the different between logical DFD and physical DFD? • What are the reasons for Partitioning? 20