Provide Effective Feedback and Guidance and Assistance 605
Step 9: Provide Effective Feedback and Guidance and Assistance 605
–– Provide a constructive correction message saying • What problem was detected. • Which items are in error. • What corrective action is necessary.
–– Initiate a clarification dialog if necessary. Preventing, detecting, and correcting errors involve doing the following:
Prevention . It is always better to prevent errors than handle them. Errors can be reduced in several ways. First, disable all choices that are not applicable at any one moment. Make improper alternatives impossible to select or activate. Next, after considering the task and user, if practical, design screens using selection instead of entry controls. Selection error rates tend to be lower than entry error rates. Use aided entry if at all possible. The computer has been found to be a bet- ter speller than most people. When entry is performed, human misspellings of commands and requests should be accepted by the system. Person-to-person communication does not require perfection. Person-to-computer communication should impose no more rigor than that imposed between people. Use of the Shift key should also be discouraged, because it is such a large cause of keying errors. Actions about to be performed should also be reviewable and changeable. Keying or selection slips will occasionally occur.
A common send mechanism should be provided to transmit an action to the system. The existence of two or more keys to accomplish the same purpose, espe- cially if their use is mandated by different conditions, can be confusing and more prone to error.
If an action causes a critical or irreversible change, the user should be requested to confirm the change. Primarily used to prevent slips, confirmations should be used sparingly because they slow task performance. Frequent use may also cause people to ignore them. If keys are used for confirmation, a separate key should be used for this purpose, not the “Send” key. More typically, a dialog box is used to ask the user if the action about to be performed was intended, and if the user wishes to proceed. Messages to the user should be detailed but con- cise. The message should be structured to require a Yes or No answer, or with an action verb that conveys the action to be performed. The use of OK and Cancel together should be avoided. When an action’s consequences are not serious, or can be easily reversed, confirmations are not needed. Let expert users disable the confirmation request, if the action is recoverable.
Finally, provide an automatic and continuous Save function so that users never lose their work because of a system (or user) malfunction.
Detection. The computer should detect errors quickly, but without disrupting a per- son’s thought patterns and actions if this can be avoided. Generally, the longer the wait before editing is performed, the longer the time to accomplish the edit- ing. So, validate according to how important accuracy is to the user, and the char- acteristics of the task being performed. It is also preferable to wait for a closure point in the dialog. For conversational dialogs, accuracy is usually more impor- tant than speed, actions are slower paced, and more closure points usually exist.
606 Part 2: The User Interface Design Process
In these situations, validate as close to the point of input as possible: at the char- acter level or at the control level, and when the transaction is completed or the window closed. High-speed, head-down data entry is generally fast paced. Constant interruptions for errors can be a great speed detriment. In this situation, validate when the transaction is completed or the window closed. This is usually the only task closure point.
All errors should be maintained on the screen and identified to the user through a highlighting display technique (for example, high intensity or con- trasting color). Display an error message in a dialog box and position it on the screen so it does not obscure the item in error. Handle all errors as gracefully as possible, avoiding discouraging, embarrassing, or alarming words. Words with such intent can compound the frustration a person already feels in having made an error. For minor problems, provide less intrusive warnings. The greater the error, the more dramatic may be the warning. Be cautious in using auditory sig- nals to notify of an error. Many people, especially those with status or position, do not want their inefficiencies advertised, especially to peers and subordinates.
Correction . Preserve as much of the user’s work as possible. It can be irritating to have to reenter an entire screen when only one field is in error. At the window level of validation, use a modeless dialog box to display a list of errors. Highlight the first error in the list and place the cursor at the first control with error. Permit fixing one error, and then continuing on to the next error. If multiple errors occur, and it is impossible to display messages about all of them at one time, provide an indication that there are additional messages. Say, for example, “+ 2 other prob- lems.” Also, provide a distinct visual difference if the same error message is dis- played more than once because the first attempt to correct the problem failed. A person may not notice a repeated message that looks identical to the previous one. Always give a person something to do when an error occurs: something to enter, save, or reverse, or someone to call. Also provide a Help button. The Help button must be helpful, though.
Explicit and constructive error messages should be provided. These messages should describe what error occurred, and how it should be corrected. Corrective actions will be clearer if phrased with words like “must be” or “must have.” A study addressing restructuring messages following guidelines such as these, and others previously described, found improved success rates in fixing errors, lower overall error rates, and improved user satisfaction. Any error ambiguities should
be resolved by having the system query the user. Errors should be corrected with minimal typing. Another important error control measure is to have the system identify and store errors. This will allow tracking of common errors so that appropriate prevention programs can be implemented.