Title: Data Flow Diagram
1Data Flow Diagram Levelling
- COMM1B
- Information Systems Analysis
2Level 1 Data Flow Diagrams
- It is not always necessary to start with a
Document Flow diagram and/or a context diagram - These are not really DFDs
- But can help identify system boundary - external
entities, agencies and data. - IT IS IMPOSSIBLE to produce a complete accurate
level 1 DFD at the first attempt - further
investigations are always necessary to complete
the picture
3Level 1 Data Flow Diagrams
- you decide how much detail to show
- useful to group together processes done in
functional areas for clarity (personally
speaking max. 5 or 6 processes approx.) - must be an accurate and complete picture
- processes descriptions should summarise the
overall processing - all DFDs must adhere to strict notation and
convention rules (forms part of the system
documentation). We use SSADM
4Lower Level Data Flow Diagrams
- Processes are expanded (or decomposed) into lower
layers of detail - each process separated into sub-processes, then
sub-sub-processes and so on - level 2 followed by level 3 and so on (level 3
usually the lowest)
5Lower Level Data Flow Diagrams
- Lowest level reached when further decomposition
becomes impossible - next stage is to write a detailed (elementary)
process description - Commonly Structured English, decision trees and
tables
6Stages ofa Data Flow Model
Level 1
Context (Level 0)
Agency
Overall process
Agency
7Stages ofa Data Flow Model
Level 1
Level 2
1
Responsibility
Major Process description
Responsibility
2
Major Process description
3
Responsibility
Major Process description
8Stages ofa Data Flow Model
Level 3
Level 2
9Stages ofa Data Flow Model
Level 3
Level 2 process description
2.3
2.3.1 Elementary Process Description Specified
using Decision Tree Decision Table Structured
English
2.3.1
Responsibility
Sub-sub Process Description
2.3.2
Responsibility
Sub-sub Process Description
2.3.3
Responsibility
Sub-sub Process Description
10More Data Flow Diagram Symbols
Data flow in both directions eg.simultaneous read
and update (used occasionally)
A process - which is at its lowest level and will
not be expanded any further
A repeated data store - on the same diagram
M2
11More Data Flow Diagram Symbols
Multiple occurrence of same external entity on
same diagram
a
Customer
a
Use of identifier for entity
Customer
12Context Diagram(level 0)
Accounts
Customer
Goods received
note
Copy delivery
note
Delivery note
Re-order card
Weekly credit
limit list
Order
Order
acknowledgement
Order Processing System
Goods received note
Order Processing System
Supplier
13Level 1Data Flow Diagram
Order Processing System
14Level 2 DFDControl Stock
15Level 3 DFDMonitor Stock Levels
16Rules and Guidelines
- Data Stores used by more than one process are
shown on that level diagram
17Rules and Guidelines
- Data Stores used by only one process at that
level are not shown - They are internal to that process
- Appear on the next level diagram
18Rules and Guidelines
- Process numbering uses a decimal extension
- Sub-processes from level 1 DFD process 2
- become 2.1, 2.2, 2.3, 2.4 and so onat second
level - Sub-processes from level 2 process 2.3
- become 2.3.1, 2.3.2, 2.3.3, 2.3.4 and so onat
third level
19Rules and Guidelines
- New data stores at lower levels
- inherit process number followed by data store
number
3
3.1
3.2
M3/1
3.3
M3/1
M3/2
20Rules and Guidelines
Level 1 DFD
Data flows across process boundaries
Level 2 DFD
Must be consistency between levels
21Rules and Guidelines
- All data flows which cross the the process
boundary at the level above must be drawn - The only new data flows and data stores are
internal
Level 2 DFD
22Rules and Guidelines
- Avoid system flowchart
- DFDs do not show sequence or timing
- Data may pass directly from one process to
another - However, consider possible data stores
23Checking your Data Flow Model
- If a process has less than four data flows then
it is probably at its lowest level. - If a process has approx. eight or more data flows
then it is probably too busy to be a bottom
level process, and should be further decomposed. - Processes that act as a dead end for data flows
are incorrectly defined - they should transform
data, not store it. There must be a flow of data
out - Processes need data to process. If there are no
data flows in, it cannot be correct.
24Checking your Data Flow Model
- Data Stores that have flows in (updates) but none
out (reads) should be checked - is this data not
being used? - Data Stores that have no flows going in, only
flows out, should be checked - is this a
reference file maintained by another system? - All data flows on the lowest level diagram should
be single direction flows. - ALL detail must be covered. Do not omit or skim
over details which appear to be trivial - Users will not fully understand the model
- Important constraints could be missed out of the
requirements
25Data Flow Diagrams Summary
- A complete set of levelled DFDs form the Process
Model of a System, in conjunction with elementary
process descriptions (and sometimes Use Cases)
26Data Flow Diagrams Summary
- You will see many examples of DFDs which do NOT
conform to the rules and guidelines - They are not representative of good practice
- Indicative of weak system documentation
- Often demonstrate a lack of understanding of the
existing/proposed system and can lead to poor
system design - Remember - your work will be assessed on its
quality and accuracy
27Further Reading
- Lejk and Deeks
- An Introduction to Systems Analysis Techniques
Chapters 4 5 (essential reading) - M Goodland and C Slater
- SSADM version 4 a Practical Approach McGraw Hill
1995 - Philip L Weaver
- Practical SSADM version 4. Chapters 2 and 3.
Pitman Publishing.