throbber

`
`Usability Engineering
`
`JAKOB NIELSEN
`
`SunSoft
`2550 Garcia Avenue
`Mountain View, California
`
`MU
`
`Morgan Kaufmann
`
`An Imprint of Elsevier
`
`Amsterdam Boston Heidelberg London New York Oxford
`Paris San Diego
`San Francisco Singapore Sydney Tokyo
`
`Apple Inc.
`Exhibit 1017
`
`Page 001
`
`Apple Inc.
`Exhibit 1017
`Page 001
`
`

`

`This book is printed on acid-free paper.
`
`Copyright © 1993 by Academic Press.
`
`An Imprint of Elsevier
`
`All rights reserved.
`
`No part of this publication may be reproduced or transmitted in any form or by
`any means, electronic or mechanical, including photocopy, recording, or any
`information storage and retrieval system, without permission in writing from
`the publisher.
`
`Pemiissions may be sought directly from Elsevier's Science and Technology Rights Department in
`Oxford, UK. Phone: (44) 1865 843830, Fax: (44) 1865 853333, e-mail: permissions®elsevier.co.uk.
`You may also complete your request on-line via the Elsevier homepage: http://www.elsevier.com by
`selecting "Customer Support" and then "Obtaining Permissions".
`
`All brand names and product names are trademarks or registered trademarks of
`their respective companies.
`
`ACADEMIC PRESS
`
`An Imprint of Elsevier
`525 B Street, Suite 1900, San Diego, CA 92101-4495 USA
`http://www.academicpress.com
`
`Academic Press
`
`Harcourt Place, 32 Jamestown Road, London, NW1 7BY UK
`
`Morgan Kaufmann
`340 Pine Street, Sixth Floor, San Francisco, CA 94104-3205
`http://www.mkp.com
`
`Library of Congress Catalog Number: 93000488
`International Standard Book Number: 0-12-518406-9
`
`Printed in the United States of America
`04 05 06 07 08/12
`
`Apple Inc.
`Exhibit 1017
`
`Page 002
`
`Apple Inc.
`Exhibit 1017
`Page 002
`
`

`

`Apple Inc.
`Exhibit 1017
`
`Page 003
`
`Usablllty Heuristics
`
`\ M
`
`etaphors also present potential problems with respect to interna-
`tionalization, since not all metaphors are meaningful to all cultures.
`For example, a Danish interface designer might choose to use the
`pause signal as a metaphor for delayed system response, drawing
`upon the common knowledge that radio stations play a special
`endless tune of the same 13 notes repeated over and over when one
`show finishes before the scheduled starting time of the next.
`However, the concept of a pause signal would be quite foreign to
`users in many other countries, such as the United States, where
`radio stations fill every available moment with commercials and
`would never put on a special signal just to fill up time.
`
`5.3 Minimize User Memory Load
`
`Computers are very good at remembering things very precisely, so
`they should take over the burden of memory from the user as
`much as possible. In general, people have a much easier time at
`recognizing something that is shown to them than they have at
`having to recall the same information from memory without help.
`This phenomenon is well known to anybody who has learned a
`foreign language: Your passive vocabulary is always much larger
`than your active vocabulary. And of course, computers really speak
`a foreign language as far as the users are concerned.
`
`The computer should therefore display dialogue elements to the
`users and allow them to choose from items generated by the
`computer or to edit them. Menus are a typical technology to
`achieve this goal. It is also much easier for the user to modify infor-
`mation displayed by the computer than to have to generate all of
`the desired result from scratch. For example, when users want to
`rename an information object, it is very likely that they will want
`the new name to be similar to the old one, so the text edit field in
`which the user is supposed to enter the new name should be pre-
`populated with the old name, allowing users to make modifica-
`tions instead of typing everything.
`
`Interfaces based on recognition rely to a great extent on the visi-
`bility of the objects of interest to the user. Unfortunately, displaying
`
`
`
`129
`
`Apple Inc.
`Exhibit 1017
`Page 003
`
`

`

