Lacey_6dim_00

By Matt Lacey

This article was excerpted from the book Usability Matters.

Creating a great, intuitive, app experience requires focusing on all aspects of an apps design and implementation. Because apps can be complex and require many considerations I have identified six dimensions for you to be aware of and help ensure you do not overlook anything. The following is an extract from the first chapter of ‘Intuitive UX: The Six Dimensions of Mobile User Experience’ and introduces the six dimensions.

Creating a great, intuitive, app experience requires focusing on all aspects of an apps design and implementation. Because apps can be complex and require many considerations I have identified six dimensions for you to be aware of and help ensure you do not overlook anything. The following is an extract from the first chapter of ‘Intuitive UX: The Six Dimensions of Mobile User Experience’ and introduces the six dimensions.

There are many ways to visualize the structure of an app and I want to introduce one of them. To see this image clearly requires special glasses with three lenses. Fortunately, these glasses are symbolic and you can look at Figure 1.2 with them already applied. It shows how the six dimensions, all in capitals, are involved in the process of a person getting benefit, or value, from using an app.


Lacey_6dim_01

Figure 1.2 Visualizing the dimensions of an app’s experience


Here is a brief introduction to each of the six dimensions.


Context

The situation and circumstances surrounding the use of an app define the context. Knowledge of, and careful consideration for, context underpins a great experience for the person using the app. When done right, an app that considers context appropriately provides an experience that fits seamlessly into a person’s life, meets their needs, and works as expected. An app experience that does not fully consider context may not work as it was intended. It may lack what people want and perform in a substandard fashion on the devices that people use. Ultimately, it will struggle to motivate people to keep using it.

It can be tempting to think that all people are alike, but this is not the case and they have different have different needs, expectations, and requirements. Considering who your users are allows you to be sure you are providing the appropriate app.

The environment where the app is used can influence how a person interacts with it, and the location can provide extra hints to help optimise the personal experiences.

Similarly, knowledge of what capabilities the device your app is, or could be, run on allows an app to use all of the facilities and functionality available. This device knowledge also enables you to create an app that can integrate with phone and the other apps.

In chapters 2 through 4 I will take you through the elements that make up the circumstances of use that can be considered the context.


Input

Input to a mobile app can be about much more than just tapping a screen and filling out forms. An assortment of possible input sources is available to all apps and these could come from the device, the person using it, or a remote source.

It is important to consider how input is requested, and how to capture it in a way that it is accurate, relevant, and obtained with the least amount of friction possible.

For the person using the app it is rarely their aim to use an app just to gather input. Whether the input is provided at their choosing or necessitated by the app, input is a means, not an end in itself. If saved for later use or as a way to provide immediate reward, you should aim to make the input gathering elements of an application optimised to receive the maximum benefit of what the input provides.

If done well, much direct input can be avoided, but where necessary it can be quickly, simply, and accurately provided. If input is not considered fully it can end up being a long, slow, and error prone process, degrading the users’ experience to that of frustration and annoyance.


Output

When considering output, the first thing you probably consider is the screen. The devices in use today have screens that cover a very broad spectrum of physical dimensions. It is necessary to do more than just taking something that works on one screen and squashing or stretching it to work on another. Consider it essential that what is displayed on any supported device, is readable, usable, helpful, attractive to view, and easy to navigate.

Output is also about more than the screen display. In addition to visual output there are also audio and physical outputs to consider. Beyond that there is also a need to consider what output is sent to other systems and services.

When the output from an app is poor, it can lead to an experience that is unusable in some contexts or by some people. This is bad as there are very few cases where you want to make your app unusable. On the flip side, an app that meets the considered needs of all use cases will ensure that people receive the information and notifications they require in a simple and easy to consume manner.


Responsiveness

People rarely use any app because they want to spend time. People use apps because of the value that they will be provided. Yes, sometimes the experience might be enough on its own, but it is typically value that people want from an app. Because of this it is important to optimize that value and avoid risking frustrating the user by having them wait unnecessarily before providing the value sought. The time taken between asking the app to do something and the app doing it is called the response time. When the response time is large the app is said to be being unresponsive.

Humans perceive time subjectively. This can mean that in some circumstances, and for some people, they may feel that an app or an operation is taking longer that it is. The creators of an app may be able to say that a particular task only takes 0.7 seconds, but to the user it may feel “too long”. With this in mind it is important to be clear that it is the perceived responsiveness that matters. This same subjectivity can also be used to make a process seem to take less time than it actually does.

To create a six dimensional experience that fully considers responsiveness you need to have an understanding of how both time and responsiveness are perceived by users. Because of this there is a need to make the app perform as fast as possible, and then give the impression it is performing even faster.

If you have ever used an app and wondered why the app was so slow to start, questioned what was really happening while the busy indicator was spinning because “it does not normally take this long”, or asked yourself why it takes so long for the next level of a game to load, then you have already experienced the downside of an app that is perceived to be unresponsive. Worse still is when a user learns that an app is consistently slow and denying them their desired value, they stop using the app.

In most instances performance is not noticed when done well. If the app is fast enough, the user will not notice the wait time for the app. When performance is perceived as being truly exceptional you can create an experience that delights the user. The first time a user uploads an image and it is seemingly done straight away (because they did not realise that uploading had already been started in the background) it can be a delightful experience. Once they realize the operation completed and the speed is not the result of an error and causing the process to stop prematurely, they will wonder why all apps can’t be so fast. If a user asks how it could have been done so fast, or why it is so much faster than other apps, you can be sure you are doing something right.


