Lightbow UXGameDevelopmentTools
Lightbow UXGameDevelopmentTools
the User
Experience
of Game
Development
Tools
DAVID LIGHTBOWN
Designing
the User
Experience
of Game
Development
Tools
Designing
the User
Experience
of Game
Development
Tools
DAVID LIGHTBOWN
This book contains information obtained from authentic and highly regarded sources. Reasonable efforts
have been made to publish reliable data and information, but the author and publisher cannot assume
responsibility for the validity of all materials or the consequences of their use. The authors and publishers
have attempted to trace the copyright holders of all material reproduced in this publication and apologize to
copyright holders if permission to publish in this form has not been obtained. If any copyright material has
not been acknowledged please write and let us know so we may rectify in any future reprint.
Except as permitted under U.S. Copyright Law, no part of this book may be reprinted, reproduced, transmit-
ted, or utilized in any form by any electronic, mechanical, or other means, now known or hereafter invented,
including photocopying, microfilming, and recording, or in any information storage or retrieval system,
without written permission from the publishers.
For permission to photocopy or use material electronically from this work, please access www.copyright.
com (http://www.copyright.com/) or contact the Copyright Clearance Center, Inc. (CCC), 222 Rosewood
Drive, Danvers, MA 01923, 978-750-8400. CCC is a not-for-profit organization that provides licenses and
registration for a variety of users. For organizations that have been granted a photocopy license by the CCC,
a separate system of payment has been arranged.
Trademark Notice: Product or corporate names may be trademarks or registered trademarks, and are used
only for identification and explanation without intent to infringe.
Visit the Taylor & Francis Web site at
http://www.taylorandfrancis.com
vii
viii ◾ Contents
Chapter 4 ◾ Analysis 39
WHAT WILL WE LEARN IN THIS CHAPTER? 39
THE IMPORTANCE OF WATCHING USERS WORK 39
INTRODUCTION TO HUMAN–COMPUTER INTERACTION 43
UNDERSTANDING THE MENTAL MODEL 54
INTERVIEW STAKEHOLDERS 57
PERFORM CONTEXTUAL ANALYSES 58
CREATE TASK FLOWS 61
DISCOVER THE USERS’ MENTAL MODEL 62
ESTABLISH MEASUREMENTS 65
ADVANCED TECHNIQUES 67
WRAPPING UP 69
Contents ◾ ix
Chapter 5 ◾ Design 71
WHAT WILL WE LEARN IN THIS CHAPTER? 71
HOW THE BRAIN AND THE EYES WORK TOGETHER 72
VISUAL LANGUAGE 73
INTERACTION PATTERNS 77
HIERARCHY 80
CONSTRAINTS 83
NATURAL MAPPING 85
REPRESENTATION 87
FEEDBACK 91
FEED-FORWARD 95
GROUPING 97
CHUNKING 102
EXCISE 104
PROGRESSIVE DISCLOSURE 112
WRAPPING UP 116
CONCLUSION, 147
SUMMARY 147
CLOSING WORD 148
THANKS, 151
TRADEMARKS, 155
Praise for Designing the
User Experience of Game
Development Tools
“As a technical artist, I’ve been espousing the benefits of tools for artists and
production pipelines for more than a decade. But honestly, they’ve been
bare-bones, just-get-the-job-done kind of quality. It’s about time we attach
some professionalism to the design of our tools as well. User experience is
the preeminent design challenge of our time and David has captured and
refined these concepts to help us produce beautifully designed workflows
that are a pleasure to use. His acclaimed lectures, now demonstrated and
elaborated in this book, are brilliant and very appropriate to our industry.
My toolsets going forward are going to incorporate as many of these con-
cepts as I can squeeze into them.”
—Jason Parks
Owner, Continuity AI (former Technical Artist
for SCEA, THQ, and Volition)
—Jim Brown
Epic Games
xi
xii ◾ Praise for Designing the User Experience of Game Development Tools
“David Lightbown’s book shines a light on a dark corner of the games, but
it’s a corner on the path we take every day in game development. All devel-
opers owe it to their future selves to learn to apply the process presented in
this book to their tools.”
—Corey Johnson
Unity Technologies
“If you build games tools and are not familiar with User-Centered Design,
then you should read this book. David explains why the user experience
of the tools you make is important to your users and how it has a positive
impact on your bottom line. He provides a comprehensive introduction to
User-Centered Design with easy-to-understand explanations and plenty
of real-world examples that demonstrate the principles and best practices
you need to know to start building better tools today.”
—Tom Hoferek
Principal User Experience Designer, Autodesk
“All too often, in-house software tools are neglected children, with baffling
interfaces and steep learning curves, which translates into countless hours
of lost productivity. In this easy-to-read, comprehensive guide, David
Lightbown applies classic principles of User-Centered Design to the tool-
building process, so that developers can help users unlock the power of
their applications, and help stakeholders manage and measure their suc-
cess. A must-read, even if you’re not in the games industry.”
—AJ Kandy
Co-Founder/Director of Design, Peterson/Kandy
Foreword
David and I first met just after the Game Developers Conference in 2012.
The interface designer on my team had just given a presentation on our
experience and approach to usability for our internal development tools.
I think what sparked that first conversation was David’s initial surprise
that there was someone else, anyone else, out there in our space that really
did care about these issues. Game development, especially in the console
space that I’m most familiar with, is often very player-focused. We want to
do what makes for the best player experience. As an industry and a culture
we have a very long, fruitful history in that area. Much more rarely do we
take that same expertise and focus it inward. How do we take the lessons
of games and apply them to making games?
Over the last ten years or so, there has though been a growing real-
ization among developers, especially on larger teams, that the cost and
complexity of making games is itself inhibiting our collective ability to
develop the best experience for the player. In just the previous genera-
tion of AAA game development it was quite clear to everyone that these
secondary knock-on effects were actually not just significant, but possibly
the most significant predictor of quality. The phrase “iteration time” was
heard everywhere. We had collectively realized that in making games, like
most creative endeavors, you get it wrong the first time. And the second
time. And the third. But you learn something important in each iteration
and the more iterations you can do, the better at it you become. This is no
surprise to anyone on an individual scale. The real change was that no one
could escape this universal truth any longer. Brute force works well to a
point and that point has passed.
Many different “solutions” to that problem have appeared since then.
In particular, it’s hard not to recognize the introduction of Agile meth-
odologies in particular into the game industry as a process response to
this very problem—as much as its adherents will insist it’s not a process.
xiii
xiv ◾ Foreword
While these methods from other industries brought along with them a lot
of baggage of dubious value, they did help to crystalize one important idea
into development culture: you cannot know everything in advance. This
is not to say you cannot know anything in advance, which in my experi-
ence is clearly what some Agile adherents have chosen to believe—and is
clearly stupid. But the very idea that you cannot plan for everything in a
creative project, not just that you should not, was both compelling and
self-evident in retrospect. We had never been able to plan everything. We
just pretended we could.
Then in the last five years or so, everywhere things were happening at
about the same time, which would help mature the concept of “iteration”
into one of “usability.” People were no longer asking whether they should
iterate more but rather how to make those iterations more valuable.
Usability as a discipline and usability research outside the game industry
(as well as within the game industry, but still largely focused on the player
experience) had helped to define what we meant by iteration. How does one
improve or increase iterations not just by making long processes shorter,
but by making things better or differently altogether? Where does a user
and her expectations fit into all of this? The discipline of usability research
was growing all around us to answer these kinds of questions. In par-
ticular, the meteoric rise of webapps and mobile development (games or
otherwise) and the unprecedented success of the iPhone in particular
brought usability design into the limelight. And then came Gamification:
the much maligned, and in my view, both largely misunderstood and
completely misapplied, idea that you could take the lessons learned from
games and apply them to other things. Like making games.
It was as both David and I were preparing for GDC 2013 that I think
we found where all of this would lead us. I was preparing my presentation
“Usability Is Not Random” based on my theory that usability could be for-
malized in terms of information and information theory. We can describe
our interactions with our tools as a form of communication, which we
could measure and analyze. I could use this model to help improve and
guide my approach to developing tools with my team, in my day job as
engine director at Insomniac Games.
David, however, was driven by something even larger. That same year,
we were both part of a Google Hangout panel together. We discussed what
drove us and what was most important to us. It became clear that what
David wanted was not just to figure out how much he could improve the
usability of a specific tool or set of development tools or even for a specific
Foreword ◾ xv
Mike Acton
Engine Director
Insomniac Games
June 20, 2014
Introduction
Even though they had been trying for over an hour, the two men could
not get the machine to perform its greatest trick: print a double-sided
page. They were almost ready to give up. “We’re S.O.L.,” one of them
said, finally. Fortunately, the interaction analyst was watching, and she
got it all on videotape.
* The Xerox Palo Alto Research Center, more commonly known as Xerox PARC, would play a huge
role in driving the field of human–computer interaction forward. Michael A. Hiltzik’s Dealers of
Lightning offers a fantastic history of Xerox PARC, the people involved in its rise and fall, and all of
the companies that they would go on to influence, including Adobe, Microsoft, Pixar, and Apple.
xvii
xviii ◾ Introduction
MY STORY
License to Compute
When I was a teenager, one of my first full-time jobs was working technical
support for an Internet service provider. In the early days of the Internet,
everyone who worked in technical support could do a bit of UNIX shell
scripting and knew how to configure TCP/IP for every imaginable operat-
ing system.
All day long, we would answer calls from people who did not know as
much about computers as we did, and we found it frustrating. To blow off
steam, we would make fun of the customers when we got off the phone.
One of the more infamous stories was that of a customer who was wor-
ried that they had “deleted the Internet,” because they had accidentally
dragged the Internet Explorer icon into the trash. After getting off a par-
ticularly difficult call, I remember saying to my colleagues that people
should have to pass an exam to use a computer.
* The full version of this story can be found in Lucy Suchman’s book Human–Machine
Reconfigurations.
Introduction ◾ xix
I realize now what a foolish statement that was. The problem is not the
user. It is the user experience.
BEFORE WE BEGIN …
The concepts and techniques in this book reflect my approach to improv-
ing the user experience of game development tools, and it is by no means
the only way. Just as I have borrowed ideas on user experience design from
other sources and tailored them to fit game tools development, you should
take what works best for you and your situation.
Introduction ◾ xxiii
After spending most of his formative years in his parents’ basement try-
ing to clone 8-bit console games on an Apple IIgs, David Lightbown got a
job in the games industry. Since then, he has dedicated the majority of his
career to working on content creation tools and pipelines.
In addition to contributing to a variety of games as a technical director,
David has delivered presentations at the Game Developers Conference,
Montreal International Game Summit, and SIGGRAPH, in various cities
within Canada, the United States, and Europe.
He has also collaborated with Autodesk to create product reviews,
training manuals, tutorial videos, and masterclasses. In 2010, he received
the Autodesk Master Award for his contributions to the 3D community.
The award also included a sweet leather jacket.
David current holds the title of technical director at Ubisoft Montreal.
xxv
Chapter 1
Welcome to Designing
the User Experience of
Game Development Tools
1
2 ◾ Designing the User Experience of Game Development Tools
Finally, we will see how this process can be applied to a real-world game
development tool.
Before we learn about how to improve the user experience, it would be
reasonable to begin by describing the term user experience.
Self-actualization
Desirable
Esteem
Love/Belonging Usable
Safety
Physiological Useful
FIGURE 1.1 Maslow’s hierarchy of human needs (left). The user experience pyramid
(right).
* This was originally proposed in an article for the Design Management Journal, entitled “Converging
Perspectives.” It can be found here: http://onlinelibrary.wiley.com/doi/10.1111/j.1948-7169.1992.
tb00604.x/abstract.
† You can read more about Maslow’s hierarchy of human needs here: http://en.wikipedia.
org/w iki/Maslow’s_hierarchy_of_needs.
Welcome to Designing the User Experience of Game Development Tools ◾ 3
Useful
At the core of a good user experience is something that fulfills a need.
If a game development tool does not fulfill a need, why does it exist
in the first place? Ideally, these needs should come from the users and
the stakeholders.
To explain this further, we will use the analogy of a vehicle. As this is
a book about game development tools, we will use a Warthog from the
Halo franchise. A Warthog fulfills a Spartan’s need to get from point A to
point B in a short amount of time. It is faster—and in the case of enemy
fire, often safer—than running. If we were to design a Warthog that simply
fulfilled the need to get from point A to point B, it might resemble a frame
with wheels, a turret, and an engine (see Figure 1.2).
How do we make a tool that is considered useful? We start by identify-
ing the right people to design for and the context in which they work and
by understanding their goals. We will talk more about this in Chapters 3
and 4.
This Warthog gets us from point A to point B, but it has a major issue:
we are sitting on a metal platform with wheels. We have no protection, we
are not comfortable, and it is not easy to use: the only way to drive is to
reach our hands into the engine and connect the wires. There is no visible
way to control the turret. Surely, there must be a better way! That brings us
to the next level in the pyramid: making tools that are more usable.
Useful
Usable
Usable
Much like user experience, there are many definitions of usability. The
vast majority of these definitions include questions such as “How efficient
is it to use?”, “How easy is it to learn?”, “How well is the user protected
from making mistakes?”, and “How satisfying is it to use?” There are many
ways to measure improvements to usability, but in this book, we will focus
on two: efficiency and learnability.
To continue with our example of the Warthog, what would be the defi-
nition of making it more usable? We could add pedals and a seat that is
adjustable so the driver can sit comfortably and reach the pedals with their
feet. This would make it convenient to accelerate and decelerate, without
having to reach into the engine and connect any wires. To make it easier
to learn how to drive and shoot the turret, we could add standard controls
that any Spartan who has received basic training is familiar with: a pistol
grip and a steering wheel (see Figure 1.3).
How do we improve usability? There are a variety of techniques, based on
human factors, interaction design, cognitive psychology, and information
architecture—just to name a few—that we will learn about in Chapter 5.
What else could be done to improve our Warthog? This question brings
us to the third level of the pyramid: desirability. This is often dismissed
as simply making the interface look “cool,” but there is much more to it
than that.
Desirable
Desirability is often the last step that we consider when designing game
development tools. Typically, the perception is that desirability is not
important or does not contribute enough to the user experience to make
it worth the cost.
However, the fact is that a tool with an aesthetic and appealing design
not only contributes to user satisfaction, but it also confirms to the user
Welcome to Designing the User Experience of Game Development Tools ◾ 5
Desirable
that the designers have taken the time to create a high-quality, profes-
sional tool. This gives the user more confidence in the abilities of the tool.
Let’s return to our example of the Warthog. Features like tinted win-
dows, shining chrome, and a new paint job may seem unnecessary, but
consider this: if the windows are cracked, the labels on the controls are
peeling off, and the body is covered in rust and falling apart, how confi-
dent would you be that this Warthog will protect you in battle? You might
ask yourself, “What else is wrong with the vehicle that I can’t see? Is this
going to keep me safe on the battlefield?” (see Figure 1.4).
Usability and desirability are often intertwined. We will see this when
we learn about the design techniques of hierarchy in Chapter 5, or heuris-
tics such as aesthetic and minimalist design in Chapter 6.
Missing Levels
Now, imagine if the Warthog was missing only the “usable” level of the
pyramid. It has wheels, an engine, and an armored shell, but you have to
crouch down inside and fiddle with the wires to control the engine and
steer. Furthermore, you would be sitting on a metal plate instead of in a
seat, without a seatbelt. It might look nice, but it would not be very safe or
convenient (see the left side of Figure 1.5).
Alternatively, you could have a Warthog that is missing just the “useful”
level: it has a nice seat with a seatbelt, a steering wheel, pedals, and an
armored shell, but it has no engine or wheels. It may look great and have
all of the controls you need on the inside, but it is not going to get you from
point A to point B, which is why you wanted to use it in the first place (see
the right side of Figure 1.5).
FIGURE 1.5 User experiences that are neither usable (left) nor useful (right).
6 ◾ Designing the User Experience of Game Development Tools
The artificial intelligence Cortana from the Halo series and the virtual
assistant Siri from Apple are good examples of machines that appear to
possess these qualities.
What is the opposite of that? A frustrating person. Don Norman
echoes this in his book The Design of Everyday Things with examples on
how to make something difficult to use on purpose: “Be inconsistent,” “Be
impolite.” Everyone has had to deal with someone like this in their life at
one point or another. A frustrating person does the following:
Now, when budgeting the staff for a game development team, you also
have to consider salary, floor space, equipment, software, and many other
details. As of this writing, the typical cost per man-month on the East
Coast of North America is about $10,000. This means that if we save 20
users 20 minutes per day, after a year we can save the following:
• 100 man-months
• $100,000
writing their dialogue, creating the environments they live in, and so on.
This has worked well for the creation of our games, so why not our tools?
Stakeholders
For the people who mandate the tools, improving the user experience to
save time and money is a business decision. If we can create content for
our games more efficiently, and ramp up new team members faster, then
we can allocate resources more effectively to make a better game.
Welcome to Designing the User Experience of Game Development Tools ◾ 13
In addition, the process presented in this book can give everyone a bet-
ter vision of who is using the tools, and what is going to be built before we
build it. This helps to reduce risk, giving stakeholders the ability to make
better decisions.
Developers
For developers, there are multiple benefits. One of the most important
benefits is not so much about improving the user experience, but the tools
development process itself. In this book, we will learn about understand-
ing what the users need, applying guidelines, and getting a clearer picture
of what the tool will be before writing a single line of code. All of these
concepts and techniques help to streamline the tools development process.
Finally, tools that work well survive the test of time. If a tool is ineffi-
cient or difficult to learn, people will want to replace it at the first oppor-
tunity. A good user experience will help to ensure that the tools we have
worked so hard to create are used to make great games for years to come.
FIGURE 1.8 Finding the right balance between the needs of the users, stakeholders,
and developers.
WRAPPING UP
In this chapter, we reviewed a few common definitions of “user experi-
ence,” and we learned the value of improving the user experience. We
also learned about the parallels between user experience design and game
development, and we discussed how different groups of people can benefit
from improving the user experience, as well as what happens when the
needs of one of those groups is prioritized over another.
In the next chapter, we will learn about the User-Centered Design pro-
cess, which is at the heart of improving the user experience of game devel-
opment tools.
Chapter 2
15
16 ◾ Designing the User Experience of Game Development Tools
FIGURE 2.1 Iterative improvements to the iPod Classic scroll-wheel across sev-
eral generations.
that can be applied at the end of development. It is an iterative process.
Comparing the first few generations of the scroll-wheel on the Apple iPod
(see Figure 2.1) reminds us that even very popular products take time and
sometimes several iterations to get it right … and even then, they can
always be improved.
By applying the User-Centered Design process, we accept that we may
not get it right the first time. However, with each quick iteration, we will
analyze the tool to find problems, make improvements to the design, and
evaluate it with the users to confirm that we are going in the right direction.
FIGURE 2.2 Each phase of the User-Centered Design process revolves around
the users.
The User-Centered Design Process ◾ 17
There are many different versions of this process used in user experi-
ence design, such as the ISO 9241-210 ISO standard for human–computer
interaction.* We will use a simple and straightforward process for the pur-
poses of this book, made up of the following phases: Analysis, Design,
and Evaluation.
Analysis
This phase, which is covered in Chapter 4, is all about examining how
people use the tools. We will learn the importance of watching users work,
as opposed to relying only on focus groups, surveys, or simply asking the
users to tell us how they think that they work. We will also learn how the
brain processes actions and mental loads, which will help us find ways to
make the tools better for the users.
Through a variety of techniques, we will learn how to observe and
interpret the way in which people use the tools. We are not looking for
solutions at this time; we are only focusing on identifying problems (see
Figure 2.3).
Design
There is an old saying in the field of user experience: “Design without con-
straints is just art.” One of the most important outputs of the Analysis
phase is to provide us with those constraints, so that we can use them to
choose what to improve during the Design phase. In this phase, beginning
in Chapter 5, we will learn a number of concepts and techniques that we
can use to improve the design (see Figure 2.4).
* For more on the ISO 9241-210 standard, visit the website http://www.iso.org/iso/catalogue_detail.
htm?csnumber=52075.
18 ◾ Designing the User Experience of Game Development Tools
Evaluation
Finally, we can move on to the Evaluation phase, which is covered in
Chapter 6. Here, we will learn what a heuristic evaluation is. We will also
learn how to build a test plan, which will allow us to determine if the
changes to the design are improving the user experience. We will also
determine when it is appropriate to go straight to code or to use pre-
visualization techniques such as sketching and prototypes (see Figure 2.5).
Back to Analysis
Finally, we start over again at the Analysis phase. Remember, the goal
is quick and constant iteration. We can—and most likely will—move
back and forth around the loop. It is quite common to move between the
Analysis and Design phases a few times before going on to the Evaluation
phase. There is no wrong way so long as we are constantly iterating and
improving based on regular feedback from the users (see Figure 2.6).
FIGURE 2.7 A prototype of the first Palm Pilot, created by Jeff Hawkins. © Mark
Richards. Courtesy of the Computer History Museum.
slightly different size. Approaching a group of people having a discussion,
he took out the wood block and pretended to enter someone’s information
into an address book. The day after that, he came in with a slightly smaller,
but thicker wood block. After making plans to meet someone, he took out
the wood block and pretended to enter a new meeting in his calendar (see
Figure 2.7).
Had he lost his mind? No, quite the opposite.* Jeff was working on find-
ing the right size and form factor early on in the process, in an inexpensive
and fast way. Instead of going straight to manufacturing with a design that
was untested, he found a way to try out different options in situations sim-
ilar to those where the real device would be used. Over time, he iterated
on the wood blocks to create prototypes that were increasingly sophisti-
cated, complete with an interface printed on paper and a stylus made from
a chopstick. When he had arrived at a form factor that felt right, he was
able to use the prototypes to help people understand his vision. All of this
work contributed to the release of the first Palm Pilot, a device that would
* In fact, Jeff Hawkins knows a thing or two about the mind. In addition to being a brilliant innova-
tor, Jeff also has a deep understanding of the brain. In 2004, he wrote a book about how we think,
titled On Intelligence. Knowing how the brain works is useful information when you are designing
for people.
The User-Centered Design Process ◾ 21
outsell the competition, spawn a long list of imitators, and ultimately have
a huge impact on the world of portable electronics.
The important lesson that we can learn from this is that when resources
are not available or are too expensive, pre-visualization techniques are one
way to allow everyone to have a shared vision of what the tool will be,
and understand how it will be used in context, before you start investing
resources in development.
Letters
0 1 2 3 4 5 6 7 8 0 1 2 3 4 5 6 7 8
FIGURE 2.9 Starting far from the target zone increases the time it takes to
achieve an improved user experience.
* The book Effective UI by Anderson, McRee, Wilson, et al. uses a very similar graph to compare the
slow iteration of the waterfall process versus the fast iteration of Agile.
The User-Centered Design Process ◾ 23
0 1 2 3 4 5 6 7 8 0 1 2 3 4 5 6 7 8
FIGURE 2.10 Starting closer to the target zone means that it takes less time to
achieve an improved user experience, even if you take into account the time spent
in the User-Centered Design process.
However, if we invest in the Analysis phase of the User-Centered Design
process, we start closer. This means that hitting the target zone takes less
time (represented by the circle on the left side of Figure 2.10). Even if we
start a little bit later because we have chosen to invest time in the Analysis
phase, we will still have a better chance of hitting our target zone faster
(see the right side of Figure 2.10) because we know what we are building
and who we are building it for.
0 1 2 3 4 5 6 7 8 0 1 2 3 4 5 6 7 8
FIGURE 2.11 More frequent iterations allow developers to adapt the user experi-
ence faster, and with more confidence.
24 ◾ Designing the User Experience of Game Development Tools
or more focused improvements, and then evaluate the impact on the user
experience. Validating the tool with the users on a regular basis makes for
smaller, more concentrated adjustments (see the right side of Figure 2.11).
This helps to achieve the goal of an ideal user experience more quickly
and efficiently.
Iteration Loop
Once you have a plan, you can set deadlines for the Analysis, Design, and
Evaluation phases within the sprint. For example, if the sprint lasts two or
three weeks—a common length for many teams—you can set a deadline
to complete the Analysis phase before the first third, the Design phase
before the second third, and finally, the Evaluation phase before the end of
the sprint (see Figure 2.12).
* In their article “Adapting Usability Investigations for Agile User-Centered Design” for the Journal
of Usability Studies, authors Desiree Sy and Lynn Miller call this “Cycle 0.” You can read it here:
http://www.upassoc.org/upa_publications/jus/2007may/agile-ucd.pdf.
The User-Centered Design Process ◾ 25
A B
FIGURE 2.12 Integrating the User-Centered Design process within a single sprint.
A B C
FIGURE 2.13 Integrating the User-Centered Design process across several sprints.
WRAPPING UP
In this chapter, we learned about the User-Centered Design process and
how it can help us achieve a better user experience. We also learned how
pre-visualization can be used in certain situations to help us improve our
design and allow everyone involved to have the same vision of what we are
going to build. Finally, we discussed how the User-Centered Design pro-
cess can be integrated into Agile and how to justify the time and resources.
In the next chapter, we will learn what it means to be “User-Centered,”
which is one of the most important aspects of improving the user experi-
ence of game development tools.
Chapter 3
* The full video can be seen here: “Steve Jobs on Apple Customer Experience and Innovation,”
https://www.youtube.com/watch?v=1SIeTmORl0E.
27
28 ◾ Designing the User Experience of Game Development Tools
• Who are the people using the tools to produce final content for
the game?
• Who uses the tools all day (and even late into the night)?
• Whose job depends on how well they can use the tools?
* This comes from the Google company philosophy page, “Ten Things We Know to Be True,” http://
www.google.ca/about/company/philosophy/.
† Including myself!
What Does It Mean to Be “User-Centered”? ◾ 29
When we learn about the users, we must also share what we have
learned with everyone involved in the development of the tool. If everyone
shares the same vision of whom a tool is being developed for, they are bet-
ter prepared to work as a team to build a great user experience.
single point of failure (What if they are run over by a Warthog tomorrow?).
In addition, if there are people constantly asking them questions about
how to use the tools, they have less time to solve other big problems.
A user manual is important and should be created and maintained if
the resources are available, but we also need to do our best to create tools
where the basic functionality is easy to learn without requiring the user to
read a manual.
* Malcolm Gladwell discusses this effect, known as the inverted U-curve, in his book David &
Goliath: Underdogs, Misfits, and the Art of Battling Giants.
What Does It Mean to Be “User-Centered”? ◾ 31
More technical
More
Effectiveness
Less More
frequent frequent
Less
Variety of users
Less technical
FIGURE 3.2 Focusing on the right users: finding the right balance.
Spent Saved
FIGURE 3.3 How focusing on the right users can maximize the improvement to
the user experience, for a minimal investment.
32 ◾ Designing the User Experience of Game Development Tools
Instead, we need to find the people who are using the tools for the most
number of hours in the day and focus on delivering a focused feature set
that satisfies their needs (see the right side of Figure 3.3). This will give us
the maximum results for the minimum investment.
FIGURE 3.4 Features versus goals: comparing a Swiss army knife to scissors.
What Does It Mean to Be “User-Centered”? ◾ 33
A Faster Horse
When asked about the invention of the automobile, it is widely believed
that Henry Ford said, “If I had asked people what they wanted, they would
have said faster horses!” This quote is often used to suggest that you can-
not create innovative products if you ask the users or stakeholders what
they want.
As it turns out, Henry Ford never actually said that.* However, he did
say this: “If there is any one secret of success, it lies in the ability to get the
* No references to this quote can be found in books, in web searches, and even from the historians
at the Ford Museum: http://blogs.hbr.org/2011/08/henry-ford-never-said-t he-fast/.
34 ◾ Designing the User Experience of Game Development Tools
other person’s point of view and see things from that person’s angle as well
as from your own.”
Learning about people and their goals is not the same thing as letting
them design the features. If you understand what people need, you are in a
much better position to propose features that address those goals.
In other words, the user is the best person to tell you that they want to
go from point A to point B. Once you understand that, you can suggest a
faster horse or an automobile.
to write, that never breaks, that never needs maintenance, is the line that
you never have to write.”
that the rule is “No one goes near the bananas,” but they do not know
why. That is just the way it is.
This is why we sometimes add features or design tools in a certain way
without questioning it: “We’ve just always done it this way.” However, we
have to ask ourselves, are all of those features necessary?
* As long as the feature is not a key element related to setting up a pipeline, which could result in a
bottleneck for the rest of the content creators.
What Does It Mean to Be “User-Centered”? ◾ 37
FIGURE 3.6 While other manufacturers were constrained with the assumption
that all laptops must have a disc drive (bottom), Apple observed that very few
people used their laptop disc drives, and decided to use that space to make a thin-
ner laptop with better battery life (top).
FIGURE 3.7 The third-generation iPod (left) compared to the iRivier H300
(right).
38 ◾ Designing the User Experience of Game Development Tools
Complexity
Complexity
Number of features Number of features
Exponential Complexity
We may believe that adding features makes a product more complex in a
linear fashion. However, the fact is that each new feature increases com-
plexity exponentially. (See Figure 3.8.) This is because every feature will
be used in combination with all of the other existing features, which adds
an extra dimension to all those that came before it. This is why it is of the
utmost importance to choose the right features, and choose them carefully.
WRAPPING UP
In this chapter, we discussed the value of increasing the involvement of
users in the development process. We discussed the importance of accept-
ing that—more often than not—we are not the users, as well as the dangers
of not knowing for whom we are designing. We also learned that docu-
mentation is not the magic solution and why it’s important to stop the cul-
ture of “RTFM.” In addition, we learned how focusing on the right users
allows us to get the maximum results from a minimal investment, accept-
ing that we’re not going to make everyone happy. Finally, we learned the
difference between features and goals, the fact that more features do not
make a tool better, and why understanding the goals of the users can help
us choose the right features.
In the next chapter, we will learn important concepts and tech-
niques that we can use during the Analysis phase of the User-Centered
Design process.
Chapter 4
Analysis
Techniques
• Interviewing stakeholders
• Performing a contextual analysis
• How to create a task flow
• How to discover the mental models of the users
• Establishing how to measure improvements to the tools
39
40 ◾ Designing the User Experience of Game Development Tools
not enough to simply ask the users about how they use the tool. There are
aspects of the user’s world in the heat of production that are impossible to
understand unless you sit next to them and watch them work.
There are some situations where there are users available, but the devel-
opers do not have easy access to them. Some examples of this are if you
work for a middle-ware company, or the users are in another building or
even another country. In this case, you can use remote collaboration tools
such as WebEx, GoToMeeting, and LiveMeeting. They provide features
that make it easier to talk to users and get feedback on your tools.
If you are an independent tools developer, you can try to find users with
the right profile in online chat forums, such as the CGSociety forums or
PolyCount. Many people who participate in online communities would
jump at the opportunity to try out a new tool or to give their opinion on
how they would use it.
Uncovering Work-Arounds
Watching users work is also a great way to uncover work-arounds. After
using a tool for a long time, users forget that they do certain things auto-
matically, which could potentially result in reduced productivity. The
story of the monkeys and the banana from Chapter 3 is a perfect example
of this behavior.
When you see the user doing something that seems like a work-around,
try asking them why. Every time you ask why, you dig deeper into the
root of the problem. For example, imagine this exchange between you and
a user:
User: “So, first I’ll choose a new object from this list. Before I do that, I
have to press F5.” <user waits>
You: “OK. While we’re waiting, can you tell me why you do that?”
User: “Oh, pressing F5 refreshes the list so I see all of the latest objects.”
You: “Why do you do that?”
User: “Just in case someone added a new object since the last time I opened
the list.”
You: “Why are the new objects not added to the list automatically?”
User: “That’s a good question. I don’t know … It’s just always been that
way!”
Understanding Context
More often than not, tools are made to work with other tools, and assets
are passed around between multiple users. Because of this, it is essential to
understand the context in which the tools are used. Taking a step back and
42 ◾ Designing the User Experience of Game Development Tools
seeing the big picture can make the difference between a bad user experi-
ence and a good one.
Jeff Hawkins understood this while experimenting with his wood block.
He learned some of the different situations in which the Palm Pilot would
be used: in the context of a meeting, at a discussion around the water-
cooler, and when bumping into someone. He thought beyond just the
interface of the device. He understood that after using their Palm Pilots to
store information, people would want to return to their computers and be
able to access the contacts and appointments that they added. This realiza-
tion led to the ability to easily charge and synchronize your device with
your computer, which was crucial to the success of Palm.
By being aware of context, Apple was able to think beyond how people
listen to music, and understand how people want to get music onto their
devices. This led to the creation of iTunes, one of the biggest selling points
of the iPod and a huge source of income for Apple.
The information that we learn in the Analysis phase can be invaluable
for understanding context, which can have a huge impact on improving
the user experience.
FIGURE 4.1 The quality of the interaction between the user (left) and the com-
puter (right) is determined by the interface (middle).
44 ◾ Designing the User Experience of Game Development Tools
FIGURE 4.2 The design of a mouse can make it easier to learn, reducing the time
spent in the Action Cycle.
* The action cycle is part of the field of action research, pioneered in the 1940s by Kurt Lewin, a
professor at MIT. According to Lewin, humans constantly iterate through three phases when per-
forming actions: planning, acting, and evaluating the results. More recently, Don Norman pro-
posed a “Human Action Cycle” more geared toward human–computer interaction, which features
three very similar phases: goal forming, execution, and evaluation.
† When the shape of an object suggests how you should interact with it, this is called “Affordance,”
which you can read more about here: http://en.wikipedia.org/w iki/A ffordance.
Analysis ◾ 45
does not make it immediately obvious how you are supposed to hold it. It
also has different modes, which means that it works differently depending
on what mode the mouse is in. Another example is a novelty computer
mouse, especially those that are made to look like other objects like cars or
sports equipment. If the user is unfamiliar with what a mouse is, they will
likely spend a lot more time in the look phase trying to understand what
they are seeing. All of this wasted time could be spent in the act phase.
Novelty mice are a good example of devices that have the useful and desir-
able layer of the pyramid but are missing the usable layer.
Mental Loads
Susan Weinschenk’s book 100 Things Every Designer Needs to Know about
People presents the concept of loads, which are the three types of processes
that the brain can perform: cognitive, visual, and motor. She describes
them as follows: “There are things you’re thinking about and remember-
ing (cognitive), things you’re looking at on the screen (visual), and buttons
you are pressing, mouse movements, and typing (motor).”
She goes on to reveal that not all loads are processed equally. Visual
loads require more resources to process than motor loads. Cognitive
loads require more resources than visual loads. Therefore, the hierarchy
of loads—from most to least resources required—is cognitive, then visual,
and finally, motor (see Figure 4.4).
How does this relate to the action cycle? When you are in the look
phase, you are processing a visual load. When you are in the think phase,
46 ◾ Designing the User Experience of Game Development Tools
FIGURE 4.4 The hierarchy of mental loads, from lightest to heaviest: motor,
visual, and cognitive.
you are processing a cognitive load. Finally, when you are in the act phase,
you are processing a motor load. If a tool has a complicated user interface
(visual load), the user will spend a lot of time in the look phase. If the tool
requires that the user do a lot of mental calculation and remember things
(cognitive load), the user will spend a lot of time in the think phase. This
is made worse by the fact that cognitive and visual loads are more time
consuming to process compared to motor loads.
Ambient Light
Barrel
Crate
Fire
Point Light
Spot Light
Sword
Shield
Tree
FIGURE 4.5 Example of the interface for a tool used to place objects in a level.
and money. Imagine that those 20 users are placing objects in a level, using
a standard level editor. The steps are as follows:
• Look: The user scans the list of objects in the object library.
• Think: Based on what they see, the user determines if they have
found the object they need.
• Act: Once the desired object is found, they select it from the list and
place it in the level.
The user interface could use the search box at the top, but in this case,
the user does not know the name of the object they are looking for (see
Figure 4.5). They will know it when they see it. They know that the object
can be smashed into pieces by the hero. It is not equipment, a light, or a
particle effect. How can the look, think, and act phases be optimized so
that the user can find the object that they are looking for?*
Look
In the current interface for the object library, there are many different
types of objects. It can be difficult for the user to distinguish between
various object types at a glance. How can we reduce the time spent in the
look phase?
* In the example that follows, the design techniques of hierarchy, progressive disclosure, representa-
tion, grouping, feed-forward, constraints, and excise are being applied. We will learn more about
them in Chapter 5.
48 ◾ Designing the User Experience of Game Development Tools
PHYSICS_ACTIVE PHYSICS_ACTIVE
Barrel Barrel
Crate Crate
FRAG_SHDR_LIGHTS
Ambient Light
Point Light
Spot Light
EQUIPMENT
FIGURE 4.6 Improving the user experience to reduce time spent in the look
phase.
We could start by improving the way in which the objects are organized
so that the categories are easier to distinguish, and then use a unique color
and icon for each object type. These changes will make it easier for the
user to identify the object they are looking for.
We could also add the ability to filter the list by object type, reducing
the number of objects that the user has to scan at once. This does add an
additional click, but remember that sometimes adding clicks can actually
reduce time spent in the look phase, thereby making the user more effi-
cient overall (see Figure 4.6).
Think
The names of the object categories are taken from the data structures
underneath. However, the average user is not aware of that, and so they do
not think about the categories in the same way. For example, “Breakables”
is a much more common name for the average user of this tool, compared
to “Physics_Active.” By understanding how they would group the objects
together, we can have category names that will allow the user to find what
they are looking for more quickly (see the left side of Figure 4.7).
In addition, some objects can only be placed in certain areas of the level
(for example, only boats can be placed in water zones). The user has to
think about this beforehand; otherwise the object cannot be placed. By
showing a semi-grayed-out version of the object when it is being dragged
on top of a non-valid zone, the user does not have to spend a lot of time in
Analysis ◾ 49
BREAKABLES
Barrel
Crate
FIGURE 4.7 Improving the user experience to reduce time spent in the think
phase.
the think phase, wondering if they are placing the object in the right spot
(see the right side of Figure 4.7).
Act
By reducing the look and the think phases with the techniques mentioned
above, we can spend more time in the act phase: in other words, placing
objects in the level. However, that does not mean that we cannot also opti-
mize the act phase itself!
We can see that having the category filters below the list means a lot
of mouse movement up and down. Moving them up between the search
field and the list means less travel for the mouse (see the left side of
Figure 4.8).
We can also add keyboard shortcuts: one for putting the cursor in the
search field, and one for each of the categories to toggle them on and off
(see the right side of Figure 4.8).
All of these improvements in combination help to reduce the time spent
in the look, think, and act phases. This makes it much more efficient for
the user to find the object they are looking for and add it to the level.
CTRL F
BREAKABLES
Barrel
CTRL E
Crate
CTRL L
CTRL B
CTRL X
FIGURE 4.8 Improving the user experience to reduce time spent in the act phase.
remember how to use a tool after not having used it for a while (sometimes
called memorability), or how quickly a beginner can become an expert.*
Other than experimentation, the two most common ways that a new
user learns a game development tool are being trained by an expert user
and reading documentation. However, there are issues with both of
these approaches.
While support from expert users is common, too much can come at a
cost. Any time that an expert user spends providing training and answer-
ing questions is time that they could be doing what expert users do best:
solving complicated problems! Not to mention, the hourly wage for an
expert user can be high. Finally, they are not always available: if a new user
does not know how to do something without the help of an expert user,
they are stuck.
Documentation is always an option, but it is frequently out of date, if it
exists at all. It also goes without saying that it can be expensive to create
and maintain good documentation.
* For more on how Nielsen and others define learnability, see here: http://www.measuringusability.
com/ blog/measure-learnability.php.
Analysis ◾ 51
FIGURE 4.9 The commands exposed in the ribbon help beginners understand
what the tool can do. Used with permission from Microsoft.
52 ◾ Designing the User Experience of Game Development Tools
FIGURE 4.10 Contextual menus allow intermediate users to work more effi-
ciently. Used with permission from Microsoft.
Intermediate users already know that they can format text in Word.
They also know that by right-clicking on some text, they get a contextual
menu with easy access to the buttons in the Font section. The contex-
tual menu is not visible all the time. It is convenient for the intermediate
user, but it does not clutter up the interface (see Figure 4.10).
An expert user of Word also knows that they can format text, and they
want to do it as quickly as possible. Since they have learned the hotkeys
for bold, italic, and underline, they never use the ribbon. In fact, they have
chosen to hide it, thereby customizing their interface and allowing them
to focus on their content (see Figure 4.11).
What is important to note here is that if we removed the ribbon, the
beginner user would never see the Font section, and it would take longer
for them to understand how to format text, blocking their progress toward
becoming expert users. However, if there were no hotkeys, the experts
would be less efficient and frustrated by having to move their mouse up to
the ribbon to access the bold, italics, and underline buttons. These differ-
ent user interface elements exist to help guide the beginner to becoming
an expert.
FIGURE 4.11 Expert users can customize the interface and use hotkeys, maximiz-
ing the space used to display their content. Used with permission from Microsoft.
Analysis ◾ 53
Keep in mind that the expert user’s needs mostly apply to complex pro-
ductivity tools with deep functionality. A simple game development tool with
two buttons and a checkbox—such as an installer—is unlikely to require the
user to go past the criteria of the beginner or intermediate stage.
FIGURE 4.12 Adding a new audio track in Audacity. Audacity® software is copy-
right © 1999–2014 Audacity Team.
54 ◾ Designing the User Experience of Game Development Tools
FIGURE 4.13 Adding a new audio track in the iPad version of Garage Band.
© Apple.
list of instruments, with visual representations so you know what you are
getting. From here, you can choose “Audio Recorder.” You can then return
to the tracks view to see your new track (see Figure 4.13). While this is
easier to find because it is at the top of the interface and always visible—in
other words, it is “in the world”—it requires more steps.
FIGURE 4.14 Using the mental model of a book to accelerate the process of
learning how to use an e-reader.
might take this person a while to figure out how it works, because they have
no previous knowledge to draw on to help them understand how to use it.
Now imagine a different scenario where, before handing over the device,
you tell them, “This is just like a book.” As they examine the device, they
compare their mental model of a book to the conceptual model of the
device. They look at the words on the screen and think, “This must be like
the pages on a book.” They look at the buttons on both sides and think,
“This must be for the next page and previous page.” By referring to their
mental model, they are able to make a connection to their existing mental
model and understand what the device is—and how to use it—much more
quickly and easily.
Major differences between the user’s mental model and the tool’s con-
ceptual model is one of the key reasons why users have difficulty under-
standing how a tool works. Designing with the user’s mental model in
mind can have a big impact on improving the user experience of our game
development tools.
FIGURE 4.15 Adobe Photoshop uses the mental model of a paintbrush to make it
easier to learn the settings in the Brush panel, reducing the amount of time spent
in the think phase. Adobe product screenshot(s) reprinted with permission from
Adobe Systems Incorporated.
perfectly accurate, they are often interchangeable and may be the most
recognizable terms for the majority of users.
The brushes palette in Adobe Photoshop provides a good example of this
(see Figure 4.15). There is plenty of technical terminology in the brushes
palette. To create or modify a brush, you can set values for abstract sound-
ing concepts such as “Roundness,” “Angle Jitter,” and “Purity.” There are
categories with names like “Shape Dynamics,” “Transfer,” and “Dual
Brush.” Even something with a simple name like “Spacing” can cause the
user to ask, “The spacing of what? And, how much spacing do I want?”
A large proportion of the users many not think of brushes in those
terms. There are accustomed to brushes in fine arts. They think about
brushes visually, and how the brush will look when painting on a can-
vas. Fortunately, the bottom of the Brushes panel has a preview of what
the brush will look like when it is used to create a curved stroke, and the
upper left-hand corner of the windows shows the profile of the brush (see
the top left and bottom right of Figure 4.15). This not only allows a begin-
ner to simply adjust the numbers until they see the brushstroke they are
looking for, but it also allows them to move closer to understanding what
the numbers mean by immediately seeing the effect that each setting has
on the brushstroke.
Another example is the Tree Creator in the Unity game engine. This
tool represents the tree structure in a simple way that anyone can under-
stand: it visualizes the trunk, branches, and leaves in a tree-like view (see
Figure 4.16). It is possible that underneath, the tree is represented by a
Analysis ◾ 57
FIGURE 4.16 The Tree Creator in the Unity engine visualizes the structure of a
tree in a way that matches the user’s mental model, reducing the time spent in
the think phase.
complex data model, but the user does not need to know that. This con-
ceptual model is much closer to their mental model of the parts that make
up a tree.
INTERVIEW STAKEHOLDERS
One of the first steps to improving the user experience of a tool is to inter-
view the stakeholders. It is surprising how many people forget this funda-
mental step! Here are a few suggestions on what kinds of questions to ask
the stakeholders.
Introduction
Some users might be uncomfortable with someone showing up at their
desk and asking questions. Remember to take the time to introduce your-
self, and ask the user about themselves. Ask them how long they have been
doing their job, or ask them about their favorite game. If they have action
* For an in-depth approach to doing interviews and performing contextual analyses, you can also
read Steve Portigal’s book Interviewing Users.
Analysis ◾ 59
figures or toys on their desk, ask about them. Even if you know the user,
questions such as these help to ease into the contextual analysis.
It is also very common for people to believe that they are being judged
on their performance, or that this is part of their yearly review. If this
is the case, remind them that not only is it safe to make mistakes, but
that making mistakes might help to find and fix problems with the tool.
Emphasize that the tool is being evaluated, not them.
All of these things help to break the ice, which will result in the user
being more likely to tell you how they really feel, instead of what they
think you want to hear.
Team of Two
It is also strongly recommended that you perform the contextual analysis
with two people. This has a dual purpose: The first is that asking questions,
watching the user, and taking notes all at once is very difficult. The second
is that a contextual inquiry is a great opportunity to invite someone who
might not have the chance to watch the users work, such as a stakeholder,
or another developer. This can help to get buy-in from everyone involved.
prioritized list of the most common goals shared by the most frequent users.
If you end up with more than a dozen goals, then you are probably try-
ing to do too much at once, or you are including goals that are edge cases.
Either concentrate on a smaller part of the tool, or reevaluate who your tar-
get users are.
These goals can be used as a starting point to create task flows, mental
models, personas, scenario storyboards, and most importantly, measure-
ments. Each of these techniques is described below.
Action
% of users, frequency
Action Action Action
Adding Details
During the contextual analysis, you may have taken note of where the user
had problems or made mistakes. You can note where these issues occur in
the task flow. For each issue, also consider the following:
Card Sort
This technique is useful when we do not know how the user organizes dif-
ferent terms or concepts in their mind. For example, let us assume that we
are building a tool that contains a list of objects that we can place in a level.
Analysis ◾ 63
Once you are done, compare the results across all users to find trends and
common groupings. You can use a spreadsheet to do this, or you can use
web-based tools to facilitate the process.*
User Objects
The term user object describes the mental model of a specific type of object
that the user can manipulate. The word user in user object is important
here, since this is about how the user sees it, not how it is coded. For exam-
ple, the class definition for an entity in a level editor may define rotation
in radians with an angle-a xis Vector4. However, the user may not know
what any of those words mean, and they simply think of rotation as being
between 0 and 360 degrees, on the x-, y-, and z-a xes.
For each user object, we take note of how the user perceives them by
making a list of attributes and actions: the attributes of the object, and the
actions that you perform with the object. If the discussion about the user
objects turns to features requests, steer the conversation back to what the
user’s goals are, and how they can be translated into attributes and actions.
Once we have performed a contextual analysis with a few users, we
can start to identify the most common attributes and actions requested
by most users. This will help us to focus on the right features used by the
majority of users.
For example, if we worked with a user to create a user object for a point
light, the results might look like Figure 4.19. This user’s mental model of a
point light is that it has the attributes of color, intensity, and range. They
also consider the color as being set as HSV (hue, saturation, and value),
the intensity as a number (where 100 is equal to 100 percent intensity), and
the range is measured in meters.
% of users
FIGURE 4.20 Choosing how data is represented based upon the most common
attributes of the user objects.
If you have a large number of users, you could add up the results of the
user objects to determine the most common attributes and actions, in an
effort to build a shared mental model for point lights (see shaded bars in
Figure 4.20).
Note that the user who created the point light user object earlier pre-
ferred 100 percent intensity to be the number 100, whereas the majority
of users preferred 1.0. Remember that we are not going to make everyone
happy. Start with 1.0. If it becomes a problem to a significant number of
users, we can always add an option to switch between 1.0 and 100.
Developers who are familiar with object-oriented programming will
notice that—although they are from the user’s perspective—creating user
objects is almost like describing a class. Therefore, doing this exercise
before writing code can accelerate developer productivity, because it
provides a starting point that provides the functionality that the users
are expecting.
ESTABLISH MEASUREMENTS
One of the most important aspects of the User-Centered Design process is
measuring progress, which helps to ensure that you are going in the right
direction. The process described in Jeff Gothelf’s book Lean UX focuses on
doing small, rapid iterations and measuring Key Performance Indicators,
or KPIs. The ISO 9241-210 specification provides examples about what to
measure, and how. Taking the time to track these measurements is one of
the best ways to ensure that your efforts are improving the user experience.
In Chapter 1, we learned that there are many different ways to mea-
sure usability, and that this book focuses on efficiency and learnability.
Choosing what to measure depends on a variety of factors, such as the
goals of the users and the stakeholders, as well as the experience level of
the users.
66 ◾ Designing the User Experience of Game Development Tools
Measuring Efficiency
If the goals of the stakeholders are related to producing assets faster with
fewer people or more assets with the same number of people, efficiency
could be the right choice. During the contextual inquiry, if a large propor-
tion of the users complain that the tool is slow, or that the number of steps
required to complete specific tasks is too high, this could also point to the
decision to measure efficiency.
Furthermore, if the users are mostly experts who are accustomed to
complex tools, and they have a deadline looming on the horizon, this
could further confirm a decision to measure efficiency. This decision could
mean that the users are required to receive some training on the changes
to the interface, and they may require documentation. However, the inten-
tion would be higher efficiency overall.
To measure efficiency within the task flow, you can use a stopwatch
to time how long the user takes to perform either each task or specific
actions. Ensure that the users are working with the same assets or values,
if possible, so that the numbers are comparable. These numbers can be
averaged across multiple users to get a baseline measurement that you can
compare against each time you go through the Analysis phase. We will
talk more about this in Chapters 6 and 7.
You may also be able to measure efficiency of tasks and actions by using
metrics. However, it can be challenging to make decisions based only on
these numbers, because it may not be possible to determine if the task was
completed successfully, and because the user could be away from their
desk in the middle of an action, inflating the results. As always, a combi-
nation of metrics and watching the users work can give the best results.
Measuring Learnability
If the goals of the stakeholders are to ramp up new users faster, or to
reduce support costs (such as the salaries of people writing the documen-
tation or the time spent by expert users training users and answering their
questions), learnability may be a better measurement. Additionally, if you
notice that during the contextual inquiry the users have difficulty remem-
bering all of the various functions within a tool, or they make many mis-
takes that could potentially be avoided by understanding how the tool
works, this could confirm a decision to measure learnability.
In addition, if the content creators are less experienced, and the team is
still ramping up to full production mode, leaning more toward learnability
Analysis ◾ 67
Measuring Both
Finally, it is possible to design a tool where the majority of the features
are both easy to learn and efficient to use. This often takes much longer
to measure and design compared to simply choosing one or the other,
because efficiency and learnability can sometimes be in opposition with
each other. As a result, you may have to compromise, or choose to improve
both for only the most frequently used features in your tool.
There is a good reason why very few tools are both efficient and learn-
able: finding a balance between the two is one of the biggest challenges in
user experience design.
ADVANCED TECHNIQUES
Personas
If you perform a contextual analysis on a large number of users and it
is difficult to communicate the goals and mental models for all of those
users, you have the option of creating personas. Personas are archetypes
of people who represent the majority of the people that use the tool. Not
only does it make it easier for you to see the big picture of whom you are
building for, but it also helps to communicate who these people are.
* For more on creating personas, you can read Chapter 5 of Cooper, Reinmann, and Cronin’s book
About Face 3, or Adlin and Pruitt’s The Essential Persona Lifecycle.
68 ◾ Designing the User Experience of Game Development Tools
Goals Goals
Nullam quis Morbi metus sapien
Dapibus augue Blandit eget
Vitae blandit justo Ullamcorper tinci
Donec malesuad
Mental Models
Mental Models Pellentesque quis
Ellentesque ornare Nibh in dignissim
Patrick Tincidunt felis Rochelle Elit sapien maecena
Level Designer At ultrices aliquam Animator Fasellus imperdiet
Scenario Storyboards
To create an even deeper understanding of context, you can also choose
to create scenario storyboards. Scenario storyboards resemble the sto-
ryboards we use when planning a game cinematic (see Figure 4.22). The
WRAPPING UP
In this chapter, we learned about the Analysis phase of the User-Centered
Design process. We discussed the value of watching users work, the limi-
tations of metrics and focus groups, and the importance of thinking in
terms of the problems that we are trying to solve (not the features we want
to implement). We also learned about human–computer interaction, the
action cycle, its effects on efficiency and learnability, as well as the con-
cept of the user’s mental model. Finally, we learned a variety of techniques
to be used during the Analysis phase, such as interviewing stakehold-
ers, performing contextual analyses, creating task flows, and establish-
ing measurements.
In the next chapter, we will discuss concepts and techniques to be used
during the Design phase of the User-Centered Design process.
* For more on creating scenarios, you can also read Chapter 6 of Cooper, Reinmann, and Cronin’s
book About Face 3.
† Storyboard That (http://www.storyboardthat.com/) and Amazon Storyteller (http://studios.amazon.
com/storyteller) are two popular examples.
Chapter 5
Design
Techniques
• How hierarchy can guide the user through the interface
• Making the interface easier to understand with natural mapping
• How to use representation to help the user work with and under-
stand complex data
• How to use feedback to let the user know what the tool is doing
• Using feed-forward to help the user learn what an action will do,
before they commit to it
• How to use grouping to associate information in a way that the
users expect
• How to use chunking to make it easier for the user to process more
information at once
• How to use excise to make the user work faster (or slower, if necessary)
• Using progressive disclosure to design an interface that is simple for
beginners and powerful for experts
71
72 ◾ Designing the User Experience of Game Development Tools
FIGURE 5.2 Examples of how our brains are optimized to interpret specific
patterns.
VISUAL LANGUAGE
It turns out that if we want to understand visual language, video games
provide some of the best examples. The visual language for a game is made
of multiple elements, and two of the most important are shape and color.
At GDC 2008, Valve’s Jason Mitchell presented a talk† about the dis-
tinct visual language of Team Fortress 2. As the game is a multiplayer first-
person shooter, identifying the class of the enemy you are fighting from far
away is very important, and so each class has a unique shape, or silhou-
ette (see the top of Figure 5.3). Finding the enemy base is also extremely
important, and so each team’s base has a distinctive architectural style:
warm colors and angular shapes for the RED team versus cool colors and
orthogonal shapes for the BLU team (see the bottom of Figure 5.3). Once
you learn this language, you can see which class of enemies you are facing
and which base you are in, at a glance.
* These are all examples from Gestalt psychology, which you can read more about here: http://
en.wikipedia.org/w iki/Gestalt_psychology.
† You can see the entire presentation here: http://www.valvesoftware.com/publications/2008/
GDC2008_StylizationWithAPurpose_TF2.pdf.
74 ◾ Designing the User Experience of Game Development Tools
Familiar Icons
Some people believe that the save icon is outdated and should be replaced.
The typical save icon represents a 3.5″ diskette, which most people have not
used to save a file since the 1990s (see the left side of Figure 5.4). Recently,
FIGURE 5.4 Familiar icons are recognized and interpreted more quickly than
new designs or “ideal” representations.
Design ◾ 75
some of the best designers in the world tried to design a replacement but
were unable to reach a consensus.* Despite being out of date, the save icon
prevails for one important reason: because our brains are better at recog-
nizing a familiar shape than interpreting a new one, even if it is a more
appropriate representation.
Consider the iconography for “call” on a smartphone or “train crossing”
on a street sign (see the middle and right side of Figure 5.4, respectively).
We do not see rotary telephone receivers or steam engines very often these
days, yet their silhouettes are iconic—pardon the pun—and continue to be
used because they are the most familiar shapes for those concepts.
When choosing icons for your game development tools, strive for
familiarity over a new design. Although the shape of an icon may seem
out of date, it is more important that the user can recognize it as opposed
to having the perfect representation.
Color Consistency
Users of Microsoft Visual Studio—or any other modern IDE—are accus-
tomed to the concept of color syntax: specific keywords use the same color
consistently, making it easy to pick out variables, functions, and com-
ments. There is no denying that using color to communicate in this way
is an extremely useful tool: for example, color makes it easier to fix an
unterminated string. While we should take advantage of using color to
communicate with the user, we need to ensure that our tools use color
consistently, and that the colors match existing standards.
For example, imagine if Visual Studio had inconsistent color syntax.
In some cases, variables would be blue, and in other cases, they would be
green. This would frustrate any programmer. However, many game devel-
opment tools do not use color consistently. In one window, an object may
be purple, while in another window, it may be orange.
In Microsoft Excel, when the value of a cell is negative, it is colored
red to indicate a problem. This is because accountants want to see where
money is being lost. However, imagine if that color was green. All around
the world, the colors green, yellow, and red in software interfaces are
accepted to represent OK, caution, and danger,† so a problem represented
by the color green would seem unnatural. Unfortunately, some game
FIGURE 5.5 Our eyes are able to read text with stronger contrast more quickly
and accurately.
development tools use bright red in situations where there is no problem,
leading to confusion and concern among the users.
To design an interface with a better user experience, pick colors that are
consistent and match existing standards.*
Legible Contrast
Although our brain works hard to compensate for the limitations of our
eyes, there are some things that it simply cannot do. To ensure that the
user is able to see the visual language that we have designed, we must also
consider the ability of our eyes to see contrast.
When the shade for text and the background are too close to each
other, our eyes have difficulty making out the shapes (see the right side of
Figure 5.5). Fortunately, there are standards for contrast that we can fol-
low and tools we can use to ensure maximum legibility.†
However, this should not lead us to conclude that light interfaces are bet-
ter. To do this would be to forget the importance of watching users work.
We need to understand context in which the dark interface was developed
in the first place: Combustion is a tool for film compositing, typically used
in a dark editing room with no windows. The users found that a lighter
interface blinded them, and that a darker interface was more comfortable,
given the context: working in dark editing room with no windows.
The point is that light and dark interfaces each have their place, and the
best choice depends on the context of the environment of the users. When
in doubt, give the users a choice of one or the other.
INTERACTION PATTERNS
One of the first professions to understand the significance of humans
interacting with patterns was architecture.* Through our life experience,
we have learned that a series of stacked cubes is a flight of stairs that can be
climbed, and a rectangle with a handle is a door that can be opened. Just
like a visual language, when we see these shapes, our brain recognizes the
pattern and we know what to do.
The same goes for user interfaces. For example, through experience, we
have learned the difference between radio buttons and checkboxes: one
lets the user choose only one option at a time, while the other lets the user
choose more than one option at once (see Figure 5.6). When we see them,
we know how they are supposed to work instantly.
It may be tempting to create new and unique user interface elements or
behaviors for existing controls. This might be because we feel that we know a
better way for the user to manipulate the data, or it looks like an interesting
challenge. We must do our best to resist this temptation. Not only could it
result in decreased learnability and efficiency, but it will also take more time
to create and maintain the code for a control that does not already exist.
* The book A Pattern Language by Alexander, Ishikawa, Silverstein, et al. is generally regarded as
one of the best books on the patterns of architecture and urban design.
78 ◾ Designing the User Experience of Game Development Tools
FIGURE 5.7 Changing the current view: a non-standard pattern (left) compared
to a standard pattern (right).
For example, if your tool requires a control to switch between different
views, it might be appealing to develop a dial that the user can turn to
set the current view. While it is true that using a dial to switch between
views is more common for physical devices, a more standardized pat-
tern for a desktop software-based content creation tool would be tabs (see
Figure 5.7). They are common in software user interfaces, and most users
are familiar with them.*
* The guidelines for Microsoft Windows and Apple OSX can be found below. To the best of my
knowledge, the design guidelines for Adobe products are not publicly available.
http://msdn.microsoft.com/library/w indows/desktop/d n688964.aspx
https://developer.apple.com/l ibrary/m ac/d ocumentation/U serExperience/C onceptual/
AppleHIGuidelines/Intro/Intro.html
† In some ways, Apple’s keynote presentations—watched by millions of people all over the world—
are a training session on how to use their products. This can have a huge impact on the perception
of how easy to learn their products are!
‡ See the guidelines on radio buttons here: http://msdn.microsoft.com/en-us/library/w indows/
desktop/d n742436%28v=vs.85%29.aspx.
80 ◾ Designing the User Experience of Game Development Tools
1 1 3
2 2 1
3 3 2
4 4 3
5 5 4
5
6 6 6
7 7 7
8 8
FIGURE 5.8 An example of how guidelines help to determine when to use radio
buttons versus a drop-down menu.
HIERARCHY
In the world of graphic design, hierarchy can be used to draw the user’s
attention to a specific part of the interface. This can be useful if you must
show a lot of information in your interface, but you want the user to focus
on a specific part that will help them to accomplish their goals.
Learnability
We can use hierarchy to attract the user’s eye to specific parts of the inter-
face, making it easier for beginners to find the basic functions they are
looking for when seeing the tool for the first time.
Design ◾ 81
FIGURE 5.9 Example of hierarchy, from left to right: position, thickness, size,
and contrast.
Understanding Hierarchy
Like a visual language, hierarchy uses shape and color to influence where
the user looks. Hierarchy is defined by four properties: position, thickness,
size, and contrast (see Figure 5.9, from left to right).
Position
Objects that are placed close to each other are considered grouped. This
also means that objects with a lot of white space around them will stand
out, attracting the user’s attention first relative to the other objects.
Thickness
Thicker objects are often seen as having more importance and will typi-
cally be noticed before thinner objects. A good example of this is bold text
versus regular text.
Size
A single object that is a different size compared to the other objects around
it is likely to be noticed first. The fine print in an advertisement is a good
example of this. The advertisers want you to notice the text in the ad first,
not the fine print!
Contrast
We tend to notice objects that have more contrast first and then other
objects with less contrast after. In fact, newborn babies see extreme con-
trast before they can see subtle contrast, which is why many baby toys have
highly contrasted shapes and colors.
FIGURE 5.10 The Google Weather card uses hierarchy to help the user focus on
the most important information first. Google and the Google logo are registered
trademarks of Google Inc., used with permission.
FIGURE 5.11 The Gmail inbox uses hierarchy to make unread messages stand
out. Google and the Google logo are registered trademarks of Google Inc., used
with permission.
Design ◾ 83
CONSTRAINTS
Constraints impose limits on what the user can do. Their purpose is to
protect the user from making mistakes, allowing them to focus on their
work without having to worry about the limitations.
Learnability
Limiting the user’s options also means that they have less to learn. The
constraints make it clear what can and cannot be done.
Understanding Constraints
When we are deeply involved in the creation of a tool, we sometimes forget
that not all users are aware of the system’s technical limitations. Users will
try things that we never thought possible.
When users make mistakes, not only does it affect their efficiency, but
it can also make them feel frustrated and hesitant to explore the rest of the
tool. Furthermore, constraints can protect bad assets from being shared
with the rest of the production team—which affects everyone’s productiv-
ity. Good constraints make the users more confident about using the tool,
so they can focus on creating content.
FIGURE 5.12 The USB cable and Lightning cable demonstrate different types of
constraints.
There are other examples like this, such as jumper cables or component
cables: the color code might seem like it protects the user, but mistakes are
still possible.
One of the best examples of a cable that truly protects the user from
making a mistake is the Apple Lightning cable (see the right side of
Figure 5.12). Unlike the USB cable design, there is no wrong way to plug
it in. You plug it in whichever way you want. Even better, the edges are
rounded, helping to guide the plug into the charging port. Constraints that
protect the user without having to think make for a better user experience.
+ +
0 –7 – 0 –
12 + 10 +
10 – –
+ +
5 5 – 5 –
FIGURE 5.13 Sliders have clear constraints (left), as opposed to numeric input
boxes with minimum and maximum values (right).
FIGURE 5.14 The Inspector in the Unity Engine uses constraints to ensure that
a script can only be added where it is allowed.
NATURAL MAPPING
An interface with good natural mapping means that the placement of the
controls matches the actions that they perform. For example, buttons to
move objects left and right are placed to the left and right of each other,
instead of top and bottom.
* You can find guidelines for drag and drop in OSX here: https://developer.apple.com/library/
mac/d ocumentation/u serexperience/c onceptual/a pplehiguidelines/TechnologyGuidelines/
TechnologyGuidelines.html#//apple_ref/doc/uid/TP30000355-SW9.
86 ◾ Designing the User Experience of Game Development Tools
Learnability
Natural mapping can also improve learnability. If controls are laid out in a
way that matches the action that they perform, as well as the user’s mental
model, the user will understand how the controls work much faster.*
W W
A S D A S D
FIGURE 5.15 The standard WASD key configuration for first-person shooters.
* Furthermore, when it comes to memorability—the ability to remember how to use the tool after
not having used it for a while—users tend to remember the general location of a control first (left
side, right side, or middle of the toolbar), and then the label/icon associated with that control.
Design ◾ 87
Moving forward with the “a” key does not feel natural, because it is to
the left of the other keys. This would be an example of bad natural mapping.
REPRESENTATION
Representation is a technique that can be used to help users make quicker
decisions without increasing time spent in the think phase of the action
cycle (such as doing calculations in their heads). It is often most useful
when the user interface does not match the user’s mental model.
Learnability
If the concepts in a tool are confusing for the user, they will have difficulty
learning how to use it. By using representation to match the user’s mental
model, the interface more closely resembles how the users think, making
it easier to learn.
Understanding Representation
The Numbers Game
To understand how we can use representation, we will play a game. You
can also play this with a friend to explain the concept of representation.
88 ◾ Designing the User Experience of Game Development Tools
FIGURE 5.16 Examples of natural mapping across various editors of the Autodesk Maya interface. Autodesk screen shots reprinted
with the permission of Autodesk, Inc.
Design ◾ 89
1 2 3 4 5 6 7 8 9
A B A A B A B
8 + 2 + 5 = 15
1. Player A picks 8
2. Player B picks 6
3. Player A picks 4
4. Player B picks 3
5. Player A picks 2
6. Player B picks 9
7. Player A picks 5
8. The game is over: Player B picked 8, 4, 2, and 5. They can make 15 by
adding up the numbers 8, 2, and 5.
Does that sounds a little bit complicated? Now, imagine playing the
game without writing anything down, and calculating the numbers in
your head! Add to that the fact that you also have to remember if your
opponent already picked a specific number.
Tic-Tac-Toe
Let’s forget about the numbers game and play a completely different game:
tic-tac-toe. By comparison, this game is very simple: you and your oppo-
nent take turns placing X’s and O’s on a three-by-three grid, and the first
player to get three X’s or O’s in a horizontal, vertical, or diagonal line wins
(see Figure 5.18). This is a game that anyone can learn in seconds and does
not require doing any calculations in your head.
90 ◾ Designing the User Experience of Game Development Tools
Magic Square
Here is where it gets interesting: what if I told you that the two games we
just saw—the numbers game and tic-tac-toe—are actually the same game?
A magic square is a three-by-three grid, with each space containing a
different number from one to nine. If you add up the numbers diagonally,
vertically, and horizontally, you always end up with 15 (see Figure 5.19).
Now, think back to the numbers game, and how complicated it is:
remembering your own numbers, doing math in your head, and even hav-
ing to remember what numbers your opponent picked. Now, if you simply
play tic-tac-toe with a magic square, you can pick three numbers that add
up to exactly 15 in a matter of seconds, with little effort.
That is the power of representation: presenting the user interface in
such a way that it simplifies a complex concept, allowing the user to make
decisions more quickly and easily.
8 1 6
3 5 7
15 15 15
4 9 2
FEEDBACK
Feedback is all about how the tool communicates with the user. Examples
of feedback include what the tool is doing now, what just happened, and
how much time is left in a particular process.
* If the user needs hundreds of cells in a table, maybe Microsoft Word is not the right tool, and they
should be using a tool that does one thing (spreadsheets) really well: Microsoft Excel.
92 ◾ Designing the User Experience of Game Development Tools
Learnability
In-context feedback through carefully worded messages can help the user
learn how the tool works more quickly and make them more confident in
their understanding of the tool.
Understanding Feedback
When two humans engage in conversation, there is an exchange of infor-
mation. One person speaks, and the other listens. When one person is
done speaking, the other person replies. We are accustomed to this from
years of social interaction.
For example, a back-and-forth conversation might go something like
this:
Mario: Hello, Luigi. It’s-a me, Mario! How are you today?
Luigi: I am doing well. How are you?
Mario: I am doing very well, thank you for asking!
Mario: Hello, Luigi. It’s-a me, Mario! How are you today?
Luigi: I am doing well. How are you?
Mario: … (stares at Luigi)
Luigi: Mario?
Mario: … (continues staring at Luigi)
Luigi: Mario, hello?
Mario: … (blinks once)
Luigi: … oookay … (walks away)
That would make for a very awkward conversation. As humans, we are not
accustomed to interactions like this. We expect an almost instantaneous
confirmation of our presence in our social interactions. We cannot fault
Luigi for walking away.
Design ◾ 93
This interaction is less awkward. Luigi knows that Mario is still participat-
ing in the conversation but that he is not ready to respond quite yet. Luigi
is unlikely to walk away.
• At 0.1 second, the users “feel that the system is reacting instanta-
neously” and no feedback is necessary.
• 1 second “is about the limit for the user’s flow of thought to stay
uninterrupted.” The user will notice the delay and will “lose the feel-
ing of operating directly on the data,” which can make the tool feel
sluggish. In this case, a wait cursor is recommended.
• 10 seconds is “the limit for keeping the user’s attention.” For anything
longer, the user will forget what they were doing, which could affect
their efficiency. In this case, users should receive feedback to confirm
that the computer is working, and an estimate of how much longer
they need to wait. Using a progress bar is ideal in this situation.
Feedback Overload
One of the dangers of feedback is that it can quickly turn into more noise
than signal. If you give the user too much feedback, they are likely to start
ignoring all of it and miss something important. If you are aware of the
user’s goals and mental models, you can use that knowledge to filter the
feedback you provide. If you are not, the feedback is likely to be overloaded
with information that may be important for the conceptual model, but not
to the user.
* Note the term “percent-done progress indicators”—at the time, progress bars did not exist as we
know them now. You can find the paper here: http://dl.acm.org/citation.cfm?id=317459.
Design ◾ 95
FIGURE 5.21 The progress bar in Windows gives feedback on the progress of a
large file being pasted. Used with permission from Microsoft.
Wait Cursor
Showing a wait cursor next to the mouse has the advantage of being eas-
ier for the user to notice, as their eyes are likely already on the mouse.
However, since most wait cursors do not show progress, it is best to use
this option when the wait time is relatively short.
FEED-FORWARD
Feed-forward is essentially the opposite of feedback: instead of learning
the results of their actions after the fact, the user sees what will happen
before they commit to an action. This gives them the option of changing
their mind, which is especially useful if the action is destructive or com-
plicated to reverse.
* Some research even suggests that animated patterns overlaid on top of the progress bar can
make it feel as though it is moving faster! http://chrisharrison.net/
projects/
progressbars2/
ProgressBarsHarrison.pdf.
† Microsoft’s guidelines for progress bars can be seen here: http://msdn.microsoft.com/en-us/
library/w indows/desktop/d n742475%28v=vs.85%29.aspx.
96 ◾ Designing the User Experience of Game Development Tools
Learnability
Feed-forward is an extremely effective learning technique. Previewing what
will happen allows the user to learn what a feature does instantly and with
less risk, which also invites them to explore the other features of the tool.
Understanding Feed-Forward
While the concept of feedback in user interfaces is well known, feed-
forward is less so.* Research suggests that when people make a decision,
their brain “previews” the outcome of their choices to assist in choosing
the correct action.† In a sense, feed-forward helps us preview decisions
in the same way that our brain does.
* One of the first uses of the term feed-forward in the context of user experience design comes from
Tom Djajadiningrat, in his paper “But How, Donald, Tell Us How.” If you have access to the ACM
Digital Library, you can read the article here: http://dl.acm.org/citation.cfm?id=778752.
† You can read more here: http://en.wikipedia.org/w iki/Feedforward,_Behavioral_and_Cognitive_
Science.
Design ◾ 97
GROUPING
Grouping is the technique of associating similar terms, concepts, or com-
mands together in a way that matches the user’s mental model.
Learnability
Grouping can make a tool easier to learn because the interface is orga-
nized in a logical way that matches how the user thinks, allowing them to
adapt to it faster.
98 ◾ Designing the User Experience of Game Development Tools
FIGURE 5.24 Feed-forward allows the user to preview how a material will change
the look of an object in the Unity Engine before committing to the change.
100 ◾ Designing the User Experience of Game Development Tools
FIGURE 5.25 Feed-forward gives the user information about the contents of a
folder in Gmail without requiring them to click on it. Google and the Google logo
are registered trademarks of Google Inc., used with permission.
Understanding Grouping
Grouping is one of the many techniques that make up the discipline of
information architecture. The most important factor in determining how
terms, concepts, and commands can be grouped is by understanding the
user’s mental model.
For example, by using separators, menu items can be organized to
reflect how the user associates them. This allows the user to skip the menu
items that are not applicable to their immediate goals and find what they
are looking for faster.
Some people may look at the concept of grouping menu items and say,
“Well, that’s just associating similar commands together!” That may be
true, but how they are associated is not always obvious. We may have an
opinion on how the menus should be organized, but we could be influ-
enced by the way the data is organized in the code, and not how the user
thinks about it. To help us determine how to group information from the
user’s perspective, we can do a card sort.
Afterward, you can transform the groups into top-level menus and the
cards into individual menu items.
This process can be applied to window menus, contextual menus, tool-
bars, and so on.
FIGURE 5.26 The Mesh menu in Autodesk Maya demonstrates the technique of
grouping. Autodesk screen shots reprinted with the permission of Autodesk, Inc.
102 ◾ Designing the User Experience of Game Development Tools
CHUNKING
You may have heard the statistic that people are able to remember seven
items at once, plus or minus two. This number comes from research by
George A. Miller in 1956 and is often referred to as “Miller’s Law.”*
* You can read more about Miller’s Law here: http://en.wikipedia.org/w iki/Miller%27s_law.
Design ◾ 103
However, new research suggests that this number is closer to four, plus
or minus two. The reason that Miller’s numbers were higher is that his
research subjects were able to clump similar items together, making them
easier to remember. This behavior is known as “chunking.”
Learnability
If the information is organized in such a way that matches the user’s men-
tal model, learnability can be improved.
Understanding Chunking
To feel the difference that chunking can make, we will play a memory
game. Study the image of letters and numbers in Figure 5.28 for ten sec-
onds, and try to remember as many as you can.
After the ten seconds are up, close the book and get a piece of paper and
a pen. First, write down how many letters and numbers you think that
there were. Next, try to write down as many of the letters and numbers
you can remember. When you are a ready, turn to the next page.
In Figure 5.28, you can see the exact same letters and numbers as in
Figure 5.29. Imagine that you were asked to study those same letters and
numbers for ten seconds, but in this configuration. How many do you
think you would be able to recall? Would you get them all right?
The fact that it is easier for you to remember those same letters and
numbers this way is an example of chunking: You have a predefined struc-
ture in your brain for the shortened names of these video game consoles. It
is easier to remember and decipher the letters and numbers when you can
group them together in a logical way that makes sense to you.
EXCISE
Excise refers to navigating around the interface, from switching tabs to
changing windows. Anything that involves moving the cursor across the
screen to reach an element of the user interface is excise.
one second can add up to a huge boost in efficiency over time if it helps a
large number of users.
Learnability
Excise does not have a significant impact on learnability.
Understanding Excise
One of the most consistently confirmed studies in human–computer
interaction was completed in 1954 by Paul Fitts, who proposed that the
time it takes a user to touch a target with a cursor is directly related to
the distance from the target and the size of the target. This is known as
Fitts’s Law.*
Therefore, to reduce excise, the target must be made larger and/or closer
to the current position of the cursor.
File Edit View Help File Edit View Help File Edit View Help File Edit View Help
Undo
Redo
Rename
Delete
File Edit View Help File Edit View Help File Edit View Help File Edit View Help
Rename Rename
Delete Delete
FIGURE 5.30 Comparing the excise of a window menu (top) versus a contextual
menu (bottom).
* You can read more about Fitts’s Law here: http://en.wikipedia.org/w iki/Fitts%27s_law.
† Specifications for menus and contextual menus from Microsoft can be found here: http://msdn.
microsoft.com/en-us/library/w indows/desktop/d n742392%28v=vs.85%29.aspx.
106 ◾ Designing the User Experience of Game Development Tools
Edit
Find...
Replace...
Copy
Paste
Undo
Redo Added later
FIGURE 5.31 Two ways in which the organization of a contextual menu can
increase excise: Alphabetical, as in GTKRadiant (left) or the order in which the
commands were added (right).
Edit
More frequently
Undo
Redo
Copy
Paste
Find...
Replace...
FIGURE 5.32 Organizing a menu based upon how often the commands are used
can reduce excise.
tual menu will appear above the mouse, instead of below it. What can be
done about this?
Microsoft Office presents an interesting solution to this problem: fre-
quently used formatting commands appear in a floating bar that changes
position depending on where the contextual menu was invoked. When
108 ◾ Designing the User Experience of Game Development Tools
FIGURE 5.33 The contextual menu in Microsoft Office changes based upon
where it was invoked in an effort to minimize excise. Used with permission from
Microsoft.
the cursor is at the top of the window, the floating bar appears at the top,
nearer to the cursor (see the left side of Figure 5.33). However, when the
cursor is at the bottom, the floating bar appears at the bottom (see the
right side of Figure 5.33).
The marking menu in Autodesk Maya is yet another approach to reduc-
ing excise (see Figure 5.34). Marking menus typically have up to eight
regions,* which are all the same distance from the cursor.
FIGURE 5.35 The size difference of the “play” and “close sequence” buttons in
Adobe Premiere demonstrates the concept of target size excise. Adobe product
screenshot(s) reprinted with permission from Adobe Systems Incorporated.
Resting Place
Any pro gamer can tell you that optimal hotkey placement is crucial to
efficiency. All of the default hotkeys for the competitive multiplayer RTS
Starcraft are placed along the left side of the keyboard, near the resting
Design ◾ 111
Q W E R T Y U I O P
A S D F G H J K L
Z X C V B N M
FIGURE 5.36 Considering the resting place of the left hand when choosing
hotkeys.
place of the left hand.* In the case where efficiency is not important, choos-
ing a hotkey based on the first letter of the command would make sense,
such as using “M” to build a marine. However, to make the player more
efficient, the second letter in the word marine is used: “A,” because it is on
the left side of the keyboard, near the resting place of the left hand (see
Figure 5.36).
You can see the same rules applied to content creation tools. For exam-
ple, the majority of 3D content creation applications use the letters Q, W,
E, and R for select, move, rotate, and scale, respectively, which are some of
the commands that are used most frequently. Another classic example is
undo, copy, cut, and paste: Ctrl/Cmd+Z, X, C, and V.†
When choosing hotkeys for the commands that are used most fre-
quently, try to choose hotkeys that are near the left side of the keyboard. If
the key for the first letter of the command is on the right side, or is already
used, then use the next letter in the name of the command. Also, to avoid
confusion, don’t replace standard hotkeys like the ones for undo, copy,
cut, and paste that are listed above, as well as Ctrl/Cmd+S, O, W, and A for
save, open, close, and select all, respectively.
Dialog Boxes
There is a commonly held belief that dialog boxes should never be used,
and that the fewer dialog boxes you have, the better. However, dialog boxes
can be useful for protecting the user from errors. One such example is
a dialog box confirming that you want to delete a file. Accidental clicks
resulting in data loss can be reduced by forcing the user to change their
focus to the dialog box, move their mouse, and click.
It is extremely important to note that a dialog box should be avoided in
the case of commands that are used frequently. The slowdown in efficiency
may be worse than the lack of error protection. In these cases, allowing the
user to recover or undo their choice is highly recommended.
Inconvenient Hotkeys
Deliberately increasing the excise for a hotkey can also protect the user.
For example, using the spacebar as a hotkey for a dangerous command
that cannot be reversed would be a very bad idea. By comparison, a com-
plex hotkey such as Ctrl/Cmd+Alt+P usually requires two hands and
therefore has a significantly lower chance of being pressed accidentally.
However, there are a few exceptions: standards such as the “delete” key
to delete should not be changed to protect the user, as they are so common
that changing them would just lead to confusion. Again, the best way to
protect against this is to implement a robust undo system.
PROGRESSIVE DISCLOSURE
Progressive disclosure means showing only the parts of the interface
that the user needs to see. The interface starts simple, and we allow the
user to reveal (disclose) more, one piece at a time (progressively), to suit
their needs.
Design ◾ 113
Learnability
Progressive disclosure is one of the most powerful techniques for improv-
ing learnability. By simplifying the interface, first-time users can get a
grasp of how a tool works without being overwhelmed by all of the features
at once, and expert users can customize the interface to suit their needs.
FIGURE 5.37 Progressive disclosure can be used to hide information that most
users may not be interested in, such as technical details about the “paste” process.
Used with permission from Microsoft.
FIGURE 5.38 The variety of ways in which the interface of most Adobe products can be customized is an excellent example of progres-
sive disclosure, and is appropriate for their level of complexity. Adobe product screenshot(s) reprinted with permission from Adobe
Systems Incorporated.
Design ◾ 115
116 ◾ Designing the User Experience of Game Development Tools
WRAPPING UP
In this chapter, we concentrated on the Design phase of the User-Centered
Design process. We learned about how the brain and the eyes work together
and how humans have evolved to see specific patterns more efficiently.
We learned about the importance of using a consistent, clear visual lan-
guage, and we also discovered the value of following design guidelines.
Finally, we learned a wide variety of design techniques, such as Hierarchy,
Constraints, Natural Mapping, Representation, Feedback, Feed-forward,
Grouping, Chunking, Excise, and Progressive Disclosure.
In the next chapter, we will discuss concepts and techniques to be used
during the Evaluation phase of the User-Centered Design process.
* You can find it here: http://msdn.microsoft.com/e n-u s/ l ibrary/w indows/d esktop/d n742409
%28v=vs.85%29.aspx.
Chapter 6
Evaluation
Techniques
• Pre-visualize the interface
• How to do a heuristic evaluation
• Performing user tests
117
118 ◾ Designing the User Experience of Game Development Tools
When to Pre-Visualize
Pre-visualization is recommended if the estimated time to make changes
to the tool is higher than the time it would take to pre-visualize. For exam-
ple, it takes a lot less time to sketch out a new type of user interface con-
trol that has never been created before compared to fully implementing it
in code.
If your goal is to measure the improvement to learnability, pre-
visualization can be a good choice. For example, the design techniques of
representation and hierarchy can be simulated by using pre-visualization
with good accuracy.
However, pre-visualization is not ideal for measuring improvements
to efficiency compared to making changes directly to the code. This is
because pre-visualization techniques cannot simulate the response time
of a real computer, and, in the case of a sketch, using your finger to press a
button is not the same as clicking on the button with the mouse.
Furthermore, it is difficult to simulate a large database with pre-
visualization. For example, if your user test requires that the user is able to
search through a database containing thousands of textures, it could take
significantly longer to pre-visualize every possible option. In these cases,
you may choose to go straight to code.
When to Code
As we learned earlier, if your main goal is to improve efficiency, the best
way to measure this accurately is by making changes to the code, due to
the limited ability of pre-visualization to simulate the complete experience
of using a tool.
If the changes are relatively small, such as moving around a few controls
in the interface, this may also be a reason to make the changes directly
in code. This is because the time it would take to simulate such a small
change to the interface through pre-visualization may be higher.
Evaluation ◾ 119
However, if the changes that you want to make require a large program-
ming effort and your main interest is seeing if the users understand and
appreciate the new interface, going straight to code could be more expen-
sive in the long term, especially if the users do not like the design in the
end. In this case, pre-visualization may be the best choice.
Sketch
Sketches are one of the quickest ways to pre-visualize (see Figure 6.1). They
could be on a whiteboard, in a notebook, or even on a napkin. Because
they are so fast to create, they are ideal for trying out a variety of differ-
ent options. It does not matter how you sketch, as long as you are turning
words into visuals in an effort to have a shared vision of the design.
You do not have to be a good artist to sketch. In fact, if the sketch looks
like it did not take a lot of time to create and it is easy to change, people
are more likely to be honest with their feedback, which is exactly what
you want.
However, one of the reasons that sketches are fast to create is because
they are not interactive, and they contain the least amount of detail com-
pared to other pre-visualization options. This could lead to problems dur-
ing the evaluation, if the lack of interactivity and details impairs the user’s
ability to understand the interface. The choice to use sketches depends on
the complexity of the design that you are evaluating.
FIGURE 6.1 Sketches are a quick and easy way to pre-visualize the interface.
120 ◾ Designing the User Experience of Game Development Tools
Paper Prototype
Paper prototypes are essentially interactive sketches. We can use pen,
paper, cardboard, scissors, tape, sticky notes, and other materials to create
and simulate interactive elements (see Figure 6.2).
To make a paper prototype interactive, we can use what is called the
“Wizard of Oz” technique. The name comes from the movie of the same
name, because the interactivity is created by someone “behind the cur-
tain.” This technique works best with two people: one person asks the
user to accomplish a specific task, and the other simulates the inter
activity by moving pieces of the paper prototype around in reaction to the
user’s actions.*
Simulating interaction with a paper prototype has a few advantages
over code: Paper prototypes never get compiler or linking errors. The only
thing you need to deploy them are your own two legs. They are easily por-
table and can be archived indefinitely in a file folder. Finally, anyone can
create a paper prototype without having to learn a programming language
or a graphic design tool.†
Interactive Prototype
These prototypes are created and evaluated on a computer or other device,
using interactive prototype creation tools.* These tools come prepackaged
with standard controls such as buttons, drop-downs, and checkboxes.
Most allow you to add simple interactions, such as opening a dialog box
when clicking a button (see Figure 6.3).
Although they cannot simulate every single type of interaction, most
interactive prototype creation tools have very powerful and versatile sys-
tems for building interactions, as well as vibrant communities where peo-
ple share recipes to simulate different types of behaviors.
In addition, if your users are not in the same building—or even the
same country—interactive prototypes are clearly a better choice compared
to sketches and paper prototypes, as they can be shared electronically. By
using screen sharing, you can even watch people test the prototype in real
time and get feedback as if you were sitting next to them.
Interactive prototypes can bring you closer to simulating the real tool
as compared to sketches and paper prototypes. If you are simulating a
tool that will be used on a desktop computer, interactive prototypes are
about as close as you can get to reality without actually writing code.
However, there are a few drawbacks to interactive prototypes. For most
people new to user experience design, building an interactive prototype
requires learning a new tool. In addition, making changes can sometimes
be more complicated compared to a sketch or paper prototype. There is
also the chance that deploying a prototype on somebody else’s computer
will not work at first. For this reason, it is recommended to test out inter-
active prototypes on another machine before doing a large number of
user tests.
Although there are many varieties of usability heuristics,* for the pur-
poses of this book, we will learn the heuristics established by Jakob Nielsen
in 1994, which are perhaps the most popular and widely used. They origi-
nate from his book Usability Engineering.†
The heuristics are listed in the following sections. For each one, you
will find a quote of what someone might say when confronting this heu-
ristic, one or more examples to help you identify the heuristic, as well as
design techniques from the previous chapter that could be used to improve
the problem.
* Here are a few: http://en.wikipedia.org/w iki/Heuristic_evaluation, as well as those by Bastien & Scapin:
http://www.webmaestro. gouv.qc.c a/publications/a rchives/webeducation1998-2004/2000-11/
criteres.pdf.
† You can read more about Nielsen’s heuristics here: http://www.nngroup.com/ articles/
ten-usability-heuristics/.
124 ◾ Designing the User Experience of Game Development Tools
Error Prevention
“How can I prevent that mistake from happening again?” The interface
makes it far too easy for mistakes to occur, such as allowing an item to be
dragged and dropped where it is not supposed to, or setting the default
button for a “Exit without save changes?” dialog box to “Yes.” The design
techniques of constraints and feed-forward can be useful for fixing issues
associated with this heuristic. In addition, by strategically increasing
excise, you can give the user more time to consider their options and pre-
vent them from making mistakes.
look first. Furthermore, there is no way to hide or simplify the user inter-
face for the first-time user. In the case of this heuristic, the design tech-
niques of hierarchy and progressive disclosure could be used, as they can
help guide the eye of the user, as well as letting them determine how much
visual complexity they need in the interface.
These are just a few examples, and you may be able to identify other issues
with this particular interface.
Finally, remember that people use tools in unexpected ways. Doing
a heuristic evaluation is a good first pass when no users are available.
However, you should make every effort to follow it up by testing with
users. Someone will work with the tool eventually, and the sooner you can
watch them work, the better!
DO USER TESTS
One of the best ways to evaluate the user experience is by doing a user
test. The first step to doing this is to build a test plan and select the users
Evaluation ◾ 127
to test. Then, you need to prepare the interface that the users will evaluate,
either by making changes directly in the code or by pre-visualizing. Finally,
you can run the tests and examine the results in the next Analysis phase.
has requested that a large tree be added to the forest. How would you do
that?” This question is more realistic, and the fact that the request comes
from the art director adds context that is appropriate to that task.
tasks accordingly, which will require time and a cultural shift in the games
industry. We will talk more about that in the final chapter.
In the meantime, if you find yourself in this situation, selecting other
users who fit a similar profile may be your best option. If you are testing
changes in code, and it is not possible to deploy the tool to the users’ com-
puters, do not let that stop you from getting feedback. Bring them to your
desk, or to any computer that has an early version of the tool running.
Alternatively, you can connect to a computer running the tool via remote
desktop (as long as doing that does not significantly affect the user expe-
rience or measurements). The bottom line is that waiting for the perfect
moment to test could result in a missed opportunity to improve the user
experience. You should do everything that you can to ensure that the first
time that the users lay eyes on the tool is not right before they start work-
ing with it for the first time.
If you can, it is also recommended to perform the user tests with two
people: one person assigning the tasks, and the other taking notes. When
you are alone, it can be difficult to assign tasks, observe the user, and take
notes all at once. Having a dedicated note-taker ensures that the person
assigning the tasks can focus on the user and notice things that they might
miss if they were taking notes.
Although user tests can take less time than a contextual analysis, try to
keep them under an hour. Being the subject of a user test can be draining
for some people. In any case, if the users are in production, they may not
have more time than that. If you encounter resistance while running the
user tests (either from the user you are testing or from their supervisor),
ensure that everyone understands that the time required to run a user
test is a small investment compared to the potential savings of time and
money in the long term.
It can also be helpful to record a video of the user’s screen, or their
interaction with the pre-visualization. If an interesting or significant
event occurs during the user test, make a note of the time that it occurs in
the video, so that you can go back during the Analysis phase and grab a
screenshot or short video clip.
WRAPPING UP
This chapter focused on the Evaluation phase of the User-Centered Design
process. We learned how to evaluate a design and how to decide between
pre-visualization and going straight to code. We also learned a series of
techniques to be used during the Evaluation phase, such as sketching,
paper prototyping, interactive prototyping, performing a heuristic evalu-
ation, and finally, performing user tests.
In the next chapter, we will return to the Analysis phase, going back
through the loop of the User-Centered Design process, and discuss the
importance of comparing measurements.
Chapter 7
Back to Analysis
DÉJÀ VU
I f you have been reading up until this point, you might be won-
dering why we are talking about the Analysis phase again. “We already
did that in Chapter 4!”
The purpose of this chapter is to emphasize—once again—that the
User-Centered Design process is an iterative cycle. Once you have com-
pleted the Evaluation phase, examine the feedback gathered during the
Analysis phase to plan your next move.
131
132 ◾ Designing the User Experience of Game Development Tools
COMPARING MEASUREMENTS
In game development, we are accustomed to gathering all sorts of mea-
surements: the burn-down rate of a sprint, performance metrics of the
CPU and GPU, how different types of memory are allocated, budgets for
various types of expenses, the amount of information on each vertex of a
mesh, and so on. Yet, when was the last time that the efficiency and learn-
ability of the game development tools were measured on a regular basis?
One of the main reasons is due to the perception that it takes too much
time to measure. However, consider this: if you go on a road trip, do you
drive around aimlessly, hoping that you will soon arrive at your destina-
tion, or do you stop occasionally to check a map? Developing a tool with-
out measuring is like driving around without occasionally checking a map
(see Figure 7.1). While it is true that verifying measurements takes a little
bit of time at each iteration, the goal is that the overall time will be lower,
as opposed to barreling forward aimlessly in the hope that we are making
the tool better.
Expert Opinions
If you have studied the history of computer science, you may have learned
about Admiral Grace Hopper. She developed the first compiler, and she is
credited with popularizing the term debugging. One of her most famous
FIGURE 7.1 The importance of taking the time to analyze the results of the eval-
uation phase.
Back to Analysis ◾ 133
* I was this person for several games, tools, and pipelines, and there is no doubt in my mind that my
opinion was wrong on many occasions!
Chapter 8
Real-World User-
Centered Design
INTRODUCTION
The Cast
Stakeholders
• Sophie, project manager
• Ben, art director
Developers
• Daniel, tools programmer
• Francis, technical artist
The Company
This story takes place at a medium-sized game developer that has been
in business for over ten years. They have developed their own engine and
tools, which they have used to create games that have sold enough cop-
ies to keep them in business. However, very little effort has been put into
improving the tools, due to perceived time and budget constraints. No one
135
136 ◾ Designing the User Experience of Game Development Tools
The Situation
Sophie has recently been promoted to project manager. The last game that
she shipped suffered from grueling overtime, productivity problems, lost
data, and the slow ramp-up of new staff due to difficulty learning the tools.
Some senior people quit shortly after the project, and the cost of retraining
the new hires was significantly higher than if they had been able to keep
their staff.
Sophie is currently in the production phase of her next project, and she
is starting to see the same situation emerge from the last project, espe-
cially in the cut-scene pipeline. Concerned that history will repeat itself,
and because work on cut-scenes will be starting soon, she decides that she
wants to see if she should invest in improving the efficiency of the cut-
scene pipeline.
She learns that two developers from another team, Daniel and Francis,
have been using a new approach in their tools development work—the
User-Centered Design process—and that they have been getting positive
results. Although she wants to improve the tools, like a good project man-
ager, she also wants to ensure that the benefits outweigh the costs.
Daniel and Francis have recently become available, so she asks them to
join her team to focus on making the cut-scene pipeline more efficient. She
requests that they keep her up to date on their sprint reports so she can
track their progress.
the composition. He also mentions that, during the last project he worked
on, asking the animators to make changes to the camera took a very long
time, which he found frustrating.
With these stakeholder goals in mind, Daniel and Francis move on to
the next step: contextual analyses with the users who work on cut-scenes.
In light of the art director’s comments, they focus on the users who spend
the most amount of time working with cameras, the animators. There
are twelve animators in the cut-scene team, and they are scheduled to be
working on cut-scenes for a total of six months.
During the contextual analyses, Daniel talks to the animators, while
Francis takes notes. They begin by asking them what their goals are when
working with the camera. Many of the goals that the users talk about can
be linked to the producer and the art director: they want to adjust the
camera, and they want to do it quickly. However, unlike the art director,
their goal is not setting the composition of the camera but simply getting
the job done so they can move on to their next task.
During the task of adjusting the camera, one of the actions is to adjust
the depth of field. The depth of field has five values that the users can set:
the start and end of the near blur, the start and end of the far blur, and
the focus point distance. They mention that they sometimes get confused
about what each value represents, that it is difficult to find the value they
are looking for at a glance, and that they often have to readjust the values
multiple times because they go beyond the minimum or maximum.
The junior users say that it is extremely difficult to use the depth of field
tool. The senior users say that while it is not perfect, the junior users just
have to adapt to it. In fact, the biggest complaint from the senior users is
regarding something that is done only on occasion: copying the settings
from one camera to another, which requires that they copy and paste the
values one field at a time.
Some users even say that the depth of field tool does not need to be
improved, mostly because it used to be worse! In the past, to change the
depth of field, the users had to create a script file that contained commands
to set the depth of field and attach that script file to the camera. This was
a problem because many users would generate errors by forgetting to put a
comma or a semicolon, misspelling the name of the command, and so on
(see the left side of Figure 8.1).
To improve the situation, one of the tools programmers created a tool
to set the depth of field: a window with a row of numeric boxes (see the
right side of Figure 8.1). Even though some users feel that this tool is good
138 ◾ Designing the User Experience of Game Development Tools
FIGURE 8.1 The previous (left) and current (right) methods for setting the depth
of field of cameras.
FIGURE 8.2 Task flow analysis for the process of setting up cameras for
cut-scenes.
enough and that there is nothing left to do, it is clear to Daniel and Francis
that this tool simply exposes the conceptual model of the depth of field
script command, and that efficiency could be improved further.
Using the notes from their contextual analyses, Daniel and Francis
start to build a task flow for adjusting the camera (see Figure 8.2).
After analyzing the results of the task flow, they observe that all of the
users adjust the depth of field manually, and that they do it often. They
decide that they will work on improving the efficiency of this action first,
and that they will work on the copy/pasting of values from one camera to
another later.
Design
To improve the efficiency of making manual adjustments using the depth
of field tool, Daniel and Francis start by proposing a few small, iterative
changes to the existing design.
To make the labels easier to scan, they apply the design technique of
hierarchy. Next, to reduce the amount of time wasted by fixing invalid val-
ues, they replace the numeric boxes with sliders (following the Microsoft
guidelines). This makes it clear that the values have a minimum and maxi-
mum. Finally, they modify the labels so that they are more familiar to
Real-World User-Centered Design ◾ 139
the users. For example, the new term for “TARGET” is “Focus Distance,”
which matches the name of a similar value found in the depth of field
camera settings of the animation tool that the animators are accustomed
to using.
Evaluation
Daniel and Francis start to build their test plan. They make a list of tasks
that can be used to measure the efficiency of manually adjusting the depth
of field values. A few examples: “The art director would like you to increase
the focus point of ‘camera_2’ by 10 units from frame 10 to frame 35 in the
cut-scene ‘Chapter1_ChaseB.’ How would you do that?” and “You receive a
bug report that the near blur of ‘camera_3’ is too high by 20 units through-
out the cut-scene ‘Chapter3_BossFightIntro.’ How would you fix that?”
Because they are measuring efficiency, and Daniel is a programmer, they
decide to go directly to code as opposed to pre-visualizing (Figure 8.3).
Before running the tests, Daniel and Francis also decide to perform a
heuristic evaluation on the new version of the depth of field tool. A few of
the heuristics jump out at them right away:
• Match between system and real world: The order and layout of the
numeric boxes match the “setDOF” command more than the cam-
era and the depth of field effect.
• Flexibility and efficiency of use: The users need to click on the “Apply”
button every time they make a change.
They deploy the changes and run their user tests. This time, Francis
assigns tasks to the users while Daniel takes notes. They also record the
users’ screen while they are watching them work.
Sprint 2
Analysis
After the user tests are done, Daniel and Francis analyze the notes and the
videos. They calculate that the users take an average of 20 seconds to complete
all of the tasks from the user test. This will be their baseline measurement.
They also note that the majority of the users feel that the order of the
sliders is confusing. Daniel and Francis believe that this is because they do
not match the users’ mental model of the camera, which is consistent with
their findings during the heuristic evaluation. Daniel and Francis decide
to do a brief contextual analysis focused on understanding the users’ men-
tal model of the camera.
After meeting with the users, they realize that many of them describe
the camera from a side view, indicating the points at which the near and
far blur occur. One of the users even does a sketch representing their men-
tal model of the camera (see Figure 8.4). This inspires Daniel and Francis
to improve the design.
Design
Francis has the idea to use the design technique of representation to lay
out the sliders so that they match the users’ mental model. The only issue
is that Francis cannot find a multithumb slider in the Microsoft guide-
lines, so he looks to other content creation software. He finds examples
of multithumb sliders in the Input Levels section of the Levels window
in Adobe Photoshop (see the top of Figure 8.5), as well as with the Range
slider in Autodesk Maya (see the bottom of Figure 8.5). He uses these as
the interaction pattern.
Evaluation
Because this design contains controls that do not exist in their UI toolkit,
and Daniel has an urgent bug to fix, Francis decides to pre-visualize. He
creates a simple paper prototype and then performs a “Wizard of Oz” test.
The feedback from the users is positive. They say that the interface feels
more natural than the previous tool, and they state that it will enable them
to work faster. While this is good feedback, the paper prototype can only
confirm that the new design matches the mental model, but it cannot
determine if it increases efficiency. The only way to answer that will be to
implement the changes. Once Daniel is available, they modify the inter-
face and deploy the updated version (see Figure 8.6).
As they are modifying the interface, Daniel and Francis are approached
by a few users who remind them that copying and pasting values is still a
problem. Since they have made some progress on making manual adjust-
ments, Daniel and Francis decide to see if they can improve copying and
pasting values as well. They start by creating a user test for copying and past-
ing values from one camera to another, with tasks such as “Another animator
set up ‘cam_5’ in the cut-scene ‘Chapter5_IntroC,’ and you want to use the
same settings from frame 25. How would you do that?”
They run both the user test for manually adjusting values as well as the
user test for copying and pasting values from one camera to another.
Sprint 3
Analysis
Daniel and Francis analyze the previous Evaluation phase and perform
another measurement. They discover that the users now take an average of
Real-World User-Centered Design ◾ 143
Design
To improve the efficiency even further, Daniel and Francis design two
changes that use the technique of reducing excise.
First, they modify the tool so that the camera settings automatically
update as soon as the sliders are modified. This allows the Apply button
to be removed, so the users do not have to move their mouse down to the
bottom of the tool and click every time they make a change.
Second, they add the ability to copy and paste from one camera to
another. They expose this functionality to the users by implementing
a standard Edit menu with copy and paste menu items. They associate
the copy and paste commands to hotkeys that follow existing standards:
Ctrl/Cmd+C and Ctrl/Cmd+V. This way, users can copy and paste values
from one camera to another quickly and easily.
Evaluation
Since the changes are small, they decide to make them directly in code
(see Figure 8.7). They run their user tests, and the results from the users
are positive. All of the users appreciate that they are no longer required
to click on the Apply button to update the depth of field in the viewport.
The users who copy and paste values are very happy that they can
now do it faster. They also say that they think this will have the biggest
impact on efficiency out of all the improvements that Daniel and Francis
have made.
Sprint 4
Analysis
Daniel and Francis examine the results and see that copying and past-
ing values has dropped from seven seconds to two seconds. That is an
improvement of five seconds, which appears to be significant.
Removing the Apply button has made a big difference for all of the
users of the tool, by lowering the time to adjust the depth of field manually
to just three seconds. That is an overall improvement of 17 seconds.
This means that before Daniel and Francis made any improvements, all of
the users together would spend over five man-months working with the
depth of field over the six-month period, at a cost of almost $50,000 (see
Figure 8.8).
After the improvements, the users are now spending a little under one
man-month working with the depth of field over the six-month period, or
around $7,500 (see Figure 8.9).
Although it may look like the improvements have resulted in a savings
of $42,500, Sophie has to subtract the time spent by Daniel and Francis.
Since they worked on the depth of field tool for three two-week sprints,
and they cost $10,000 per man-month, the investment was $30,000. This
* You can find a variety of ROI calculators on the Human Factors website here: http://humanfactors.
com/coolstuff/roi.asp.
Real-World User-Centered Design ◾ 145
FIGURE 8.8 Calculating the cost of using the depth of field tool.
FIGURE 8.9 Calculating the cost of using the depth of field tool after the
improvements to the user experience, in an effort to calculate the return on
investment (ROI).
means that the total return on investment was $12,500. That is over a man-
month of time that did not exist before the improvements, and Daniel and
Francis are not done yet. In addition, it is important to note that any other
production that uses the updated depth of field tool in the future will ben-
efit from these improvements, immediately, at no cost.
Unfortunately, the copy and paste functionality did not result in as
much of a return as was hoped, which emphasizes that the biggest impact
comes from the improvements that affect the highest number of users, and
those who use the tools the most frequently.
Ultimately, the improvements have had a positive return on investment.
Sophie is satisfied with the results and asks Daniel and Francis to continue
improving the user experience of the game development tools by applying
the User-Centered Design process.
Conclusion
SUMMARY
The purpose of this book is to introduce you to concepts and techniques
that can be used to improve the user experience of game development tools.
In Chapter 1, we learned the definition of a user experience, why we
should improve the user experience, as well as the value of improving the
user experience. We also learned the importance of balancing the needs of
the various groups involved in the development of a tool.
Chapter 2 introduced you to the User-Centered Design process. We
learned about the advantages of the process, as well as how to integrate it
into Agile. We also discussed how to deal with a lack of time and resources.
Chapter 3 focused on what it means to be “User-Centered.” In this
chapter, we learned about the importance of focusing on the right users
and ensuring that the features are useful for those users. We also discov-
ered the power of pre-visualization and the differences between features
and goals.
Chapter 4 presented the Analysis phase, where we discussed the impor-
tance of watching users work, an introduction to human–computer inter-
action, as well as the difference between a mental model and a conceptual
model. We also learned about interviews, contextual analysis, and task
flows, in addition to understanding how to measure improvements to the
user experience.
Chapter 5 was all about the Design phase: how the brain and the eyes
work together, as well as visual language and interaction patterns. We also
learned a wide variety of techniques that can be used to address common
design problems, as well as common interaction patterns for each.
In Chapter 6, we discovered how to choose the right strategy for evalu-
ating our designs. We also learned pre-visualization techniques and heu-
ristic evaluation. Finally, we learned how to build and run user tests.
147
148 ◾ Conclusion
CLOSING WORD
Culture Shift
Throughout this book, we have used examples from Apple. This is not
because every single one of their products has the best user experience—
they certainly have made some mistakes over the years—but their prod-
ucts provide good examples that can be used to support the concepts and
techniques presented in this book. However, you might be wondering,
what is their secret? How do they do it?
One of the misconceptions about why Apple products are so successful
is that they have the best designers in the world. While their designers are
certainly very good, that is not the only factor at play.
An interview with former Apple senior designer Mark Kawano sheds
some light on the truth: everyone at Apple works together to improve
the user experience. “It’s actually the engineering culture, and the way the
organization is structured to appreciate and support design. Everybody
there is thinking about UX and design, not just the designers. And that’s
what makes everything about the product so much better … much more
than any individual designer or design team.”*
The games industry needs to make the user experience of tools a prior-
ity. To do that, we need the User-Centered Design process to become as
common as using Scrum, profiling GPU performance, and creating cut-
scene storyboards. When that happens, we will start to see the culture
shift necessary to make big improvements.
Where to Begin?
Now that you have read this book, the first step is to start applying the
User-Centered Design process to your own tools development work. Once
you feel confident with the process and you have had success that you
can measure, the next step is to spread the word. Help people understand
This book was written, illustrated, and edited in airplanes, trains, hotel
rooms, and cafes, in four cities, on two continents, on one laptop. It would
not have been possible without the following people.
Jim Brown, Liam Grieg, Tom Hoferek, Corey Johnson, Thérèse
Migan, Jason Parks, and Karine Thériault for their invaluable feedback.
Dominique Roussy, for giving me my first job in the games industry. My
first computer science teacher, Susan Van Gelder, for seeing my interest
in the fusion of programming and art, and providing me with the tools I
needed. Mike Acton, for his contributions to game tools usability, and for
providing the foreword. Geoff Evans, Jeff Ward, Dan Goodman, and all
other past, present, and future members of the Toolsmiths IGDA SIG, for
working to bring the challenges of game tools development into the spot-
light. Ubisoft, for giving me the opportunity to turn my passion for user
experience and content creation tools into a career. Pierre-Luc Tremblay,
for introducing me to The Inmates Are Running the Asylum—and to Alan
Cooper for writing it. Rick Adams, Maura Cregan, Marsha Pronin, Amy
Blalock, Charlotte Byrnes, and everyone at CRC Press who helped to make
this book possible. Lucy Suchman, Jason Mitchell, and Sara Lott at the
Computer History Museum for providing a few of the images in this book.
Sony, for making a tough little laptop that accompanied me throughout
this long journey. My big brother and big sister, who prepared me for the
real world by sandwiching me in the back seat of our parents’ car. My wife
and children for reminding me that there is more to life than just content
creation tools … which I believe, most of the time. Thank you, Andrea,
Benjamin, and Sophie … I love you!
151
Works Cited &
Recommended Reading
Adlin, Tamara, and John Pruitt. The Essential Persona Lifecycle: Your Guide to
Building and Using Personas. San Francisco, CA: Morgan Kaufmann, 2010.
Alexander, Christopher, Sara Ishikawa, and Murray Silverstein. A Pattern
Language: Towns, Buildings, Construction. New York: Oxford University
Press, 1977.
Anderson, Jonathan, John McRee, Robb Wilson, et al. Effective UI. Beijing:
O’Reilly, 2010.
Buxton, William. Sketching User Experiences: Getting the Design Right and the
Right Design. Amsterdam: Elsevier/Morgan Kaufmann, 2007.
Cooper, Alan. The Inmates Are Running the Asylum. Indianapolis, IN: Sams, 1999.
Cooper, Alan, Robert Reimann, and Dave Cronin. About Face 3: The Essentials of
Interaction Design. 3rd ed. Indianapolis, IN: Wiley Pub., 2007.
Gamma, Erich, Richard Helm, Ralph Johnson, and John Vlissides. Design Patterns:
Elements of Reusable Object-Oriented Software. Upper Saddle River, NJ:
Addison-Wesley, 1995.
Gladwell, Malcolm. David and Goliath: Underdogs, Misfits, and the Art of Battling
Giants. New York: Little Brown & Company, 2013.
Gothelf, Jeff, and Josh Seiden. Lean UX: Applying Lean Principles to Improve User
Experience. Sebastopol, CA: O’Reilly Media, 2013.
Hawkins, Jeff, and Sandra Blakeslee. On Intelligence. New York: Times Books, 2004.
Hiltzik, Michael A. Dealers of Lightning: Xerox PARC and the Dawn of the Computer
Age. New York: HarperBusiness, 1999.
Johnson, Jeff. Designing with the Mind in Mind: Simple Guide to Understanding
User Interface Design Rules. Amsterdam: Morgan Kaufmann Publishers/
Elsevier, 2010.
Krug, Steve. Don’t Make Me Think!: A Common Sense Approach to Web Usability.
2nd ed. Berkeley, CA: New Riders Pub., 2006.
McConnell, Steve. Code Complete: A Practical Handbook of Software Construction.
2nd ed. Redmond, WA: Microsoft Press, 2004.
Myers, Brad A. “The Importance of Percent- Done Progress Indicators for
Computer–Human Interfaces.” ACM SIGCHI Bulletin 16, no. 4 (1985): 11–17.
153
154 ◾ Works Cited & Recommended Reading
Nielsen, Jakob. “First Rule of Usability? Don’t Listen to Users.” Nielsen Norman
Group. http://www.nngroup.com/articles/first-rule-of-usability-dont-listen-
to-users/ (accessed July 15, 2014).
Nielsen, Jakob. “Why You Only Need to Test with 5 Users.” Nielsen Norman
Group. http://www.nngroup.com/articles/why-you-only-need-to-test-with-
5-users (accessed July 15, 2014).
Nielsen, Jakob. “Response Time Limits.” Nielsen Norman Group. http://www.
nngroup.com/articles/response-times-3-important-limits/ (accessed July 15,
2014).
Nielsen, Jakob. Usability Engineering. Boston: Academic Press, 1993.
Norman, Donald A. The Design of Everyday Things. New York: Basic Books, 1988.
Portigal, Steve. Interviewing Users: How to Uncover Compelling Insights. Brooklyn,
NY: Rosenfeld Media, 2013.
Saffer, Dan. Designing for Interaction: Creating Innovative Applications and Devices.
2nd ed. Berkeley, CA: New Riders, 2010.
Sanders, Elizabeth B.-N. “Converging Perspectives: Product Development Research
for the 1990s.” Design Management Journal (Former Series) 3, no. 4 (1992):
49–54.
Suchman, Lucille Alice. Human–Machine Reconfigurations: Plans and Situated
Actions. 2nd ed. Cambridge: Cambridge University Press, 2007.
Sy, Desiree. “Adapting Usability Investigations for Agile User-Centered Design.”
Journal of Usability Studies 2, no. 3 (May 2007), 112–132. (Available at
http://uxpajournal.org/wp-content/uploads/pdf/agile-ucd.pdf.)
Vlaskovits, Patrick. “Henry Ford, Innovation, and That ‘Faster Horse’ Quote.”
Harvard Business Review. http://blogs.hbr.org/2011/08/henry-ford-never-
said-the-fast/ (accessed July 15, 2014).
Weinschenk, Susan. 100 Things Every Designer Needs to Know about People.
Berkeley, CA: New Riders, 2011.
Wilson, Mark. “4 Myths about Apple Design, from an Ex-Apple Designer.” Co.
Design. http://www.fastcodesign.com/3030923/4-myths-about-apple-design-
from-an-ex-apple-designer (accessed July 15, 2014).
The Unity• name, logo, brand, and other trademarks or images featured
or referred to within this book are licensed from and are the sole property
of Unity Technologies. Neither this book, its author, nor the publisher is
affiliated with, endorsed by, or sponsored by Unity Technologies or any of
its affiliates.
Xerox•, the Xerox• logo, and the Xerox• 8200 are registered trademarks
of Xerox Corporation in the United States and/or other countries.
iRiver, the iRiver logo, and the iRiver H300 are registered trademarks of
iRiver Limited in the Republic of Korea and/or other countries.
Epic, Epic Games, and the Epic Games logo are trademarks or registered
trademarks of Epic Games, Inc., in the United States and elsewhere.
Sony, the Sony logo, PlayStation, Vaio, Emotion Engine, and Cell
Broadband Engine are trademarks or registered trademarks of Sony
Computer Entertainment, Inc., in the United States, other countries, or
both and is used under license therefrom.
Valve, the Valve logo, and Team Fortress 2 are trademarks and/or regis-
tered trademarks of Valve Corporation.
Mad Catz and the Mad Catz logo are trademarks or registered trademarks
of Mad Catz Interactive, Inc., its subsidiaries and affiliates.
“David Lightbown’s book shines a light on a dark corner of the games, but it’s a
corner on the path we take every day in game development. All developers owe
it to their future selves to learn to apply the process presented in this book to
their tools.”
—Corey Johnson, Unity Technologies
“If you build games tools and are not familiar with user-centered design, then
you should read this book. ... provides a comprehensive introduction to
user-centered design with easy-to-understand explanations and plenty of
real-world examples that demonstrate the principles and best practices
you need to know to start building better tools today.”
—Tom Hoferek, Principal User Experience Designer, Autodesk
Ideal for anyone who makes, uses, or benefits from game development tools,
the book presents complex concepts in a manner that is accessible to those
new to user experience design.
K23310
ISBN: 978-1-4822-4019-1
90000
9 781482 240191