0% found this document useful (0 votes)
5 views

ME4607_L4-Using Data Flow Diagram

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
5 views

ME4607_L4-Using Data Flow Diagram

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 52

Chapter 4

Using Data Flow Diagrams


Learning Objectives
 Comprehend the importance of using logical and physical data flow
diagrams (DFDs) to graphically depict movement for humans and systems in
an organization.
 Create, use, and explode logical DFDs to capture and analyze the current
system through parent and child levels.
 Develop and explode logical DFDs that illustrate the proposed system.
 Produce physical DFDs based on logical DFDs you have developed.
 Understand and apply the concept of partitioning of physical DFDs.
Data Flow Diagrams (DFD)
 Graphically characterize data
processes and flows of data in a
business system.
 DFD describes the processes that
are involved in a system to
transfer data from the input to the
file storage and reports
generation.
 Depict:
 System inputs
 Processes
 Outputs

What is Data Flow Diagram? (visual-paradigm.com)


Kendall & KendallCopyright © 2020 Pearson Education, Inc. Publishing as Prentice Hall 4
Major Topics
 Data flow diagram symbols
 Data flow diagram levels
 Creating data flow diagrams
 Physical and logical data flow diagrams
 Partitioning
 Communicating using data flow diagrams

Kendall & KendallCopyright © 2020 Pearson Education, Inc. Publishing as Prentice Hall 5
Advantages of the Data Flow Approach
 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.

Kendall & KendallCopyright © 2020 Pearson Education, Inc. Publishing as Prentice Hall 6
Basic Symbols
 A 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 & KendallCopyright © 2020 Pearson Education, Inc. Publishing as Prentice Hall 7
External Entities
 Represent another department, a business, a person, or a machine
 A source or destination of data, outside the boundaries of the system
 Should be named with a noun

Kendall & KendallCopyright © 2020 Pearson Education, Inc. Publishing as Prentice Hall 8
Data Flow
 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 & KendallCopyright © 2020 Pearson Education, Inc. Publishing as Prentice Hall 9
Process
 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
 To name a major subsystem attach the word subsystem to the name
 Use the form verb-adjective-noun for detailed processes

Kendall & KendallCopyright © 2020 Pearson Education, Inc. Publishing as Prentice Hall 10
Data Store
 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 & KendallCopyright © 2020 Pearson Education, Inc. Publishing as Prentice Hall 11
Steps in Developing Data
Flow Diagrams
(Figure 7.2)

Kendall & KendallCopyright © 2020 Pearson Education, Inc. Publishing as Prentice Hall 12
1. Creating the Context Diagram
 The initial context diagram should be an overview of data movement in the system , including
basic inputs, the general system, and outputs.
 The context diagram is the highest level in a DFD and contains only one process, representing
the entire system.
 The process is given the number zero.
 All external entities are shown on the context diagram; as well as major data flow to and from
them.
 The diagram does not contain any data stores and is fairly simple to create once the external
entities and the data flow to and from them are known to analysts

Kendall & KendallCopyright © 2020 Pearson Education, Inc. Publishing as Prentice Hall 13
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 & KendallCopyright © 2020 Pearson Education, Inc. Publishing as Prentice Hall 14
2. Drawing Diagram 0 (The Next Level)

 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 & KendallCopyright © 2020 Pearson Education, Inc. Publishing as Prentice Hall 15
2. 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.

What is Data Flow Diagram? (visual-paradigm.com)


Kendall & KendallCopyright © 2020 Pearson Education, Inc. Publishing as Prentice Hall 16
Guided Questions
 1. Start with the data flow from an entity on the input side
 Ask questions such as: “What happens to the data entering the system?” “Is it
stored?” “Is it input for several processes?”
 2. Work backward from an output data flow
 Examine the output fields on a document or screen. (This approach is easier if
prototypes have been created.)
 For each field on the output, ask “Where does it come from?” or “Is it calculated
or stored on a file?”
 For example, when the output is a PAYCHECK, the EMPLOYEE NAME and
ADDRESS would be located on an EMPLOYEE file, the HOURS WORKED would
be on a TIME RECORD, and the GROSS PAY and DEDUCTIONS would be
calculated. Each file and record would be connected to the process that
produces the paycheck.

