Drawing a Level 1 data flow diagram from a scenario

Tip: Choose Save as PDF in the print dialog to download. Use A4 paper size.

Drawing a Level 1 data flow diagram from a scenario

Name:
Date:
Class:

Quick Questions

Shade in the A or B circle for each question.

1. A scenario says: 'The librarian checks a book out to a student.' Which is the best process name?
A Check out book
B Librarian
2. A scenario says: 'Member details are saved so they can be looked up later.' What does this tell you to draw?
A A data store holding member details
B A new external entity called Member Details
3. When reading a scenario to find processes, what should you look for?
A Verbs that show the system doing something to data
B Nouns that name the people involved
4. A process called 'Calculate total' has two data flows going in but none coming out. What is the problem?
A Nothing is wrong, because it has inputs
B The process is missing an output flow
5. A flow is drawn directly from the Customer entity to the Orders data store. Is this correct?
A Yes, entities can write straight to stores
B No, the flow must pass through a process

Match the Pairs

Draw a line connecting each item on the left to its match on the right.

Left columnRight column
1Verb phrase in a circle: Validate Payment AProcess: Update Stock -> D2 Inventory
2Process with only an arrow going in: Check Stock BThe process has no output flow, so the calculated total goes nowhere. It needs an output flow such as Order Total to the Customer or a store.
3A noun in the scenario that holds data for later use, such as a record of members, becomes a data store CD1 Member Records
4Data must move between a store and a process, never straight from one store to another DA missing flow error, because the process needs an output as well as an input
5Customer -> D1 Orders (flow goes direct from entity to store) EAn entity cannot send data straight to a data store. The flow must pass through a process such as Record Order.
6Process: Calculate Total (input: Item Prices, no output) FA process found in the scenario by spotting an action the system performs on data, named with a verb and a noun

Definitions

Level 1 DFD

Fill in the Blanks

Complete each line of code by filling in the missing parts.

1.
_______ 1.0: Validate Order
2.
______: Customer (outside the system)
3.
Data store D1: Orders Flow: 1.0 __ D1 (valid order)
4.
Error: Customer -> D1 skips the _______
5.
Check: 2.0 Process Payment has an input Error: no ______ flow leaves 2.0

Spot the Error

Shade in the letter of the line that contains an error.

Question 1
A Member -> P1 Loan: request
B P1 Loan -> D1 Loans: record
C D1 Loans -> P1 Loan: due date
D D1 Loans -> Member: receipt
Question 2
A Customer -> P1 Order: details
B P1 Order -> D1 Stock: update
C Customer -> Courier: invoice
D P1 Order -> Courier: label
Question 3
A Student -> P1 Enrol: form
B P1 Enrol -> D1 Classes: place
C P1 Enrol -> Student
Question 4
A Patient -> D1 Bookings: slot
B P1 Book -> D1 Bookings: slot
C D1 Bookings -> P2 Remind: slot
D P2 Remind -> Patient: SMS
Question 5
A Teacher -> P1 Mark: results
B D1 Grades -> P1 Mark: marks
C D1 Grades -> P2 Report: marks
D P2 Report -> Parent: report

Answer Key

Drawing a Level 1 data flow diagram from a scenario
Section A: Quick Questions
Q1
A — Check out book
Q2
A — A data store holding member details
Q3
A — Verbs that show the system doing something to data
Q4
B — The process is missing an output flow
Q5
B — No, the flow must pass through a process
Section B: Match the Pairs
Q1
Verb phrase in a circle: Validate Payment → A process found in the scenario by spotting an action the system performs on data, named with a verb and a noun
Q2
Process with only an arrow going in: Check Stock → A missing flow error, because the process needs an output as well as an input
Q3
A noun in the scenario that holds data for later use, such as a record of members, becomes a data store → D1 Member Records
Q4
Data must move between a store and a process, never straight from one store to another → Process: Update Stock -> D2 Inventory
Q5
Customer -> D1 Orders (flow goes direct from entity to store) → An entity cannot send data straight to a data store. The flow must pass through a process such as Record Order.
Q6
Process: Calculate Total (input: Item Prices, no output) → The process has no output flow, so the calculated total goes nowhere. It needs an output flow such as Order Total to the Customer or a store.
Section C: Definitions
Q1
Level 1 DFD — Breaks a system into processes, data stores, entities and labelled flows found in a scenario, then checks the rules, e.g. every process has an input and an output and no flow is missing.
Section D: Fill in the Blanks
Q1
Process 1.0: Validate Order
Q2
Entity: Customer (outside the system)
Q3
Data store D1: Orders Flow: 1.0 -> D1 (valid order)
Q4
Error: Customer -> D1 skips the process
Q5
Check: 2.0 Process Payment has an input Error: no output flow leaves 2.0
Section E: Spot the Error
Q1
D — A data store cannot send data straight to an entity. The data must pass through a process, so the flow should be P1 Loan -> Member: receipt.
Q2
C — Data cannot flow directly between two external entities. The invoice must come from a process, so it should be P1 Order -> Customer: invoice.
Q3
C — Every data flow must be labelled with the data it carries. The flow should be P1 Enrol -> Student: timetable.
Q4
A — An entity cannot write directly into a data store. The data must go through a process first, so the flow should be Patient -> P1 Book: request.
Q5
B — The marks are being saved, so the flow must go from the process into the store. As written, D1 Grades has no input flow, so nothing is ever stored. It should be P1 Mark -> D1 Grades: marks.