Connectivity

The most common mobile device in use, and the one that started the popularity and ubiquity of mobile apps, was the portable phone. As the name suggests, this was a device originally intended for making telephone calls. Talking on a phone is a way people communicate. As social creatures, communication is important to us. But communication is not possible without connectivity. If you want to communicate with someone who is not in the same physical location, you need some other way to connect.

As technology has advanced and the number of ways to communicate increased, services and information has grown massively. The need for a means of connectivity has become even more important.

Few apps require no form of connectivity. Examples of those that might include utility tools like a calculator or flashlight plus some games. The majority of apps depend on data that changes and needs to be updated, or will be dependent upon interaction with another system or service, such as a backend server.

If you are fortunate enough to live in a part of the world where a 4G signal is readily available and Wi-Fi is ubiquitous, it can be easy to think that everyone else is in the same situation. This is not the case for a large proportion of the world and care should be given to what happens in an app when someone does not always have a fast, cheap, reliable connection.

If an app that requires server connectivity suddenly loses it, the experience of the user will be determined by how the app handles the situation. If the app loses data, stops functioning, or crashes, it will reflect poorly. If the app survives such scenarios, the user will be able to continue using the app confident that, while there may be a temporary setback, their information is safe, their progress maintained, and everything will carry on as normal once connectivity is restored. There is a lot more to consider regarding connectivity, but the implications of not adequately handling the loss or lack of connectivity are easy to appreciate.


Resources

By their nature of being portable, mobile devices have a number of constraints and restrictions. Device manufacturers must balance the size and number of components that can be fitted into the dimensions of a specific device. Similarly, the cost of the components must be balanced against the cost people are willing to pay for a device.

All this leads to a situation where your app will often end up running on devices without the space, power or capabilities you would choose. Yes, there are some people with devices containing several hundred Gigabytes of storage, more CPU and GPU cores than you can count on your fingers, and more sensors than you might believe can fit inside the space available, but these are the outliers. Even if you are in the position of knowing all your users have
high specification devices, you can improve their experience by considering how you use available resources. Doing so will also benefit anyone who does not have such plentiful resources.

The most important resource to consider is power. By virtue of being a mobile device it will not always be attached to mains power. The corollary of this is that if all available power is used before next connected to the mains then a user is left with a very expensive lump of metal, glass and plastic that does nothing. If we still had piles of paper on our desks we could use them as paper weights, but as technology has removed the need for as much paper in our lives, devices without power truly are useless.

A device that cannot do anything will normally have wider implications than just preventing a person using your app. Aside from some line-of-business scenarios, people have mobile devices with multiple functions and use them in all parts of their lives. If using your app drains the battery you do not just prevent that person from continuing to use your app, you also may be preventing them from living their lives the way they want, or from performing other, possibly more important tasks. Of course your app or game is important. It just might not be as important as say an email about a job offer, a phone call from a relative, or message from a romantic interest. Yes, I have previously missed all these and more due to devices without power.


A handy tool for remembering these dimensions

Remembering all of these dimensions can be a challenge. If there were fewer of them or they all began with the same letter it may be easier. Fortunately, I have a handy tool to help you remember them all and that tool is a hand. (See figure 1.3) Yes, it may seem strange to suggest that the way to remember six points is with something typically associated with five fingers (or phalanges to use the medical term) but this is a useful tool that has helped many remember.


Lacey_6dim_02

Figure 1.3 Using parts of a hand to represent the six dimensions


The palm represents the context dimension. The palm is core to the hand. Fingers are connected to the palm and you cannot have a hand without a palm. At best the nearest you would have without a palm would be a collection of fingers. Similarly, an understanding of context is the core to a building a comprehensive application experience. All the other dimensions depend on a good understanding of context.

The thumb represents input. As the thumb is the first digit on the hand so input is the first dimension to consider once you understand context. For many people interacting with a mobile device the thumb is also the primary method that they use to specify input into an app and so that further cements the relationship between thumb and input.

The index finger represents output. Output naturally follows after input, just as the index finger is next to the thumb. Additionally, as the thumb and index finger can be combined to do powerful things so can people achieve much more with apps when input and output are combined. You can also think about output being represented by the index finger and it is the finger commonly used to point out at something.

The middle finger represents responsiveness. As the tallest finger it stands out above the others just as responsiveness, or rather a lack of it, stands out in an app. It is also possible to make a very powerful response to someone using just your middle finger.

The ring finger represents connectivity. The ring finger is so called as that is where a wedding ring is traditionally worn. The wedding ring represents a commitment, a bond, and a connection between wearer and spouse. That is why it is helpful to remind us of connectivity.

The little finger, or “pinky”, represents resources. The final finger on a hand may be the smallest and easy to overlook but it is still important. Similarly, resources may be easy to overlook or consider not important but in the same way you do not have a complete hand without a little finger you cannot create a complete app experience without considering resources.

The six dimensions provide a framework for thinking about an app both as a whole and in its important component parts. Throughout the book I will guide you as you consider each of the different dimensions. I’ll provide both practical examples of how to create a great, intuitive, mobile app experience, as well as the background knowledge to understand why these things matter and how you can apply them broadly in the future.