SlideShare ist ein Scribd-Unternehmen logo
1 von 39
DATA FLOW
DIAGRAMS
(DFDs)
Data Flow Diagrams
 A graphical tool, useful for communicating with
users, managers, and other personnel.
 Used to perform structured analysis to determine
logical requirements.
 Useful for analyzing existing as well as proposed
systems.
 Focus on the movement of data between external
entities and processes, and between processes and
data stores.
 A relatively simple technique to learn and use.
Why DFD ?
 Provides an overview of-
 What data a system processes
 What transformations are performed
 What data are stored
 What results are produced and where they flow
 Graphical nature makes it a good communication tool
between-
 User and analyst
 Analyst and System designer
DFD elements
Source/Sinks (External entities)
Data flows
Processes
Data Stores
External Entities
 A Rectangle represents
an external entity
 They either supply or
receive data
 They do not process data
External
Entities
• Source – Entity that
supplies data to the
system.
• Sink – Entity that
receives data from the
system.
Data Flows
 Data in motion
 Marks movement of data
through the system - a pipeline
to carry data.
 Connects the processes, external
entities and data stores.
 Generally unidirectional, If same
data flows in both directions,
double-headed arrow can be
used.
Data Flow
Processes
 A circle represents a process
 Straight line with incoming arrows are input data
flows
 Straight lines with outgoing arrows are output data
flows
 Labels are assigned to Data flow. These aid
documentation
1.
STORES
Stores demand
note
Delivery Slip
Issue Slip
Data Stores
 A Data Store is a repository of data
 Data can be written into the data store. This is
depicted by an incoming arrow
 Data can be read from a data store. This is depicted
by an outgoing arrow
 External entity cannot read or write to the data store
 Two data stores cannot be connected by a data flow
Data StoresD1 Data StoresD1 Data StoresD1
Writing Reading
Rules of Data Flow
 Data can flow from
 External entity to process
 Process to external entity
 Process to store and back
 Process to process
 Data cannot flow from
 External entity to
external entity
 External entity to store
 Store to external entity
 Store to store
Data Flow Diagrams
An alternate notation is often used:
 A Process
 A Data Store
3
Store
Issue
Data StoresD1
Label
Name
Name
Label
Good Style in Drawing DFD
 Use meaningful names for data flows, processes and
data stores.
 Use top down development starting from context
diagram and successively levelling DFD
 Only previously stored data can be read
 A process can only transfer input to output. It cannot
create new data
 Data stores cannot create new data
Decomposition of DFDs
 A system is too complex to be shown on a single DFD.
 Decomposition is the iterative process of exploding
data flow diagrams to create more detail.
 Level 0 data flow diagrams may be exploded into
successive low levels of detail. The next level of detail
would be a level 1 data flow diagram.
 The DFDs become linked together in
a hierarchy, which would fully
document the system.
Why Level DFD
 If a DFD is too detailed it will have too many
data flows and will be large and difficult to
understand
 Start from a broad overview. Expand to details –
Idea similar to using procedures and linking
these with a main program
 Each DFD must deal with one aspect of a big
system
Levels of DFD
 Context diagram
 Level-0 diagram (System diagram)
 Level-n diagram
- Detail of one process from next
highest level
 Primitive diagram (Lowest level DFD)
Levelling Rules
 If a process p is expanded, the process at the next level
are labelled as p.1, p.2 etc.
 All data flow entering or leaving p must also enter or
leave it’s expanded version
 Expanded DFD may have data stores
 No external entity can appear in expanded DFD
 Keep the number of processes at each level less than 7
Balancing DFDs
 Information presented at one
level of a DFD is accurately
represented in the next level
DFD.
 Ensures that the input and
output data flows of the
parent DFD are maintained
on the child DFD.
Creating DFDs
 Create a preliminary Context Diagram.
 Identify Use Cases, i.e. the ways in which users most
commonly use the system.
 Create DFD fragments for each use case.
 Create a Level 0 diagram from fragments.
 Decompose to Level 1,2,…
 Validate DFDs with users.
Creating the Context Diagram
 Draw one process representing
the entire system (process 0)
 Find all inputs and outputs that
come from or go to external
entities; draw as data flows.
 Draw in external entities as the
