Wednesday, March 9, 2016

What is holistic HMI design?

Martin Riedl

Organic food and a tablet

As the Internet of Things begins to grow, so does the need to design device interfaces holistically. A holistic design helps ensure that users can interact effectively with devices even when switching between them or using different interaction modes, and allows interface creators to leverage information from a variety of sensors and “things.”

What do we mean by holistic design?

A truly holistic design requires assessing:

  • All the users of an interface.
  • All the scenarios/use cases for each of those users.
  • The devices hosting the interface and the conventions for each device.
  • Interface consistency across devices.
  • Interaction modes available in each device and the appropriate mode to use.
  • Sensors and devices whose data may be leveraged in the main UI.

Example of a holistic app

Let’s take the example of a cooking application that runs on a variety of devices: tablets, phones, and laptop/desktop computers. It’s likely to let the user find and select recipes, display the recipes, and may also provide a grocery list. But if our application is developed in a holistic manner, it also interacts with partner applications and devices in the Internet of Things (IoT).

That means our cooking application works with the user’s smart refrigerator and smart cabinet and the sensors in them that keep track of what products are in stock. Our cooking application interacts with those third-party devices and allows the user to filter recipes to see only ones that use ingredients the cook has on hand.

Or, if the user chooses not to filter on only available ingredients, the cooking application uses information from the fridge and cabinet to determine what ingredients the user does have, and provides a grocery list for the recipe consisting only of what the user needs to buy.

Our cooking application might also work with the user’s calendar to let the user schedule meals for the week. It keeps track of what the user has bought, through a combination of the smart fridge, smart cabinet, and by enabling the user to note purchases.

The cooking application uses geo-location on the user’s phone to determine when the user is at or near a store offering discounts on needed ingredients, and pops up timely reminders about shopping needs.

Ok. Admittedly we’re a while away from the majority of people having smart devices and from the kind of standards that would allow for full cooperation between applications. But we’re not that far way. So let’s see what this kind of holistic design requires.

What does a holistic design entail?

In light of the above example, let’s look again at the elements of holistic design and clarify what we mean.

Consider all the users of an interface. The person who chooses recipes and plans the meals may not be the same person who does the shopping—or even the cooking. Our application has to think about everyone who might be involved in getting from recipe to meal, across time.

Consider all the scenarios/use cases for each of those users. Like any design, you have to determine all the scenarios and use cases for each user.

Consider the devices hosting the interface and the conventions for each device. Apple device conventions are different from Android conventions which are different from those used in a laptop app.

Consider interface consistency across devices. While good design recognizes and uses the common conventions on its host devices, it’s also the case that the same application should be consistent across devices.

Consider interaction modes available in each device and the appropriate mode to use. Many devices today offer a variety of interaction modes: voice or touch on your phone or tablet; voice, touch, mouse/touchpad on your laptop. You have to accommodate user preferences and the best mode for a given use case.

Consider sensors and devices whose data may be leveraged in the main UI. As we described in the example above, our application can be far more effective if it’s designed to work with other sensors, devices, and applications.

As you can see, a holistic design for HMIs is a big task—but the result is a big win for users. It also provides new business opportunities. We’ll talk more about the benefits of holistic HMI design for both users and businesses in a future post.