Lecture 11
Lecture 11
Course Leader(s):
Sahana.P.Shankar
sahana.cs.et@msruas
Ms. Supriya, M. S.
[email protected]
1
Faculty of Engineering & Technology ©Ramaiah University of Applied Sciences
Lecture Objectives
2
Faculty of Engineering & Technology ©Ramaiah University of Applied Sciences
Lecture Topics
• Analysis vs Design
• Structured Analysis
• Guidelines for DFD refinement
• Notations in DFD
• Possible errors in design
• Criteria for stopping refinement
3
Faculty of Engineering & Technology ©Ramaiah University of Applied Sciences
Analysis and Design
• Analysis
–The act of defining what an application will do
• What objects does the system manipulate?
• What functions must the system perform?
• What behaviors does the system exhibit?
• What interfaces are defined?
• What constraints apply?
• Design
–The act of defining how the requirements defined during
analysis will be implemented in a specific
hardware/software environment
4
Faculty of Engineering & Technology ©Ramaiah University of Applied Sciences
Structured Analysis
• A set of techniques and graphical tools that allow the analyst
to develop a new kind of system that is understandable to the
user
5
Faculty of Engineering & Technology ©Ramaiah University of Applied Sciences
The Data Flow Hierarchy
6
Faculty of Engineering & Technology ©Ramaiah University of Applied Sciences
Guidelines for Creating DFDs
• The level 0 data flow diagram should depict the software or
system as a single bubble
• Primary input and output should be carefully noted
• Refinement should begin by isolating candidate processes,
data objects, and data stores to be represented at the next
level
• Information flow continuity must be maintained from one
level to another level
• One bubble at a time should be refined
• If a bubble does a number of different things, it needs further
refinement
• All arrows and bubbles should be labeled with meaningful
names 7
Faculty of Engineering & Technology ©Ramaiah University of Applied Sciences
Guidelines for Creating DFDs
• The names of data stores, sources, and
destinations are written in capital letters
• Process and data flow names have the first letter
of each word capitalized
• When a process is exploded into lower level
details, they are numbered
• Processes need to have at least one input data flow and one
output data flow
• Each child diagram should have the same input and output data
flow as the parent process
- Vertical balancing - A child diagram cannot produce output or receive
input that the parent process does not also produce or receive
8
Faculty of Engineering & Technology ©Ramaiah University of Applied Sciences
Guidelines for Creating DFDs contd.
• Data flows should not split into two or more different flows
• All data flows must either originate or terminate at a process
• Avoid crossing data flow lines by repeating data stores and
external entities
9
Faculty of Engineering & Technology ©Ramaiah University of Applied Sciences
Numbering of Bubbles
10
Faculty of Engineering & Technology ©Ramaiah University of Applied Sciences
When to Stop The Decomposition
11
Faculty of Engineering & Technology ©Ramaiah University of Applied Sciences
Data Flow Diagram - Example
A high-level data-flow diagram for the library problem
12
Faculty of Engineering & Technology ©Ramaiah University of Applied Sciences
Data Flow Diagramming Mistakes
Illegal data flows: all flows must begin with or end at a
processing step.
13
Faculty of Engineering & Technology ©Ramaiah University of Applied Sciences
Data Flow Diagramming Mistakes
14
Faculty of Engineering & Technology ©Ramaiah University of Applied Sciences
Summary
• A Data Flow Diagram (DFD) is a graphical representation of the
"flow" of data through an information system
• Primary input and output from level 0 should be carefully
noted
• Refinement should begin by isolating candidate processes
and all related entities, data objects, data stores and data
flows to be represented at the next level
• One bubble at a time should be refined
• If a bubble does a number of different things, it needs further
refinement
15
Faculty of Engineering & Technology ©Ramaiah University of Applied Sciences