source or destination of the
data flows.
Creating Level 0 Diagram
 Combine the set of
DFD fragments into
one diagram.
 Generally move from
top to bottom, left to
right.
 Minimize crossed lines.
Creating Level 1 Diagram
 Each use case is turned into its own DFD.
 Take the steps listed on the use case and depict
each as a process on the level 1 DFD.
 Inputs and outputs listed on use case become data
flows on DFD.
 Include sources and destinations of data flows to
processes and stores within the DFD.
 May also include external entities for clarity.
When to stop decomposing
DFDs?
Ideally, a DFD has at least
three levels.
When the system becomes
primitive i.e. lowest level
is reached and further
decomposition is useless.
Validating DFD
 Check for syntax errors to
assure correct DFD structure.
 Check for semantics errors to
assure accuracy of DFD
relative to actual/desired
system.
University
Admission
System
0
Student
Student Information
Report
Staff
Admission Approval
or Rejection
Report Request
Context Diagram
DFD for University Admission System
Perform
Intake
Procedure
1
Student
Student
Information
Report
Admission Approval
or Rejection
Report Request
Approved
Application
Verified
Approved
Application
Data
Query
Data
Request for Student
Information Maintenance
Other Student Data
Data Item
Prompt
Staff
Data
Items
Generate
Reports
3
Maintain
Student
Information
2
Student
Name & ID
Student DataD1
Prior
Application
Data
Level 0
Receive
Admission
Application
1.1
Student
Student
Information
Application Approval
or Rejection
Verify
Admission
Application
1.2
Review
Admission
Application
1.3
Admission Application
Student DataD1
Verified
Admission
Application
Application
Request
Application
Data
Student Name
and ID
Prior
Application
Data
Approved Application
Level 1 Process 1, Perform Intake Procedure
Add New
Student
2.2
Edit Existing
Student
2.3
Delete
Existing
Student
2.4
Student DataD1
Cancel
Operation
2.5
Approved Application to Edit
ID of Student
to Delete
Determination to
Cancel Operation
Determine
Operation
2.1
Approved Application
Request for Student
Information Maintenance
Approved Application
to Add
Verified Approved
ApplicationVerified Changed
Student Data
Verified ID of
Student to Delete
Level 1 Process 2, Maintain Student
Information
Context Diagram
DFD for Lemonade Stand
0.0
Lemonade
System
EMPLOYEECUSTOMER
Pay
Payment
Order
VENDOR
Payment
Purchase Order
Production Schedule
Received Goods
Time Worked
Sales Forecast
Product Served
Level 0
2.0
Production
EMPLOYEE
Production
Schedule
1.0
Sale
3.0
Procure-
ment
Sales Forecast
Product Ordered
CUSTOMER
Pay
Payment
Customer Order
VENDOR
Payment
Purchase Order
Order
Decisions
Received Goods
Time Worked
Inventory
Product Served
4.0
Payroll
Level 1, Process 1
1.3
Produce
Sales
Forecast
Sales ForecastPayment
1.1
Record
Order
Customer Order
ORDER
1.2
Receive
Payment
PAYMENT
Severed Order
Request for Forecast
CUSTOMER
Level 1, Process 2 and Process 3
2.1
Serve
Product
Product Order
ORDER
2.2
Produce
Product
INVENTORTY
Quantity Severed
Production
Schedule
RAW
MATERIALS
2.3
Store
Product
Quantity Produced &
Location Stored
Quantity Used
Production Data
3.1
Produce
Purchase
Order
Order Decision
PURCHASE
ORDER
3.2
Receive
Items
Received
Goods
RAW
MATERIALS
3.3
Pay
Vendor
Quantity
Received
Quantity On-Hand
RECEIVED
ITEMS
VENDOR
Payment Approval
Payment
Level 1, Process 4
Time Worked
4.1
Record
Time
Worked
TIME CARDS
4.2
Calculate
Payroll
Payroll Request
EMPLOYEE
4.3
Pay
Employe
e
Employee ID
PAYROLL
PAYMENTS
Payment Approval
Payment
Unpaid time cards
ProcessDecomposition
4.1
Record
Time
Worked
4.2
Calculate
Payroll
4.3
Pay
Employe
e
3.1
Produce
Purchase
Order
3.2
Receive
Items
3.3
Pay
Vendor
2.1
Serve
Product
2.2
Produce
Product
2.3
Store
Product
1.1
Record
Order
1.2
Receive
Payment
2.0
Production
1.0
Sale
3.0
Procure-
ment
4.0
Payroll
0.0
Lemonade
System
Level 0 Level 1Context Level
Logical and Physical DFD
 DFDs considered so far are called logical DFDs
 A physical DFD is similar to a document flow diagram
 It specifies who does the operations specified by the
