Data Flow Diagrams - Set 2

You might also like

Download as ppt, pdf, or txt
Download as ppt, pdf, or txt
You are on page 1of 72

7

Kendall & Kendall


Systems Analysis and Design,
Global Edition, 9e

Using Data Flow


Diagrams

Kendall & Kendall Copyright © 2014 Pearson Education


Data Flow Diagrams (DFD)
• DFDs graphically depict business processes and the logical
flow of data through those processes
• Are decomposition diagrams – they decompose business
processes into smaller, more easily understood units
• Processes that appear on a DFD may be processes that
are:
• Completed in parallel
• Completed in a particular sequence, or both.
• Presenting processes in parallel as well as in sequence
distinguishes DFDs from other modeling methods
• Processes on a DFD can also take place at totally different
intervals, e.g.
• Certain processes may be performed by clerks on a daily basis,
• Others are performed on a monthly, quarterly, and yearly basis.
• DFDs are used to model real-world processes

Kendall & Kendall Copyright © 2014 Pearson Education 7-2


The Four Basic Symbols Used in Data Flow
Diagrams, Their Meanings, and Examples
(Figure 7.1)
Note: there is
External Entity No distinction
•A department
Between
•A business
Manual or
•A person
Automated
•A machine
processes
Movement of data
From one point to
another

Occurrence of
Transformation
process

Data store

An entire system and numerous subsystems, can be depicted graphically with these
Four symbols in combination.
Kendall & Kendall Copyright © 2014 Pearson Education 7-3
DFD entities
• Entity – a person or group that is an initial source or final
destination of data objects.
• Process – an action that transforms input data objects into
output data objects
• Data store – a holding area for data, either permanent or
temporary; a stockpile where data is stored between
processes
• Data flow – connections between processes and other DFD
symbols along which individual logical data objects and
collections (sometimes called packets) of logical data
objects pass.

Kendall & Kendall Copyright © 2014 Pearson Education 7-4


Data Sources and Destinations (entities)
• Represent initial sources & final destinations of data for DFD
processes
• Represent organizations, agents, or people, inside and
outside the system under study – that are sources or
destinations of data.
• The provide inputs to or receive outputs from processes of
the business application under investigation
• They are considered to be external to the application
processes (not a part of them), yet necessarily related to
them.
• Each entity symbol is assigned a label that names the real
world object it represents

Kendall & Kendall Copyright © 2014 Pearson Education 7-5


Processes in DFDs
• Processes represent the transformation of
data as it flows through the firm:
• Data flows into a process, is changed
(processed), and then flows out
• Processes may be either manual or
electronic
• DFD shows the logical operations
performed for a business and how they are
related to other processes.

Kendall & Kendall Copyright © 2014 Pearson Education 7-6


Data stores in DFDs
• A process either stores or accesses data
• A data store is a temporary or permanent holding area for
data – a stockpile where data is stored between processes
• Data stores represent data objects at rest
• Data used by an application is normally stored somewhere in
a database (or in a manual medium such as a filing cabinet)
that holds the data objects depicted as the data store
• It makes no sense to show that data objects leaving one
data store and entering another data store without including
a process symbol between the data stores.
• Data stores are assigned unique and descriptive names for
reference purposes

Kendall & Kendall Copyright © 2014 Pearson Education 7-7


Data stores - continued
• Logical data objects that enter a store from one process
should also exit the store, either to the same process or to
some other process
• Data store depicts data objects that are set aside for
future use by a process.

Kendall & Kendall Copyright © 2014 Pearson Education 7-8


Data Flows in DFDs
• Data flows are connections between processes and other
DFD symbols along which individual logical objects and
collections (sometimes called packets) of logical objects
pass.
• Data flow depict logical data objects that pass between a
process and another process, a data store, or an entity.
• Data flow directed to or from a data store – is entering or
exiting a data holding area.
• Data flows are represented on a DFD by connecting
arrows that show the pat of the data through the
application

Kendall & Kendall Copyright © 2014 Pearson Education 7-9


Data Flow Diagrams
• Data flow diagrams depict:
• System inputs
• Processes
• Outputs

• DFDs are useful for communication between the analyst and the user
• DFDs allow the analyst to present a graphic interpretation of the way
data flows throughout the business, and where and how processing
occurs
• The analyst can present DFDs to users and ask the users to suggest
changes for omissions, additions, or corrections
• The modifications can be incorporated during:
• Analysis
• Logical design rather than later – in the physical phases of the present.

Kendall & Kendall Copyright © 2014 Pearson Education 7-10


