dfds (data flow diagrams)
TRANSCRIPT
![Page 1: DFDs (Data Flow Diagrams)](https://reader030.vdocuments.net/reader030/viewer/2022012421/6175b07678d34401f2539412/html5/thumbnails/1.jpg)
DFDs (Data Flow Diagrams)
![Page 2: DFDs (Data Flow Diagrams)](https://reader030.vdocuments.net/reader030/viewer/2022012421/6175b07678d34401f2539412/html5/thumbnails/2.jpg)
Data Flow Diagrams (DFDs)
Data flow diagram (DFD) is a picture of the movement of data between external entities and the processes and data stores within a system
1.0
CheckStatus
2.0
IssueStatus
Messages
3.0
GenerateShipping
Order
ACCOUNTING
CUSTOMER WAREHOUSE
4.0
Manage Accounts
Receivable5.0
ProduceReports
Order In-Stock Request
Status Data
Status Message
PendingOrdersD1
Order Data
Order Data
Shipping Order
Shipping Confirmation
Invoice
Payment
Accounts ReceivableD2
Accounting Data Accounts Receivable Data
Order Data
Inventory Reports
![Page 3: DFDs (Data Flow Diagrams)](https://reader030.vdocuments.net/reader030/viewer/2022012421/6175b07678d34401f2539412/html5/thumbnails/3.jpg)
DFD Symbols
Process
Data Flow
Data Store
Source/Sink (External Entity)
or
![Page 4: DFDs (Data Flow Diagrams)](https://reader030.vdocuments.net/reader030/viewer/2022012421/6175b07678d34401f2539412/html5/thumbnails/4.jpg)
sample
![Page 5: DFDs (Data Flow Diagrams)](https://reader030.vdocuments.net/reader030/viewer/2022012421/6175b07678d34401f2539412/html5/thumbnails/5.jpg)
Process
Work or actions performed on data (inside the system)
Labels should be verb phrases: active verb + object clause
Receives input data and produces output
Grade Report1.0
ProduceGrade Report
![Page 6: DFDs (Data Flow Diagrams)](https://reader030.vdocuments.net/reader030/viewer/2022012421/6175b07678d34401f2539412/html5/thumbnails/6.jpg)
Rule 1: Process Can have more than one outgoing data flow
or more than one incoming data flow
1.0Grade
Student Work
3.0Calculate Gross Pay
![Page 7: DFDs (Data Flow Diagrams)](https://reader030.vdocuments.net/reader030/viewer/2022012421/6175b07678d34401f2539412/html5/thumbnails/7.jpg)
Rule 2: Process Can connect to any other symbol (including
another process symbol)
1.0Verify Order
2.0Assemble Order
![Page 8: DFDs (Data Flow Diagrams)](https://reader030.vdocuments.net/reader030/viewer/2022012421/6175b07678d34401f2539412/html5/thumbnails/8.jpg)
Process: Correct/Incorrect?1.0
Create Invoice
Apply Insurance Premium
2.1Calculate
Gross Pay
![Page 9: DFDs (Data Flow Diagrams)](https://reader030.vdocuments.net/reader030/viewer/2022012421/6175b07678d34401f2539412/html5/thumbnails/9.jpg)
Data Flow
Is a path for data to move from one part of the IS to another
Arrows depicting movement of data Can represent flow between process and data
store by two separate arrows
Accounts Receivable
D1
Deposit
2.1
Post Payment
![Page 10: DFDs (Data Flow Diagrams)](https://reader030.vdocuments.net/reader030/viewer/2022012421/6175b07678d34401f2539412/html5/thumbnails/10.jpg)
Data Store
Is used in a DFD to represent data that the system stores
Labels should be noun phrases
![Page 11: DFDs (Data Flow Diagrams)](https://reader030.vdocuments.net/reader030/viewer/2022012421/6175b07678d34401f2539412/html5/thumbnails/11.jpg)
Rule: Data Store Must have at least one incoming and one
outgoing data flow
Daily Payment
![Page 12: DFDs (Data Flow Diagrams)](https://reader030.vdocuments.net/reader030/viewer/2022012421/6175b07678d34401f2539412/html5/thumbnails/12.jpg)
Data Flow: Correct/Incorrect?
Customer Payment
5.0
Post Payment
6.0
Prepare Deposit
![Page 13: DFDs (Data Flow Diagrams)](https://reader030.vdocuments.net/reader030/viewer/2022012421/6175b07678d34401f2539412/html5/thumbnails/13.jpg)
Data Store: Correct/Incorrect?
FightRequest
2.0
Book Flight
3.0
Post Payment
![Page 14: DFDs (Data Flow Diagrams)](https://reader030.vdocuments.net/reader030/viewer/2022012421/6175b07678d34401f2539412/html5/thumbnails/14.jpg)
Source/Sink (External Entity)
External entity that is origin or destination of data (outside the system)
Is the singular form of a department, outside organisation, other IS, or person
Labels should be noun phrases
Invoice
Source – Entity that supplies data to the system
Sink – Entity that receives data from the system
1.0
Verify Order
![Page 15: DFDs (Data Flow Diagrams)](https://reader030.vdocuments.net/reader030/viewer/2022012421/6175b07678d34401f2539412/html5/thumbnails/15.jpg)
Rule: External Entity Must be connected to a process by a data flow
2.0
Prepare Deposit
![Page 16: DFDs (Data Flow Diagrams)](https://reader030.vdocuments.net/reader030/viewer/2022012421/6175b07678d34401f2539412/html5/thumbnails/16.jpg)
External Entity: Correct/Incorrect?
PAYROLLDEPARTMENT
Paycheck
CUSTOMER
3.0
Apply Payment
![Page 17: DFDs (Data Flow Diagrams)](https://reader030.vdocuments.net/reader030/viewer/2022012421/6175b07678d34401f2539412/html5/thumbnails/17.jpg)
Rules for Using DFD Symbols Data Flow That Connects
YES NOA process to another process
A process to an external entity
A process to a data store
An external entity to another external entity
An external entity to a data store
A data store to another data store
![Page 18: DFDs (Data Flow Diagrams)](https://reader030.vdocuments.net/reader030/viewer/2022012421/6175b07678d34401f2539412/html5/thumbnails/18.jpg)
List the errors of this DFD
E1
E1
P2
P1
1.0
2.0
DS1
DF2
DF2
DF6
DF4
DF3
DF1
DF5
![Page 19: DFDs (Data Flow Diagrams)](https://reader030.vdocuments.net/reader030/viewer/2022012421/6175b07678d34401f2539412/html5/thumbnails/19.jpg)
Guidelines for drawing DFDs Identify all external entities Identify all inputs and outputs Work your way through from Inputs to
outputs Label all data flows and data stores
descriptively Follow the rules
![Page 20: DFDs (Data Flow Diagrams)](https://reader030.vdocuments.net/reader030/viewer/2022012421/6175b07678d34401f2539412/html5/thumbnails/20.jpg)
Levelling Typically DFD are traditionally drawn at three levels
The top-level DFD is context diagram (level 0)consisting of only one process, representing the entire system; It shows the interfaces between the system and the external entities.
Immediately beneath the context diagram is the system level diagram (level 1) i.e. highest level view of the major functions within the system, as well as the major interfaces between those functions.
Further levels can be decomposed to any depth by expanding individual processes
![Page 21: DFDs (Data Flow Diagrams)](https://reader030.vdocuments.net/reader030/viewer/2022012421/6175b07678d34401f2539412/html5/thumbnails/21.jpg)
Levelled Diagram
![Page 22: DFDs (Data Flow Diagrams)](https://reader030.vdocuments.net/reader030/viewer/2022012421/6175b07678d34401f2539412/html5/thumbnails/22.jpg)
Context Level Diagram
![Page 23: DFDs (Data Flow Diagrams)](https://reader030.vdocuments.net/reader030/viewer/2022012421/6175b07678d34401f2539412/html5/thumbnails/23.jpg)
0
Order System
Order
OrderReject Notice
PickingList
CompletedOrder
Payment Invoice
SALESREP
CUSTOMER WAREHOUSE
ACCOUNTING
Commission Bank Deposit
CashReceiptsEntry
Context Diagram of Order System
![Page 24: DFDs (Data Flow Diagrams)](https://reader030.vdocuments.net/reader030/viewer/2022012421/6175b07678d34401f2539412/html5/thumbnails/24.jpg)
A video shop (1) Expanding this process (context level)
Customer
Distributor
customer order Purchase
order
invoiceDelivery note
Delivery note
ProcessOrders
![Page 25: DFDs (Data Flow Diagrams)](https://reader030.vdocuments.net/reader030/viewer/2022012421/6175b07678d34401f2539412/html5/thumbnails/25.jpg)
A video shop (2)
CustomerVerifyOrderValid
1.0
D2 Customer Data
D1 Video FileVideo details
customerorder
D3 Pending Orders
CreatePurchaseOrders
2.0validCust-omerorder
Distributor
purchaseorder
batched order
AssembleCustomerOrders
3.0
creditstatus
invoice
Videoorderdetails
D4 Distributor fileDistributor details
delivery notedelivery note
address
![Page 26: DFDs (Data Flow Diagrams)](https://reader030.vdocuments.net/reader030/viewer/2022012421/6175b07678d34401f2539412/html5/thumbnails/26.jpg)
DFD Process Numbering Rules The process boxes on the level 1 diagram should be numbered
arbitrarily, so that no priority is implied. Even where data from one process flows directly into another process, this does not necessarily mean that the first one has to finish before the second one can begin.
3
3.2 3.33.1 3.4
3.2.1 3.2.2 3.2.3
21 Level 1
Level 2
Level 3
![Page 27: DFDs (Data Flow Diagrams)](https://reader030.vdocuments.net/reader030/viewer/2022012421/6175b07678d34401f2539412/html5/thumbnails/27.jpg)
Numbering Expand Assemble Customer Orders
New process 3.1 New process 3.2 etc
AssembleCustomerOrders
3.0
invoice
Videoorderdetails
delivery notedelivery note
address
![Page 28: DFDs (Data Flow Diagrams)](https://reader030.vdocuments.net/reader030/viewer/2022012421/6175b07678d34401f2539412/html5/thumbnails/28.jpg)
Expanded
D3 Pending Orders
Videoorderdetails
Distributor
Assigndelivery topendingorders
3.1
delivery note
Customer
CreateInvoice
3.3
VerifyCorrectDelivery
3.2
D5 A/c Receivable
invoice copy
invoice
indiv.Ordersdetails
assembledorders
CreateDelivery
Note
3.4delivery note
assembledorders
D2 Customer Data
Address
![Page 29: DFDs (Data Flow Diagrams)](https://reader030.vdocuments.net/reader030/viewer/2022012421/6175b07678d34401f2539412/html5/thumbnails/29.jpg)
Some Principles (1) Each DFD figure should have no more than 8
or 9 processes and related stores. The number of level and partition should be
based on the above principle: The number of levels is dependent on system
complexity. Complexity of each level may not be the same. Some can be more complex than other levels.
![Page 30: DFDs (Data Flow Diagrams)](https://reader030.vdocuments.net/reader030/viewer/2022012421/6175b07678d34401f2539412/html5/thumbnails/30.jpg)
Some Principles (1) Make sure that the levels of DFDs are
consistent with each other: the data flow coming into and going out of a process at one level must correspond to the data flows coming into and going out of an entire figure at the next lower level which describe that process.
Show a store at the highest level where it first serves as an interface between two more processes; then show it again in EVERY lowerlevel
![Page 31: DFDs (Data Flow Diagrams)](https://reader030.vdocuments.net/reader030/viewer/2022012421/6175b07678d34401f2539412/html5/thumbnails/31.jpg)
DFD COMMON MISTAKES
![Page 32: DFDs (Data Flow Diagrams)](https://reader030.vdocuments.net/reader030/viewer/2022012421/6175b07678d34401f2539412/html5/thumbnails/32.jpg)
Mistake 1 : Verb vs. Noun
.1.0
OrderVerify order
Login
Incorrectly labeling processes or data flow
Processlabels should be verbphrases
Data flow labels should be noun phrases
1.0
Login
![Page 33: DFDs (Data Flow Diagrams)](https://reader030.vdocuments.net/reader030/viewer/2022012421/6175b07678d34401f2539412/html5/thumbnails/33.jpg)
What DFD’s do not do (1) DFDs do not handle sequence
There is no notion of time in a DFD. It cannot be inferred that process 2 always follows process 1.
In many instances DFDs are drawn by considering a sequence of actions (which is a very sensible way of going about things) but that still does notmean that we can infer sequentially from a DFD.
DFDs do not handle priorities In a situation where two processes want to read
from the same file at the same time, which one wins? DFDs do not address the problem.
![Page 34: DFDs (Data Flow Diagrams)](https://reader030.vdocuments.net/reader030/viewer/2022012421/6175b07678d34401f2539412/html5/thumbnails/34.jpg)
Mistake 2 : DFD Flowchart
DFDs are not Flowcharts
![Page 35: DFDs (Data Flow Diagrams)](https://reader030.vdocuments.net/reader030/viewer/2022012421/6175b07678d34401f2539412/html5/thumbnails/35.jpg)
Mistake 3 : Complicated Including more than nine processes on a DFD
Decomposition is needed The purpose of data flow diagrams is to provide a semantic bridge between
USERS and systems developers. User understanding and reviewing
![Page 36: DFDs (Data Flow Diagrams)](https://reader030.vdocuments.net/reader030/viewer/2022012421/6175b07678d34401f2539412/html5/thumbnails/36.jpg)
Mistake 4: Diagramming rules
Miracles
Black holes
![Page 37: DFDs (Data Flow Diagrams)](https://reader030.vdocuments.net/reader030/viewer/2022012421/6175b07678d34401f2539412/html5/thumbnails/37.jpg)
What DFD’s do not do (2) DFDs do not define the structure of the
data The structure of the data in the data stores is
glossed over in DFDs and any structure of the data in data flows is similarly ignored in DFDs. The structure of the data is left to the data view of the system.
![Page 38: DFDs (Data Flow Diagrams)](https://reader030.vdocuments.net/reader030/viewer/2022012421/6175b07678d34401f2539412/html5/thumbnails/38.jpg)
Summary Know 4 main symbols Naming is very important Know Context level, systems level and
lower levels Know how to decompose processes to
lower levels
![Page 39: DFDs (Data Flow Diagrams)](https://reader030.vdocuments.net/reader030/viewer/2022012421/6175b07678d34401f2539412/html5/thumbnails/39.jpg)
The end…Thank you!
Ainee – SAD Team (2007)