Download presentation
Presentation is loading. Please wait.
Published byAnnie Camburn Modified over 9 years ago
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
Similar presentations
© 2024 SlidePlayer.com Inc.
All rights reserved.