logical DFD
 Physical DFD may depict physical movements of the
goods
 Physical DFDs can be drawn during fact gathering
phase of a life cycle
Physical DFD for Cheque Encashment
Cash
Clerk
Verify A/C
Signature Update
Balance
Bad Cheque
Store chequesCustomer Accounts
Cheque
Cheque with
Token number
Cashier
Verify Token
Take Signature
Entry in Day Book
CUSTOMER
Token
Token
Logical DFD for Cheque Encashment
Cash
Retrieve
Customer
Record
Cheque
with token
Store cheques
Customer Accounts
Cheque
Cheque with
Token
Entry in Day
Book
CUSTOMER
Token Slip
Cheque Check
Balance,
Issue token
Store Token
no &
cheques
Search &
match token
Update
Daily cash
book
Token Slip
or Cheque
Questions
? ? ?
 In a DFD external entities are represented by a
a. Rectangle
b. Ellipse
c. Diamond shaped box
d. Circle
 External Entities may be a
a. Source of input data only
b. Source of input data or destination of results
c. Destination of results only
d. Repository of data
 A data store in a DFD represents
a. A sequential file
b. A disk store
c. A repository of data
d. A random access memory
 By an external entity we mean a
a. Unit outside the system being designed which can be controlled by an analyst
b. Unit outside the system whose behaviour is independent of the system being
designed
c. A unit external to the system being designed
d. A unit which is not part of DFD
 A data flow can
a. Only enter a data store
b. Only leave a data store
c. Enter or leave a data store
d. Either enter or leave a data store but not both
 A circle in a DFD represents
a. A data store
b. A an external entity
c. A process
d. An input unit
Thanks for
your
Cooperation

Weitere ähnliche Inhalte

Was ist angesagt?

Data flow diagram(19th march)
Data flow diagram(19th march)Data flow diagram(19th march)
Data flow diagram(19th march)
Ravi Shekhar
 
Penormalan/Normalization
Penormalan/NormalizationPenormalan/Normalization
Penormalan/Normalization
Joan Ador
 
Data flow diagrams
Data flow diagramsData flow diagrams
Data flow diagrams
shhajira
 
Dbms Concepts
Dbms ConceptsDbms Concepts
Dbms Concepts
adukkas
 

Was ist angesagt? (20)

Database management system
Database management systemDatabase management system
Database management system
 
Database Concept - Normalization (1NF, 2NF, 3NF)
Database Concept - Normalization (1NF, 2NF, 3NF)Database Concept - Normalization (1NF, 2NF, 3NF)
Database Concept - Normalization (1NF, 2NF, 3NF)
 
Dependency preservation
Dependency preservationDependency preservation
Dependency preservation
 
FUNCTION DEPENDENCY AND TYPES & EXAMPLE
FUNCTION DEPENDENCY  AND TYPES & EXAMPLEFUNCTION DEPENDENCY  AND TYPES & EXAMPLE
FUNCTION DEPENDENCY AND TYPES & EXAMPLE
 
Dependency preserving
Dependency preservingDependency preserving
Dependency preserving
 
Databases: Normalisation
Databases: NormalisationDatabases: Normalisation
Databases: Normalisation
 
Normalization in Database
Normalization in DatabaseNormalization in Database
Normalization in Database
 
Data Flow Diagram
Data Flow DiagramData Flow Diagram
Data Flow Diagram
 
Normalization
NormalizationNormalization
Normalization
 
Entity relationship modelling
Entity relationship modellingEntity relationship modelling
Entity relationship modelling
 
Data flow diagram(19th march)
Data flow diagram(19th march)Data flow diagram(19th march)
Data flow diagram(19th march)
 
