Hardware is hard(er): designing for distributed user experiences in IoT - Claire Rowland, www.clairerowland.com
Designing connected devices and hardware-enabled services is significantly more complex than pure software. There are more devices on which code can run, connectivity and data sharing patterns to consider, and often multiple and varied touchpoints for users to interact with. Pulling this all together into a coherent experience involves strong collaboration between design and engineering, and a systems thinking approach to UX. In this talk, we’ll introduce what designers need to know about the tech, what engineers need to know about UX for IoT, and how to facilitate the whole-collaboration needed to create great products.
www.clairerowland.com
6. Why is it hard?
Software
Always evolving
Security, privacy and
interoperability challenges
Ongoing service relationship
Hardware
High upfront cost, hard to
change once made
Stringent design and testing
Limited post-purchase
relationship
7. Image: bulb.co.uk
“How frequently can the sensor
report data without running the
battery down too fast?”
“You forgot to turn the oven off”
vs
“You may be heating your home
when you’re not there”
>
Image: SSE
9. UX for IoT is
not just app UI
and industrial
design
Industrial
design/
hardware UI
Software UI
System UX:
interusability
Service
design
Propositions
and business
models
Technical
enablers
(connectivity, APIs, data,
power…)
20. Interaction architecture and composition
Images: Tado, British Gas
(Nearly) all interactions via
phone app
Interactions mirrored across phone
and devices
25. This image contains user experience decisions
Image: Marcio Granzotto on Github
26. It takes a lot of different skillsets to make a good IoT product
No one person can know everything
…but everyone needs to understand their teammates’ jobs
well enough to know when to talk to one another
27. How can you facilitate that?
• Everyone needs to know how their individual work aligns with user,
product and organisational goals
• Incentivise people to collaborate and share, not do their thing and hand
it over
• Whole team weekly meeting: What’s everyone working on? What issues
are you facing? Demos? Questions?
• Work through key use cases as a team
29. What individuals can do
• Be curious
• Be respectful, don’t pigeonhole others: no-one can know everything and
good ideas and valid suggestions can come from anywhere
• Be prepared to think up new ways to explore problems: conventional
software tools and approaches might not cut it
• Learn how to communicate what you are doing to others outside your
specialism, and make the effort to understand the way they
communicate
30. Learn to ask the technical questions that shape UX:
• What are the parts?
• For functionality which impacts the user, which
code runs where (cloud, device, app)?
• How do the different parts communicate and
connect?
• How quickly and reliably will messages be
passed around? What could go wrong there?
• How often can we get the data (frequency/
granularity)?
• Help designers think through the ‘art of the
possible’: context, constraints and trade-offs
• Explain conceptually how things work, to non
technical people
• Explain complex system effects: e.g. what
looks like a low impact change on front end
may have large impact across multiple
components on back end
• Understand that many things shape UX, and
it’s not just UI design
Engineers:Designers:
31. Want a book?
Tweet @thoughtworks_de
with
I want a book #YConf2020
First 2 win!