← ACARA Digital Technologies Years 9–10

Data flow diagram of a system

A diagram showing how data moves between users, processes, data stores and external services, using labelled arrows to show what data flows where.

Understanding Data flow diagram of a system in ACARA Digital Technologies Years 9–10

What it does: The bank API is an external service. Drawing the arrow with a label shows exactly what data leaves the system, which is useful for finding risks. Arrows are the flows. They show where data travels, such as from a user to a process. A labelled flow names the actual data that moves. A vague label like 'Data' does not help you spot threats. Users are the people who send data into the system or receive data from it. The orders table is a data store.

Common mistakes: Every arrow in a data flow diagram needs a label that names the data being moved. This line should be (Login) --query--> =Accounts=. A user cannot write straight into a data store. The data must pass through a process. The line should be (Checkout) --order--> =Orders=.

Class: _____________________  ·  Name: _____________________  ·  Date: _________

Free printable worksheet with full answer key — or add this module to a class and your students practise it interactively.

This module's key terms are also in a printable crossword (Modules 782–809) and word search (Modules 743–809).

Take this worksheet further — free with Cloodit

Each concept is reinforced from every angle — learned, then applied, then tested.

Learning
Duo
What does an arrow in a data flow diagram show?
The order in which staff are paidData moving from one part of the system to another
Matches
Student --> [Database]
↓
The user is connected straight to the data store with no process and no label, so we can't see what data moves or what handles it.
Applying
Meanings
Term
data flow diagram
Meaning
A diagram showing how data moves between users, processes, data stores and external services, using labelled arrows to show what data flows where.
Practice
User -> Login Page : username, password
Testing
Gaps
: Users DB
Check Answer
Spots
1[User] --password--> (Login)
2(Login) --> =Accounts=

Cloodit turns curriculum-aligned coding content into journeys students work through one biome at a time.

The 'Armadillo' badge — Shield Bearer, one of Cloodit's 106 collectible badges
Students earn collectable badges

Over 100 of them, across seven natural biomes.

Study Buddy
Students build a real study resource

Turns their work into revision material ready for Flash Cards and Exam study.

Diamond Dash — one of Cloodit's live, competitive Sprint games
Students lock in with Sprints

Live, competitive practice for the start of the lesson or a teacher-led lesson finisher.

A Cloodit certificate of achievement, ready to personalise and print
Custom printable certificates

Honour your top performers, or encourage a student who's trying hard — ready to print in seconds.

Quick Questions

1. What does an arrow in a data flow diagram show?
A. The order in which staff are paid
B. Data moving from one part of the system to another ✓
Arrows are the flows. They show where data travels, such as from a user to a process.
2. Which is the best label for an arrow from a student to a login process?
A. Username and password ✓
B. Data
A labelled flow names the actual data that moves. A vague label like 'Data' does not help you spot threats.
3. In a school app, which part is a data store?
A. The database of student grades ✓
B. The student typing on a keyboard
A data store is where data is kept, such as a database or file. The student is a user.
4. In a data flow diagram of an online shop, what is the payment service (like a card processor) known as?
A. An external service ✓
B. A data store
A payment service sits outside the system but exchanges data with it, so it is an external service.
5. Which one is a user in a data flow diagram?
A. The orders table
B. A customer who places an order ✓
Users are the people who send data into the system or receive data from it. The orders table is a data store.

Match the Pairs

Student --> (Login Process) → A labelled arrow showing data flowing from a user into a process
(Login Process) --> [Database] → A flow of data from a process into a data store where it is saved or checked
An external service is outside your system, so data flowing to it must be shown with an arrow → (Payment Process) -- card details --> {Bank API}
Every arrow in a data flow diagram needs a label that says what data is moving → Student -- username + password --> (Login Process)
Student --> [Database] → The user is connected straight to the data store with no process and no label, so we can't see what data moves or what handles it.
(Login Process) --> {Email Service} → The arrow has no label, so it is unclear whether a password, a code or a name is being sent to the external service.

Key Term

data flow diagram
A diagram showing how data moves between users, processes, data stores and external services, using labelled arrows to show what data flows where.

Fill in the Blanks

1. USER: Student PROCESS: Login STORE: Users DB
Hint: Type the keyword for an element where data is kept.
2. PROCESS: Login EXTERNAL: Email service FLOW: Login -> Email service : code
Hint: Type the keyword for a service that sits outside your system.
3. USER: Student PROCESS: Login FLOW: Student -> Login : password
Hint: Type the arrow symbol that shows which way the data moves.
4. PROCESS: Login STORE: Users DB FLOW: Login -> Users DB : new password
Hint: Type the name of the data store declared above that receives this data.
5. USER: Student PROCESS: Login FLOW: Student -> Login : password
Hint: Type the keyword that starts a labelled arrow showing data moving.

Spot the Error

Question 1
A [User] --password--> (Login)
B (Login) --> =Accounts=
C =Accounts= --result--> (Login)
Line B — Every arrow in a data flow diagram needs a label that names the data being moved. This line should be (Login) --query--> =Accounts=.
Question 2
A [User] --order--> (Checkout)
B (Checkout) --card--> <Payment>
C [User] --order--> =Orders=
D <Payment> --OK--> (Checkout)
Line C — A user cannot write straight into a data store. The data must pass through a process. The line should be (Checkout) --order--> =Orders=.
Question 3
A [User] --email--> (Sign Up)
B (Sign Up) --details--> =Users=
C <Mailer> --email--> (Sign Up)
Line C — The arrow points the wrong way. Sign Up sends the email to the external mail service, so it should be (Sign Up) --email--> <Mailer>.
Question 4
A [User] --photo-- (Upload)
B (Upload) --file--> =Photos=
C =Photos= --image--> (Gallery)
D (Gallery) --view--> [User]
Line A — A flow must have an arrowhead to show which way the data moves. It should be [User] --photo--> (Upload).
Question 5
A (User) --location--> (Weather)
B (Weather) --place--> <Met API>
C <Met API> --data--> (Weather)
D (Weather) --report--> [User]
Line A — A user is an external entity, not a process. It should be drawn as [User], not (User).

Student with a class code? Join your class →