DFD Slides
DFD SlidesDFD Slides
DFD Slides
 
Data flow diagrams - DFD
Data flow diagrams - DFDData flow diagrams - DFD
Data flow diagrams - DFD
 
Modern database management jeffrey a. hoffer, mary b. prescott,
Modern database management   jeffrey a. hoffer, mary b. prescott,  Modern database management   jeffrey a. hoffer, mary b. prescott,
Modern database management jeffrey a. hoffer, mary b. prescott,
 
Penormalan/Normalization
Penormalan/NormalizationPenormalan/Normalization
Penormalan/Normalization
 
Normalization in DBMS
Normalization in DBMSNormalization in DBMS
Normalization in DBMS
 
Data Flow Diagrams
Data Flow DiagramsData Flow Diagrams
Data Flow Diagrams
 
File organisation in system analysis and design
File organisation in system analysis and designFile organisation in system analysis and design
File organisation in system analysis and design
 
Data flow diagrams
Data flow diagramsData flow diagrams
Data flow diagrams
 
Dbms Concepts
Dbms ConceptsDbms Concepts
Dbms Concepts
 

Andere mochten auch (9)

208 dataflowdgm
208 dataflowdgm208 dataflowdgm
208 dataflowdgm
 
Data flow diagrams (2)
Data flow diagrams (2)Data flow diagrams (2)
Data flow diagrams (2)
 
Example of dfd with answer
Example of dfd with answerExample of dfd with answer
Example of dfd with answer
 
Data Flow Diagram
Data Flow DiagramData Flow Diagram
Data Flow Diagram
 
Data Flow Diagrams
Data Flow DiagramsData Flow Diagrams
Data Flow Diagrams
 
Course registration system dfd
Course registration system dfdCourse registration system dfd
Course registration system dfd
 
Data flow diagram
Data flow diagram Data flow diagram
Data flow diagram
 
Dfd examples
Dfd examplesDfd examples
Dfd examples
 
Data Flow Diagram Example
Data Flow Diagram ExampleData Flow Diagram Example
Data Flow Diagram Example
 

Ähnlich wie Dfd final

dtata flow digram
dtata flow digramdtata flow digram
dtata flow digram
amrelshaikh
 
Dfd over flowcharts
Dfd over flowcharts Dfd over flowcharts
Dfd over flowcharts
Ashwathy Nair
 
topic 2 data flow daigram topic-converted.pdf
topic 2 data flow daigram topic-converted.pdftopic 2 data flow daigram topic-converted.pdf
topic 2 data flow daigram topic-converted.pdf
tahir427002
 

Ähnlich wie Dfd final (20)

DFD
DFDDFD
DFD
 
dtata flow digram
dtata flow digramdtata flow digram
dtata flow digram
 
Data flow diagram
Data flow diagramData flow diagram
Data flow diagram
 
Dfd data flow diagram
Dfd   data flow diagramDfd   data flow diagram
Dfd data flow diagram
 
DFD ppt
DFD pptDFD ppt
DFD ppt
 
Data Flow Diagram (DFD)
Data Flow Diagram (DFD)Data Flow Diagram (DFD)
Data Flow Diagram (DFD)
 
DFD1.ppt
DFD1.pptDFD1.ppt
DFD1.ppt
 
Fundamentasl of DFD
Fundamentasl of DFDFundamentasl of DFD
Fundamentasl of DFD
 
DFD.pptx
DFD.pptxDFD.pptx
DFD.pptx
 
DFD.pptx
DFD.pptxDFD.pptx
DFD.pptx
 
Data flow diagram ( DFD ) 4 Components.pptx
Data flow diagram ( DFD ) 4 Components.pptxData flow diagram ( DFD ) 4 Components.pptx
Data flow diagram ( DFD ) 4 Components.pptx
 
Dfd mechanics
Dfd mechanicsDfd mechanics
Dfd mechanics
 
DFD.ppt
DFD.pptDFD.ppt
DFD.ppt
 
DFD_Context-_zero-level.ppt
DFD_Context-_zero-level.pptDFD_Context-_zero-level.ppt
DFD_Context-_zero-level.ppt
 