Rules Governing the Creation and Use
of DFDs
• DFD should model business processes and the flow of data
through a business system
• DFDs should have no physical or time orientation;
processes with totally different physical or time orientations
often appear on the same DFD
• Entities should appear on DFDs as initial sources and final
destinations of data
• No freestanding symbols (entities, processes, stores) or
freestanding sections of symbols are permitted
• Balanced inputs and outputs should occur along
decomposition (explosion) paths through DFD levels
• Complete dictionary entries should be created for all
symbols and labeled data flows on DFD
Kendall & Kendall Copyright © 2014 Pearson Education 7-11
Entity Rules
• A source or destination entity does not directly connect to
data sources or other entities
• All data leaving or entering an entity must be processes
• Entity names may be repeated only when they represent
the same entity.

Kendall & Kendall Copyright © 2014 Pearson Education 7-12


Data Flow Rules
• Data flows depict a logical data object (LDS) or collection
of logical data objects (M-LDSs) that flow into or out of a
DFD process
• Data does not flow from one data store to another, or
from a data store to an entity, or vice versa, without being
processed
• A data flow into or out of a data store need not be labelled
if it consists of the same data object or collection of data
objects that the data store symbolizes
• Data flow labels are unique and nonrepeating
• Separate data flows on the same DFD may depict the
same logical data object (LDS) or collection of logical data
objects (M-LDSs).

Kendall & Kendall Copyright © 2014 Pearson Education 7-13


Data Store Rules
• A data store depicts logical data object (LDS) or a
collection of logical data objects (M-LDSs) at rest
• The physical nature of the storage media is not identified
in logical DFDs
• Data stores are prepared as necessary
• In the design dictionary, data stores are classified as read-
only, write- only, or read-write.

Kendall & Kendall Copyright © 2014 Pearson Education 7-14


Process Rules
• Processes do not produce output without input
• A process must be capable of producing the output
existing the process from the inputs entering it
• The names of processes are specified as active or passive
• Process names are unique and nonrepeating
• Process names for active processes should exhibit a stron
statement of action
• DFD processes specify only what and why, not how to
complete business processes.
• A process on one DFD may decompose into multiple sub-
processes on a lower-level DFD through the action known
as explosion.

Kendall & Kendall Copyright © 2014 Pearson Education 7-15


Advantages of the Data Flow Approach –
over narrative explanation of the way data
move through the system

• Freedom from committing to the technical


implementation too early
• Understanding of the interrelatedness of systems
and subsystems
• Communicating current system knowledge to
users
• Analysis of the proposed system – to determine if
the necessary data and processes have been
defined.
Kendall & Kendall Copyright © 2014 Pearson Education 7-16
Basic Symbols

Use a combination of four symbols to create


a pictorial depiction of processes that will
eventually provide solid system
documentation.
• A double square for an external entity
• An arrow for movement of data from one point
to another
• A rectangle with rounded corners for the
occurrence of a transforming process
• An open-ended rectangle for a data store

Kendall & Kendall Copyright © 2014 Pearson Education 7-17


The Four Basic Symbols Used in Data Flow
Diagrams, Their Meanings, and Examples
(Figure 7.1)
Note: there is
External Entity No distinction
•A department
Between
•A business
Manual or
•A person
Automated
•A machine
processes
Movement of data
From one point to
another

Occurrence of
Transformation
process

Data store

An entire system and numerous subsystems, can be depicted graphically with these
Four symbols in combination.
Kendall & Kendall Copyright © 2014 Pearson Education 7-18
External Entities
An external entity is something that is outside the scope of our system,
but interacts with it. An external entity may be a person, organization,
or another system that supplies information to the system and/or
receives information from the system.
•Represent another department, a business, a person, or a machine
•A source or destination of data, outside the boundaries of the system
•An external entity should be named using a noun
•Information regarding an external entity to be stored in the case
repository includes: label (name), type (entity), description, alias,
notes.
•Note: The same entity may be used more than once on a given data
flow diagram to avoid crossing data flow lines.

Kendall & Kendall Copyright © 2014 Pearson Education 7-19


Data Flow
• A data flow represents a single piece of data or set of
logically related data items that move to or from
processes.
• Several data flows may go into and out of each process.
• Shows movement of data from one point to another
• Described with a noun
• Arrowhead indicates the flow direction
• Represents data about a person, place, or thing

Kendall & Kendall Copyright © 2014 Pearson Education 7-20