`_—_—_—_————
`Usablllty Englneerlng
`
`
`Usablllty Heurlstics
`
`AAAAAAAI
`BBBBBBB
`
`AAAAAAA
`CCCCCCC
`BBBBBBB
`
`Ar:
`
`WQASTE”
`
`too many objects and attributes will result in a relative loss of
`salience for the ones of interest to the user, so care should be taken
`to match object visibility as much as possible with the user’s needs
`[Gilmore 1991]. As usual we find that ”less is more."
`
`Whenever users are asked to provide input, the system should
`describe the required format and, if possible, provide an example
`of legal and sensible input, such as a default value. For example, a
`system asking the user to enter a date could do it as follows:
`- Enter date (DD—Mmm—YY, e.g., 2-Aug-93):
`
`An even better dialogue design would provide the example in the
`input field itself as a default value (possibly using today's date or
`some other reasonable date), thus allowing the user to edit the date
`rather than having to enter all of it.
`
`There is no need for the user to have to remember or guess at the
`range of legal input and the unit of measurement that will be used
`to interpret it. Instead, the system can supply that information as
`part of the dialogue, such as, for example:
`- Left margin:
`19 points [0—128]
`
`A famous example indicating the need to display measurement
`units to help the user’s memory was the positioning of a space—
`based mirror by the space shuttle Discovery [Neumann 1991]. The
`mirror was supposed to be aimed at a mountain top in order to
`reflect a laser beam, and the user had ordered the computer to
`point the mirror toward a point with an elevation of ”10,023 above
`sea level.” The user apparently entered the elevation as if it were
`measured in feet, whereas, in fact, the system used miles as its
`measurement unit, causing the mirror to be aimed away from the
`Earth, toward a point 10,000 miles out in space.5
`
`To minimize the users’ memory load, the system should be based
`on a small number of pervasive rules that apply throughout the
`
`5. With respect to measurement units, other usability principles often lead to a
`need allow users to select between several alternative units, such as inches,
`feet, miles, centimeter, meter, and kilometer, depending on their needs.
`
`Figure 13 A generic command: ”Paste” can be used to insert a line of C’s
`
`(text) as well as a striped square (graphics) at the insertion point.
`
`user interface. If a very large number of rules is needed to deter-
`mine the behavior of the system, then the user will have to learn
`and remember all those rules, making them a burden. On the other
`hand, if the system is not governed by any rules at all, then the user
`will have to learn every single dialogue element on its own, and it
`is impossible to predict the behavior of a dialogue element without
`already knowing (and remembering) how it works.
`
`The use of generic commands [Rosenberg and Moran 1984] is one
`way to let a few rules govern a complex system. As shown in
`Figure 13, generic commands make similar things happen in
`different circumstances, making it sufficient for the user to learn a
`few commands in order to work with many different types of data.
`One of the main advantages of generic commands is that they
`support transfer of learning from one application to the next, since
`users do not need to releam those commands they already know
`[Ziegler et a1. 1986].
`
`Generic commands need not perform exactly the same function in
`all circumstances, as long as the user can think of the command as
`
`130
`
`131
`
`Apple Inc.
`Exhibit 1017
`Page 004
`
`

`

`
`Usability Englneering
`
`—_——_‘
`Usablltty Heuristlcs
`
`a single unified concept, such as “insert the object from the clip-
`board” in the case of a paste command. As shown by Figure 13,
`this generic command may actually insert the clipboard and move
`some old objects out of the way, when it operates on text, but
`perform the insert operation without moving anything when it
`operates on graphics. The designer of a generic command will need
`to determine what ”naturally” feels like the same command to
`users, even if some details will differ due to the requirements of the
`different parts of the system.
`
`
`
`5.4 Consistency
`
`Consistency is one of the most basic usability principles. If users
`know that the same command or the same action will always have
`the same effect, they will feel more confident in using the system,
`and they will be encouraged to try out exploratory learning strate-
`gies because they will already have part of the knowledge needed
`to operate new parts of the system [Lewis et al. 1989].
`
`The same information should be presented in the same location on
`all screens and dialog boxes and it should be formatted in the same
`way to facilitate recognition. For example, my heating bill contains
`a comparison between my current heating use and my use in the
`same month in the previous year, listed as a table with the current
`year in the left column and the previous year in the right. To facili-
`tate my interpretation of these numbers, a footnote on the bill
`furthermore contains information about the average temperature
`in each of the two years. Unfortunately, the footnote mentions the
`previous year before (that is, to the left of) the current year, thus
`inverting the relation compared to that used in the table. Consis-
`tency considerations would have implied a design of this printout
`with the same spatial relation between the two periods for both
`kinds of information. An order where the previous year was
`mentioned before the current year might be preferred as being
`consistent with the way timelines work, but unfortunately one can
`also argue that the reverse order achieves a better match with the
`user’s task of assessing current heat usage. As is often the case in
`
`
`132
`
`user interface design, one would have to decide which of these two
`considerations was most important; once this decision had been
`made, one should follow it consistently and not mix the two layout
`rules.
`
`Many aspects of consistency become easier to achieve to the extent
`that one is following a user interface standard in the design, since
`the standard will then have specified many details of the dialogue,
`such as, for example, how to indicate a pop-up menu or which
`typeface to use in a list of font sizes. See Chapter 8 for a discussion
`of user interface standards and ways to increase compliance and
`thereby consistency. Unfortunately, standards compliance is not
`sufficient to ensure consistency, since the standards leave a fair
`amount of leeway for the designers. See the discussion of user
`interface coordination in Section 4.6 (page 90) for ways to promote
`consistency during interface design.
`
`Consistency is not just a question of screen design, but includes
`considerations of the task and functionality structure of the system
`[Kellogg 1987, 1989]. For example, Eberts and MacMillan [1987]
`found that subjects were more confused when they switched
`between using a command-line mainframe and a command-line
`personal computer
`than when they switched between the
`command—line personal computer and a graphical personal
`computer. From a screen design perspective, the two command-
`line interfaces were very similar, but the underlying operating
`systems were in fact very different. And the two personal computer
`interfaces were built on top of systems with the same basic philos-
`ophy and features.
`
`A study of a popular spreadsheet program found 10 consistency
`problems causing common errors for novice users [Doyle 1990].
`Seven of these problems were due to inconsistencies between the
`spreadsheet and the users’ task expectations, three were due to
`inconsistencies between the spreadsheet and other user interfaces,
`and only two problems were due to inconsistencies within the
`spreadsheet itself. The spreadsheet’s menu navigation method was
`classified as being inconsistent in all three ways and was therefore
`counted in all three categories. Of course, other systems may have
`
`133
`
`Apple Inc.
`Exhibit 1017
`Page 005
`
`

`

`____—_——_——————-
`Usablllty Engineering
`
`
`Usablllly Heurlstlcs
`
`different distributions of their consistency problems, but it is prob-
`ably quite representative that the larger scopes of consistency are
`the most difficult to get right.
`
`
`
`:5.5 Feedback
`
`The system should continuously inform the user about what it is
`doing and how it is interpreting the user’s input. Feedback should
`not wait until an error situation has occurred: The system should
`also provide positive feedback, and it should provide partial feed-
`back as information becomes available. For example, the way to
`write the German letter ii on many keyboards involves first typing
`the umlaut, ", and then typing the character that is to go under the
`two dots. Some systems provide no visible feedback as the first
`part of the character is typed,
`leading many novice users to
`conclude that the system does not know how to deal with umlauts.
`A better design would show the umlaut and then change the
`cursor in some way to indicate that the system was waiting for the
`second part of the character.
`System feedback should not be expressed in abstract and general
`terms but should restate and rephrase the user’s input to indicate
`what is being done with it. For example, it is a good idea to give a
`warning message in case the user is about to perform an irrevers—
`ible action, such as overwriting a file (see Section 5.9). Assume that
`the user is about to copy a file to another disk and that the copy
`operation would overwrite a file with the same name. The worst
`feedback (except none, of course) would be to state that a file was
`about to be overwritten, without giving its name. Better feedback
`would include the name of the file, and even better feedback would
`include attributes of the two files, such as file type and modifica-
`tion date, to help the user understand whether the copy operation
`was just replacing an old copy with a newer copy of the same file
`or whether the file being overwritten was in fact a completely
`different file that happened to have the same name.
`
`Different types of feedback may need different degrees of persis—
`tence in the interface [Nielsen 1987c]. Some feedback is only rele-
`
`
`134
`
`vant for the duration of a certain phenomenon, and can thus have
`low persistence, going away when it is no longer needed. For
`example a message stating that the printer is out of paper should
`be removed automatically once the problem has been fixed. Other
`feedback needs to have medium persistence and stay on the screen
`until the user explicitly acknowledges it. An example in this cate-
`gory would be a message stating that the user’s output had been
`rerouted to another printer because of some problem with the
`printer specified by the user. Finally, a few types of feedback may
`be so important that they require high persistence, remaining a
`permanent part of the interface. An example might be the indica-
`tion of remaining free space on a hard disk.
`
`Response Time
`
`Feedback becomes especially important in case the system has long
`response times for certain operations. The basic advice regarding
`response times has been about the same for many years [Miller
`1968; Card et al. 1991]:
`
`0 0.1 second is about the limit for having the user feel that the
`system is reacting instantaneously, meaning that no special feed-
`back is necessary except to display the result.
`0 1.0 second is about the limit for the user’s flow of thought to stay
`uninterrupted, even though the user will notice the delay.
`Normally, no special feedback is necessary during delays of
`more than 0.1 but less than 1.0 second, but the user does lose the
`feeling of operating directly on the data.
`. 10 seconds is about the limit for keeping the user’s attention
`focused on the dialogue. For longer delays, users will want to
`perform other tasks while waiting for the computer to finish, so
`they should be given feedback indicating when the computer
`expects to be done. Feedback during the delay is especially
`important if the response time is likely to be highly variable,
`since users will then not know what to expect.
`
`Normally, response times should be as fast as possible, but it is also
`possible for the computer to react so fast that the user cannot keep
`up with the feedback. For example, a scrolling list may move so
`fast that the user cannot stop it in time for the desired element to
`
`135
`
`Apple Inc.
`Exhibit 1017
`Page 006
`
`

`

