UI/UX Product Designer · Focus area 3: Interactive prototypes
UX8: Interactive prototypes
Goal: choose the right fidelity for a question, build a clickable prototype of a whole journey, design every state of every screen, test the prototype with people and with automated checks, and keep the design honest.
You'll need: UX5 to UX7, Module 17 (JavaScript Basics) and Module 19 (Browser Interactions) for the HTML prototype, and the SehatSlot
practice kit (prototype/). Figma or Penpot is optional.
Where this is used: before a bank builds a new payment flow, it tests a prototype with customers. A prototype that looks and behaves like the real thing shows problems that a static picture hides: what happens after a tap, when the form is wrong, when there are no results.
How it differs: wireframes and visual design describe screens. A prototype describes behaviour, so it can be tested the way people will really use the product.
Time: reading about 2 hours · practice (the Try it tasks) about 3 hours · assignment about 4 hours.
Lessons
- 1Fidelity: how real a prototype needs to beReading 15–25 minutes, plus practice✓
- 2Building a clickable journeyReading 15–25 minutes, plus practice✓
- 3Designing every stateReading 15–25 minutes, plus practice✓
- 4Testing prototypes, with people and with toolsReading 15–25 minutes, plus practice✓
- 5Ethical design and dark patternsReading 15–25 minutes, plus practice✓
🛠️Assignment: Prototype and test SehatSlot's booking journey
- Write the questions your prototype must answer and choose its fidelity.
- Build the whole journey in the kit's
prototype/: search, choose a time, details, confirmation, with real data and stored choices. - Make a state inventory and design every state: empty search, worded errors, selected slots, loading button, success.
- Run
npm run test:prototypeuntil all 10 pass, without changing any test. - Test the journey with at least one person and note what the tests didn't show.
- Review your design for dark patterns and pre-ticked consent.
Self-check before you finish:
- [ ]
npm run test:prototypeshows 10 passed. - [ ] Every screen has its empty, error or loading state where it could need one.
- [ ] Nothing is pre-ticked, and no message pressures people.
- [ ] Your notes from the session say what tools couldn't tell you.
✅Module check
Explain in a few sentences, in your own words:
How do you build and test a prototype that shows how a journey really behaves?
Show a good answer
A good answer mentions: fidelity chosen to match the question, with coded prototypes for behaviour and accessibility; a whole journey linked with real data and choices carried forward; a state inventory covering focus, selected, disabled, loading, empty, error and success; testing with people and automated checks together, without changing tests to pass; and ethical design without dark patterns, with consent that is a real choice and personal data shown only where needed.
📚Official references
Official documentation and guidance for this module's topics, chosen on 2 November 2026. Tools, laws and standards change, so check the current version before you rely on a detail. If a link has moved, search the same site.
📝Module quiz
10 questions · 10 marks each · 100 marks in all · pass mark 70% · retry as often as you like ·
