User Interface Design - How Can It Be Improved?
By
Hugh Jackson
Contents
Introduction
When user interfaces were originally designed there was little effort put
into what the user saw in front of them. Character-based interfaces on a
traditional alphanumeric full-screen terminal with a keyboard and function
keys were the norm, and people accepted that this was the best they were
going to get. However, as computing popularity increased, questions started
to be asked about how things could be improved - how could you stop people
making mistakes when they use a computer? With advances in technology being
made in leaps and bounds, it soon became possible to start implementing some
sort of interface that would improve the situation. Great efforts have been
made to try to find ways of maximizing throughput and efficiency, of enhancing
its 'usability'.
Usability Inspection
Usability inspection is the generic name for a set of methods that are all
based on having evaluators inspect a user interface trying to find usability
problems in the design. Many inspection methods can used in the inspection
of user interface specifications that have not necessarily been implemented
yet, meaning that inspection can be performed early in the user interface's
lifecycle.
Heuristic evaluation is the most informal method and
involves having usability specialists judge whether each dialogue element
follows established usability principles (the "heuristics").
Heuristic estimation is a variant in which the
inspectors are asked to estimate the relative usability of two (or more)
designs in quantitative terms (typically expected user performance).
Cognitive walkthrough uses a more explicitly detailed
procedure to simulate a user's problem-solving process at each step through
the dialogue, checking if the simulated user's goals and memory content
can be assumed to lead to the next correct action.
Pluralistic walkthrough uses group meetings where
users, developers, and human factors people step through a scenario,
discussing each dialogue element.
Feature inspection lists sequences of features
used to accomplish typical tasks, checks for long sequences, cumbersome
steps, steps that would not be natural for users to try, and steps that
require extensive knowledge/experience in order to assess a proposed
feature set.
Consistency inspection has designers who represent
multiple other projects inspect an interface to see whether it does things
in the same way as their own designs.
Standards inspection has an expert on an interface
standard inspect the interface for compliance.
Formal usability inspection combines individual
and group inspections in a six-step procedure with strictly defined roles
to with elements of both heuristic evaluation and a simplified form of
cognitive walkthroughs.
Heuristic evaluation, heuristic estimation, cognitive walkthrough, feature
inspection, and standards inspection normally have the interface inspected
by a single evaluator at a time (though heuristic evaluation, which I will
look at in more detail, is based on combining inspection reports from a set of
independent evaluators to form the list of usability problems and heuristic
estimation involves computing the mean of the individual estimates). In
contrast, pluralistic walkthrough and consistency inspection are group
inspection methods. I shall look at heuristic evaluation further because it
seems to provide large scope for study.
Heuristic Evaluation
Heuristic evaluation is one of three steps that together define 'discount
usability engineering' [Nielsen 1989b, 1990a, 1993]. One important reason
usability engineering, the process of creating systems through usability
inspection, is not used in general is the cost of using the techniques.
British studies [Bellotti 1988] indicate that many developers don't use
usability engineering because HCI (human-computer interaction) methods
are seen as too time consuming and expensive and because the techniques
are often intimidating in their complexity. The "discount usability
engineering" approach is intended to address these two issues.
It is a simpler methods than most, and thus stands a much better chance of
actually being used in practical design situations.
The "discount usability engineering" method is based on the use of the
following three techniques:
Scenarios
Scenarios are a special kind of prototyping as shown in Figure 1. The entire
idea behind prototyping is to cut down on the complexity of implementation
by eliminating parts of the full system. Horizontal prototypes reduce the
level of functionality and result in a user interface surface layer, while
vertical prototypes reduce the number of features and implement the full
functionality of those chosen (i.e. we get a part of the system to play with).
|
Figure 1
The concept of a scenario compared
to vertical and horizontal prototypes as ways to make rapid prototyping
simpler.
Simplified thinking aloud
Thinking aloud studies are conducted with psychologists or user interface
experts as experimenters who videotape the subjects and perform detailed protocol
analysis. It is simply a form of user testing where you bring in
some real users, give them some typical test tasks, and ask them to think
out loud while they perform the tasks.
Heuristic evaluation
Most user interface standards and collections of usability guidelines
typically have in the order of one thousand rules to follow and are
therefore seen as intimidating by developers. For the discount method Nielson,
in his paper "Enhancing the Explanatory Power of Usability
Heuristics", developed a set of 10 heuristics from examining a database of
249 usability problems. He considered them to be capable of explaining nearly
all usability problems encountered in HCI. They are as follows:
Visibility of system status - The system should always keep users
informed about what is going on, through appropriate feedback within
reasonable time.
Match between system and the real world - The system should speak
the users' language, with words, phrases and concepts familiar to the user,
rather than system-oriented terms. Follow real-world conventions, making
information appear in a natural and logical order.
User control and freedom - Users often choose system functions by
mistake and will need a clearly marked "emergency exit" to leave the
unwanted state without having to go through an extended dialogue. Support
undo and redo.
Consistency and standards - Users should not have to wonder whether
different words, situations, or actions mean the same thing. Follow
platform conventions.
Error prevention - Even better than good error messages is a careful
design which prevents a problem from occurring in the first place.
Recognition rather than recall - Make objects, actions, and options
visible. The user should not have to remember information from one part of
the dialogue to another. Instructions for use of the system should be
visible or easily retrievable whenever appropriate.
Flexibility and efficiency of use - Accelerators -- unseen by the
novice user -- may often speed up the interaction for the expert user
such that the system can cater to both inexperienced and experienced
users. Allow users to tailor frequent actions.
Aesthetic and minimalist design - Dialogues should not contain
information which is irrelevant or rarely needed. Every extra unit of
information in a dialogue competes with the relevant units of information
and diminishes their relative visibility.
Help users recognize, diagnose, and recover from errors - Error
messages should be expressed in plain language (no codes), precisely
indicate the problem, and constructively suggest a solution.
Help and documentation - Even though it is better if the system can
be used without documentation, it may be necessary to provide help and
documentation. Any such information should be easy to search, focused on
the user's task, list concrete steps to be carried out, and not be too
large.
Conclusion
It is obvious that a lot of companies do not yet implement any kind of
advanced usability engineering approach when designing their systems. Even
the biggest software developers have only embraced the approached within the
past few years. Microsoft, for example, have made four major changes recently
in their approach to usability: Use of heuristic evaluation, use of "discount"
user testing with small sample sizes, contextual inquiry, and use of paper
mock-ups as low-fidelity prototypes.
One of the fundamental things about usability engineering is to remember
that "anything is better than nothing" when it comes to usability.
Therefore, companies should focus on getting started by using a minimum
of usability methods. Simple usability methods can be a way for a company
to gradually build up, starting with the bare minimum and gradually
progressing to a more refined lifecycle approach, where usability
engineering is used in every stage of development.
Bibliography
Nielsen, J. (1994a). Enhancing the explanatory power of usability
heuristics. Proc. ACM CHI'94 Conf. (Boston, MA, April 24-28), 152-158.
Nielsen, J. (1994b). Heuristic evaluation. In Nielsen, J., and
Mack, R.L. (Eds.), Usability Inspection
Methods. John Wiley & Sons, New York, NY.
Nielsen, J. (1992c). Finding usability problems through heuristic
evaluation. Proc. ACM CHI'92 (Monterey, CA, 3-7 May), 373-380.
Gould, J. D., and Lewis, C. H. (1985). Designing for usability: Key
principles and what designers think. Communications of the ACM 28, 3
(March), 300-311.