`__—___—_———————
`Usablllty Engineering
`
`Sending the File “Usability Book.chapter5"
`Size: 157,841 Bytes.
`
`Estimated Time Remaining (min:sec): 1:30
`
`I
`100%
`
`Percent-done indicator for a hypothetical file-transfer
`Figure 14
`program. The design not only provides feedback expressed in the user's
`terms (the name of the file) and with respect to the progress of the transfer,
`it also provides an easy way out (cf. Section 5.6) in case the user gets tired
`
`of waiting or discovers that the wrong file is being transferred.
`
`remain within the available window. The fact that computers can
`be too fast indicates the need for user—interface changes, like anima—
`tions, to be timed according to a real-time clock rather than being
`timed as an indirect effect of the computer’s execution speed: Even
`if a faster model computer is substituted, the user interface should
`still be usable.
`
`In cases where the computer cannot provide fairly immediate
`response, continuous feedback should be provided to the user in
`form of a percent-done indicator like the one shown in Figure 14
`[Myers 1985]. As a rule of thumb, percent—done progress indicators
`should be used for operations taking more than about 10 seconds.
`Progress indicators have three main advantages: They reassure the
`user that the system has not crashed but is working on his or her
`problem; they indicate approximately how long the user can be
`expected to wait, thus allowing the user to do other activities
`during long waits; and they finally provide something for the user
`to look at, thus making the wait less painful. This latter advantage
`should not be underestimated and is one reason for recommending
`a graphic progress bar instead of just stating the expected
`remaining time in numbers.
`
`
`136
`
`
`Usabllity Heuristics
`
`For operations Where it is unknown in advance how much work
`has to be done, it may not be possible to use a percent-done indi-
`cator, but it is still possible to provide running progress feedback in
`terms of the absolute amount of work done. For example, a system
`searching an unknown number of remote databases could print the
`name of each database as it is processed. If this is not possible
`either, a last resort would be to use a less specific progress indicator
`in the form of a spinning ball, a busy bee flying over the screen,
`dots printed on a status line, or any such mechanism that at least
`indicates that the system is working, even if it does not indicate
`what it is doing.
`
`For reasonably fast operations, taking between 2 and 10 seconds, a
`true percent—done indicator may be overkill and, in fact, putting
`one up would Violate the principle of display inertia (avoiding
`flash changes on the screen so rapidly that the user cannot keep
`pace or feels stressed). One could still give less conspicuous
`progress feedback. A common solution is to combine a ”busy”
`cursor with a rapidly changing number in small field in the bottom
`of the screen to indicate how much has been done.
`
`System Failure
`Informative feedback should also be given in case of system failure.
`Many systems are not designed to do so and simply stop
`responding to the user when they go down. Unfortunately, no
`feedback is almost the worst possible feedback since it leaves users
`to guess what it wrong. Systems can be designed for graceful
`degradation, enabling them to provide some feedback to users
`even when they are mostly down.
`
`As an example, consider feedback to users of an automated teller
`machine (ATM). On February 13, 1993, all 1,200 ATMs belonging to
`a major bank in New York City refused to perform any user trans-
`actions for a period of four hours due to a bug in a software
`upgrade installed at the data center. According to newspaper
`reports, customers ”crisscrossed the city on futile scavenger hunts
`for an operating cash machine”6 since they did not know what was
`going on and hoped that other machines might be working. Since it
`would be unrealistic to expect a 1,200 node distributed computer
`
`137
`
`Apple Inc.
`Exhibit 1017
`Page 007
`
`

