Download a free copy of our new report “User Experience Design for the Internet of Things,” by Claire Rowland, to learn about a framework for understanding the UX of consumer IoT products. Note: this post is an excerpt from the report.
When we think of design for connected products, we tend to focus on the most visible and tangible elements. These are the industrial design of connected devices, and the user interfaces (UIs) found in mobile and Web apps and on the devices themselves.
They are important concerns, which have a major impact on the end user’s experience of the product. But they’re only part of the picture. You could create a beautiful UI, and a stunning piece of hardware, and users could still have a poor experience of the product as a whole.
Designing for IoT is inherently more complex than Web service design. Some of this is to do with the current state of the technology. Some of this reflects our as-yet immature understanding of compelling consumer IoT value propositions. Some of this stems from the fact that there are more aspects of design to consider. Tackling them independently creates an incoherent user experience (UX).
Designing a great connected product requires a holistic approach to user experience. It spans many layers of design, not all them immediately visible. More than ever, it requires cross-discipline collaboration between design, technology, and business. Great UX may start with understanding users. But the designer’s ability to meet those users’ needs depends on the technology enablers, business models, and wider service ecosystem.
As designers and their collaborators, we need a shared understanding of the challenges. We also need a common vocabulary for discussing them so that when we use the word “design,” we’re talking about the same things.
This report introduces a framework for understanding the experience design of consumer IoT products. It sets out the different facets of design that combine to shape a connected product, and shows you how they fit together. It explains the extra complexities that surround designing for connected products. And it discusses how technology and the wider commercial context work to shape the UX of IoT products.
It’s beyond the scope of this report to delve into the design process for IoT. This is more complex than pure software design: hardware adds new considerations and is less easily modified. Value propositions and design requirements must be clearly defined before product and design decisions are baked into the hardware, when they are hard to change. But here, we will show why the nature of the challenges requires collaboration between design and engineering for both hardware and software, and the business.
Why UX for IoT is different
Connected products pose design challenges that will be new to designers accustomed to pure software services. Many of these stem from:
- The specialized nature of IoT devices
- Their ability to bridge the digital and physical worlds
- The fact that many IoT products are distributed systems of multiple devices, and
- The quirks of networking.
How tricky those challenges prove will depend on:
- The maturity of the technology you’re working with
- The context of use, and the expectations your users have of the system, and
- The complexity of your service (for example, how many devices the user has to interact with)
But for most connected products, you’ll need to consider the following factors:
Specialized devices, with different capabilities
Many of the ‘things’ in the internet of things are specialized embedded computing devices. Unlike general-purpose computers (smartphones and PCs), their hardware and software is optimized to fulfill specific functions.
Their physical forms must be designed and engineered. Their UI capabilities may extend from screens and buttons into physical controls, audio, haptics, gestures (see Fig. 1-1), tangible interactions and more. But user interactions must be designed without the benefit of the style guides and standards that Web and mobile designers can rely upon. Some may have no user input or output capabilities at all. The only way to find out what they are doing or what state they are in may be via a remote UI.
Real world context
Connected products exist in the physical world. Sensors enable us to capture data we did not have before for digital transmission, allowing us to take more informed actions in the real world. Actuators provide the capability for digital commands to produce real world effects (see Fig. 1-2). They can be remotely controlled, or automated. But unlike digital commands, real-world actions often cannot be undone.
The physical context of use creates further challenges. Devices may need to be ruggedized for outdoor use. An in-car system needs to be designed to minimize distraction while driving. A remotely controlled oven needs to minimize the risk of fire. Devices must adhere to regulatory requirements such as radio interference or waste recycling standards. And the social context of use may be particularly complex, especially in the home. Techno-centric solutions that are insensitive to the needs of the occupants will fail.
For example, an assisted living product needs to balance the need of vulnerable people for safety and support, while preserving their privacy and autonomy. Automated rules and modes in some smart home systems perform actions when certain conditions are met, like turning devices on or off when people arrive home, wake up or leave. And permissions in some smart home systems allow an “admin” user to grant or deny access to certain devices to others in the house, such as controlling TV/games console time for children or locking cupboards containing dangerous things. But both of these often fail to take into account that real life, especially in families, is often messy and unpredictable. It’s not always possible to predict which devices will be needed or not needed at different times. And in most families, permissions are often flexible and negotiated. Few people enjoy feeling like sysadmins for their own homes.
Designing for systems of devices and services
Many connected products are systems of diverse devices and services. Functionality may be distributed across multiple devices with different capabilities.
Designers need to consider how best to distribute functionality across devices. They need to design UIs and interactions across the system as a whole – not treating devices as standalone UIs – to ensure that the overall UX is coherent. This is interusability. And much of the information processing for an IoT product will often happen in the internet service. So the whole system experience is often equally or more important than any single device UX.
Furthermore, they need some understanding of how the system works. Even quite simple connected products are conceptually more complex than non-connected ones. Code can run in more places. Parts of the system will inevitably go offline from time to time. When this happens, basic knowledge of which component does what will help users understand the consequences, and figure out what action may be required.
Many connected products support automation, for example home automation rules that turn devices on and off in response to pre-set triggers. Users may have to keep track of a Web of interrelationships between devices to predict, understand and fix undesired clashes and strange behaviors.
Over the last 30 years, the prevailing trend in UI design has been direct manipulation (PDF). Users control visual representations of objects and immediately see the outcome of their actions, which can be reversed. But many IoT interactions are displaced in location (remote control) or time (automation). This breaks the link between user actions and visible, reversible consequences we have come to expect from modern software (PDF).
Complex products, like a connected home system, can have many users, multiple UIs, many devices, many rules and applications. Understanding and managing how they all interrelate can be extremely difficult.
Aside from the configuration overhead this imposes on users, this is a cognitive challenge. Most of us are good at thinking about concrete things. But we are less good at understanding systems and interrelationships, and predicting the future consequences of our actions.
Designing for networks
Another major factor is the impact of the network on UX. Designers from Web and mobile software backgrounds have the luxury of assuming that devices will be nearly always connected. And most users understand that sometimes the internet, as experienced through PCs or mobiles, can be slow, or unreliable. Emails can be slow to download and Skype calls can fail. When latency and reliability problems do occur, they may be frustrating but are not unexpected, and can be worked around.
Our experience of the physical world is that things respond to us immediately and reliably. Light switches do not ‘lose’ our instructions or take 30 seconds to produce an effect. Delays and glitches are inherent properties of physical networks and transmission protocols. But they may feel strange experienced through ‘real world’ things. It’s impossible to engineer these issues entirely out of any internet-connected system (see Fig 1-4).
In addition, the nature of connected devices is that they often connect only intermittently, in order to conserve power. Computers promise to provide us with precise, accurate and timely data about the world around us. But distributed IoT systems may not always be in sync, and different devices may therefore report different information about the state of the system.
In a distributed system, designers must often consider delays, discontinuities and uncertainty as part of normal user interactions and handle them as elegantly as possible.