← VCE Software Development U3O2

Efficiency of a solution

How well a solution uses resources such as time, processing, memory, storage and user effort to do its job. An efficient solution is fast, light on memory and storage, and saves the user time.

Understanding Efficiency of a solution in VCE Software Development U3O2

What it does: Autocomplete fills in the field for the user, which reduces the effort and time needed to complete the form. Compressing a file makes it smaller, so it uses less storage space and is quicker to send, which makes the solution more efficient. Efficiency is about resource use. Effectiveness is about whether the solution achieves its purpose. Slow response time shows the solution uses too much processing time to complete the task. Efficient solutions only use the memory they need, for example by fetching just the required record. Efficiency is measured by savings in time and effort, not by appearance. Correctness and efficiency are different. A correct solution may still waste time, memory or storage.

Common mistakes: The loop should stop early only when the target is found, which saves processing time. With <> it exits on the first name that does NOT match, so the search is wrong. It should be IF name = target THEN. A running total uses very little memory because it handles each sale as it arrives. It needs a WHILE loop to repeat. IF only checks once and does not match ENDWHILE. It should be WHILE more sales exist.

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 86–109) and word search (Modules 86–119).

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 the efficiency of a solution?
How well it uses resources like time, processing, memory, storage and effort to do its jobHow well the solution does what the user asked it to do, whatever resources it uses
Matches
for each customer in customers load entire database again check customer
↓
The whole database is reloaded inside the loop for every customer. This wastes processing time and memory. It should be loaded once before the loop.
Applying
Meanings
Term
efficiency
Meaning
How well a solution uses resources such as time, processing, memory, storage and user effort to do its job. An efficient solution is fast, light on memory and storage, and saves the user time.
Practice
BEGIN
Testing
Gaps
WHILE found = FALSE i <= n
Check Answer
Spots
2FOR EACH name IN names
3 IF name <> target THEN

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

The 'Starfish' badge — Five-Point Star, 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 the efficiency of a solution?
A. How well it uses resources like time, processing, memory, storage and effort to do its job ✓
B. How well the solution does what the user asked it to do, whatever resources it uses
Efficiency is about resource use. Effectiveness is about whether the solution achieves its purpose.
2. A search feature takes 12 seconds to return results that a rival app returns in 1 second. Which efficiency measure is poor?
A. Storage use
B. Processing speed ✓
Slow response time shows the solution uses too much processing time to complete the task.
3. An app stores every photo as a huge uncompressed file, so a phone runs out of space. What is the efficiency problem?
A. Slow user effort
B. Inefficient use of storage ✓
Uncompressed files use far more storage than needed. Compressing them would be more efficient.
4. Which change makes a solution MORE efficient for users?
A. Auto-filling the customer's address so they type less ✓
B. Asking the user to retype their address on every page
Reducing repeated data entry cuts user effort and saves the user time.
5. A program loads a 5 million row table into memory just to look up one customer. Is this efficient?
A. No, it uses far more memory than the task needs ✓
B. Yes, loading everything is always the fastest approach
Efficient solutions only use the memory they need, for example by fetching just the required record.

Match the Pairs

for i in range(len(items)): for j in range(len(items)): → Nested loops that check every item against every other item can slow a program down as the data grows, which hurts processing speed.
del bigList → Frees up memory by removing a large list that is no longer needed, so the solution uses less memory.
Saving the user time and effort by remembering their details so they do not retype them each visit → <input type="text" name="email" autocomplete="email">
Using less storage by compressing a large file before saving it → zipFile(report, "report.zip")
for each customer in customers load entire database again check customer → The whole database is reloaded inside the loop for every customer. This wastes processing time and memory. It should be loaded once before the loop.
Efficiency means a solution works correctly and nothing else → This definition is wrong. Correctness is effectiveness, while efficiency is about how well resources such as time, memory, storage and user effort are used.

Key Term

efficiency
How well a solution uses resources such as time, processing, memory, storage and user effort to do its job. An efficient solution is fast, light on memory and storage, and saves the user time.

Fill in the Blanks

1. i ← 1 WHILE found = FALSE AND i <= n
Hint: Type the logical operator that keeps the search going only while both conditions are true, so it stops early and saves processing time.
2. total ← 0 FOR i ← 1 TO 100 total ← total + mark[i]
Hint: Type the arithmetic operator that adds each mark to a running total, so the program does not need to store a whole extra list in memory.
3. name : String age : Integer isMember : Boolean
Hint: Type the data type for a whole number, which uses less storage than holding the age as text.
4. INPUT price, qty total ← price * qty DISPLAY total
Hint: Type the command that shows the result to the user, so they do not have to work it out themselves and save effort.
5. FOR i ← 1 TO 50 total ← total + price[i] END FOR
Hint: Type the loop keyword that repeats a set number of times, doing automatically what would take the user a long time by hand.

Spot the Error

Question 1
A SET found TO False
B FOR EACH name IN names
C IF name <> target THEN
D EXIT LOOP
E ENDIF
F ENDFOR
Line C — The loop should stop early only when the target is found, which saves processing time. With <> it exits on the first name that does NOT match, so the search is wrong. It should be IF name = target THEN.
Question 2
A SET total TO 0
B IF more sales exist
C INPUT sale
D SET total TO total + sale
E ENDWHILE
Line B — A running total uses very little memory because it handles each sale as it arrives. It needs a WHILE loop to repeat. IF only checks once and does not match ENDWHILE. It should be WHILE more sales exist.
Question 3
A SET country TO "Australia"
B INPUT newCountry
C IF newCountry = "" THEN
D SET country TO newCountry
E ENDIF
Line C — A default value saves the user effort, but it should only be replaced when the user types something. Testing for = "" replaces it with a blank entry. It should be IF newCountry <> "" THEN.
Question 4
A SET manualTime TO 120
B SET autoTime TO 30
C SET saved TO manualTime - autoTime
D OUTPUT "Saved: " & autoTime
Line D — The time saved is the manual time minus the automatic time, which is stored in saved. Outputting autoTime shows how long the new way takes, not how much time is saved. It should output saved.
Question 5
A SET low TO 1
B SET high TO LENGTH(list)
C SET mid TO (low - high) / 2
D IF list[mid] = target THEN
E OUTPUT mid
F ENDIF
Line C — Binary search is fast because it checks the middle item of the range. The middle is the average of low and high, so the line should use + not -. It should be SET mid TO (low + high) / 2.

Student with a class code? Join your class →