UX Design for Internet of Things
Enhance the experience
This is the catch-all category. There are many UX design decisions that I can highlight here: don’t make the user worry about battery life, make sure the perceived performance is instantaneous, and reduce cognitive load rather than add to it.
If you’re trying to justify why you want to connect something to the internet, maybe you’re approaching the problem the wrong way round.
It can be a fun exercise to ask, “what if my coffee port were connected to my watch,” and then to figure out why, but maybe the right question should be “How would the perfect coffee pot function?” Then should you start asking how connecting it to the internet might get you closer to that goal.
It’s a subtle but important difference. If connecting that coffee pot to the internet doesn’t enhance the experience, then don’t do it. I love the Internet of Things but would never advocate it if it fails to make the experience better.
No one, not even the Pope (especially not the Pope?) has internet access all the time. When designing for IoT, don’t assume always-on internet connectivity.
The ideal would be to design for no internet connectivity at first, and then see how much functionality can be done locally before you need to access the internet. For example, if you’re designing an umbrella that glows blue while raining, include a barometer within it in case it can’t check the local weather over the internet.
As an aside, that linked umbrella was created by the writer of Enchanted objects, David Rose. I highly recommend checking that book out.
Even if we could guarantee that the HTTP-connected present will be the protocol of the future, and we can’t, there’s the very real possibility that the servers you are running now won’t be running forever. Companies that get bought out or go under often leave connected users in the cold. While that’s manageable when it comes to on-screen experiences, when that little computer is attached to a big device, switching vendors becomes a lot more difficult.
The life cycles of connected devices are too long to assume that users will replace them every two years like a phone. Phone manufacturers can afford to integrate everything, knowing users will keep them for about two years and then replace them with another slab of screen. Things like washing machines and stoves have something like a 5–10 year lifespan, and even that can be extended by frugal buyers. What did your phone look like ten years ago?
Rather than stick users with outdated computing hardware that’s permanently attached to their perfectly serviceable washing machine, good design would include the ability to easily upgrade the processing unit without affecting the rest of the device. Easily, as in, without tools. Modularizing the design can open possibilities of upgrade sales down the line, so win-win from a business and a consumer perspective.
This also goes for software too. Provide a clear, understandable support policy. If you need an idea of what that looks like, use other software companies like Microsoft as an example. They clearly explain how long each of their products are going to be supported, and you should, too.
I believe this is a user experience consideration because not knowing when service could just shut off creates anxiety in any knowledgeable consumer. As more and more IoT products unexpectedly end support, you want your users to know exactly how long they have before you stop support.
This includes: when they’ll stop getting over-the-air-updates, when they will have to pay for phone support (if ever), what happens if your company goes under, what kind of uptime guarantee you have for internet-connected services, and what happens when support ends.
I would suggest that when support does end, the code gets open sourced and users are explicitly given permission to hack and upgrade their own devices. If you won’t support the device, give as many tools to the users as you can so they can support themselves.
API’s the beautiful three-letter-word that is music to any developer’s ears. Make sure whatever you’re building has one, because there are use cases for the product that you have never thought about. The true power of the Internet of Things isn’t the one-to-one interactions between your device and that cloud service you manage. It’s the interactions between your device and all the other devices!
Whenever it is possible, and safe, to allow a user to connect, control, and read information from your device, make sure that can happen. Your users will thank you.
Is security a user experience decision? Ask any one of the users that have had their baby monitored hacked. “Hacked” is a loose term when you don’t secure your devices. What I’m trying to say is, design for security from outside. I don’t think anyone expects user experience designers to be able to implement the latest security measures, but understand what the basics are and advocate for the use.
After the design process, you’ll have come up with something your users are delighted to use every day. All of the unknowns that are so prevalent in today’s technologies have answers, thanks to your efforts.
They know they will be able to use it five and ten years from now, even if the company gets bought out.
They know that even if the internet as we know it today is supplanted with different protocols or technologies, they will be able to upgrade and extend their experience on their terms, or just let it work locally.
They have control of the experience, and while the fact that this thing is internet-connected certainly enhances the experience, it doesn’t control it or limit it.