`
`1is Kth
`
`iilsp I.ecvgiie Vhe Presidet
`
`hifoWard Publishing
`
`/\
`
`TT\\
`
`___
`
`-7r
`
`.r
`
`\\\
`
`\_J -tj
`
`\_ /1
`
`\\\
`
`_I
`
`-\_L
`THE ESSEN1IALS OF
`USER INTERFACE DESIGN
`
`Eif oi
`
`ia1i Lthi1G5j HFi
`
`ree
`
`0001
`
`IBG 1029 (Part 1 of 4)
`CBM of U.S. Patent No. 7,412,416 B2
`
`
`
`0
`
`
`
`mmmqmmmmmw
`
`N.
`
`cI ____cJ
`_____c.J
`____Co
`If ________If
`________If
`________If
`____ Co
`
`
`
`w-~.mm-$%m-HZmm
`
`Cl __________
`
`0002
`
`0002
`
`
`
`Praise for Alan Coopers About Face..
`
`software god With Visual Basic he designed
`Alan Cooper is
`one of the key tools for designing new software Now hes
`sharing his wisdom about how to make that software useable
`landmark book
`This is
`Stewart Alsop Editor in Chief Info World
`
`speaks
`
`that
`
`About Face defines
`new interface design vocabulary
`to programmers in their own terms We have come
`long way from the time when there were just modal bad and
`and this book
`modeless good interfaces
`progress
`Charles SimonyiChief Architect Microsoft Corp
`
`reflects
`
`that
`
`deep compelling model of soft
`Alan Coopers mind harbors
`ware-human interaction which he presents clearly and applies
`systematically to real-world design problems in About Face
`This book is fast-paced irreverent and no-nonsense would
`recommend it
`executive
`or
`software
`development
`to any
`
`designer
`John Chishoim President Decisive Technology Corp
`Columnist UNIX Review
`
`0003
`
`
`
`About Face introduces in common language many new ideas and pearls of wis
`dom on how to design software
`that really is for the user It will help any software
`designer or programmer understand how to make the user
`feel good about using
`the product and at
`the same time maximize his/her productivity
`Mike Maples EVP Worldwide Products Microsoft Corp
`
`Alan Cooper popularized the idea of software
`separate and important
`design as
`discipline In About Face he passes along both the Big Picture strategy of good
`design as well as myriad examples that bring his principles to life For your sake
`leave the DOS prompt without it
`and the sake of your users dont
`Jesse Berst Columnist PCWeek
`Editorial Director
`Windows Watcher Newsletter
`
`About Face contains
`
`fresh ideas that are must for the toolset of anyone who is
`to interactive Web sites
`creating an interactive productfrom software
`Dave Carlick Senior EVP Poppe-Tyson Advertising
`
`About Face has no fluff Cooper provides
`just the information necessary for soft
`to improve their interfaces and programs right now The anecdotes
`ware designer
`to remember specific
`and the axioms make it easy
`and examples are excellent
`If this book doesnt help people improve their interfaces nothing will
`issues
`Larry Marine Usability Engineer Intuitive Design Engineering
`
`Alan Cooper is the Miss Manners of software design translating his deep exper
`information instantly useful
`attempting to tame
`tise into practical
`to developers
`interface My advice is to buy two copiesautograph the second
`the Windows
`and send it to an engineer
`at Microsoft
`Paul Saffo Director
`
`Institute for the Future
`
`thoroughly enjoyed Coopers writing style Programmers and designers
`business domains will
`find this book insightful
`Ann Winblad Software Venture Capitalist
`
`in all
`
`As Visual Basic consultant
`find Coopers practical design principles and goal-
`have helped me improve the quality and usability of my user
`directed approach
`face on my software
`interface designs and put the best
`Deborah Kurata Author
`Consultant
`
`About Face is
`
`concise and articulate explanation
`
`of user-centered
`
`design princi
`
`ples This is the kind of information that
`interface profession
`takes years for user
`als to accumulate on their own This book will surely become
`Penny Bauersfeld Human Interface Design Consultant
`Author Software by Design
`
`classic
`
`0004
`
`
`
`About Face
`
`The Essentials of User Interface Design
`
`Alan Cooper
`
`Division
`
`of
`
`IDG Books Worldwide
`Foster City CA
`
`Chicogo
`
`IL
`
`Inc
`
`Indianapolis
`
`IN
`
`Brainlree MA
`
`Southlake TX
`
`0005
`
`
`
`About Face The Essentials of User
`
`Interface Design
`
`Published by
`IDG Books Worldwide Inc
`An International
`Data Group Company
`919 East Hilisdale Boulevard Suite 400
`Foster City CA 94404
`
`Copyright
`
`Inc All rights reserved No
`1995 by IDG Books Worldwide
`Copyright
`part of this book including
`interior design cover design and illustrations
`may be reproduced
`or transmitted in any form by any means electronic
`photocopying recording or otherwise without
`the prior written permission
`of the publisher For authorization to photocopy items for internal corporate
`use personal use or for educational and/or classroom use please contact
`Copyright Clearance Center 222 Rosewood Drive Danvers MA 01923
`USA Fax 508-750-4470
`
`Library of Congress Catalog Card No 95-7505
`ISBN 1-56884-322-4
`
`Printed in the United States of America
`
`First Printing August 1995
`10
`
`Distributed in the United States by IDG Books Worldwide
`
`Inc
`
`of Warranty
`Limit of Liability/Disclaimer
`The author and publisher of this book have used their best efforts in prepar
`ing this book IDG Books Worldwide
`Data Group Inc
`Inc International
`and the author make no representation or warranties with respect
`to the accu
`racy or completeness of the contents of this book and specifically disclaim any
`implied warranties of merchantability or fitness for any particular purpose
`and shall
`in no event be liable for any loss of profit or any other commercial
`damage including but not limited to special
`incidental consequential or
`other damages
`
`Trademarks
`All brand names and product
`names used in this book are trademarks regis
`holders IDG Books
`tered trademarks or trade names of their respective
`Inc is not associated with any product or vendor mentioned in
`Worldwide
`this book
`
`Published in the United States
`
`0006
`
`
`
`OOIS Launched
`\VORLD WIDE
`
`Welcome
`
`to the world of
`
`IDG Books Worldwide
`
`Data Group the worlds largest publisher of
`subsidiary of
`Inc is
`IDG Books Worldwide
`on information
`information services
`computer-related information and the leading global
`provider of
`people worldwide
`and now employs more than 7700
`IDG was founded more than 25 years
`ago
`iechnology
`publications in 67 countries see listing below More than 70
`IDG publishes more than 250 computer
`each month
`read one or more IDG publications
`million people
`
`International
`
`computer books in the
`of best-selling
`IDG Books Worldwide is today the
`publisher
`in 1990
`awards from the Computer Press Association in recognition
`United States We are proud
`received
`to have
`Choice Awards and our
`from Computer Currents First Annual Readers
`and three
`of editorial excellence
`with translations
`in 28 languages
`For Dummies series has more than 19 million copies
`in print
`best-selling
`joint venture with IDGs Hi-Tech Beijing became the first U.S publisher
`IDG Books Worldwide
`through
`of China In record time IDG Books Worldwide has
`computer book in the Peoples Republic
`to publish
`the world who want to learn how to better manage
`of readers around
`become the first choice for millions
`
`their businesses
`
`is designed to bring extra value and skill-building
`instructions
`Our mission is simple Every one of our books
`and care about our readers The knowledge
`who understand
`to thc reader Our books
`are written by experts
`and journalism
`education
`in publishing
`base of our editorial staff comes from years of experience
`experience which we use to produce books for the 90s In short we care about books so we attract
`icons and
`best people We devote special
`use of
`interior design
`to details such
`as audience
`process of authoring editing and desktop publishing our
`illustrations And because
`we use an efficient
`less time on the
`and spend
`we can spend more time ensuring superior content
`electronically
`of making books
`
`attention
`
`books
`
`technicalities
`
`the
`
`to deliver high-quality books at competitive prices
`on our commitment
`You can count
`in the lOG tradition
`of delivering
`we continue
`quality
`to read about At IDG Books Worldwide
`from lOG Books Worldwide
`find no better book
`Youll
`
`than 25 years
`
`on
`
`subject
`
`than one
`
`on topics
`
`you want
`for more
`
`John Kilcullen
`President and CEO
`lOG Books Worldwide
`
`Inc
`
`.A BOI.JT
`
`WINNER
`
`Mnis1O.92
`
`____________
`
`.1
`
`_J
`WINNER
`
`____________
`
`BOOKS
`WORLDWIDE
`
`IDG Books Worldwide
`
`Inc is
`
`Pt
`
`ovider
`of
`COiC read
`
`information
`
`services
`
`/itgcirina
`ctv.ork World
`
`AnouiriO
`
`dc
`
`Inform/tica
`
`Le Guide
`
`World
`
`Ze.land
`
`Compuierworld
`Macvorlcf
`
`Coinputersvorld
`Chitia Intoworld
`
`Aorl/i
`
`lelecom
`
`PC World
`
`Espafla
`
`hlacWorld
`
`InfoWorld
`
`publisher
`computer-related
`in 67
`countnes
`over 250 computer
`publications
`tnclucle ARGENTINA
`Compuierworld
`Data Groups
`publications
`Data Group publications
`or niore International
`one
`News
`computerworlcl
`AUSTRALIA
`Dtgiial
`Living
`client/ServerJournal
`world
`GamePro Infoworld
`Argentina
`BRAZIL
`BELGIUM
`Data News
`BELARUS
`PC World Publishing Essentials Reseller AUSTRIA
`Bclarus
`TEST
`compuierwelt
`BULGARIA
`Brazil SUPERGAME
`world Braztl Publish
`Game Power Macworld
`computerworld Brazil
`Network World
`MacWorld Bulgaria CANADA dO canada
`Infocanada
`canada
`computerWorld
`Bulgaria Networkworld/Bulgaria
`con-puterworld
`computerworld colombia GamePro
`chile COLUMBIA
`World
`chile GamePro
`Canada Reseller World CHILE computerworld
`THE CZECH AND SLOVAK REPUBLICS
`Elektronila
`Czechoslovakia
`Czechoslovakia
`Computerworld
`COSTA RICA PC World
`Costa Rica/Nicaragua
`PC World Danmark Supplements
`PC World Danmark
`Danmark
`Danmark
`Macworld
`World Computerworld
`DENMARK
`Communications
`World
`Czechoslovakia
`GamePro EGYPT
`Middle
`East
`PC World Ecuador
`ECUADOR
`Dominicana
`REPUBLIC PC World
`TECH World DOMINICAN
`Republica
`Info PC
`FRANCE
`America FINLAND MikroPC
`Tietoviikko
`East EL SALVADOR
`Tietoverkko
`PC World
`PC World
`Middle
`GERMANY
`computerwoche
`coniputerwoche
`Business
`Computer
`Le Monde
`Reseaux
`Telecoms
`du Monde
`lnformatique
`Informatique
`PC Welt GREECE GamePro Macworld
`Publish
`I/M Information Management Macwelt
`GamePro
`Entertainment
`Focus Electronic
`Computerwoche
`America HONG KONG Computerworld
`Hong Kong PCWorld Hong Kong Publish
`HONDURAS
`Centro
`PC World
`GUATEMALA
`PC World
`Centro
`America
`PC World
`India
`Mac World Hungary PC-X Magazine INDIA
`Computerworld
`PC
`ABCD CD-ROM computerworld
`Szamitastechnika
`in Asia HUNGARY
`PC Live ISRAEL
`PC
`IRELAND
`in Asia
`ComputerScope
`Publish
`PC World Komputek Computerworld
`INDONESIA InfoKomputer
`in Asia
`India Publish
`PC
`Italia Macworld
`hahn Networking
`ITALY Computersvorld
`Italia Computerworld
`32 BIT People
`Computers
`SunWorld Japan Windows World Japan KENYA
`Japan Nikkei
`Personal Computing
`JAPAN Macworld
`PC World hahn PC World/Walt
`Disney
`Shopping
`Macedonia MALAYSIA
`PC World
`PC World Korea MACEDONIA
`Macworld
`KOREA Hi-Tech
`Korea
`Information/Computerworld
`Last African Computer News
`PC World Mexico MYANMAR PC
`Mexico GamePro Macworld
`in Asia MEXICO
`Computerworld
`PC World Malaysia
`Publish
`Compsicrvorld Malaysia
`NEW ZEALAND
`Computer Buyer
`Net Magazine
`Macworld
`LAN Magazine
`\Vorld Myaritoar NETHERLANDS
`Computable Computer
`NIGERIA PC World Africa NORWAY
`NICARAGUA
`PC World
`PC World New
`MTB Network World
`Zealand
`hex
`IDGs KURSGUIDE
`Telecom CW Rapport Offentlig
`CW Rapport
`Privat CW Rapport
`Sektor
`Nettverk
`Klient/Tjener
`Norge computerworhd
`Spesial PAKISTAN
`Windows
`PC Worlds
`PC World
`PC World Norge
`PC World Ekspress
`Norge Multimedia
`Netiverk
`World
`OF CHINA China computerworld
`PARAGUAY PC World
`PANAMA GamePro PC World
`Panama
`Paraguay
`PC World
`Pakistan
`Pakistan
`Software
`PC World
`China Popular
`Computer Week
`Electronics Today Game Camp
`Electronic Product World
`Communication
`Computer
`PC World Profesional Peru PC World Peru POLAND
`Poland
`Computerworld
`Peru GamePro
`PERU Computerworhd
`Product World
`in Asia PORTUGAL
`PC Digest
`Publish
`PHILIPPINES
`Philippines
`PC World Komputer
`Networld
`Computerworld
`Report Macworld
`Special
`Contputerworld
`Rico ROMANIA
`Romania
`PUERTO RICO PC World
`MacIn/PCIn
`CcrebrofPC World Correio informatico/Computerworld
`Portugal
`SINGAPORE
`PC World
`Russia
`Computerworld
`Singapore
`Network World Russia
`Romania RUSSIA
`PC World
`Romania Telecom
`computerworld
`Rossiya
`World S.A Software World SPAIN Computerworld
`SOUTH AFRICA Computing S.A Network
`in Asia SLOVENIA MONITOR
`Publish
`Espana PC World Espana SWEDEN CAPDesign
`Singapore
`Computing
`Computer Sweden
`Corporate
`WORLD Dealer World Macworld
`COMUNICACIONES
`Macworld
`PC World Windows World SWITZERLAND
`computerworld
`Kommunikation
`PC/Aktiv
`NOtverk
`Maxi Data MikroDatorn
`Taiwan Windows World THAILAND
`That Compuierworld
`Publish
`Taiwan Macworld Taiwan PC World
`Taiwan
`Pdtip TAIWAN
`Schweiz
`Computerworld
`Software
`PC WORLD
`UKRAINE
`Kiev Computers
`Computerworld
`MACWORLD
`TURKEY
`ubhish in Asia
`Computerworld
`Monitor
`Turkiye
`CD-ROM Now Computing
`CD Powerplay
`Amiga Appletalk
`KINGDOM
`User Amiga Action
`UNITED
`Acom
`Amiga Computing
`PC World
`Ukraine
`PC Works The WEB UNITED
`STATES
`xlagazine
`PC Home
`Parents
`and Computers
`Macworld
`Connexion GamePro
`Open Computing
`Macaction
`Lotus Magazine
`Video Magazine DOS World
`Electronic
`Client/Server
`CD Review
`Journal
`Computerworld
`ClO Magazine Computerworld
`Cable
`in the Classroom
`Event WebMaster URUGUAY
`WORLD Network World
`Video
`PC World
`SWATPro
`PUBLISH
`Magazine
`I-Way Macworld Maximize MULTIMEDIA
`lO/17/95b
`PC World Vietnam
`and VIETNAM
`Pd World Venezuela
`GameFro
`PC World Uruguay VENEZUELA
`Computerworld
`
`subsidiary
`information
`
`on
`
`of International
`
`technology
`
`Data Group
`International
`
`the worlds
`
`largest
`
`of
`
`Data Group publishes
`International
`each month
`Australian Macworld
`
`tnformatton
`
`and
`
`the leading
`global
`Seventy million
`
`computer
`World
`
`World colombia
`PC
`
`Computerworld
`
`Disinbutique
`
`Golden
`
`Extra
`
`connections
`
`Super
`
`Centro
`
`Italia
`
`Special
`
`Editions
`
`Lotus
`
`Italia
`
`Totaal
`
`Costa
`
`Rica/Nicaragua
`
`Computerworld
`
`Produktguide
`
`Puerto
`
`Computerworld
`
`Schweiz
`
`Turkiye
`
`Digital
`
`Venezuela
`
`0007
`
`
`
`For More Information
`
`information on IDG Books Worldwides
`For general
`in the U.S please
`books
`call our Consumer Customer Service department at 800-762-2974
`For
`reseller information including discounts and premium sales please call our
`Reseller Customer Service
`at 800-434-3422
`
`department
`
`For information on where to purchase IDG Books Worldwides
`books
`IDG Books Worldwide at 415-655-3021 or
`outside the U.S contact
`fax 415-655-3295
`
`For information on translations
`contact Marc Jeffrey Mikulich Director
`Subsidiary Rights at IDG Books Worldwide 415-655-3018
`fax 415-655-3295
`
`Foreign
`
`or
`
`For sales
`
`inquiries and special prices for bulk quantities write to the address
`IDG Books Worldwide at 415-655-3200
`above or call
`
`For information on using IDG Books Worldwides
`ordering examination
`
`in the classroom or
`the Education Office at 800-434-2086
`
`books
`
`copies
`
`contact
`
`or fax 817-251-8174
`
`For authorization to photocopy items for corporate personal or educational
`use please contact Copyright Clearance Center 222 Rosewood Drive
`Danvers MA 01923 or fax 508-750-4470
`
`About Face The Essentials of User Interface Design is distributed
`in Canada by
`Macmillan of Canada Division of Canada Publishing Corporation by
`Computer and Technical Books in Miami Florida for South America and the
`Caribbean by Longman Singapore in Singapore Malaysia Thailand and
`Korea by Toppan Co Ltd in Japan by Asia Computerworld
`in Hong Kong
`and New Zealand and by Transword
`by Woodslane Pty Ltd in Australia
`Publishers Ltd in the U.K and Europe
`
`0008
`
`
`
`About the Author
`
`Aan Cooper the Father of Visual Basic is an award-winning
`user inter
`face consultant and software designer His company Cooper Software mc has
`and help them
`broad range of clients to improve their products
`worked with
`new software products His experiences
`create exciting and successful
`
`in imple
`
`to creating better software through
`menting his unique approach
`design led him to write this book
`
`goal-directed
`
`and developed
`software
`including
`has designed
`Since 1976 Alan Cooper
`SuperProject Computer Associates MicroPhone II for Windows Software
`for Visual Basic Microsoft
`Ventures and the visual programming interface
`In 1976 he founded Structured Systems Group which Freiberger and Swaine
`in their book Fire in the Valley credited with producing perhaps the first seri
`ous business software for microcomputer
`
`Windows Pioneer award at
`
`the Windows
`how
`
`award recognized
`
`Bill Gates presented Cooper with
`in 1994 This rare and coveted
`World conference
`Coopers part in the invention of Visual Basic contributed
`Microsoft Windows
`
`to the success of
`
`director of both the Association for Software Design and the
`Alan Cooper is
`Software Entrepreneurs Forum He founded SEEs Windows SIG the largest
`frequent opinionated and
`Windows developer group in the world He is also
`and con
`engaging industry speaker and writer on the topics of user interface
`software design
`
`ceptual
`
`vii
`
`0009
`
`
`
`Credits
`
`Senior Vice President
`
`and Group Publisher
`Brenda McLaughlin
`
`Publishing Director
`John Osborn
`
`Senior Acquisitions Manager
`Arnorette Pedersen
`
`Managing Editor
`Kim Field
`
`Editorial Director
`
`Anne Marie Walker
`
`Editorial Assistant
`
`Dan HilIdale
`
`Production Director
`
`Beth Jenkins
`
`Production Assistant
`
`Jacalyn
`
`Pennywell
`
`Supervisor of
`Project Coordination
`
`Cindy
`
`Phipps
`
`Supervisor of Page Layout
`
`Kathie
`
`Schnorr
`
`Supervisor of Graphics and Design
`
`Shelley
`
`Lea
`
`Reprint Coordination
`
`Tony Augs burger
`Theresa Sanchez-Baker
`Todd Kiemme
`
`Blueline Coordinator
`
`Patricia
`
`Reynolds
`
`Project Editor
`
`Elizabeth Rogalin
`
`Manuscript Editor
`Karen Goeller
`
`Technical Reviewer
`
`Neil
`
`Rubenking
`
`Graphics Coordination
`Gina Scott
`
`Angela
`
`Hunckler
`
`Media/Archive
`
`Coordination
`
`Leslie Popplewell
`
`Melissa Stauffer
`
`Jason Marcuson
`
`Production Page Layout
`Benchmark Productions Inc
`
`Elizabeth CÆrdenas-Nelson
`
`Pro ofreaders
`
`Dwight Ramsey
`
`Carl Saff
`
`Indexer
`
`Liz Cunningham
`
`Book
`
`Cover Design
`Donald Maurer Benchmark
`Productions Inc
`TonBo Design
`
`0010
`
`
`
`To Sue
`for your love and patience
`while was submerged
`
`Acknowledgments
`
`there are few other
`
`of effort
`
`hose who have tackled
`
`tasks
`
`that
`
`require
`
`big writing projects know that
`outpouring
`non-stop
`such
`single-minded
`Although this is my first book Ive written big software programs before so
`project of this scope makes
`am well-acquainted with the immense demands
`hungry
`is like having
`big solo writing project
`My friend Gary Kratkin says
`and bad-tempered monster chained up in your basement You can go out and
`you must return home and feed the hungry beast
`have fun but eventually
`the past year
`There are many people who have helped me feed this beast over
`their contributions or both
`thanks for their patience
`who deserve my sincere
`doubt the people who sacrificed the most have been my family My
`Without
`lovely wife and business partner Sue has supported me and reassured me and
`the monster-feeding process Thank you for
`read all of my drafts throughout
`lighting up my life My two sons Scott and Marty missed many nights and
`was locked in my office writing instead of playing
`weekends with me when
`love you both beyond measure
`with them Thank you and
`
`quality
`
`talented
`
`software
`
`contribu
`
`Three of my colleagues at Cooper Software made material contributions to the
`this book Wayne Greenwood
`of
`and content
`designer carefully read all of the chapters and made many invaluable
`tions to the manuscript In many cases he was the first person to vet my terms
`and theories He also helped with most of the illustrations Geetha Reddy
`read many of the drafts and politely pointed
`another skilled interface designer
`and failures Alice Blairs comments were also very useful
`in
`
`out my successes
`out some dodgy prose
`
`straightening
`
`ix
`
`0011
`
`
`
`ACKNOWLEDGMENTS
`
`com
`Several people read an early draft of the book and provided worthwhile
`ments and guidance that had major effect on the eventual
`shape of the man
`uscript would like to deeply thank Deborah Kurata good luck on your own
`book Mike Nelson your moderating
`voice culled
`some too-hot
`flames
`Diana Nelson your insights were valuable throughout
`and Frank Cohen for
`
`your unique viewpoint
`
`Several other people read chapters
`sent email contributed ideas or generally
`helped to shovel monster food Thank
`you Carl Quinn Andrew McCarthy
`Geoff Faraghan Peter Rosberg
`Liz Cunningham Nanci
`Janell Bandy
`Kavanagh Andrew Singer Mike Geary Fran Finnegan John Zicker Steven
`List Cynthia Lewis Geoff Nicholls Jeff Prosise David Rygmyr Paul Yao Jim
`Constance
`Irwin Ted Young
`Rowan
`Fawcette
`Gregg
`Petersen
`Hutchinson Harmon Rogers Dan Barclay
`Evans Jr Joe McGinn Cam
`Marshall Mark Pruett Dick Grier David
`Headley and my best
`friend David
`for the March of Paradigms
`Carlick
`
`offered consistent
`
`At Programmers Press several
`individuals made enormous contributions to the
`quality of the book Both Chris Williams and Trudy Neuhaus were the first to
`see the potential of this book Anne Marie Walker stepped into this project
`the eleventh hour and injected
`much-needed
`dose of enthusiasm and energy
`Amy Pedersen
`support with the care and feeding of captive
`owe
`monsters
`huge debt of thanks to my skilled editor Karen Goeller and
`my technical
`editor Neil
`and queries
`Their comments
`Rubenking
`con
`tributed materially to the final quality of the book They both kept me from
`putting my foot in my mouth many times Any mistakes that slipped by them
`Id also like to thank Bill Gladstone
`are my responsibility
`and Matt Wagner
`Waterside and John Kilcullen at IDG Books for helping to pull About Face out
`of the ordinary mass of technical books
`
`at
`
`at
`
`The publisher would like to give special
`thanks to Patrick McGovern without
`whom this book would not have been possible
`
`0012
`
`
`
`Table of Contents
`
`Introduction
`Who should read this book
`wrote this book
`Why
`taxonomy of software design
`used in this book
`
`Conventions
`
`Lets design
`
`part
`
`Ioa1
`
`Goal-Directed Design
`Chapter
`The users goals
`
`The essence of user interface design
`
`fresh look at
`
`features
`
`Chapter
`
`Software Design
`
`Software isnt designed
`
`Conflict of interest
`
`The profession of software design
`
`Supporting
`
`software design disciplines
`
`Chapter
`The manifest model
`
`The Three Models
`
`Bringing mechanical
`
`age models into the information age
`
`Its worse on
`
`computer
`
`11
`
`12
`
`16
`
`18
`
`21
`
`21
`
`23
`
`24
`
`24
`
`27
`
`27
`
`35
`
`39
`
`xi
`
`0013
`
`
`
`xii
`
`CONTENTS
`
`Chapter
`
`Visual
`
`Interface Design
`
`the vocabulary
`Restucting
`The Canonical Vocabulary
`
`Designing
`
`for users
`
`1art II TIi1ie 1orrii
`
`Chapter
`
`Idioms and Affordances
`
`The Myth of Metaphor
`
`Manual
`
`affordances
`
`Understanding what it means
`An Irreverent History of Rectangles
`Chapter
`Xerox PARC
`
`Chapter Windows-with-a-Small-w
`
`Unnecessary
`
`rooms
`
`Necessary rooms
`
`Windows pollution
`
`ehapter
`
`Lord of the Files
`
`The tragedy of the file system
`software with the proper model
`the file model
`
`Designing
`
`Unifi
`Document management
`How did we get here
`
`$hapter
`
`Storage and Retrieval Systems
`
`Storing versus
`
`finding
`
`It aint document-centric
`
`10 Choosing Platforms
`jhapter
`Software is the expensive part
`The half-life of
`
`desktop computer
`
`Choosing
`
`development platform
`
`Simultaneous Multiplatform Development
`
`The Myth of Interoperability
`
`Part III The Behavior
`
`Chapter 11 Orchestration
`Planing on the step
`
`and Flow
`
`41
`
`47
`
`48
`
`49
`
`51
`
`53
`
`53
`
`64
`
`65
`
`on the Screen
`
`.67
`
`67
`
`73
`
`73
`
`75
`
`77
`
`81
`
`81
`
`86
`
`91
`
`92
`
`96
`
`101
`
`101
`
`107
`
`113
`
`11
`
`114
`
`116
`
`119
`
`121
`
`125
`
`127
`
`127
`
`0014
`
`
`
`Where were you on the night of the sixteenth
`
`Sensible
`
`interaction
`
`Chapter 12 Posture and State
`Posture
`
`Windows states
`MDI
`Chapter 13 Overhead
`Overhead
`
`and Idiocy
`
`Idiocy
`Chapter 14 The Secret Weapon of Interface Design
`Get memory
`
`Task coherence
`
`new way of thinking
`
`PartIVThelnteraction
`
`Chapter 15 Elephants Mice and Minnies
`Why we use mouse instead of
`pen
`
`Indirect manipulation
`
`Mice are not here to stay
`
`Mousing around
`The left mouse button
`
`Right mouse button
`
`Middle mouse button
`
`Things you can do with
`Up and down events
`The cursor
`
`Focus
`
`mouse
`
`Meta-keys
`Chapter 16 Selection
`
`Object-verb
`
`Concrete
`
`and discrete data
`
`Insertion and replacement
`
`Additive selection
`
`Group selection
`
`Visual
`
`indication
`
`of selection
`
`Chapter 17 Direct Manipulation
`
`CONTENTS
`
`Xii
`
`144
`
`146
`
`151
`
`151
`
`163
`
`168
`
`171
`
`171
`
`178
`
`183
`
`183
`
`186
`
`190
`
`193
`
`195
`
`195
`
`196
`
`197
`
`198
`
`200
`
`201
`
`202
`
`202
`
`207
`
`208
`
`212
`
`214
`
`217
`
`217
`
`219
`
`220
`
`222
`
`223
`
`224
`
`229
`
`0015
`
`
`
`xiv
`
`CONTENTS
`
`Manipulating gizmos
`
`Repositioning
`
`Resizing and reshaping
`
`Arrowing
`
`feedback
`
`visual
`
`Direct-manipulation
`Chapter 18 Drag-and-Drop
`Whither drag-and-drop
`Dragging where
`
`Master-and-target
`How master-and-target works
`Tool- manipulation drag-and- drop
`Bomb sighting
`Drag-and-drop problems and solutions
`
`PartVTheCast
`
`Chapter 19 The Meaning of Menus
`The command-line interface
`
`The hierarchical menu interface
`
`The Lotus 1-2-3 interface
`
`Monocline grouping
`The popup menu
`The pedagogic vector
`Chapter 20 Menus
`Standard menus
`
`The correct menus
`
`Meanwhile
`
`back on Planet Earth
`
`Optional menus
`Menu item variants
`
`The system menu
`Chapter 21 Dialog Boxes
`Suspension of normal interaction
`
`Dialog box basics
`
`Modal dialog boxes
`
`Modeless dialog boxes
`The modeless dialog problem
`
`231
`
`238
`
`239
`
`244
`
`245
`
`247
`
`247
`
`249
`
`249
`
`252
`
`256
`
`259
`
`260
`
`269
`
`271
`
`271
`
`272
`
`274
`
`276
`
`277
`
`278
`
`283
`
`283
`
`285
`
`288
`
`289
`
`291
`
`297
`
`299
`
`299
`
`302
`
`302
`
`303
`
`304
`
`0016
`
`
`
`Two solutions
`
`more radical
`
`but better solution
`
`Property dialog boxes
`
`Function
`
`dialog boxes
`
`Bulletin dialog boxes
`
`Process dialog boxes
`Chapter 22 Dialog Box Etiquette
`You rang
`
`The caption bar
`
`Transient posture
`
`Reduce excise
`Terminating commands for modal dialog boxes
`
`Keyboard shortcuts
`
`Tabbed dialogs
`
`Expanding dialogs
`
`Cascading dialogs
`
`Directed dialogs
`Chapter 23 Toolbars
`Visible and immediate
`
`The toolbar freed the menu to teach
`
`Beyond the buttcon
`
`Toolbar morphing
`Chapter 24 Roll
`Your programs name
`Your programs icon
`
`the Credits Please
`
`Dependencies
`
`About boxes
`
`Splash screens
`
`Easter eggs
`
`art S%TI
`
`Iiznios
`
`Chapter 25 Imperative and Selection Gizmos
`Gizmo-laden dialog boxes
`
`Gizmo liberation
`
`The gizmos that Mother gives you
`
`CONTENTS
`
`XV
`
`.305
`
`307
`
`311
`
`313
`
`313
`
`315
`
`319
`
`319
`
`320
`
`322
`
`322
`
`325
`
`328
`
`328
`
`334
`
`335
`
`337
`
`341
`
`341
`
`345
`
`349
`
`350
`
`355
`
`355
`
`357
`
`357
`
`358
`
`362
`
`364
`
`367
`
`369
`
`370
`
`370
`
`372
`
`0017
`
`
`
`xvi
`
`CONTENTS
`
`Imperative gizmos
`
`Selection
`
`gizmos
`Combobox
`
`Treeview gizmo
`Chapter 26 Entry and Display Gizmos
`
`Entry gizmos
`
`Bounding
`Unbounded entry fields
`
`Validation
`
`Using an edit
`
`field for output
`
`Display gizmos
`
`Those darned scrolibars
`Chapter 27 New Gizmos
`
`Directly manipulable
`
`tools
`
`Extraction gizmos
`
`Visual gizmos
`
`Adding visual
`
`richness
`
`PartVIITheGuardian
`
`Chapter 28 The End of Errors
`Eliminating the error message box
`Bulletin Dialog Boxes
`
`Stopping
`
`the proceedings
`
`Positive feedback
`Treat error messages like GOTOs
`
`Exceptions
`Do they work
`What error message dialog boxes should look like
`The end of errors
`
`Chapter 29 Managing Exceptions
`
`Alerts
`
`Confirmations
`Who are we protecting
`Audible feedback
`
`anyway
`
`Using your powers for good
`
`372
`
`375
`
`391
`
`392
`
`393
`
`393
`
`394
`
`397
`
`398
`
`403
`
`405
`
`406
`
`409
`
`409
`
`412
`
`416
`
`419
`
`421
`
`423
`
`423
`
`424
`
`425
`
`433
`
`435
`
`436
`
`437
`
`438
`
`439
`
`441
`
`441
`
`444
`
`448
`
`454
`
`457
`
`0018
`
`
`
`Failing gracefully
`
`Chapter 30 Undo
`Assisting the exploration
`The trouble with single undo
`
`Redo
`
`Special undo functions
`
`Deleted data buffer
`
`Other manifest models
`
`Undo is
`
`facility and should
`global
`not be managed by local controls
`
`Undo-proof operations
`
`PartVIIITheTeacher
`Chapter 31 Good at What You Do
`The time users spend
`Command vectors
`
`What beginners need
`intermediates need
`What perpetual
`need
`What experts
`Idiosyncratically modal behavior
`
`Commensurate
`
`effort
`
`the pointers
`
`The typers versus
`Standards
`
`Online help
`
`The inverted meta-question
`Chapter 32 Installation Configuration and Personalization
`is by reference
`to permanent objects
`Navigation
`Pull at your own risk
`The corporate look
`
`Installation
`
`Chapter 33 Shouldering the Burden
`those idle cycles to work
`Lets put
`Get our software talking to our hardware
`Chapter 34 Where Do We Go from Her
`
`Software sucks
`
`CONTENTS
`
`Xvii
`
`462
`
`465
`
`465
`
`470
`
`472
`
`473
`
`475
`
`476
`
`478
`
`478
`
`481
`
`483
`
`483
`
`486
`
`490
`
`492
`
`492
`
`493
`
`495
`
`495
`
`501
`
`504
`
`.507
`
`507
`
`510
`
`513
`
`515
`
`531
`
`533
`
`541
`
`543
`
`0019
`
`
`
`xviii
`
`CONTENTS
`
`We know
`lot about old technology
`Dont ask programmers to design while they code
`Solving the problem
`
`Im mad as hell and Im not gonna take it anymore
`
`545
`
`547
`
`548
`
`552
`
`0020
`
`
`
`Foreword
`
`and the completion
`of many bridges
`saw the construction
`1876
`Brooklyn Bridge One out of every four of those new bridges however
`It is hard for us now to imagine how the outcome of so basic
`construction
`It would be an extraordinary event
`
`of
`
`the
`
`failed
`
`for
`
`of the world
`
`could be so unpredictable
`project
`bridge built today to fail But every aspect of our understanding
`and uncertainty
`begins with ignorance
`
`For nearly
`
`half
`
`that of information
`
`insubstantial materials elec
`
`the abstract description
`
`of
`
`new field of construction
`century
`has been emerging Using the most
`technology
`and software
`tromagnetic fields and electrons
`and create
`for our minds to inhabit
`we can build structures
`pure processes
`reach But this field is still very much in
`fabulous tools that extend our mental
`its infancy and in our ignorance many of the things we have built thus far fail
`IIhat
`
`tJ Likewise
`tool or structure or to shape something
`and express the purpose of particular
`fits the mind that must use it can make even the most elaborate
`
`our inability to clearly understand
`
`that
`
`construc
`
`tion efforts worthless
`
`Afflugh there have already been significant Lrts to undertnd and iprov
`nty the engnerm of spft(cid:231)are
`thus far n1y modest
`the ftc
`ip1prov1ng its desiijn the process whereby it is given
`atfentip4ias beeri
`form
`
`xix
`
`0021
`
`
`
`xx
`
`FOREWORD
`
`This book
`
`represents
`
`it constitutes
`
`one of the first attempts to address this problem As such
`an important contribution to the nascent
`
`literature on software
`
`design especially
`
`as
`
`it
`
`is expressed in
`
`way that
`
`is useful
`
`to the practicing
`
`designer rather
`
`than the theoretician
`
`You may not agree with everything presented in this book but thoughtful soft
`ware designers will undoubtedly find the issues raised to be relevant and sum
`number of books from the human-computer-interaction
`ulating Unlike
`HCI community it addresses issues
`that go beyond mere
`interface design
`
`like functionality
`
`In all
`
`likelihood Alan Cooper will always be known principally for his role in
`think this book may be his greater con
`the development of Visual Basic but
`tribution to our field For now it stands virtually alone on the software design
`bookshelf
`
`Andrew Singer
`June 1995
`
`Biography of Andrew Singer
`Andrew Singer
`is best known for his work on programming environments and work
`group tools at Think Technologies
`company he co-founded in 1982 and whose
`product development efforts he led until
`its acquisition by Symantec in 1987
`
`He chairs
`
`the board of the Assqciation
`for Software Design
`society he rganized in 1992 wifh Mitchell Kapor
`
`non-profit professional
`
`Interval Research Corporation
`1801 Page Mill Road
`PaloAltoCA94304
`
`singer@interval.com
`
`0022
`
`
`
`Introduction
`
`This book is intended
`
`to provide you with effective and
`These tools
`tools for designing user
`
`interfaces
`
`practical
`
`come
`
`user
`
`varieties
`
`tactical
`
`and strategic
`
`in two distinct
`tools are hints and tips about using and creating
`Tactical
`interface idioms like dialog boxes and push buttons
`interface
`are ways to think about
`user
`tools
`Strategic
`idiomsin other words the ways in which the user and the
`
`cornucopia
`whole While
`
`idiom interact
`
`Although books are available that deal with either strategic
`book
`that
`tools my goal has been to create
`want
`to give you
`the two together
`
`or
`
`tactical
`
`weaves
`
`about user
`
`interface
`
`design as
`
`of insights
`helping you design more attractive
`dialog
`boxes this book will simultaneously help you understand
`user comprehends and interacts with your soft
`hOW the
`
`and effective
`
`ware
`
`the tactical and the
`strategic
`beliee
`that
`integrating
`approaches is the key to designing effective software inter
`faces For earnp1e there is no such thing as an objectively
`good dialog boxthe quality depends on the situation
`who the user is and what his background and goals are
`
`0023
`
`
`
`INTRODUCTION
`
`tactical
`
`user
`
`interface
`
`creation
`
`set of
`dictums will make
`Merely applying
`easier but it wont make the end result better Just thinking beautiful
`about how users should interact with your system wont
`improve the soft
`ware either What will work is maintaining
`strategic sensitivity for how users
`interact with specific software This will enable you to correctly
`choose
`the
`appropriate tactics to apply in
`particular situation
`
`thoughts
`
`The first three parts of this book stress strategy but youll
`ven throughout
`
`find tactics interwo
`
`There are two steps to user
`the synthesis of solution and the
`interface design
`testing of the validity of that solution The latter
`discipline widely known
`
`is
`
`as usability while the tormer
`
`is referred
`
`interface
`
`design
`
`.\\ /LI
`
`UALL
`
`to sim