Kendall & KendallCopyright © 2020 Pearson Education, Inc. Publishing as Prentice Hall 17
Guided Questions
 3. Examine the data flow to or from a data store
 Ask “What processes put data into the store?” or
 “What processes use the data?”
 Note that a data store used in the system may be produced by a different system.
 Thus, from your vantage point, there may not be any data flow into the data store.
 4. Analyze a well-defined process
 Look at what input data the process needs and what output it produces.
 Then connect the input and output to the appropriate data stores and entities.
 5. Take note of any fuzzy areas where you are unsure of what should be
included or what input or output is required.
 Awareness of problem areas will help you formulate a list of questions for follow-up
interviews with key users.

Kendall & KendallCopyright © 2020 Pearson Education, Inc. Publishing as Prentice Hall 18
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
Nguyên thủy

Kendall & KendallCopyright © 2020 Pearson Education, Inc. Publishing as Prentice Hall 19
3. 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 & KendallCopyright © 2020 Pearson Education, Inc. Publishing as Prentice Hall 20
3. 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 & KendallCopyright © 2020 Pearson Education, Inc. Publishing as Prentice Hall 21
Kendall & KendallCopyright © 2020 Pearson Education, Inc. Publishing as Prentice Hall 22
4. Checking Diagrams for Errors
1. Forgetting to include a data flow or pointing an arrow in the wrong
direction.
 Each process transforms data and must receive input and produce output.
 You may forget to include a data flow or has placed an arrow pointing in the
wrong direction.

Kendall & KendallCopyright © 2020 Pearson Education, Inc. Publishing as Prentice Hall 23
4. Checking Diagrams for Errors
2. Connecting data stores and external
entities directly to each other.
 Data stores and entities may not be
connected to each other; data stores
and external entities must connect with
a process.
 A file does not interface with another
file without the help of a program or a
person moving the data.
 EMPLOYEE MASTER cannot directly
produce the CHECK RECONCILIATION
file.

Kendall & KendallCopyright © 2020 Pearson Education, Inc. Publishing as Prentice Hall 24
4. Checking Diagrams for Errors
2. Connecting data stores and external
entities directly to each other.
 External entities do not directly work
with files.
 For example, you would not want a
customer rummaging around in the
customer master file.
 EMPLOYEE does not create the
EMPLOYEE TIME FILE.

Kendall & KendallCopyright © 2020 Pearson Education, Inc. Publishing as Prentice Hall 25
4. Checking Diagrams for Errors
3. Incorrectly labeling processes or
data flow.
 Inspect the DFD to ensure that each
object or data flow is properly labeled.
 A process should indicate the system
name or use the verb–adjective–noun
format.
 Each data flow should be described
with a noun.

Kendall & KendallCopyright © 2020 Pearson Education, Inc. Publishing as Prentice Hall 26
4. Checking Diagrams for Errors
4. Including more than nine
processes on a DFD.
 Having too many processes
creates a cluttered diagram that is
confusing to read and hinders
rather than enhances
communication.
 If more than nine processes are
involved in a system, group some
of the processes that work
together into a subsystem and
place them in a child diagram.

Kendall & KendallCopyright © 2020 Pearson Education, Inc. Publishing as Prentice Hall 27
4. Checking Diagrams for Errors
5. Omitting data flow.
 In the case of very detailed child DFDs, linear data flow is somewhat rare.
 CALCULATE WITHHOLDING AMOUNT process needs the number of dependents that an employee
has and the WITHHOLDING RATES as input.

Incorrected Corrected

Kendall & KendallCopyright © 2020 Pearson Education, Inc. Publishing as Prentice Hall 28
4. Checking Diagrams for Errors
5. Omitting data flow.
 NET PAY cannot be calculated solely
from the WITHHOLDING, and the
EMPLOYEE PAYCHECK cannot be
created from the NET PAY alone; it
also needs to include an EMPLOYEE
NAME and the current and year-to-
date payroll and WITHHOLDING
AMOUNT figures

Kendall & KendallCopyright © 2020 Pearson Education, Inc. Publishing as Prentice Hall 29
4. Checking Diagrams for Errors
6. Creating unbalanced decomposition (or explosion) in child diagrams.
 Each child diagram should have the same input and output data flow as the parent
process.
 An exception to this rule is minor output, such as error lines, which are included only on
the child diagram.
 Note that although the data flow is not linear, you can clearly follow a path directly from
