Data Flow Diagrams

1 / 30
About This Presentation
Title:

Data Flow Diagrams

Description:

Can diagram the organization or the system. Can diagram the current or proposed situation ... Zip Code. Directory. Name. Directory. Name. Balancing Exceptions ... – PowerPoint PPT presentation

Number of Views:129
Avg rating:3.0/5.0
Slides: 31
Provided by: carolyn78

less

Transcript and Presenter's Notes

Title: Data Flow Diagrams


1
Data Flow Diagrams
  • A structured analysis technique that employs a
    set of visual representations of the data that
    moves through the organization, the paths through
    which the data moves, and the processes that
    produce, use, and transform data.

2
Why Data Flow Diagrams?
  • Can diagram the organization or the system
  • Can diagram the current or proposed situation
  • Can facilitate analysis or design
  • Provides a good bridge from analysis to design
  • Facilitates communication with the user at all
    stages

3
Types of DFDs
  • Current - how data flows now
  • Proposed - how wed like it to flow
  • Logical - the essence of a process
  • Physical - the implementation of a process
  • Partitioned physical - system architecture or
    high-level design

4
Levels of Detail
  • Context level diagram - shows just the inputs and
    outputs of the system
  • Level 0 diagram - decomposes the process into the
    major subprocesses and identifies what data flows
    between them
  • Child diagrams - increasing levels of detail
  • Primitive diagrams - lowest level of decomposition

5
Four Basic Symbols
Source/ Sink
Data Flow
6
Context Level Diagram
  • Just one process
  • All sources and sinks that provide data to or
    receive data from the process
  • Major data flows between the process and all
    sources/sinks
  • No data stores

7
Running ExampleCourse Registration Context
level Diagram
Professor
Class roster
Class Request
Student
Payment
Receipt
Student Schedule
Registrar
Enrollment statistics
8
Modeling Dilemma Scope
  • Deciding whether an entity is an external
    source/sink or an integral part of the system
  • E.g. users of the system, managers who oversee
    the process
  • Does the entity simply provide or receive
    information, or do they perform some part of the
    process?

9
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

10
Running ExampleCourse Registration Current
Logical Level 0 Diagram
Student
Payment
Class Request
Receipt
Payment Information
Student and Course Data
Student Class Record
Student Class Record
Student Class Record
Student Class Record
Enrollment Report
Student Schedule
Class Roster
Student
Registrar
Professor
11
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
  • Dont include sources and sinks
  • May add lower-level data flows and data stores

12
Running ExampleCourse Registration Current
Logical Child Diagram
Available Seats
Available Seats
Class Request
Valid Class Request
Feasible Class Request
Error
Error
Student and Course Data
Student Record
Course Record
13
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

14
Running ExampleCourse Registration Current
Physical Child Diagram
Available Seats
Available Seats
1.2
1.1
1.3
Class Request
Advisement Authorization
Feasible Class Request
Check for Availability (myUMBC)
Check Prerequisites Met (manual)
Enroll Student in Class (STARS)
Student Notified (verbally)
Unavailability Message
Student and Course Data
Student File
Course Description
15
Running ExampleCourse Registration Proposed
Physical Child Diagram
Available Seats
Available Seats
1.2
1.1
1.3
Class Request
Authorized Class Request
Valid Class Request
Check for Availability (automated)
Check Prerequisites Met (automated)
Enroll Student in Class (automated)
Student Notified (email)
Student Emailed
Student and Course Data
Student Record
Course Record
16
Partitioning a physical DFD
  • Part of system design
  • System architecture
  • high-level design
  • overall shape of system
  • some standard architectures
  • Decide what processes should be grouped together
    in the system components

17
Running ExampleCourse Registration Physical
diagram (partitioned)
Available Seats
Available Seats
1.2
1.1
1.3
Class Request
Authorized Class Request
Valid Class Request
Check for Availability (automated)
Check Prerequisites Met (automated)
Enroll Student in Class (automated)
Student Notified (email)
Student Emailed
Student and Course Data
Student Record
Course Record
18
Balancing
  • Most important rule in data flow diagramming
  • Every child diagram must include the same inputs
    and outputs as the process it represents in its
    parent diagram
  • Also applies to the level 0 diagram
  • Checking for balancing is a good way to find
    errors and omissions in your DFDs

19
Customer Information
Customer Address
Directory Name
Customer Record
Customer Information
Customer Zip Code
Customer Information
Customer Record
Customer Address
Directory Name
20
Balancing Exceptions
  • A data flow at one level may be decomposed at a
    lower level
  • On low-level DFDs, new data flows can be added to
    represent exceptional situations
  • All data coming into and out of a process must be
    accounted for

21
Customer Information
Customer Address
Customer Phone
Customer Phone
Customer Address
Customer Address
22
Customer Information
Customer Address
Customer Phone
Customer Phone
Invalid Phone Number Message
Customer Address
Customer Address
23
Another ExamplePerfect Pizza Context Level
Diagram
Management
Weekly Report
Phone Number
Customer
Customer Order
Customer Info
Cook
Cook Order
Delivery Person
Delivery Information
24
Another ExamplePerfect Pizza Current Logical
Level 0 Diagram
Customer
Customer Order
Phone Number
Delivery Person
Customer Information
Order Information
Delivery Information
Customer Record
Customer History
Discount Info
Customer Info
Order Information
Customer
Customer Order
Customer Record
Cook Order
Sales Info
Weekly Report
Cook
Management
25
Another ExamplePerfect Pizza Current Logical
Child Diagram
Customer History
Customer Information
Discount Amount
Order Information
Discount Information
Delivery Information
26
Another ExamplePerfect Pizza Current Logical
Child Diagram
Customer Information
Raw Customer Information
Customer Record
27
Another ExamplePerfect Pizza Physical Child
Diagram
Syntax Errors
Cancelled Transaction
Phoned Customer Information
5.3
5.2
Recorded Customer Information
Valid Customer Information
Clerk Visually Confirms Cust. Info.
System Validates Customer Information
Phone Number
Customer Record
New Customer Information
D1
Customer DB
28
Another ExamplePerfect Pizza Current Physical
Level 0 Diagram
Customer
Phoned Customer Order
Phone Number
Delivery Person
Customer Information
Customer Order Info
Delivery Printout
Customer Record
Copy of Order Slip
Customer History Record
Cust. Info.
Phoned Customer Info
Customer History Record
D2
Customer History DB
D1
Customer Spreadsheet
Customer
Copies of Order Slips Del. Printouts
Customer Record
Copies of Order Slips
Phoned Customer Order
Weekly Report
Phone
Copy of order slip
Cook
Management
29
Another ExamplePerfect Pizza Proposed Physical
Level 0 Diagram
Customer
Phoned Customer Order
Order Info
Phone Number
Discount Info
Delivery Person
Customer Information
Order Info
Delivery Printout
Order Info
Customer Record
Customer History Record
Cust. Info.
Phoned Customer Info
Customer Record
Sales Records
Weekly Report
Phone
Cook
Management
30
Another ExamplePerfect Pizza Partitioned
Physical Level 0 Diagram
Customer
Phoned Customer Order
Order Info
Phone Number
Discount Info
Delivery Person
Customer Information
Order Info
Delivery Printout
Order Info
Customer Record
Customer History Record
Cust. Info.
Phoned Customer Info
Customer Record
Sales Records
Weekly Report
Phone
Cook
Management
Write a Comment
User Comments (0)