All pastes #29919 Raw Edit

Stuff

public text v1 · immutable
#29919 ·published 2005-11-21 07:50 UTC
rendered paste body
*************************************************************
*                                                           *
*            TASK-CENTERED USER INTERFACE DESIGN            *
*                 A Practical Introduction                  *
*                                                           *
*             by Clayton Lewis and John Rieman              *
*                                                           *
*           Copyright 1993, 1994: Please see the            *
*       "shareware notice" at the front of the book.        *
*                                                           *
*************************************************************


* * * * * * * * * * * * * * *                            v.1
*
*   Foreword
*
*


In this introductory material we explain the book's goals and 
introduce some basic terminology.  In particular, this book 
is about the design of user interfaces, and it's useful to 
discuss what we mean by "user interfaces" and why we have 
decided to focus on the process of their "design."

We also tell you a little about the authors, we acknowledge 
some people and organizations that have helped with the book, 
and we tell you about the shareware concept under which the 
book is distributed.

--------------------------------
0.1  What's This Book All About?
--------------------------------

The central goal of this book is to teach the reader how to 
design user interfaces that will enable people to learn 
computer systems quickly and use them effectively, 
efficiently, and comfortably.  The interface issues addressed 
are primarily cognitive, that is, having to do with mental 
activities such as perception, memory, learning, and problem 
solving.  Physical ergonomic issues such as keyboard height 
or display contrast are covered only briefly.

0.1.1  Who Should Be Reading the Book?

We've designed this book to be most useful for people who are 
actually developing user interfaces.  That's in contrast to 
the full-time interface professionals who do research and 
evaluation in large corporations.  We strongly believe that 
effective interactive systems require a commitment and an 
understanding throughout the entire development process.  It 
just won't work to build a complete system and then, in the 
final stages of development, spread the interface over it 
like peanut butter.

With that in mind, some of the people who should be 
interested in this book are programmers, systems analysts, 
users and user-group representatives, technical writers, 
training coordinators, customer representatives, and managers 
at several levels.  All of these positions have input into 
how the final system will look and act.

0.1.2  What Is the User Interface?

The basic user interface is usually understood to include 
things like menus, windows, the keyboard, the mouse, the 
"beeps" and other sounds the computer makes, and in general, 
all the information channels that allow the user and the 
computer to communicate. 

Of course, using a modern computer system also involves 
reading manuals, calling help lines, attending training 
classes, asking questions of colleagues, and trying to puzzle 
out how software operates.  A successful computer system or 
software package supports those activities, so that support 
is part of the user interface too.  

But in a sense, all of these parts are the "peanut butter" we 
mentioned in the previous section.  No matter how well they 
are crafted, the interface will be a failure if the 
underlying system doesn't do what the user needs, in a way 
that the user finds appropriate.  In other words, the system 
has to match the users' tasks.  That's why the book's central 
message is the need for "task-centered" design, and that's 
why the design of the user interface can't be separated from 
the design of the rest of the system.

0.1.3  What Kind of User Interfaces Does This Book Cover? 

The principles presented in this book were developed 
primarily in the context of the interfaces to computer 
software and hardware, but they are also applicable to a wide 
variety of other machines, from complex equipment such as 
phone systems and video cameras to simple appliances like 
refrigerators and power tools.  Simpler machines are 
sometimes informative examples of problems or solutions in 
interface design.  

0.1.4  Why Focus on Design?

This book describes design processes that help to produce 
good interfaces.  The focus on process instead of end result 
deserves some explanation.  Why don't we simply describe what 
a good interface is and leave the reader to create interfaces 
that fit that description?  

There are several reasons.  An interface has to be matched to 
the task it will support, as well as to the users who will 
work with it.  There is an infinite variety of tasks and 
users, so there's no simple definition of a "good" interface.  
There have been many attempts to give broad, general 
guidelines for good interfaces, but those guidelines are 
usually too vague to be of much use.  For example, a general 
guideline might say, "Give adequate feedback."   But how will 
the designer determine what's "adequate"?   

More specific guidelines for elements of the final interface 
have also been developed, describing such elements as how 
menus should be designed, how to label icons, and so forth.  
These guidelines also have problems.  It's impossible to 
cover every possible combination of task, user, and interface 
technology, so no set of specific guidelines can be complete.  
Even so, lists of specific guidelines are often so large and 
cumbersome that practicing designers find them very difficult 
to use.  Further, in a given situation there are often 
several contradictory guidelines, and the designer has to 
rely on intuition to decide which are most important.

We might make an analogy between a designing a successful 
interface and a cutting a piece of string to the "right" 
length.  General guidelines for the length of a piece of 
string, such as "long enough to do the job," aren't very 
helpful; and a list of specific definitions of the correct 
length for every purpose would be endless: 6 inches to tie up 
sagging flowers, 42 inches for a small package, 78 inches to 
tie down the trunk on an old VW, etc.  But it's easy to 
describe a process that produces the right length:  start 
with a very long piece of string, tie up your plant, package, 
car, or whatever, and then cut off the string that's not 
being used.  Similarly, instead of specifying all the 
characteristics of the finished interface, this book present 
a design process that can produce good interfaces.