presentationDFD_3_7_2016.pptx
presentationDFD_3_7_2016.pptxpresentationDFD_3_7_2016.pptx
presentationDFD_3_7_2016.pptx
 
Dfd over flowcharts
Dfd over flowcharts Dfd over flowcharts
Dfd over flowcharts
 
Design Flow Diagram for Information System
Design Flow Diagram for Information SystemDesign Flow Diagram for Information System
Design Flow Diagram for Information System
 
Creative Team.pdf
Creative Team.pdfCreative Team.pdf
Creative Team.pdf
 
Data Flow Diagram.pptx
Data Flow Diagram.pptxData Flow Diagram.pptx
Data Flow Diagram.pptx
 
topic 2 data flow daigram topic-converted.pdf
topic 2 data flow daigram topic-converted.pdftopic 2 data flow daigram topic-converted.pdf
topic 2 data flow daigram topic-converted.pdf
 

Mehr von Mukund Trivedi

Mehr von Mukund Trivedi (20)

System development life cycle (sdlc)
System development life cycle (sdlc)System development life cycle (sdlc)
System development life cycle (sdlc)
 
Process of design
Process of designProcess of design
Process of design
 
New file and form 2
New file and form 2New file and form 2
New file and form 2
 
File organisation
File organisationFile organisation
File organisation
 
Evaluation
EvaluationEvaluation
Evaluation
 
Database
DatabaseDatabase
Database
 
Case tools
Case toolsCase tools
Case tools
 
Evaluation
EvaluationEvaluation
Evaluation
 
Sad
SadSad
Sad
 
C++ file
C++ fileC++ file
C++ file
 
Ff40fnatural resources (1)
Ff40fnatural resources (1)Ff40fnatural resources (1)
Ff40fnatural resources (1)
 
Ff40fnatural resources
Ff40fnatural resourcesFf40fnatural resources
Ff40fnatural resources
 
F58fbnatural resources 2 (1)
F58fbnatural resources 2 (1)F58fbnatural resources 2 (1)
F58fbnatural resources 2 (1)
 
F58fbnatural resources 2
F58fbnatural resources 2F58fbnatural resources 2
F58fbnatural resources 2
 
F6dc1 session6 c++
F6dc1 session6 c++F6dc1 session6 c++
F6dc1 session6 c++
 
Ee2fbunit 7
Ee2fbunit 7Ee2fbunit 7
Ee2fbunit 7
 
E212d9a797dbms chapter3 b.sc2 (2)
E212d9a797dbms chapter3 b.sc2 (2)E212d9a797dbms chapter3 b.sc2 (2)
E212d9a797dbms chapter3 b.sc2 (2)
 
E212d9a797dbms chapter3 b.sc2 (1)
E212d9a797dbms chapter3 b.sc2 (1)E212d9a797dbms chapter3 b.sc2 (1)
E212d9a797dbms chapter3 b.sc2 (1)
 
E212d9a797dbms chapter3 b.sc2
E212d9a797dbms chapter3 b.sc2E212d9a797dbms chapter3 b.sc2
E212d9a797dbms chapter3 b.sc2
 
C96e1 session3 c++
C96e1 session3 c++C96e1 session3 c++
C96e1 session3 c++
 

Kürzlich hochgeladen

Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 

Kürzlich hochgeladen (20)

Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 

