Creating Data Flow Diagrams
Data Flow Diagrams Symbols
Source/ Sink
DeMarco & Yourdon
System Analysis and Design
System – a group of interrelated procedures
used for a business function, with an identifiable boundary, working together for
Sink
0.0 Process
Ph i l D t Fl Di h h
y, g g
some purpose.
Analysis – separation of a whole into its
component parts
Design – to create, fashion, execute, or
construct according to plan
DATA STORE
Data Flow Lines Logical Data Flow Diagrams – show the data
flow, structure, and requirements of a new
Physical Data Flow Diagrams – show how
Data Flow Diagrams Symbols
Source/ Sink
DeMarco & Yourdon
Source/Sink – help to establish the
boundaries of the system. A source identifies the origin of data inflow to the system. A sink Sink
0.0 Process
g y
identifies the outflow of a system, many times as information.
Sometimes referred to an entity, a source may be a customer, vendor, employee, or even another system. A single entity can be both a source and a sink.
DATA STORE
Data Flow Lines
Data Flow Diagrams Symbols
Source/ Sink
DeMarco & Yourdon
Processes – are the activities (manual and
automated) that transform the inputs, transport data from process to process,
Sink
0.0 Process
p p p ,
stores the data, and produce the outputs of a system.
Processes are used on every DFD starting with an over all process on the context level diagram, the system. The system is then decomposed until a primitive level is obtained. The primitive level is the point in
DATA STORE
Data Flow Lines
p p
Data Flow Diagrams Symbols
Source/ Sink
DeMarco & Yourdon
Data Store – is the resting place of the data
in a system. A data store can be in the form of paper, a disk file or any other media.
Sink
0.0 Process
p p , y
Normally the word ‘data’ does not appear in the title of a data store. Some examples of data stores are Customer Order, Payment, Invoice, Time Card……
DATA STORE
Data Flow Lines
Data Flow Diagrams Symbols
Source/ Sink
DeMarco & Yourdon
Data Flow – is the data in motion. Data can
move from the outside (source) into a process. Once the inside of a system data
Sink
0.0 Process
p y
must flow from place to place through a process, the flow lines show this movement.
The lines are labeled to provide clarity and meaning to the data moving through the system.
DATA STORE
Data Flow Diagrams Levels
Source/ Sink
DeMarco & Yourdon
0.0
Process Source/ Sink Source/ Sink
Data Flow Data Flow
Context Level DFD
Sink
0.0 Process
Data Flow Data Flow
1.0 Process
Data Flow Data Flow
Data Flow
Level 0 DFD
DATA STORE
Data Flow Lines
2.0 Process
Data Flow Source/ Sink Source/ Sink
Data Flow
3.0 Process Data Flow
Data Flow
Data Flow Diagrams Levels
Source/ Sink
DeMarco & Yourdon
Data Flow
Level 1 DFD (and on)
Source
Sink
0.0 Process
1.2 Process 1.1
Process DATA STORE
Data Flow
Source
DATA STORE
Data Flow Lines Data Flow
Prepared by: yourname Date: 01/01/2002
Level 1 DFD Project Name
1.1
Data Flow
DATA STORE
Data Flow Diagrams Levels
Prepared by: yourname Date: 01/01/2002
Context Level DFD Project Name 1.2 Process Process Data Flow DATA STORE Data Flow
Prepared by: yourname Date: 01/01/2002
Level 1 DFD Project Name 1.2 Process 1.1 Process Data Flow DATA STORE Data Flow
Prepared by: yourname Date: 01/01/2002
Level 1 DFD Project Name 0.0
Process Source/ Sink Source/ Sink
Data Flow Data Flow
Data Flow
Prepared by: yourname Date: 01/01/2002
Level 0 DFD Project Name 1.0 Process Data Flow 1.2 Process 1.1 Process Data Flow Data Flow DATA STORE Data Flow 2.0 Process Data Flow Source/ Sink Source/ Sink Data Flow 3.0 Process Data Flow Data Flow Data Flow Data Flow Data Flow
Creating Data Flow Diagrams
Steps:
1. Create a list of activities
2. Construct Context Level DFD (identifies sources and sink)
3. Construct Level 0 DFD
(identifies manageable sub process )
4. Construct Level 1- n DFD
Creating Data Flow Diagrams
Lemonade Stand Example
Creating Data Flow Diagrams
Steps:
1. Create a list of activities
2. Construct Context Level DFD
Example
The operations of a simple lemonade stand will be used to demonstrate the creation
(identifies sources and sink)
3. Construct Level 0 DFD
(identifies manageable sub processes )
4. Construct Level 1- n DFD
(identifies actual data flows and data stores )
Creating Data Flow Diagrams
1. Create a list of activities
Example
Think through the activities that take place at a lemonade stand
stand.
Customer Order Serve Product Collect Payment Produce Product Store Product
Creating Data Flow Diagrams
Example
Also think of the additional activities needed to support the basic activities
1. Create a list of activities
the basic activities.
Creating Data Flow Diagrams
Example
Group these activities in some logical fashion, possibly functional areas
1. Create a list of activities
possibly functional areas.
Customer Order Serve Product Collect Payment
Produce Product Store Product
Order Raw Materials Pay for Raw Materials
Pay for Labor
Creating Data Flow Diagrams
Context Level DFD
Example
Create a context level diagram identifying the sources and sinks (users)
2. Construct Context Level DFD (identifies sources and sink)
0.0 Lemonade
System
EMPLOYEE CUSTOMER
Pay Payment
Order
sources and sinks (users).
Customer Order Serve Product Collect Payment
Produce Product Store Product
Payment
Purchase Order Production Schedule
Received Goods
Time Worked Sales Forecast
Product Served
Store Product
Order Raw Materials Pay for Raw Materials
Pay for Labor
Creating Data Flow Diagrams
Level 0 DFD
Example
Create a level 0 diagram identifying the logical subsystems that may exist
3. Construct Level 0 DFD
(identifies manageable sub processes )
subsystems that may exist.
Customer Order Serve Product Collect Payment Produce Product Store Product 2.0 Production EMPLOYEE Production Schedule 1.0 Sale Sales Forecast Product Ordered CUSTOMER Payment Customer Order
Received Goods Inventory Product Served
Store Product
Order Raw Materials Pay for Raw Materials
Pay for Labor
3.0 Procure-ment Pay VENDOR Payment
Purchase Order Order Decisions Received Goods Time Worked y 4.0 Payroll
Creating Data Flow Diagrams
Level 1 DFD
Example
Create a level 1
decomposing the processes in level 0 and identifying
4. Construct Level 1- n DFD
(identifies actual data flows and data stores )
in level 0 and identifying data stores. 1.3 Produce Sales Forecast Sales Forecast Payment Customer Order Serve Product Collect Payment Produce Product Store Product 1.1 Record Order Customer Order ORDER Severed Order
Request for Forecast CUSTOMER
Store Product
Order Raw Materials Pay for Raw Materials
1.2 Receive Payment
Creating Data Flow Diagrams
Level 1 DFD
Example
Create a level 1
decomposing the processes in level 0 and identifying
4. Construct Level 1 (continued)
in level 0 and identifying data stores. Customer Order Serve Product Collect Payment Produce Product Store Product 2.1 Serve Product Product Order ORDER 2.2 Produce Quantity Severed Production Schedule RAW MATERIALS Quantity Used Store Product
Order Raw Materials Pay for Raw Materials
Pay for Labor
Produce Product INVENTORTY 2.3 Store Product
Quantity Produced & Location Stored Quantity Used
Production Data
Creating Data Flow Diagrams
Level 1 DFD
Example
Create a level 1
decomposing the processes in level 0 and identifying
4. Construct Level 1 (continued)
O d D i i
in level 0 and identifying data stores. Customer Order Serve Product Collect Payment Produce Product Store Product 3.1 Produce Purchase Order Order Decision PURCHASE ORDER 3.2 Receive Items Received Goods RAW MATERIALS Quantity Received Quantity On-Hand Store Product
Order Raw Materials Pay for Raw Materials
Pay for Labor
Creating Data Flow Diagrams
Level 1 DFD
Example
Create a level 1
decomposing the processes in level 0 and identifying
4. Construct Level 1 (continued)
Time Worked
in level 0 and identifying data stores. Time Worked Customer Order Serve Product Collect Payment Produce Product Store Product 4.1 Record Time Worked TIME CARDS 4.2 Calculate Payroll Payroll Request EMPLOYEE Employee ID
Unpaid time cards
Store Product
Order Raw Materials Pay for Raw Materials
Pay for Labor
Payroll 4.3 Pay Employe e PAYROLL PAYMENTS Payment Approval
Creating Data Flow Diagrams
Lemonade Stand Example