This is not to say that simply following the design process 
will magically produce a successful interface every time.  
The designer using the process must make many decisions along 
the way, relying on knowledge of users, their cognitive 
skills and limitations, and their tasks.  In addition, the 
interface design process will only be successful if it is 
integrated into the software production process as a whole.  
This book presents basic information about all of these 
issues, and it contains pointers to other books and articles 
containing further useful information.  All this material is 
organized in the context of the design process.  






-------------------------
0.2  How to Use This Book
-------------------------

The main body of this book is a series of chapters describing 
in rough chronological order the steps needed to design a 
good user interface.  Chapter 1 provides an overview of this 
process, and Chapters 2 through 7 fill in the details.  Two 
appendices provide additional information on topics that 
don't fit into this chronological structure and that may not 
be of interest to every reader.  Appendix L provides guidance 
on legal issues in interface design, while Appendix M gives 
an overview of management concerns.

0.2.1  HyperTopics and Examples

This book has been designed to achieve some of the advantages 
while avoiding some of the problems of computer-based 
hypertext.  Hypertext has the advantage of providing pointers 
within the text that lead readers to additional material on 
topics that interest them.  For example, a paragraph about 
typewriters might contain the word "keyboard," and clicking 
that word with a mouse could cause the computer to display a 
paragraph about different keyboard layouts.  We've 
incorporated a similar technique by placing examples and 
supplemental material called "HyperTopics" near the text 
they're related to.

Hypertext has the disadvantage that readers often become 
confused as they jump from the middle of one concept to 
another, and to another, and to another, loosing track of any 
central theme.  This book provides a mainline, the plain text 
you are reading now, that ties together all the details under 
the common theme of the design process.  Chapters in the book 
are ordered to reflect that process, although materials 
within each chapter are often organized according to more 
abstract principles.  For a quick overview or review of a 
chapter, you may want to read just the chapter's mainline.

0.2.2  Exercises

Readers who are seriously interested in becoming effective 
interface designers should work through the exercises for 
each chapter.  A central goal of task-centered design is to 
reveal interface problems to the designers who create them, 
before the interface hits the street.  But even with task-
centered design, the ability to identify interface problems 
is a skill that can be improved with practice.  The exercises 
are intended, in part, to give that practice.





============================================================
Example:  It's Obvious... Isn't It?
------------------------------------------------------------

You may read our examples of problem interfaces and say to 
yourself, "Well, that's an obvious problem.  No one would 
really design something like that.  Certainly I wouldn't."  

Here's a counter-example from the author's personal 
experience.  John has a stereo system with a matched set of 
components made by the same manufacturer: a receiver, a CD 
player, and a cassette deck,  stacked in that order.  They 
all have the on/off button on the left side.  Every time John 
goes to turn off all three components, he presses the top 
left button on the receiver, which turns it off; then he 
presses the top left button on the CD player, which turns it 
off; then, naturally, he presses the top left button on the 
cassette deck -- which pops open the cassette door.  In 
retrospect, it seems "obvious" that the manufacturer could 
have improved the interface by putting all three buttons in 
the same location.  But it clearly wasn't obvious to the 
system's designers, who (the advertisements tell us) were 
especially interested in building a system with a good user 
interface.  We can guess that it wasn't obvious because the 
designers never considered the right task: the task of 
turning off all three components in sequence.

The flip side of the "it's obvious" coin is that most actions 
used to accomplish tasks with an interface are quite obvious 
to people who know them, including, of course, the software 
designer.  But the actions are often not obvious to the 
first-time user.  For example, imagine a first-time user of a 
multiuser computer who has been shown how to login to the 
system, has done some work, and is now finished with the 
computer for the day.  Experienced computer users will find 
it obvious that a logout command is needed.  But it may not 
occur to first-time users that a special action is required 
to end the session.  People don't "log out" of typewriters or 
televisions or video games, so why should they log out of 
computers?  Even users who suspect that something is required 
won't be likely to know that typing the word "logout" or 
"exit" might do the job.

Learning to predict problems like these by taking the user's 
point of view is a skill that requires practice, and that 
practice is a fundamental goal of the exercises.
  
[end example]-----------------------------------------------






----------------------------------------------------------
0.3  About Shareware: How to Get and Pay for This Book
----------------------------------------------------------

We've decided to make this book available as "shareware."  
That means we, the authors, have retained the copyright to 
the book, but we allow you to copy it and to make your own 
decision about how much it is worth.  The details on copying 
restrictions and payment are included in a box at the end of 
every chapter, including this one.

0.3.1  Why Shareware?

We've chosen shareware as a distribution method for several 
reasons.  For one thing, we hope it will make the book 
available to a wider audience, both because the cost is less 
($5 + your printing/copying costs, as compared to probably 
$20 for a traditional book) and because anyone who can't 
afford the full cost is encouraged to pay just what they can 
afford -- or what they think the book is worth.  We've chosen 
to make the book shareware rather than freeware because we  
we would like some reimbursement for our development efforts.