Process
A process represents action that are performed for some specific
business reason. A process should be named using a verb phrase.
Note: the data flow leaving a process is always labelled differently than
one entering it.
•Denotes a change in or transformation of data
•Represents work being performed in the system
•Naming convention:
• Assign the name of the whole system when naming a high-level process
e.g. inventory control system
• To name a major subsystem attach the word subsystem to the name e.g.
inventory reporting subsystem or internet customer fulfillment system.
• Use the form verb-adjective-noun for detailed processes – e.g. compute
sales tax, verify customer account status, prepare shipping invoice, print
back-ordered report, send customer email confirmation, verify credit card
balance, add inventory record.
• Information regarding a process to be stored in the case repository
includes: 1) label (name), 2) type (process), 3) description (what it is), 4)
process number, 5) process description (structured English), 6) notes.

Kendall & Kendall Copyright © 2014 Pearson Education 7-21


Data Store
• A data store represents a set of data that is stored
together – the data store holds the data. A data store
should be named using a noun.
• Because data stores represent a person, place, or thing,
they are named with a noun.
• A depository for data that allows examination, addition, and
retrieval of data
• Named with a noun, describing the data
• Data stores are usually given a unique reference number, such as
D1, D2, D3
• Represents a:
• Database
• Computerized file
• Filing cabinet

Kendall & Kendall Copyright © 2014 Pearson Education 7-22


Steps in Developing Data Flow
Diagrams

(Figure 7.2)

Kendall & Kendall Copyright © 2014 Pearson Education 7-23


Creating the Context Diagram

• The highest level in a data flow diagram


• Contains only one process, representing
the entire system
• The process is given the number 0
• All external entities, as well as major
data flows are shown

Kendall & Kendall Copyright © 2014 Pearson Education 7-24


Basic Rules

• The data flow diagram must have one


process
• Must not be any freestanding objects
• A process must have both an input and
output data flow
• A data store must be connected to at least
one process
• External entities should not be connected to
one another

Kendall & Kendall Copyright © 2014 Pearson Education 7-25


Example of Data Flow Diagram for an Employment
System
0 Completion of
Application Managerial
Employment reports
Applicant Manager
services
Response
To a request
Made by
applicant Completion of
Governmental reports
Reports required
By
government

Government
services

Kendall & Kendall Copyright © 2014 Pearson Education 7-26


Level 0 DFD
• The context level diagram (Level 0 DFD) above
has a single process – Employment Services
• The data that it requires from the Applicant entity
is processed to produce the data identified in the
applicant data, personnel data, and payroll data
data stores
• The employment services process uses this data to
respond to requests by the:
• Government agencies entity
• Manager entity , as well as
• The applicant

Kendall & Kendall Copyright © 2014 Pearson Education 7-27


Level 1 DFD
• The level 1 DFD provides details for the Employment
Services Process
• It shows three processes:
• Complete employment application
• Filling opening, and
• Create payroll data
• The processes use data from the “Applicant entity” to
produce “employment” and “payroll data” identified by
the:
• Applicant data
• Personnel data, and
• Payroll data – data stores.
• The actions are performed with assistance from data types
entering and exiting the processes from / to the
“government agencies” and “manager” entities.
Kendall & Kendall Copyright © 2014 Pearson Education 7-28
Level 1 DFD - continued
• The following actions are symbolized by this DFD:
• Completion of application by applicant
• Use of applicant data by employment clerks to fill job openings
• Use of employment data by payroll clerks
• Payroll processing and completion of governmental and managerial
reports.

Kendall & Kendall Copyright © 2014 Pearson Education 7-29


Level 1 DFD for Employment Services

LEVEL 1 DFD FOR EMPLOYMENT SERVICES 7-30


Level 2 DFD (EMPLY 0000)
• The complete employment application process in Figure 1
(level 1) explodes to the DFD in Figure 2 – which provides
the details for completing employment requests for the
system. This DFD includes five processes:
• Complete personnel form
• Validate application
• Check duplicate application
• Change application data, and
• Transcribe application
• These processes use data from the Applicant entity to
create, validate, compare with existing applications, and
either change an existing application or record a new
application.

Kendall & Kendall Copyright © 2014 Pearson Education 7-31


Level 2 DFD (EMPLY 0000) - continued
• Notice that most of the processes on the DFD in Figure 2
have only one input and one output; it is close to what
many analysts would call a functional primitive.
• Semantic functional primitive –no further decomposition is
necessary for the analyst and the user to have a complete
understanding of the processes.
• The two data stores:
• Application form, and
• Application data – represent the handwritten application form and a
computer record of the application, respectively.

Kendall & Kendall Copyright © 2014 Pearson Education 7-32


Level 2 for complete employment application (EMPLY0000)

Figure 2: Level 2 DFD for Complete Employment Application 7-33


