← WA Computer Science ATAR Unit 2

Availability

Authorised users can reach data and systems when they need them. Attacks like DDoS and hardware failure reduce it.

Understanding Availability in WA Computer Science ATAR Unit 2

What it does: The flood of traffic uses up the server's capacity, so authorised users cannot reach the service. This is an attack on availability. The data is still reachable by users. The harm is that an unauthorised person can read it. DDoS overloads a service so it cannot respond. Phishing mainly targets confidentiality and credentials. Availability is the part of the CIA triad about access: the right people can use the data and systems at the time they need them. Uptime compared with total time is a simple way to measure availability. A system that is down often has low availability.

Common mistakes: Downtime is the share of time the system was NOT available, so subtract uptime from 100: downtime = 100 - uptime. Adding gives a nonsense value over 100. A for loop header must end with a colon. It should be: for s in servers:.

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 28–122) and word search (Modules 28–266).

Take this worksheet further — free with Cloodit

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

Learning
Duo
Which statement best describes availability?
Authorised users can reach data and systems when they need themOnly the data owner can ever view the data
Matches
Availability means keeping data secret from unauthorised users
↓
This describes confidentiality, not availability. Availability is about authorised users being able to reach data and systems when needed.
Applying
Meanings
Term
Availability
Meaning
Authorised users can reach data and systems when they need them. Attacks like DDoS and hardware failure reduce it.
Practice
totalHours ← 100
Testing
Gaps
availability = uptime / total *
Check Answer
Spots
1uptime = 99.9
2downtime = 100 + uptime

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

The 'Golden Phoenix' badge — Savannah Legend, 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. Which statement best describes availability?
A. Authorised users can reach data and systems when they need them ✓
B. Only the data owner can ever view the data
Availability is about timely access for authorised users. Keeping data private is confidentiality.
2. A school's online portal is flooded with fake traffic and students cannot log in. Which part of the CIA triad is mainly affected?
A. Availability ✓
B. Confidentiality
A DDoS attack floods a service so real users cannot reach it, which reduces availability.
3. Which event reduces availability?
A. A user picks a long, strong password
B. A server's hard drive fails and the system goes offline ✓
Hardware failure can stop authorised users reaching data. A strong password does not reduce availability.
4. A hacker secretly reads customer emails but nothing goes offline. Is availability the main property affected?
A. No, confidentiality is the main property affected ✓
B. Yes, availability is the main property affected
The data is still reachable by users. The harm is that an unauthorised person can read it.
5. Which attack is designed mainly to reduce availability?
A. A phishing email that steals a password
B. A DDoS attack on a website ✓
DDoS overloads a service so it cannot respond. Phishing mainly targets confidentiality and credentials.

Match the Pairs

Availability → Authorised users can reach data and systems when they need them
Availability = uptime / total time → The share of time a system is working and reachable by authorised users
A DDoS attack reduces availability by flooding a server with requests so real users cannot get in → requests_per_second = 500000 # server overloaded, site unavailable
Hardware failure reduces availability, so a backup server can take over and keep the service running → if main_server == 'down': use(backup_server)
Availability means keeping data secret from unauthorised users → This describes confidentiality, not availability. Availability is about authorised users being able to reach data and systems when needed.
A hardware failure does not affect availability because the data is still stored → Data that is stored but cannot be reached is still unavailable. A failed server or disk stops authorised users getting to it.

Key Term

Availability
Authorised users can reach data and systems when they need them. Attacks like DDoS and hardware failure reduce it.

Fill in the Blanks

1. uptime = 98 total = 100 availability = uptime / total * 100
Hint: Type the number that turns the fraction into a percentage
2. requests = 50000 capacity = 1000 if requests > capacity: print("Overload")
Hint: Type the comparison operator that checks whether traffic is greater than the server can handle
3. if primaryFailed: switchToBackup()
Hint: Type the keyword that runs code only when a condition is true
4. totalHours = 24 uptimeHours = 22 downtimeHours = totalHours - uptimeHours
Hint: Type the arithmetic operator that finds the time a system was unavailable
5. if serverDown or overloaded: alertAdmin()
Hint: Type the logical operator that is true when either condition is true

Spot the Error

Question 1
A uptime = 99.9
B downtime = 100 + uptime
C print(downtime)
Line B — Downtime is the share of time the system was NOT available, so subtract uptime from 100: downtime = 100 - uptime. Adding gives a nonsense value over 100.
Question 2
A servers = ['A', 'B']
B for s in servers
C print(s, 'is online')
Line B — A for loop header must end with a colon. It should be: for s in servers:
Question 3
A def is_available(up, total):
B ratio = up / total
C return ratio + 100
Line C — To turn the ratio of uptime into an availability percentage you multiply by 100, not add. It should be: return ratio * 100
Question 4
A main_down == True
B if main_down:
C print('Switch to backup')
Line A — A single = assigns a value. == compares, and main_down does not exist yet, so this causes an error. It should be: main_down = True
Question 5
A limit = 100
B if requests < limit:
C block(ip)
D else:
E allow(ip)
Line B — Rate limiting should block an IP sending MORE requests than the limit, as in a DDoS. With < normal users are blocked and the attacker gets through. It should be: if requests > limit:

Student with a class code? Join your class →