User-centred design

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

User-centred design

Name:
Date:
Class:

Quick Questions

Shade in the A or B circle for each question.

1. What is the main focus of user-centred design?
A Building the solution around the needs of its real users
B Building the solution around what the developer finds easiest
2. When should users be involved in user-centred design?
A Throughout development, from early planning to final testing
B Only after the solution is finished and released
3. Which action is an example of identifying user needs?
A Choosing the colour scheme the developer likes best
B Surveying and interviewing the people who will use the app
4. A tester says the menu buttons are too small to tap. What should the developer do under user-centred design?
A Ignore the feedback because the code already works
B Revise the design, such as making the buttons larger, then check again with users
5. True or false: user-centred design only needs feedback collected once at the start of a project.
A False: feedback is collected repeatedly and used to refine the design
B True: one round of feedback is enough for the whole project

Match the Pairs

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

Left columnRight column
1user-centred design Afeedback = get_feedback(prototype, testers)
2survey = ask_users("What do you need?") Bdesign = revise(design, feedback)
3Involving users in feedback: collect their comments on a prototype so the design can be improved CUsers are asked once at the start but never involved again. There is no feedback step and no revision.
4Revising the design from user feedback: change the design when users report a problem DIdentifying user needs by asking real users what they require from the solution
5design = build(developer_ideas) release(design) EDesigning a solution around the needs of its real users and involving them throughout development
6needs = ask_users() design = build(needs) release(design) FThe design is built only from the developer's own ideas. User needs were never identified, so it is not user-centred.

Definitions

user-centred design

Fill in the Blanks

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

1.
feedback = [] feedback.______("menu is confusing")
2.
___ comment in feedback: print(comment)
3.
version = 1 if "confusing" __ comment: version = version + 1
4.
need = _____("What do you need? ")
5.
rating = int(input("Rate 1-5: ")) if rating _ 3: print("Revise the design")

Spot the Error

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

Question 1
A feedback = []
B feedback.append("Too small")
C count = feedback.len()
D print(count, "comments")
Question 2
A needs = ["fast", "simple"]
B for need in needs:
C print("Users need:", needs)
Question 3
A users = ["Sam" "Priya"]
B for user in users:
C print("Survey", user)
Question 4
A ratings = [4, 2, 5, 3]
B total = sum(ratings)
C average = total / len(ratings)
D if average > 3:
E print("Revise design")
Question 5
A reply = print("Any issues? ")
B if reply != "":
C print("Thanks!")

Answer Key

User-centred design
Section A: Quick Questions
Q1
A — Building the solution around the needs of its real users
Q2
A — Throughout development, from early planning to final testing
Q3
B — Surveying and interviewing the people who will use the app
Q4
B — Revise the design, such as making the buttons larger, then check again with users
Q5
A — False: feedback is collected repeatedly and used to refine the design
Section B: Match the Pairs
Q1
user-centred design → Designing a solution around the needs of its real users and involving them throughout development
Q2
survey = ask_users("What do you need?") → Identifying user needs by asking real users what they require from the solution
Q3
Involving users in feedback: collect their comments on a prototype so the design can be improved → feedback = get_feedback(prototype, testers)
Q4
Revising the design from user feedback: change the design when users report a problem → design = revise(design, feedback)
Q5
design = build(developer_ideas) release(design) → The design is built only from the developer's own ideas. User needs were never identified, so it is not user-centred.
Q6
needs = ask_users() design = build(needs) release(design) → Users are asked once at the start but never involved again. There is no feedback step and no revision.
Section C: Definitions
Q1
user-centred design — Designing a solution around the needs of its real users, by finding out what they need and involving them throughout development, using their feedback to revise the design.
Section D: Fill in the Blanks
Q1
feedback = [] feedback.append("menu is confusing")
Q2
for comment in feedback: print(comment)
Q3
version = 1 if "confusing" in comment: version = version + 1
Q4
need = input("What do you need? ")
Q5
rating = int(input("Rate 1-5: ")) if rating < 3: print("Revise the design")
Section E: Spot the Error
Q1
C — Lists have no .len() method. Use len(feedback) to count how many pieces of user feedback were collected.
Q2
C — The loop should print each single need, so it must use the loop variable need. Printing needs shows the whole list every time.
Q3
A — The list items must be separated by a comma. It should be users = ["Sam", "Priya"] so the real users to survey are stored correctly.
Q4
D — The design should be revised when users rate it LOW. The condition should be average < 3, so poor feedback triggers a revision.
Q5
A — print() only displays text and returns None. To collect feedback from the user, use input("Any issues? ").