Download as ppt, pdf, or txt
Download as ppt, pdf, or txt
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 it’s hard for the reader to grasp how the
parts fit together
(Gane and Sarson, Structured System Analysis, 1974)

• DFD’s are easier to understand than text.

Data Flow Diagramming Page 5


DFD Symbols and Definitions
• Process - performs some action on data,
such as creates, modifies, stores, delete,
Process etc. Can be manual or supported by
computer.

• Data store - information that is kept and


accessed. May be in paper file folder or
Data store a database.

• External entity - is the origin or


destination of data. Entities are external
External to the system.
Entity
• Data flow - the flow of data into or out
of a process, datastore or entity
Data flow
Data Flow Diagramming Page 6
Rules for Drawing DFD’s
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 it’s easy to forget
which level you are on. That’s 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.
Here’s 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 road w a y E n te rtain m en t S ys te m

In -S tore S ys tem
0

M em b ers h ip R en ta l S ales In ven to ry E m p loyee


1 2 3 4 5

Data Flow Diagramming Page 12


Level 1: Membership

M em b e rs h ip
1

E n rol Is s u e N ew C a rd R e in s tate Tran s ie n t


1 .1 1 .2 1 .3 1 .4

Data Flow Diagramming Page 13


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

R en tal
2

R en t R etu rn R ep orts
2 .1 2 .2 2 .3

Data Flow Diagramming Page 14


Level 1: Sales

S ales
3

P roc es s S a les P ro c es s R etu rn s


3 .1 3 .2

Data Flow Diagramming Page 15


Level 1: Inventory

In ven tory
4

O rd er R ec eip t R eje c t Tran s fer


4 .1 4 .2 4 .3 4 .4

Data Flow Diagramming Page 16


Level 1: Employee

E m p loyee
5

Tim e R e p ortin g A d d / D elete


5 .1 5 .2

Data Flow Diagramming Page 17


Level 2: Membership
M e m b e rs h ip
1

E n rol
1 .1

In p u t M e m b e r D a ta A s s ig n M em b er N u m b e r U p d a te M em b er F ile
1 .1 .1 1 .1 .2 1 .1 .3

Iss u e N ew C ard
1 .2

In p u t M em b er N u m b e r P rin t C a rd
1 .2 .1 1 .2 .2

R ein sta te
1 .3

In p u t M em b er N u m b e r U p d a te M em b e r F ile
1 .3 .1 1 .3 .2

Tran sie n t
1 .4

In p u t M em b er N u m b e r U p d ate Tra n s ien t R en ta l F ile


1 .4 .1 1 .4 .2

Data Flow Diagramming Page 18


Level 2: Sales

S ale s
3

P ro c es s S a les
3 .1

In p u t M em b er N u m b er In p u t Item D ata U p d a te S ales F ile P rin t R ec eip t


3 .1 .1 3 .1 .2 3 .1 .3 3 .1 .4

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

In p u t Item D ata U p d a te S ale s F ile P rin t R e c e ip t


3 .2 .1 3 .2 .2 3 .2 .3

Data Flow Diagramming Page 19


Level 2: Inventory
In ven tory
4

O rd e r
4 .1

Is s u e P u rc h as e O rd e r 4 .1 .2
4 .1 .1

R e ce ip t
4 .2

In p u t Ite m D a ta U p d ate In ve n tory F ile U p d a te R e c e ip ts F ile


4 .2 .1 4 .2 .2 4 .2 .3

R e je c t
4 .3

In p u t O rd er Ite m U p d ate R ejec tio n R ep o rt F ile


4 .3 .1 4 .3 .2

Tran s fer
4 .4

In p u t Ite m N u m b e r U p d ate In ve n to ry F iles


4 .4 .1 4 .4 .2

Data Flow Diagramming Page 20


Level 2: Employee
E m p loye e
5

Tim e R ep o rtin g
5 .1

In p u t E m p loyee N u m b er In p u t T im e S h eet D ata


5 .1 .1 5 .1 .2

A d d / D e lete
5 .2

Add
5 .2 .1

In p u t E m p loyee D ata
5 .2 .2

A s s ig n E m p loyee N u m b er
5 .2 .3

U p d ate E m p loyee F ile


5 .2 .4

D e lete
5 .3

In p u t E m p loyee N u m b er
5 .3 .1

U p d ate E m p loyee 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 “0”that 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 DFD’s 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, Broadway’s
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 DFD’s?
• 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