You are on page 1of 32

Data Flow Diagram

(DFD)
Review
Learning Objective
This collection of slides will review the
technique of drawing data flow diagrams.

Data Flow Diagramming

Page 1

What is a Data Flow Diagram?


A data flow diagram (DFD) is a graphical
tool that allows system analysts (and system
users) to depict the flow of data in an
information system.
The DFD is one of the methods that system
analysts use to collect information necessary
to determine information system
requirements.
Data Flow Diagramming

Page 2

What is a Data Flow Diagram?


A Data Flow Diagram is intended to serve
as a communication tool among

systems analysts
end users
data base designers
system programmers
other members of the project team

Data Flow Diagramming

Page 3

What does a DFD look like?

Data Flow Diagramming

Page 4

Why Draw Data Flow Diagrams?


To clearly and concisely communicate the flow of data
through a system.
Why use a DFD and not just text?
Since we previously had no way of showing a tangible model, we have had
to build the next best thing, which is to use English narrative to describe the
proposed system. Can you imagine spending five years salary on a custom
built house on the basis of an exhaustive narrative description of how the
house will be built? ... If you use English to describe a complex system... the
result takes up so much space that its hard for the reader to grasp how the
parts fit together
(Gane and Sarson, Structured System Analysis, 1974)

DFDs are easier to understand than text.

Data Flow Diagramming

Page 5

DFD Symbols and Definitions


Process

Data store
External
Entity
Data flow

Process - performs some action on data,


such as creates, modifies, stores, delete,
etc. Can be manual or supported by
computer.
Data store - information that is kept and
accessed. May be in paper file folder or
a database.
External entity - is the origin or
destination of data. Entities are
external to the system.
Data flow - the flow of data into or out
of a process, datastore or entity

Data Flow Diagramming

Page 6

Rules for Drawing DFDs


A minimum of one data flow
in and one data flow out of
a process
A datastore must be
connected to a process
(either in, out, or both)
An external entity must
be connected to a process
(either in, out, or both)
A single data flow must
only flow one way
Data Flow Diagramming

Page 7

DFD: Common Mistakes


Process has no data flowing
into it, but has data flowing out.
Data store is hooked to external
entity. This means external
entity can read and write to
your data file without auditing!!
The data flow goes in two
directions at once. Two or more
arrows should be used to show
the flow to and from each
process.

Data Flow Diagramming

Page 8

DFD Example 1
The Broadway Entertainment Company
An important first step to consider is to look at the key
processes under study. These can be itemized into a
hierarchical series, where the highest level (level 0)
describes a general department, or business unit, to the
lowest level. The lowest level is a point where you cannot
break a process into any more divisible components.
These are referred to as functional primitives.

Data Flow Diagramming

Page 9

DFD: Adding Levels of Detail


The highest level, called the context diagram, is only an
overview. More detail is typically needed for system
analysts.
We add detail to a DFD by creating levels. The first level
added after the context diagram is called level 0.
Each new level breaks apart one process and decomposes
the single process into a new, more detailed DFD. A
complete DFD can have many (up to 6 or 7) levels
depending on the complexity of system.
Breaking the DFD into levels is referred to as
Decomposition.

Data Flow Diagramming

Page 10

DFD: Numbering Levels


In a DFD with many levels its easy to forget which
level you are on. Thats why each level has
different numbering for the processes on the
diagram. The level corresponds to the number of
decimal places required to define a process in it.
Heres how it works:

Context Diagram
Process labeled 0
Level 0 Processes labeled 1.0, 2.0, 3.0, .
Level 1 Processes labeled 1.1, 1.2, 1.3, .
Level 2 Processes labeled 1.11, 1.12,...

Data Flow Diagramming

Page 11

Top (0) Process Level

B r o a d w a y E n t e r t a in m e n t S y s t e m
In -S to re S y s te m
0
M e m b e r s h ip
1

R e n ta l
2

S a le s
3

Data Flow Diagramming

In v e n to ry
4

E m p lo y e e
5

Page 12

Level 1: Membership
M e m b e r s h ip
1
E n ro l
1 .1

Is s u e N e w C a rd
1 .2

R e in s t a t e
1 .3

Data Flow Diagramming

T r a n s ie n t
1 .4

Page 13

Level 1: Rental
(note this is the primitive level for this series of processes)

R e n ta l
2
R ent
2 .1

R e tu rn
2 .2

Data Flow Diagramming

R e p o rts
2 .3

Page 14

Level 1: Sales
S a le s
3
P r o c e s s S a le s
3 .1

P ro c e s s R e tu rn s
3 .2

Data Flow Diagramming

Page 15

Level 1: Inventory
In v e n to ry
4
O rd e r
4 .1

R e c e ip t
4 .2

R e je c t
4 .3

Data Flow Diagramming

T r a n s fe r
4 .4

Page 16

Level 1: Employee
E m p lo y e e
5
T im e R e p o r t in g
5 .1

A d d / D e le t e
5 .2

Data Flow Diagramming

Page 17

Level 2: Membership
M e m b e r s h ip
1
E n ro l
1 .1
In p u t M e m b e r D a ta
1 .1 .1

A s s ig n M e m b e r N u m b e r
1 .1 .2