We also hope that this distribution method will save a few 
trees.  We've intentionally removed all sophisticated 
formatting so the text can be used on-line as a reference 
with virtually any computer system.  You also have the option 
of printing just the chapters you need.  

Finally, we like the idea of distributing our ideas directly 
to the "end-user" without the filter of a publisher.  It's 
not that we think commercially published books are bad; but 
there's clearly room in the world for books that are 
published by individuals, just as there's room for handmade 
pottery, independent computer consultants, roving jugglers, 
and freelance carpenters.  We count ourselves fortunate to 
have caught the leading edge of a technology that makes this 
kind of independent publishing possible.

0.3.2  Special Note to Instructors and Students

Instructors who want to use this book for class have our 
permission to make and sell copies to students for the price 
of copying, or to have the copies made and sold through a 
commercial copy service, or to make an original available to 
students so they can make their own copies.  Please be sure 
to include the shareware notice from the front of the book in 
every copy (including copies of individual chapters).  
Students are asked to send in the shareware fee if they 
decide the book is useful to them.




0.3.3  Where to Get Up-To-Date Copies

To get a current copy of the electronic version of this book, 
use ftp to connect to "ftp.cs.colorado.edu" (yes, "ftp" is 
part of the address).  For login name, type "anonymous"; for 
password, give your full login name.  Look for the files in 
the directory /pub/cs/distribs/clewis/HCI-Design-Book.

0.3.4 Corrections and Additions

You can help us, and your fellow readers, by letting us know 
when our presentation is wrong or incomplete. We'll do our 
best to incorporate improvements into future versions.

0.3.5  Let Us Know What You Think

If you send in a shareware payment (or even if you don't!) 
we'd like to have your comments and suggestions.  What parts 
of the book are especially valuable to you?  What else would 
you like to see included?  We probably won't be able to 
answer specific questions or reply personally to your 
letters, but we'll consider your comments if the book is a 
success and we decide to do a major revision.

----------------------
0.4  About the Authors
----------------------

Clayton Lewis is Professor of Computer Science and a member 
of the Institute of Cognitive Science at the University of 
Colorado.  Before coming to Colorado he worked as a 
programmer, researcher, and manager of user interface 
development in corporate settings in the United States and 
England.  He has continued to maintain close contacts with 
industry.  Clayton holds a Ph.D. in psychology from the 
University of Michigan.  His current research involves 
theoretical analysis of learning processes, assessment and 
design of programming languages, and development of 
prototyping tools.

John Rieman is finishing a Ph.D. in computer science at the 
University of Colorado, where he is investigating users' 
techniques for learning new interfaces in the absence of 
formal training,  His interest in user interfaces developed 
during 10 years "in the trenches" as a user and manager of 
computerized editorial and typesetting systems.  John's 
varied background also includes studies in art, mathematics, 
and law, as well as work experience as an auto mechanic and 
truck driver.

Both authors have taught courses in user interface design 
using draft versions of portions of this book.


---------------------
0.5  Acknowledgements
---------------------

This book is a practically oriented distillation of ideas 
that have grown out of many years of productive 
collaboration, formal and informal, with individuals in both 
the academic and the industrial human-computer interaction  
(HCI) community.  We have attributed ideas to individuals 
wherever possible, but we acknowledge a debt to many unnamed 
persons whose efforts have combined to provide a deeper 
understanding of the problems and solutions in the field.

We especially acknowledge the contribution of two of our 
colleagues at the University of Colorado, Peter Polson and 
Gerhard Fischer. Their research, as well as their insightful 
counter-arguments to points we might otherwise have accepted 
as obvious, make CU an exciting and productive environment in 
which to do HCI research.

Clayton also wants to acknowledge his debt to John Gould, 
recently retired from IBM Research.  John has given Clayton 
help, guidance, and friendship, as well as his keen insights 
into all kinds of issues, technical and nontechnical, since 
1970.

Many people, including our students, contributed suggestions 
that have helped to make this revised edition of the book a 
better publication.  In particular, we acknowledge the 
detailed comments of Dieter Boecker of the GMD and John 
Patterson of SunSoft. 

Much of the research described here has been supported by the 
National Science Foundation (grants IRI 8722792 and 9116640), 
by US West, and by CU's Center for Advanced Decision Support 
in Water and Environmental Systems (CADSWES).  


----------------
0.6  Disclaimers
----------------

The opinions, findings, conclusions, and recommendations 
expressed in this publication are those of the authors and do 
not necessarily reflect the views of the agencies named in 
the acknowledgments section.

Comments about interfaces used as examples should not be 
taken as an evaluation of the interfaces as a whole.  Every 
interface has its good and its bad points, and we have simply 
chosen problems that illustrate our topics.   

Wherever trademarks have been used in this book they have 
been capitalized, to the best of our knowledge.