Useability principle: utility

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

Useability principle: utility

Name:
Date:
Class:

Quick Questions

Shade in the A or B circle for each question.

1. A school canteen app lets students browse the menu but has no way to place an order. Which useability principle does this break?
A Utility: a feature users need is missing
B Utility: the app has too many features
2. Which statement best describes utility in an interface?
A It provides the features and information users need for their tasks
B It makes the interface look attractive with lots of colour
3. A library app for Year 11 students includes a built-in video game section that nobody asked for, and it clutters the home screen. What is the utility problem?
A An important feature is missing from the app
B Unneeded features get in the way of the user's tasks
4. Which action helps you match features to user needs when designing an interface?
A Add every feature you can think of in case someone wants it
B Interview users to find out which tasks they need to complete
5. A timetable app shows classes but not room numbers, so students keep getting lost. What is the best fix to improve utility?
A Add room numbers because users need this information
B Change the font colour of the class names

Match the Pairs

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

Left columnRight column
1utility AThe useability principle that an interface gives users the features and information they need for their tasks
2Missing feature BNeeds: view menu, order, pay | Features: menu list, basket, Pay button
3Matching features to needs: a school canteen app lets students see the menu, add items to a basket and pay CThe extra features are not needed for checking a timetable and clutter the interface. Remove them or keep only what supports the user's task.
4An unneeded feature clutters the screen and distracts users from the task they came to do DImportant features and information are missing, so users cannot reserve books or know when to return them. Add a Reserve button and due dates.
5A library app shows book titles but has no Reserve button or due date information EA needed tool or piece of information is absent, so the user cannot finish their task
6A timetable app has the timetable plus a weather widget, a joke of the day and a shop FLogin screen: username, password, Log in button, Play mini-game button

Definitions

utility

Fill in the Blanks

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

1.
needs = {"search", "borrow", "renew"} features = {"search", "borrow"} missing = needs _ features
2.
needs = {"search", "borrow", "renew"} features = {"search", "borrow", "ads"} unneeded = ________ - needs
3.
feature = "ads" needs = ["search", "borrow", "renew"] if feature ______ needs: print("Remove it")
4.
needs = {"search", "borrow", "renew"} features = {"search", "borrow", "ads"} met = needs.____________(features)
5.
# Users need to renew books btn = tk.______(root, text="Renew") btn.pack()

Spot the Error

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

Question 1
A needs = ["find", "pay"]
B features = ["find", "pay"
C print(needs == features)
Question 2
A needs = ["find"]
B features = ["find", "ads"]
C for f in features
D if f not in needs:
E print("Unneeded:", f)
Question 3
A features = ["find"]
B needs = features
C for n in needs:
D if n not in features:
E print("Missing:", n)
Question 4
A needs = ["find", "pay"]
B features = ["find", "pay"]
C if needs = features:
D print("Utility met")
E else:
F print("Utility not met")
Question 5
A def covers(needs, feats):
B for n in needs:
C if n not in feats:
D return True
E return True

Answer Key

Useability principle: utility
Section A: Quick Questions
Q1
A — Utility: a feature users need is missing
Q2
A — It provides the features and information users need for their tasks
Q3
B — Unneeded features get in the way of the user's tasks
Q4
B — Interview users to find out which tasks they need to complete
Q5
A — Add room numbers because users need this information
Section B: Match the Pairs
Q1
utility → The useability principle that an interface gives users the features and information they need for their tasks
Q2
Missing feature → A needed tool or piece of information is absent, so the user cannot finish their task
Q3
Matching features to needs: a school canteen app lets students see the menu, add items to a basket and pay → Needs: view menu, order, pay | Features: menu list, basket, Pay button
Q4
An unneeded feature clutters the screen and distracts users from the task they came to do → Login screen: username, password, Log in button, Play mini-game button
Q5
A library app shows book titles but has no Reserve button or due date information → Important features and information are missing, so users cannot reserve books or know when to return them. Add a Reserve button and due dates.
Q6
A timetable app has the timetable plus a weather widget, a joke of the day and a shop → The extra features are not needed for checking a timetable and clutter the interface. Remove them or keep only what supports the user's task.
Section C: Definitions
Q1
utility — An interface has utility when it gives users the features and information they need for their tasks, with nothing important missing and no unneeded extras getting in the way.
Section D: Fill in the Blanks
Q1
needs = {"search", "borrow", "renew"} features = {"search", "borrow"} missing = needs - features
Q2
needs = {"search", "borrow", "renew"} features = {"search", "borrow", "ads"} unneeded = features - needs
Q3
feature = "ads" needs = ["search", "borrow", "renew"] if feature not in needs: print("Remove it")
Q4
needs = {"search", "borrow", "renew"} features = {"search", "borrow", "ads"} met = needs.intersection(features)
Q5
# Users need to renew books btn = tk.Button(root, text="Renew") btn.pack()
Section E: Spot the Error
Q1
B — The list is missing its closing square bracket. It should be features = ["find", "pay"] so the program can compare the features with the user needs.
Q2
C — A for loop header must end with a colon. It should be for f in features: so the loop can check each feature for unneeded extras.
Q3
B — The needs list must hold what users actually need, including "pay". Setting needs = features means a missing feature can never be found. It should be needs = ["find", "pay"].
Q4
C — A single = assigns a value, but a condition needs == to compare. It should be if needs == features: to test whether the features match the needs.
Q5
D — When a needed feature is missing, the function must report that the interface fails the utility test. It should return False here. Returning True would say utility is met.