`

`________.__._._._.-_.-———-—————--—
`Usability Engineering
`
`
`Usability Heuristics
`
`system to function perfectly all the time without any software,
`hardware, or network failures, the user interface at the ind1v1dual
`ATMs should be designed to provide information to customers in
`case of any such downtime. Different messages should be given,
`depending on Whether the error is due to the central system (in
`which case customers need not waste time finding another
`machine) or whether the error is local. In order to inform customers
`correctly, the ATM needs to be able to perform rudimentary diag-
`nostics, and the entire system needs to be built with such dlagnos—
`tics in mind. Assuming that the system is designed for it, it should
`be feasible to give users meaningful information about the hkely
`cause and/or location of any system failures.
`
`
`
`5.6 Clearly Marked Exits
`
`Users do not like to feel trapped by the computer. In order to
`increase the user’s feeling of being in control of the dialogue, the
`system should offer the user an easy way out of as many situations
`as possible. For example, all dialog boxes and system states should
`have a cancel button or other escape facility to bring the user back
`to the previous state.
`
`In many cases, exits can be provided in the form of an undo facility
`that reverts to the previous system state [Abowd and DIX 1992;
`Yang 1992]. Users quickly learn to rely on the existence of undo, so
`it should be made pervasively available throughout the system as a
`generic command that undoes any state changes rather than being
`restricted to only undoing a special category of user actions. Given
`that undo and escape facilities are generally available, users Will
`feel encouraged to rely on exploratory learning since they can
`always try out unknown options, trusting in their ability to get out
`of any trouble without ill effects. A basic principle for user interface
`design should be to acknowledge that users will make errors no
`
`6. ”At a bank, automatic frustration machines,” New York Times February 14,
`1993, p. 45.
`
`
`
`138
`
`matter what else is done to improve the interface, and one should
`therefore make it as easy as possible to recover from these errors.
`
`As mentioned above, system response times should be as fast as
`possible. In cases where the computer cannot finish its processing
`within the 10-second limit for keeping the user’s attention,
`it
`should always be possible for the user to interrupt the computer
`and cancel the operation. In general, interfaces should show a high
`degree of responsiveness [Duis and Johnson 1990], to the extent
`that paying attention to the user’s new actions should get higher
`priority than finishing the user’s old actions. For example, if a
`graphics program takes a fair amount of time to repaint the screen,
`it should allow the user to scroll or to change the zoom level even
`before the screen has been completely redrawn.
`
`The various exit and undo mechanisms should be made visible in
`
`the interface and should not depend on the user ’5 ability to
`remember some special code or obscure combination of keys. Visi-
`bility is of course a general user interface design principle, with the
`possible exception of some dialogue accelerators, but visibility is
`especially crucial for exit support since users will need these mech-
`anisms in cases where they are in unfamiliar territory and may be
`afraid to lose data if they do the wrong thing.
`
`
`
`5.7 Shortcuts
`
`Even though it should be possible to operate a user interface with
`the knowledge of just a few general rules, it should also be possible
`for the experienced user to perform frequently used operations
`especially fast, using dialogue shortcuts. Typical accelerators
`include abbreviations, having function keys or command keys that
`package an entire command in a single keypress, double—clicking
`on an object to perform the most common operation on it, and
`having buttons available to access important functions directly
`from within those parts of the dialogue where they may be most
`frequently needed. Pen computers, vertual realities, and some
`mouse interfaces may may also use gestures as accelerators.
`
`
`139
`
`Apple Inc.
`Exhibit 1017
`Page 008
`
`