U p d a t e M e m b e r F ile
1 .1 .3

Is s u e N e w C a rd
1 .2
In p u t M e m b e r N u m b e r
1 .2 .1

P r in t C a r d
1 .2 .2
R e in s ta t e
1 .3

In p u t M e m b e r N u m b e r
1 .3 .1

U p d a t e M e m b e r F ile
1 .3 .2
T r a n s ie n t
1 .4

In p u t M e m b e r N u m b e r
1 .4 .1

U p d a t e T r a n s ie n t R e n t a l F ile
1 .4 .2

Data Flow Diagramming

Page 18

Level 2: Sales
S a le s
3
P r o c e s s S a le s
3 .1
In p u t M e m b e r N u m b e r
3 .1 .1

In p u t Ite m D a ta
3 .1 .2

U p d a t e S a le s F ile
3 .1 .3

P r in t R e c e ip t
3 .1 .4

P ro c e s s R e tu rn s
3 .2
In p u t Ite m D a ta
3 .2 .1

U p d a t e S a le s F ile
3 .2 .2

Data Flow Diagramming

P r in t R e c e ip t
3 .2 .3

Page 19

Level 2: Inventory
In v e n to ry
4
O rd e r
4 .1
Is s u e P u rc h a s e O rd e r
4 .1 .1

4 .1 .2

R e c e ip t
4 .2
In p u t Ite m D a ta
4 .2 .1

U p d a t e I n v e n t o r y F ile
4 .2 .2

U p d a t e R e c e ip t s F ile
4 .2 .3

R e je c t
4 .3
In p u t O rd e r Ite m
4 .3 .1

U p d a t e R e je c t io n R e p o r t F ile
4 .3 .2
T r a n s fe r
4 .4

In p u t Ite m N u m b e r
4 .4 .1

U p d a t e I n v e n t o r y F ile s
4 .4 .2

Data Flow Diagramming

Page 20

Level 2: Employee
E m p lo y e e
5
T im e R e p o r t in g
5 .1
I n p u t E m p lo y e e N u m b e r
5 .1 .1

I n p u t T im e S h e e t D a t a
5 .1 .2

A d d / D e le t e
5 .2
Add
5 .2 .1
In p u t E m p lo y e e D a ta
5 .2 .2
A s s ig n E m p lo y e e N u m b e r
5 .2 .3
U p d a t e E m p lo y e e F ile
5 .2 .4
D e le t e
5 .3
I n p u t E m p lo y e e N u m b e r
5 .3 .1
U p d a t e E m p lo y e e F ile
5 .3 .2

Data Flow Diagramming

Page 21

DFD Levels: Context Diagram


First we can start to draw a general
overview. This general overview is called a
Context Diagram.
A Context Diagram shows three things:
all external entities
a single process labeled 0that represents the
entire system (food ordering system)
the major information flows between the
external entities and the system.

Data Flow Diagramming

Page 22

DFD Levels: Context Diagram


It would be impossible to understand all of
the data flows, and to identify all of the
external entities relating to our
information system in one pass, so we tend
to draw DFDs incrementally.

Data Flow Diagramming

Page 23

Building a DFD
We tend to start at the context level, break
processes down to Level 0, and then start to
consider where data enters and exits our
information system, where it is stored, and
how a process converts it from one form to
another. We are interested here in the
movement of data and its conversion.

Data Flow Diagramming

Page 24

Building a DFD
Note that a DFD is NOT time-sensitive, and
that it is NOT a flowchart. It simply shows
how and where data itself progresses
through our system.
There are other ways to add information to a
chart, such as what departments are
responsible for certain activities, or which is
batch, realtime, etc.
Data Flow Diagramming

Page 25

DFD: Logical vs Physical


Note that the Context Diagram did NOT record the
movement of merchandise, but rather the information
flow surrounding the underlying business processes.
A DFD that shows the movement of information is
called a logical DFD.
A DFD that shows the movement of physical stuff
(such as merchandise) is called a physical DFD.

The logical DFD is by far the most common type of


DFD and therefore we will focus on this in this class.

Data Flow Diagramming

Page 26

DFD for Broadway


Corresponding to the Process Structure
Charts previously outlined, Broadways
DFD can be drawn as per the following
charts:

Data Flow Diagramming

Page 27

Context Level
(note there are no storage elements at this level)

Data Flow Diagramming

Page 28

Level 0

Data Flow Diagramming

Page 29

DFD: Some Final Notes


How many processes on a diagram?
rule of thumb is to have 5 - 7 processes, if you need more,
create a new level.

Are there conventions for naming objects?


process names are verb phrases
all others are noun phrases

How many levels should you go?


Only as many as you need to communicate adequately.
The key is efficient communication.

Data Flow Diagramming

Page 30

What have we learned?

What is a DFD and Why do we use DFDs?


What are the rules for drawing DFD?
What is a Context Diagram?
What is the difference between logical and
physical DFD?
What is a Level 0 DFD?
What is balancing and decomposition?
Data Flow Diagramming

Page 31

Epilogue
The Broadway Entertainment Company
DFD was created with the IBM Case tool
Rationale Rose

Data Flow Diagramming

Page 32

You might also like