Dfd final

  • 2. Data Flow Diagrams  A graphical tool, useful for communicating with users, managers, and other personnel.  Used to perform structured analysis to determine logical requirements.  Useful for analyzing existing as well as proposed systems.  Focus on the movement of data between external entities and processes, and between processes and data stores.  A relatively simple technique to learn and use.
  • 3. Why DFD ?  Provides an overview of-  What data a system processes  What transformations are performed  What data are stored  What results are produced and where they flow  Graphical nature makes it a good communication tool between-  User and analyst  Analyst and System designer
  • 4. DFD elements Source/Sinks (External entities) Data flows Processes Data Stores
  • 5. External Entities  A Rectangle represents an external entity  They either supply or receive data  They do not process data External Entities • Source – Entity that supplies data to the system. • Sink – Entity that receives data from the system.
  • 6. Data Flows  Data in motion  Marks movement of data through the system - a pipeline to carry data.  Connects the processes, external entities and data stores.  Generally unidirectional, If same data flows in both directions, double-headed arrow can be used. Data Flow
  • 7. Processes  A circle represents a process  Straight line with incoming arrows are input data flows  Straight lines with outgoing arrows are output data flows  Labels are assigned to Data flow. These aid documentation 1. STORES Stores demand note Delivery Slip Issue Slip
  • 8. Data Stores  A Data Store is a repository of data  Data can be written into the data store. This is depicted by an incoming arrow  Data can be read from a data store. This is depicted by an outgoing arrow  External entity cannot read or write to the data store  Two data stores cannot be connected by a data flow Data StoresD1 Data StoresD1 Data StoresD1 Writing Reading
  • 9. Rules of Data Flow  Data can flow from  External entity to process  Process to external entity  Process to store and back  Process to process  Data cannot flow from  External entity to external entity  External entity to store  Store to external entity  Store to store
  • 10. Data Flow Diagrams An alternate notation is often used:  A Process  A Data Store 3 Store Issue Data StoresD1 Label Name Name Label
  • 11. Good Style in Drawing DFD  Use meaningful names for data flows, processes and data stores.  Use top down development starting from context diagram and successively levelling DFD  Only previously stored data can be read  A process can only transfer input to output. It cannot create new data  Data stores cannot create new data
  • 12. Decomposition of DFDs  A system is too complex to be shown on a single DFD.  Decomposition is the iterative process of exploding data flow diagrams to create more detail.  Level 0 data flow diagrams may be exploded into successive low levels of detail. The next level of detail would be a level 1 data flow diagram.  The DFDs become linked together in a hierarchy, which would fully document the system.
  • 13. Why Level DFD  If a DFD is too detailed it will have too many data flows and will be large and difficult to understand  Start from a broad overview. Expand to details – Idea similar to using procedures and linking these with a main program  Each DFD must deal with one aspect of a big system
  • 14. Levels of DFD  Context diagram  Level-0 diagram (System diagram)  Level-n diagram - Detail of one process from next highest level  Primitive diagram (Lowest level DFD)
  • 15. Levelling Rules  If a process p is expanded, the process at the next level are labelled as p.1, p.2 etc.  All data flow entering or leaving p must also enter or leave it’s expanded version  Expanded DFD may have data stores  No external entity can appear in expanded DFD  Keep the number of processes at each level less than 7
  • 16. Balancing DFDs  Information presented at one level of a DFD is accurately represented in the next level DFD.  Ensures that the input and output data flows of the parent DFD are maintained on the child DFD.
  • 17. Creating DFDs  Create a preliminary Context Diagram.  Identify Use Cases, i.e. the ways in which users most commonly use the system.  Create DFD fragments for each use case.  Create a Level 0 diagram from fragments.  Decompose to Level 1,2,…  Validate DFDs with users.
  • 18. Creating the Context Diagram  Draw one process representing the entire system (process 0)  Find all inputs and outputs that come from or go to external entities; draw as data flows.  Draw in external entities as the source or destination of the data flows.
  • 19. Creating Level 0 Diagram  Combine the set of DFD fragments into one diagram.  Generally move from top to bottom, left to right.  Minimize crossed lines.
  • 20. Creating Level 1 Diagram  Each use case is turned into its own DFD.  Take the steps listed on the use case and depict each as a process on the level 1 DFD.  Inputs and outputs listed on use case become data flows on DFD.  Include sources and destinations of data flows to processes and stores within the DFD.  May also include external entities for clarity.
  • 21. When to stop decomposing DFDs? Ideally, a DFD has at least three levels. When the system becomes primitive i.e. lowest level is reached and further decomposition is useless.
  • 22. Validating DFD  Check for syntax errors to assure correct DFD structure.  Check for semantics errors to assure accuracy of DFD relative to actual/desired system.
  • 23. University Admission System 0 Student Student Information Report Staff Admission Approval or Rejection Report Request Context Diagram DFD for University Admission System
  • 24. Perform Intake Procedure 1 Student Student Information Report Admission Approval or Rejection Report Request Approved Application Verified Approved Application Data Query Data Request for Student Information Maintenance Other Student Data Data Item Prompt Staff Data Items Generate Reports 3 Maintain Student Information 2 Student Name & ID Student DataD1 Prior Application Data Level 0
  • 25. Receive Admission Application 1.1 Student Student Information Application Approval or Rejection Verify Admission Application 1.2 Review Admission Application 1.3 Admission Application Student DataD1 Verified Admission Application Application Request Application Data Student Name and ID Prior Application Data Approved Application Level 1 Process 1, Perform Intake Procedure
  • 26. Add New Student 2.2 Edit Existing Student 2.3 Delete Existing Student 2.4 Student DataD1 Cancel Operation 2.5 Approved Application to Edit ID of Student to Delete Determination to Cancel Operation Determine Operation 2.1 Approved Application Request for Student Information Maintenance Approved Application to Add Verified Approved ApplicationVerified Changed Student Data Verified ID of Student to Delete Level 1 Process 2, Maintain Student Information
  • 27. Context Diagram DFD for Lemonade Stand 0.0 Lemonade System EMPLOYEECUSTOMER Pay Payment Order VENDOR Payment Purchase Order Production Schedule Received Goods Time Worked Sales Forecast Product Served
  • 28. Level 0 2.0 Production EMPLOYEE Production Schedule 1.0 Sale 3.0 Procure- ment Sales Forecast Product Ordered CUSTOMER Pay Payment Customer Order VENDOR Payment Purchase Order Order Decisions Received Goods Time Worked Inventory Product Served 4.0 Payroll
  • 29. Level 1, Process 1 1.3 Produce Sales Forecast Sales ForecastPayment 1.1 Record Order Customer Order ORDER 1.2 Receive Payment PAYMENT Severed Order Request for Forecast CUSTOMER
  • 30. Level 1, Process 2 and Process 3 2.1 Serve Product Product Order ORDER 2.2 Produce Product INVENTORTY Quantity Severed Production Schedule RAW MATERIALS 2.3 Store Product Quantity Produced & Location Stored Quantity Used Production Data 3.1 Produce Purchase Order Order Decision PURCHASE ORDER 3.2 Receive Items Received Goods RAW MATERIALS 3.3 Pay Vendor Quantity Received Quantity On-Hand RECEIVED ITEMS VENDOR Payment Approval Payment
  • 31. Level 1, Process 4 Time Worked 4.1 Record Time Worked TIME CARDS 4.2 Calculate Payroll Payroll Request EMPLOYEE 4.3 Pay Employe e Employee ID PAYROLL PAYMENTS Payment Approval Payment Unpaid time cards
  • 33. Logical and Physical DFD  DFDs considered so far are called logical DFDs  A physical DFD is similar to a document flow diagram  It specifies who does the operations specified by the logical DFD  Physical DFD may depict physical movements of the goods  Physical DFDs can be drawn during fact gathering phase of a life cycle
  • 34. Physical DFD for Cheque Encashment Cash Clerk Verify A/C Signature Update Balance Bad Cheque Store chequesCustomer Accounts Cheque Cheque with Token number Cashier Verify Token Take Signature Entry in Day Book CUSTOMER Token Token
  • 35. Logical DFD for Cheque Encashment Cash Retrieve Customer Record Cheque with token Store cheques Customer Accounts Cheque Cheque with Token Entry in Day Book CUSTOMER Token Slip Cheque Check Balance, Issue token Store Token no & cheques Search & match token Update Daily cash book Token Slip or Cheque
  • 37.  In a DFD external entities are represented by a a. Rectangle b. Ellipse c. Diamond shaped box d. Circle  External Entities may be a a. Source of input data only b. Source of input data or destination of results c. Destination of results only d. Repository of data  A data store in a DFD represents a. A sequential file b. A disk store c. A repository of data d. A random access memory
  • 38.  By an external entity we mean a a. Unit outside the system being designed which can be controlled by an analyst b. Unit outside the system whose behaviour is independent of the system being designed c. A unit external to the system being designed d. A unit which is not part of DFD  A data flow can a. Only enter a data store b. Only leave a data store c. Enter or leave a data store d. Either enter or leave a data store but not both  A circle in a DFD represents a. A data store b. A an external entity c. A process d. An input unit