`

`________________________________________________—
`Usablllty Engineering
`
`*5
`Usability Heuristlcs
`
`A good example of a shortcut to make a frequent operation faster is
`the use of a sh'ucture generator in a hypertext authoring system
`[Jordan et al. 1989]. Since hypertext authors may often want to
`generate large numbers of similar hypertext structures with a given
`pattern of typed nodes and links (for example, each of the courses
`in an online course catalog might have nodes for course content,
`prerequisites, instructor, textbooks, and location), they can work
`faster if the system allows them to define templates of these struc-
`tures and to generate sets of nodes and links based on a template in
`a single operation. Macro and scripting facilities can be used to
`achieve similar effects in traditional command languages, and
`similar facilities are also being introduced to graphical user inter—
`faces.
`
`Type—ahead (typing the next input before the computer is ready to
`accept it) is not really a shortcut as such since it still requires the
`user to generate a complete sequence of input, but it can speed up
`the interaction by allowing the user to get ahead of the computer
`and not have to pay attention to all the steps in the dialogue. Simi-
`larly, in telephone-based interfaces and other speech-based inter-
`faces, users should be allowed to interrupt the voice prompts as
`soon as they know what to say. Graphical user interfaces can
`support a feature similar to type-ahead, in what might be called
`click-ahead: Users can click on the spot where the "OK” button will
`appear to dismiss dialog boxes before they have even appeared,
`and they can click in partly obscured windows before they have
`been made active. It is dangerous to allow type-ahead and click-
`ahead in all circumstances, however. For example, a critical alert
`message should not go away without having been visible, and the
`type-ahead buffer should be cleared in case there is an error in the
`execution of a prior command which would tend to make the rest
`of the user’s input invalid.
`
`Users should be allowed to jump directly to the desired location in
`large information spaces, such as a file or menu hierarchy. Often, a
`hypertext-like approach [Nielsen 1990a] can be used with links
`between information elements that are likely to be used together. In
`file systems, such links are often called aliases, since they provide a
`way to name an information object (file) without having to specify
`
`140
`
`the full pathname. Alternatively, popular locations may be given
`easy-to-remember names that have to be typed in by the user. This
`approach is popular on many videotex services. Finally, users may
`be allowed to give their own names to those locations they find
`especially important. By doing so, users can build up a list of book-
`marks that will enable them to return quickly to a small set of loca-
`tions [Bernstein 1988; Monk 1989]. Of course, following the
`”minimize—user—memory-load" principle,
`the user should have
`easylaccess to a list of the bookmarks defined by that user [Olsen
`1992 .
`
`Users should be able to reuse their interaction history [Greenberg
`1993]. A study of a command-line system showed that 35% of all
`commands were identical to one of the five previous commands
`and that 74% of the commands had been issued at least once before
`
`[Greenberg and Whitten 1988]. Thus, a simple menu of the last few
`things the user had done would make it possible for the user to
`reissue a large number of commands without having to reenter
`them. Also, word processors, hypertext systems, and other systems
`where users navigate large amounts of information should have a
`backtrack feature or other history mechanisms to allow the user to
`return directly to prior locations.
`
`Even though conunand reuse is simpler for command—language
`interfaces, some direct manipulation interfaces allow users to
`reissue the last formatfing command or repeat the last search
`command by a simple command-key shortcut. It is also possible to
`use a kind of comic strip to show previous states of a graphical
`interface as miniatures [Kurlander and Feiner 1992] using a prin-
`ciple called a visual cache to allow fast direct access to those states
`[Nielsen 1990g; Wiecha and Henrion 1987].
`
`As a simple example of the use of the user’s interaction history to
`provide shortcuts, some applications keep track of which files
`users often open in those applications [Barratt 1991]. The applica—
`tions can then offer users a special menu of the files they are most
`likely to open next, either because they have been used recently,
`because they are used a lot in general, or because they are normally
`used together with other files already opened in a particular
`
`
`141
`
`Apple Inc.
`Exhibit 1017
`Page 009
`
`

`

`____________——————-
`Usabillty Englneerlng
`_——___——__.——’—————
`
`
`Usablmy Heurlstlcs
`
`
`session. Statistics on such ”working sets” of files that are often used
`together are slightly harder to get right than statistics on the most
`recently used files, but they can offer users a convenient shortcut to
`get at several files in a simpler way than having to find them one at
`a time in the file system.
`
`System-provided default values constitute a shortcut since it is
`faster to recognize a default and accept it than having to specify a
`value or an option. In many cases, users do not even need to see the
`default value, which can remain hidden on an optional screen that
`is only accessed in the rare case where it needs to be changed.
`Defaults also help novice users learn the system since they reduce
`the number of actions users need to make before using the system,
`and since the default values give an indication of the kind of values
`that can legally be specified.
`
`
`
`5.8 Good Error Messages
`
`Error situations are critical for usability for two reasons: First, by
`definition they represent situations where the user is in trouble and
`potentially will be unable to use the system to achieve the desired
`goal. Second,
`they present opportunities for helping the user
`understand the system better [Frese et a1. 1991] since the user is
`usually motivated to pay some attention to the contents of error
`messages, and since the computer will often have some knowledge
`of what the problem is.
`
`Error messages should basically follow four simple rules [Shnei-
`derman 1982]:
`
`0 They should be phrased in clear language and avoid obscure
`codes. It should be possible for the user to understand the error
`message by itself without having to refer to any manuals or code
`dictionaries. It might be necessary to include internal, system—
`oriented information or codes to help systems managers track
`down the problem, but such information should always be given
`at the end of an otherwise human—readable error message and
`should be combined with constructive advice, such as “Report
`this information to your systems manager to get help.”
`
`I],
`142
`
`0 They should be precise rather than vague or general. For
`example, instead of saying, "Cannot open this document,”
`the computer should say "Cannot
`open
`‘Chapter
`5'
`because the application is not on the disk" (also
`following the principle about giving feedback by restating the
`user's input).
`
`0 They should constructively help the user solve the problem. For
`example, the above error message that a document could not be
`opened could be made more constructive by replacing the words
`"the application” with the name of the application, indi—
`cating to the user what should be done in order to read the docu-
`ment. The message could also offer to try to open the document
`with some other application that was known to accept data of the
`given type.
`
`One useful way of generating constructive error messages is by
`guessing at what the user really meant to say. In the case of
`textual input, spelling-correction methods have been available
`for many years [Peterson 1980; Bentley 1985], and these methods
`can be especially fast and precise when the set of correct user
`inputs is restricted to a known set of terms such as the names of
`files and commands [Bickel 1987]. Durham et al. [1983] found
`that even a simple spelling corrector could handle 27% of all user
`errors in a text-oriented interface, thus confirming the value of
`this cheap method. The Interlisp programming system eve

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket