Presentation is loading. Please wait.

Presentation is loading. Please wait.

Data Flow Diagramming Rules Processes –a process must have at least one input –a process must have at least one output –a process name (except for the.

Similar presentations


Presentation on theme: "Data Flow Diagramming Rules Processes –a process must have at least one input –a process must have at least one output –a process name (except for the."— Presentation transcript:

1 Data Flow Diagramming Rules Processes –a process must have at least one input –a process must have at least one output –a process name (except for the context level process) should be a verb phrase usually three words: verb, modifier, noun on a physical DFD, could be a complete sentence

2 Data Flow Diagramming Rules Data flows –data flows are unidirectional –a data flow may fork, delivering exactly the same data to two different destinations –two data flows may join to form one only if the original two are exactly the same –no recursive data flows –data flows (and data stores and sources/sinks) are labelled with noun phrases

3 Data Flow Diagramming Rules Data stores and sources/sinks –no data flows between two data stores; must be a process in between –no data flows between a data store and a source or sink; must be a process in between –no data flows between two sources/sinks such a data flow is not of interest, or there is a process that moves that data

4 Practice Develop a context diagram for a college course registration system

5 Course Registration: Context level Diagram 0 Course Registration System Student Registrar Professor Class Request Payment Receipt Student Schedule Class roster Enrollment statistics

6 Level 0 Diagram Process is “exploded” Sources, sinks, and data flows repeated from context diagram Process broken down into subprocesses, numbered sequentially Lower-level data flows and data stores added

7 Course Registration: Current Logical Level 0 Diagram Student RegistrarProfessor 1.0 Register Student for Course D1 Student Class Records D2 Student Payments 2.0 Collect Student Fee Payment 3.0 Produce Student Schedule 4.0 Produce Class Roster 5.0 Produce Enrollment Report Payment Information Student and Course Data Student Class Record Student Class Record Student Class Record Student Schedule Class Roster Enrollment Report Student Class Request Receipt Payment

8 Child Diagrams “Explode” one process in level 0 diagram Break down into lower-level processes, using numbering scheme Must include all data flow into and out of “parent” process in level 0 diagram Don’t include sources and sinks May add lower-level data flows and data stores

9 Course Registration: Current Logical Child Diagram 1.2 Check for Availability 1.1 Check Prerequisites Met 1.3 Enroll Student in Class D1 Student Class Records D5 Course Catalogue D4 Student Transcripts D3 Semester Schedule Class Request Valid Class Request Feasible Class Request Available Seats Student Record Course Record Student and Course Data Error

10 Physical DFDs Model the implementation of the system Start with a set of child diagrams or with level 0 diagram Add implementation details –indicate manual vs. automated processes –describe form of data stores and data flows –extra processes for maintaining data

11 Course Registration: Proposed Physical Child Diagram 1.2 Check for Availability (automated) 1.1 Check Prerequisites Met (automated) 1.3 Enroll Student in Class (automated) D1 Semester Enrollment DB D5 Course Catalogue DB D4 Registrar’s Student DB D3 Semester Schedule DB Class Request Authorized Class Request Valid Class Request Available Seats Student and Course Data Student Notified (email) Student Emailed Student Record Course Record

12 Course Registration: Current Physical Child Diagram 1.2 Check for Availability (Banner) 1.1 Check Prerequisites Met (Banner) 1.3 Enroll Student in Class (Banner) D1 Semester Enrollment DB D5 Course Catalogue (text) D4 Department Student File D3 Semester Schedule DB Class Request Advisement Authorization Feasible Class Request Available Seats Student and Course Data Student Notified (verbally) Unavailability Message Student File Course Description

13 Practice Develop a context diagram for a pizza place (SUNYIT Pizza) that delivers

14 SUNYIT Pizza: Context Level Diagram 0 Customer Order System Customer Cook Management Phone Number Customer Order Customer Info Delivery Information Weekly Report Cook Order Delivery Person

15 SUNYIT Pizza: Current Logical Level 0 Diagram 1.0 Find Customer Record 7.0 Print Weekly Totals 6.0 Send Order to Cook 5.0 Add Customer Record 2.0 Take Customer Order 3.0 Print Delivery Order Customer Info Phone Number Customer Order D1 Customer Master Customer Record Customer Record Customer Information D2 Customer History D3 Sales Records Order Information Order Information Customer History Delivery Information Customer Order Cook Order Management Sales Info Weekly Report Discount Info Delivery Person

16 SUNYIT Pizza: Current Logical Child Diagram 3.1 Determine Customer Discount 3.2 Record Discount 3.3 Print Delivery Instructions Order Information Discount Amount Delivery Information D2 Customer History D3 Sales Records Customer History Discount Information Customer Information

17 SUNYIT Pizza: Current Logical Child Diagram 5.1 Record Customer Information 5.2 Store Customer Record D1 Customer Master Customer InformationRaw Customer Information Customer Record

18 SUNYIT Pizza: Physical Child Diagram 5.3 Clerk Visually Confirms Cust. Info. 5.1 Clerk Types Customer Information 5.2 System Validates Customer Information 5.4 Format Customer Record Phoned Customer Information Recorded Customer Information Valid Customer Information Syntax Errors Cancelled Transaction New Customer Information D1 Customer DB Customer Record Phone Number

19 SUNYIT Pizza: Current Physical Level 0 Diagram 1.0 Clerk Finds Customer Row 7.0 Mgr Prints Weekly Totals (batch) 6.0 Clerk Sends Order to Cook (paper) 5.0 Clerk Adds Customer Row 2.0 Clerk Takes Customer Order (by phone) 3.0 System Prints Delivery Order Customer Phoned Customer Info Phone Number Phoned Customer Order D1 Customer Spreadsheet Customer Record Customer Record Customer Information D2 Customer History DB D3 Sales Records File Copy of Order Slip Customer & Order Info Customer History Record Delivery Printout Customer Cook Copy of order slip Management Copies of Order Slips Weekly Report Phone # Cust. Info. Delivery Person 8.0 Mgr Updates Customer History (nightly) Copies of Order Slips & Del. Printouts Customer History Record Phoned Customer Order

20 SUNYIT Pizza: Proposed Physical Level 0 Diagram 1.0 System Finds Customer Record 7.0 System Prints Weekly Totals (batch) 5.0 Clerk Adds Customer Record 2.0 Clerk Enters Customer Order (by phone) 3.0 System Prints Delivery Order Customer Phoned Customer Info Phone Number Phoned Customer Order D1 Customer DB Customer Record Customer Record Customer Information D2 Customer History DB D3 Sales DB Order Info Order Info Customer History Record Delivery Printout CookManagement Sales Records Weekly Report Phone # Cust. Info. Delivery Person D3 Sales DB Order Info Discount Info

21 Data Flow Diagramming Rules Processes –a process must have at least one input –a process must have at least one output –a process name (except for the context level process) should be a verb phrase usually three words: verb, modifier, noun on a physical DFD, could be a complete sentence

22 1.0 Gather Data 2.0 Compile Statistics Demographic Data 3.0 Analyze Responses Survey Responses Final Report

23 2.0 Visa Authorization 2.0 Total Records 2.0 QA Process 2.0 Check Customer Credit 2.0 Total Sales Records 2.0 Inspect Finished Products BETTER

24 Data Flow Diagramming Rules Data stores and sources/sinks –no data flows between two data stores; must be a process in between –no data flows between a data store and a source or sink; must be a process in between –no data flows between two sources/sinks such a data flow is not of interest, or there is a process that moves that data

25 2.1 Store Customer Data Customer Information D1 Customer Data D2 Customer Preferences Customer Data Customer Preferences 2.1 Store Customer Data Customer Information D1 Customer Data D2 Customer Preferences Customer Data Customer Preferences

26 2.1 Store Customer Data Customer Information D1 Customer Data D2 Customer Preferences Customer Data Customer Preferences 2.1 Store Customer Data Customer Information D1 Customer Data D2 Customer Preferences Customer Data Customer Preferences 2.2 Extract Customer Preferences Customer Data

27 D1 Customer Data Customer Data 2.0 Store Customer Data D1 Customer Data Customer Data Customer Information Customer

28 0 Medical Billing System Doctor Patient Diagnosis Service Information Bill

29 Data Flow Diagramming Rules Data flows –data flows are unidirectional –a data flow may fork, delivering exactly the same data to two different destinations –two data flows may join to form one only if the original two are exactly the same –no recursive data flows –data flows (and data stores and sources/sinks) are labelled with noun phrases

30 2.0 Total Daily Sales 1.0 Take Customer Order 3.0 Print Delivery Instructions Customer Order Information Order Total 2.0 Total Daily Sales 1.0 Take Customer Order 3.0 Print Delivery Instructions Order Information Order Total

31 2.0 Lookup Customer Record 1.0 Take Customer Order 3.0 Print Delivery Instructions Customer Order Customer Address Customer Information 2.0 Lookup Customer Record 1.0 Take Customer Order 3.0 Print Delivery Instructions Customer Order Customer Address

32 1.0 Calculate Weekly Sales Daily Sales Cumulative To-Date Sales

33 Data Flow Diagramming Guidelines The inputs to a process are different from the outputs Every object in a DFD has a unique name

34 1.0 Validate Customer Data 1.0 Validate Customer Data Customer Data Customer Data Valid Customer Data Customer Data

35 2.0 Take Customer Order 1.0 Get Customer Data 3.0 Process Customer Order Customer Data Customer Data Order 2.0 Take Customer Order 1.0 Get Customer Data 3.0 Process Customer Order Customer Data Order

36 1.0 Get Customer Data 2.0 Take Customer Order 3.0 Validate Customer Data Customer Data Only if these are exactly the same Customer Data

37 Data Flow Diagramming Guidelines A data flow at one level may be decomposed at a lower level All data coming into and out of a process must be accounted for On low-level DFDs, new data flows can be added to represent exceptional situations

38 1.0 Get Customer Address Customer Information Customer Address 1.2 Lookup Customer Address 1.1 Get Customer Phone 1.3 Request Customer Address Customer Phone Customer Address Customer Phone Customer Address

39 1.0 Get Customer Address Customer Information Customer Address 1.2 Lookup Customer Address 1.1 Get Customer Phone 1.3 Request Customer Address Customer Phone Customer Address Customer Phone Customer Address Invalid Phone Number Message

40 Data Elements Indivisible pieces of data Data flows and data stores are made up of data elements Like attributes on an ER diagram The data elements of a data flow flowing in or out of a data store must be a subset of the data elements in that data store

41 1.0 Calculate Gross Pay D2 Employee Time File Employee D1 Employee Master D3 Check Reconciliation D1 Employee Master 2.0 Calculate Withholding Amount 3.0 Calculate Net Pay 4.0 Print Employee Paycheck Hours Worked Employee Time Record Gross Pay Withholding Net Pay Employee Record Employee Record Check Reconciliation Record Employee Paycheck

42 1.0 Calculate Gross Pay D2 Employee Time File Employee D1 Employee Master D3 Check Reconciliation D1 Employee Master 2.0 Calculate Withholding Amount 3.0 Calculate Net Pay 4.0 Print Employee Paycheck Hours Worked Employee Time Record Gross Pay Withholding Amount Net Pay Employee Record Employee Record Check Reconciliation Record Employee Paycheck 5.0 Create Time Record Employee Time Record Number of Dependents Gross Pay D4 Withholding Tables Withholding Rates 6.0 Reconcile Pay Check Paycheck Information

43 DFDs and ERDs DFDs and ERDs are both used to model systems, but they show two very different perspectives on the system A DFD shows what the system does as well as the data that the system manipulates An ERD shows only the data that the system manipulates.

44 DFDs and ERDs (cont.) Entities on an ERD often (but not always) correspond to data stores on a DFD Attributes on an ERD usually correspond to data elements (listed in the data dictionary) that make up the data store and data flows on a DFD Relationships on an ERD do not correspond to processes on a DFD. Sources and sinks on a DFD usually do not show up as entities on an ERD

45 Example DFD and ERD DFD Incorrect ERD

46 Example DFD and ERD Correct ERD DFD


Download ppt "Data Flow Diagramming Rules Processes –a process must have at least one input –a process must have at least one output –a process name (except for the."

Similar presentations


Ads by Google