Unit 3 - DFD
Unit 3 - DFD
Software architecture:
refined through detailed design.
Detailed design can be directly
implemented:
using a conventional programming language.
A DFD model:
uses limited types of symbols.
simple set of rules
easy to understand:
it is a hierarchical model.
search store
Represented by a rectangle
External entities are real
physical entities:
input data to the system or
consume data produced by the system.
Sometimes external entities are called
terminator, source, or sink.
Books
Read- Validate-
numbers numbers
0.1 0.2
numbers Valid
Data- number
items
Tic-tac-toe
display software
move
Human Player
Context diagram
establishes the context of the
system, i.e.
represents:
Data sources
Data sinks.
Decomposition of a bubble:
also called factoring or exploding.
Each bubble is decomposed to
between 3 to 7 bubbles.
Data- Compute-
items RMS
0
User result
Context Diagram
numbers
Read- Validate-
numbers numbers
0.1 0.2
Valid
Data- -numbers
items error
Compute-
Display rms
0.4 0.3
result RMS
Squared-
Calculate- sum Calculate-
squared- mean
sum 0.3.2
0.3.1
Valid Mean-
-numbers square
Calculate-
root
0.3.3
RMS
bsq
asq csq
Sum
0.3.1.4
Squared-sum
{name}* represents
zero or more instances of name data.
= represents equivalence,
e.g. a=b+c means that a represents b and c.
* *: Anything appearing within * * is considered as comment.
c1
d1
a d
e
Level 1 d
e1
e
Level 2
Tuesday, March 23, 2021 LECTURE NOTES - DR. P. PERSIS
Tuesday, March 23, 2021 LECTURE NOTES - DR. P. PERSIS 57
Balancing DFD :
Parent DFD having inflow and out flow of data should match
data flow at next child level. This is known as balancing a DFD.
Concept is illustrated in figure :
Tuesday, March 23, 2021 LECTURE NOTES - DR. P. PERSIS 58
In Level 1 DFD, data items D1 flow out of bubble 2 and item D2
flows into bubble 2. In next level, bubble 2 is decomposed into three
sub process(2.1, 2.2, 2.3). It has data item D1 flowing out and D2
flowing in. So DFD is balanced here.
When a bubble has input flow without any output flow, it is known
as “black hole”.
A processing step may have outputs that are greater than sum of its
inputs is called Grey holes.
move
Human Player
Validate- Check-
move board winner
0.2 0.4
Play-
move
0.3
Display=game + result
move = integer
board = {integer}9
game = {integer}9
result=string
We discussed structured
analysis of two small examples:
RMS calculating software
tic-tac-toe computer game
software