History has shown that the majority of us tend to be a little slow to adapt our skills when designing and developing for new platforms. Instead, we frequently find ourselves trying to transfer the same rules from a predecessor, instead of creating anew. This is best illustrated in Don Norman's book, Design of Everyday Things, where he uses the example of the first automobiles and how we made them to look like horse-drawn carriages, appropriately named "horseless carriages".
The same applies to today's products. After all, it's only been in recent years that we have developed suitable design principles for mobile devices such as engaging with the user via cards, streams, and notifications.
In this article, we'll briefly introduce two concepts we should keep in mind when designing for smartwatches. I have avoided the term "smartwatch apps" as it's better to think of the smartwatch as a peripheral or extension of a personal ecosystem or personal area network rather than an isolated device.
Before introducing the concepts, let's introduce wearables and what makes them a unique platform. Wearables are miniature electronic devices that are worn by the user under, with, or on top of clothing. What makes them unique is their inherent attributes which include:
- always on
- always connected, user and location aware
- always accessible
- inherently part of personal ecosystem
- ability to augment the user's actions
The ambition of wearables is to enable users to take real-world actions by providing relevant, contextual information precisely at the point of decision making. Achieving this means interpreting data in real-time and intelligently pushing it to the most appropriate device(s) in accordance to the user's current context, that is, providing just-in-time interactions/information. But with this new opportunity come new complexities, achieving simplicity pushes the complexities onto the designer and developer.
For the user, some benefits of using wearables include:
- ability to record the world around us
- nudge us into action
- communicate information easily/seamlessly between one another
- allow us to control our environments
- reflect our well-being back to us to help us manage it better
Opportunities to the user and others include:
- better and more accurate understanding of the user and their current context (hyper-contextual targeting)
- potential to reduce noise and better integrate into the user's life
- augment reality without disrupting the user's flow
- creation of new products and services, for example, Fitbit
In essence, wearables provide an opportunity for more intimate, timely, and relevant experiences. Two principles that help achieve this are signals and microinteractions. Let's take a look at each principle.
Time sensitivity, and therefore accuracy—through ease of information digesting—becomes important with wearables. This means it's important to create timely, relevant, and glanceable information, known as signals.
The information displayed should be curated to precisely fit the immediate situation or task, with no extraneous data. Do not design a wearable experience for a function that's more effectively done on a smartphone, a tablet, or a piece of paper.
Successful designing for wearables is aimed at recognition, not reading. To make content timely and relevant you should spend the majority of your time thinking about what people want to know, in sport or elsewhere, at any given moment. The more you know about what information people need and currently don't have, the more compelling your design will be.
In Dan Saffer's book, Microinteractions: Designing with Details, he describes microinteractions as contained product moments, which revolve around a single use case—they have one main task. It's useful to use his Microinteraction Model (Trigger > Rules > Feedback > Loops) when designing for wearables, especially smartwatches. He describes each phase of this model as follows:
- Trigger: a user or system action that initiates the microinteraction
- Rules: determine the flow of the interaction
- Feedback: communicates the rules to the user
- Loops: determine how long the interaction goes on for
The limited output and input capabilities make longer interactions less comfortable. It's therefore important to make them as short as possible hence the prefix "micro". This is also why it's so important to leverage the user's context to speed up/improve efficiency and relevance by providing actionable content and possibly automating some of the tasks.
4. Building Smartwatch Experiences
To further explain design principles, I'll walk you through implementing a simple application that considers both. In doing so we'll get to explore Android Wear, Google's framework for building wearable products.
Information That Moves With You
It seemed that the majority of the industry was focused on creating platforms to host apps for your wrist. This was until Google introduced Android Wear, its answer to Wearables, an extension to the Android platform designed specifically for delivering small chunks of information and facilitating quick and minimal interactions.
Essentially what looks like an extension of Google Now, that is, displaying contextual notifications about things such as traffic, weather alerts, incoming messages, sport scores, and travel updates, delivered to the user on Cards. This works intuitively, rather than creating another isolated system.
What Can Be Developed on Android Wear?
As described in Android Design for Android Wear, the two core functions of Android Wear is Suggest and Demand. Suggest, the most exciting, is nothing more than an extended notification that is delivered to the device, either locally or remotely from the connected handheld.
What is exciting about this is that it forces a shift in thinking of how notifications are used and how we engage with the user. Just like design patterns in software development, the Android Wear design principle encourages the implementation of contextual aware experiences, that is, trying to anticipate the user's needs.
Demand is for cases when Android Wear is unable to anticipate the user's needs and allows the user to initiate a task, relying heavily on voice for user interaction. It's important and emphasized throughout the documentation that the use cases and ergonomics of Android Wear devices differ from handhelds. It needs to work within the constraints of the wearable context rather than trying to squeeze your handheld design thinking onto an Android Wear device.
Google Now has helped set a standard for what can be done with contextual notifications. The following list contain some examples:
- activity summary, such as running, biking, walking
- nearby events & attractions
- nearby offers
- relevant and important events and news, such as weather & traffic reports
- ticketing, such as boarding passes, coupons, tickets
- reminders based on your calendar and current context
- behavioral nudges, such as encouraging to stretch when the user has been inactive
- sport and stock updates
As mentioned above, Suggest encourages thinking of how to anticipate to the user's needs. To achieve this, you'll more than likely employ an intelligent software agent architecture, an autonomous service that monitors the user's context to proactively perform a task. Some examples of this include:
- public transport delay alerts and providing the ability to find an alternative route
- nudge the user into a healthier lifestyle by suggesting alternative modes of transport and/or routes to work (bike versus car)
- monitor for sales on tagged items and provide the ability to purchase when the price drops
- stock alerts with the ability to buy/sell
- proactive watching, for example, Twitter and alerting you of possible job opportunities with the ability to flag and review on a more appropriate device
What's notable about the above use cases is that each are actionable and you can envision that they can be provoked using a microinteraction, offloading any heavy lifting to the appropriate device.
5. Building for Android Wear
With Android Wear being an extension of Android means that the majority of APIs available on Android are also available on Android Wear. Of course, there are a number of APIs that aren't available on Android Wear. You can read more about these in the Creating Wearable Apps documentation.
There are also a number of extensions to the platform to better cater to wearable devices. The following sections briefly outline these additions.
The easiest way to extend your application and take advantage of Android Wear is through notifications, which are by default automatically delivered to wearables that are paired with a handheld. Because of their inherent constraints, notifications provide an ideal vehicle for engaging the user via an Android Wear device.
Notifications are delivered to a Context Stream, in which the user can quickly scan each notification and engage with those that interest them. Similar to Google Now, information is delivered on Cards to which actions can be attached to make the information actionable.
Although I have refrained from using the word "app" in this article, with Android Wear it is possible to create Activities and Services. There will be times when this makes sense, for example, when you need to monitor the user's heart rate in the background. Launching a custom Activity or Service is done with Intents with the addition of using voice.
Communicating With a Paired Handheld
Two approaches were introduced to handle communication between an Android Wear device and a paired handheld, synchronizing data items and the MessageApi API.
Data items provide storage and synchronization. The listening device will be notified of any changes. An example of this could be syncing the user's heart rate from the wearable with a paired handheld.
The MessageApi API is a way of sending, non-guaranteed, signals to the paired handheld, for example, sending volume commands to Android TV.
Android Wear provides a flexible framework, giving you the power to dictate the experience. However, it's important that you build appropriate experiences that enrich the user's life with minimal distraction rather than rich complex experiences. Think of Android Wear as lifestyle accessories rather than computing devices.
In the next article, we'll build a simple Android Wear experience to capture the essence of what we've discussed in this article.