Example 2- Insurance RUs
• Create a level 0 diagram for the Insurance Rus (an online
car insurance company). The main processes are:
• Get customer information
• Calculate risk
• Calculate rate quote

0
Customer Information
Customer Calculate the
Rate Quotation Quote

Figure 4: Context Diagram

Kendall & Kendall Copyright © 2014 Pearson Education 7-34


Level 1- DFD (Insuarance Rus)
0.1
Potential
Get
customer
Information

Age, Health,
D1 Actual Data Poor driving
0.2 History, Car,
Rate Rate demographics Address, etc.
Calculate
Quote
Risk

D2 Provincial rate tables


0.3
Provincial Rates
Calculate
Rate Qoute

Figure 4: Level 1 Diagram 7-35


Context Diagram (Figure 7.3)

Kendall & Kendall Copyright © 2014 Pearson Education 7-36


Drawing Diagram 0

• The explosion of the context diagram


• May include up to nine processes
• Each process is numbered
• Major data stores and all external
entities are included

Kendall & Kendall Copyright © 2014 Pearson Education 7-37


Drawing Diagram 0 (continued)

• Start with the data flow from an entity


on the input side
• Work backward from an output data
flow
• Examine the data flow to or from a data
store
• Analyze a well-defined process
• Take note of any fuzzy areas
Kendall & Kendall Copyright © 2014 Pearson Education 7-38
Note Greater Detail in Diagram 0
(Figure 7.3)

Kendall & Kendall Copyright © 2014 Pearson Education 7-39


Data Flow Diagram Levels

• Data flow diagrams are built in layers


• The top level is the context level
• Each process may explode to a lower
level
• The lower level diagram number is the
same as the parent process number
• Processes that do not create a child
diagram are called primitive

Kendall & Kendall Copyright © 2014 Pearson Education 7-40


Creating Child Diagrams

• Each process on diagram 0 may be


exploded to create a child diagram
• A child diagram cannot produce output
or receive input that the parent process
does not also produce or receive
• The child process is given the same
number as the parent process
• Process 3 would explode to Diagram 3

Kendall & Kendall Copyright © 2014 Pearson Education 7-41


Creating Child Diagrams
(continued)
• Entities are usually not shown on the
child diagrams below Diagram 0
• If the parent process has data flow
connecting to a data store, the child
diagram may include the data store as
well
• When a process is not exploded, it is
called a primitive process

Kendall & Kendall Copyright © 2014 Pearson Education 7-42


Differences between the Parent Diagram
(above) and the Child Diagram (below) (Figure
7.4)

Kendall & Kendall Copyright © 2014 Pearson Education 7-43


Data Flow Diagrams Error
Summary
• Forgetting to include a data flow or
pointing an arrow in the wrong direction
• Connecting data stores and external
entities directly to each other
• Incorrectly labeling processes or data
flow

Kendall & Kendall Copyright © 2014 Pearson Education 7-44


Data Flow Diagrams Error
Summary (continued)
• Including more than nine processes on
a data flow diagram
• Omitting data flow
• Creating unbalanced decomposition (or
explosion) in child diagrams

Kendall & Kendall Copyright © 2014 Pearson Education 7-45


Checking the Diagrams for Errors
(Figure 7.5)
• Forgetting to include a data flow or
pointing an arrow in the wrong direction

Kendall & Kendall Copyright © 2014 Pearson Education 7-46


Checking the Diagrams for
Errors (continued Figure 7.5)
• Connecting data stores and external
entities directly to each other

Kendall & Kendall Copyright © 2014 Pearson Education 7-47


Typical Errors that Can Occur in a Data
Flow Diagram (Payroll Example)
(continued Figure 7.5)

Kendall & Kendall Copyright © 2014 Pearson Education 7-48


Logical and Physical Data Flow
Diagrams
• Logical
• Focuses on the business and how the
business operates
• Not concerned with how the system will be
constructed
• Describes the business events that take
place and the data required and produced
by each event

Kendall & Kendall Copyright © 2014 Pearson Education 7-49


Logical and Physical Data Flow
Diagrams
• Physical
• Shows how the system will be
implemented
• Depicts the system

Kendall & Kendall Copyright © 2014 Pearson Education 7-50


Features Common of Logical and Physical
Data Flow Diagrams (Figure 7.7)

Kendall & Kendall Copyright © 2014 Pearson Education 7-51


The Progression of Models from
Logical to Physical (Figure 7.8)

Kendall & Kendall Copyright © 2014 Pearson Education 7-52


Logical Data Flow Diagram
Example (Figure 7.9)

Kendall & Kendall Copyright © 2014 Pearson Education 7-53