the source entity to the destination entity.

Kendall & KendallCopyright © 2020 Pearson Education, Inc. Publishing as Prentice Hall 30
Kendall & KendallCopyright © 2020 Pearson Education, Inc. Publishing as Prentice Hall 31
Logical and Physical Data Flow Diagrams

Kendall & KendallCopyright © 2020 Pearson Education, Inc. Publishing as Prentice Hall 32
The progression of models from logical to physical

Logical DFDs focus


on what the system
does, while physical
DFDs focus on how
the system is
implemented, They
include details about
the physical
implementation of
the system, such as
hardware, software,
files, and people
involved.

Kendall & KendallCopyright © 2020 Pearson Education, Inc. Publishing as Prentice Hall 33
Kendall & KendallCopyright © 2020 Pearson Education, Inc. Publishing as Prentice Hall 34
Kendall & KendallCopyright © 2020 Pearson Education, Inc. Publishing as Prentice Hall 34
Developing Logical Data Flow Diagrams
 Advantages to using a logical model:
1. Better communication with users - centered on business activities.
2. More stable systems - based on business events and not on a particular
technology or method of implementation.
3. Better understanding of the business by analysts
4. Flexibility and maintenance
5. Elimination of redundancy and easier creation of the physical model

Kendall & KendallCopyright © 2020 Pearson Education, Inc. Publishing as Prentice Hall 35
Developing Physical Data Flow Diagrams
 Advantages to using a physical model:
1. Clarifying which processes are performed by humans and which are
automated.
2. Describing processes in more detail.
3. Sequencing processes that have to be done in a particular order.
4. Identifying temporary data stores.
5. Specifying actual names of files and printouts.
6. Adding controls to ensure the processes are done properly.

Kendall & KendallCopyright © 2020 Pearson Education, Inc. Publishing as Prentice Hall 36
Physical Data Flow Diagrams Contain Many Items Not Found in
Logical Data Flow Diagrams (Figure 7.10)

Kendall & KendallCopyright © 2020 Pearson Education, Inc. Publishing as Prentice Hall 37
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 & KendallCopyright © 2020 Pearson Education, Inc. Publishing as Prentice Hall 38
CRUD Matrix (Figure 7.11)

Kendall & KendallCopyright © 2020 Pearson Education, Inc. Publishing as Prentice Hall 39
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 & KendallCopyright © 2020 Pearson Education, Inc. Publishing as Prentice Hall 40
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 & KendallCopyright © 2020 Pearson Education, Inc. Publishing as Prentice Hall 41
An Event Response Table for an Internet Storefront (Figure 7.12)

Kendall & KendallCopyright © 2020 Pearson


Education, Inc. Publishing as Prentice Hall 42
Kendall & KendallCopyright © 2020 Pearson Education, Inc.
Publishing as Prentice Hall
43
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
 This approach allows an analyst to work with users to understand the nature of the processes
and activities and then create a single DFD fragment.

Kendall & KendallCopyright © 2020 Pearson Education, Inc. Publishing as Prentice Hall 44
Kendall & KendallCopyright © 2020 Pearson Education, Inc. Publishing as Prentice Hall 45
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 & KendallCopyright © 2020 Pearson Education, Inc. Publishing as Prentice Hall 46
Reasons for Partitioning
 Different user groups
 Are the processes performed by several different user groups, often at different physical
locations in the company? If so, they should be partitioned into different computer programs.
 Timing
 Processes that execute at different times must be in separate programs.
 Similar tasks
 May be included in the same program.
 Efficiency
 Several batch processes may be included in the same program for efficiency.
 Consistency of data
 Several processes may be included in the same program or job stream for consistency of data.
 Security
 May be partitioned into different programs for security reasons.

Kendall & KendallCopyright © 2020 Pearson Education, Inc. Publishing as Prentice Hall 47
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 & KendallCopyright © 2020 Pearson Education, Inc. Publishing as Prentice Hall 48
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 & KendallCopyright © 2020 Pearson Education, Inc. Publishing as Prentice Hall 49
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 & KendallCopyright © 2020 Pearson Education, Inc. Publishing as Prentice Hall 50
References
 Kenneth E. Kendall, Julie E. Kendall. (2020). Systems Analysis Design. 10th Edition,
Pearson.
THANK YOU
Enjoy!

njrin@tu.ac.th

You might also like