Physical Data Flow Diagram
Example (Figure 7.9)

Kendall & Kendall Copyright © 2014 Pearson Education 7-54


Developing Logical Data Flow
Diagrams
• Better communication with users
• More stable systems
• Better understanding of the business by
analysts
• Flexibility and maintenance
• Elimination of redundancy and easier
creation of the physical model

Kendall & Kendall Copyright © 2014 Pearson Education 7-55


Developing Physical Data Flow
Diagrams
• Clarifying which processes are performed by
humans and which are automated
• Describing processes in more detail
• Sequencing processes that have to be done in
a particular order
• Identifying temporary data stores
• Specifying actual names of files and printouts
• Adding controls to ensure the processes are
done properly

Kendall & Kendall Copyright © 2014 Pearson Education 7-56


Physical Data Flow Diagrams Contain Many
Items Not Found in Logical Data Flow Diagrams
(Figure 7.10)

Kendall & Kendall Copyright © 2014 Pearson Education 7-57


CRUD Matrix

• The acronym CRUD is often used for


• Create
• Read
• Update
• Delete
• These are the activities that must be present
in a system for each master file
• A CRUD matrix is a tool to represent where
each of these processes occurs in a system

Kendall & Kendall Copyright © 2014 Pearson Education 7-58


CRUD Matrix (Figure 7.11)

Kendall & Kendall Copyright © 2014 Pearson Education 7-59


Event Modeling and Data Flow
Diagrams
• An input flow from an external entity is
sometimes called a trigger because it starts
the activities of a process
• Events cause the system to do something and
act as a trigger to the system
• An approach to creating physical data flow
diagrams is to create a data flow diagram
fragment for each unique system event

Kendall & Kendall Copyright © 2014 Pearson Education 7-60


Event Response Tables

• An event table is used to create a data


flow diagram by analyzing each event
and the data used and produced by the
event
• Every row in an event table represents
a data flow diagram fragment and is
used to create a single process on a
data flow diagram
Kendall & Kendall Copyright © 2014 Pearson Education 7-61
An Event Response Table for an
Internet Storefront (Figure 7.12)

Kendall & Kendall Copyright © 2014 Pearson Education 7-62


Data Flow Diagrams for the First Three Rows of
the Internet Storefront Event Response Table
(Figure 7.13)

Kendall & Kendall Copyright © 2014 Pearson Education 7-63


Use Cases and Data Flow
Diagrams
• Each use case defines one activity and
its trigger, input, and output
• Allows the analyst to work with users to
understand the nature of the processes
and activities and then create a single
data flow diagram fragment

Kendall & Kendall Copyright © 2014 Pearson Education 7-64


Partitioning Data Flow Diagrams

• Partitioning is the process of examining a


data flow diagram and determining how it
should be divided into collections of manual
procedures and computer programs
• A dashed line is drawn around a process or
group of processes that should be placed in a
single computer program

Kendall & Kendall Copyright © 2014 Pearson Education 7-65


Reasons for Partitioning

• Different user groups


• Timing
• Similar tasks
• Efficiency
• Consistency of data
• Security

Kendall & Kendall Copyright © 2014 Pearson Education 7-66


Partitioning Websites

• Improves the way humans use the site


• Improves speed of processing
• Ease of maintaining the site
• Keep the transaction secure

Kendall & Kendall Copyright © 2014 Pearson Education 7-67


Communicating Using
Data Flow Diagrams
• Use unexploded data flow diagrams
early when ascertaining information
requirements
• Meaningful labels for all data
components

Kendall & Kendall Copyright © 2014 Pearson Education 7-68


Summary

• Data flow diagrams


• Structured analysis and design tools that
allow the analyst to comprehend the system
and subsystems visually as a set of
interrelated data flows
• DFD symbols
• Rounded rectangle
• Double square
• An arrow
• Open-ended rectangle

Kendall & Kendall Copyright © 2014 Pearson Education 7-69


Summary (continued)

• Creating the logical DFD


• Context-level data flow diagram
• Level 0 logical data flow diagram
• Child diagrams
• Creating the physical DFD
• Create from the logical data flow diagram
• Partitioned to facilitate programming

Kendall & Kendall Copyright © 2014 Pearson Education 7-70


Summary (continued)

• Partitioning data flow diagrams


• Whether processes are performed by
different user groups
• Processes execute at the same time
• Processes perform similar tasks
• Batch processes can be combined for
efficiency of data
• Processes may be partitioned into different
programs for security reasons

Kendall & Kendall Copyright © 2014 Pearson Education 7-71


Copyright © 2014 Pearson Education

7-72

You might also like