[Contents] [Index] [Next] [Previous]

Communicate Application Actions to the User


Effective applications let the user know what is happening with the application, but without revealing implementation details. Proper communication between the user and the application increases user satisfaction. There are three guidelines for communicating from the application to the user: provide feedback, anticipate errors, and provide warnings.

Give the User Feedback

Feedback lets users know that the computer has received their input. Give users feedback whenever they have selected a component or Menu item by highlighting the component or Menu item in some way. In addition, if certain operations take more than a few seconds, you should let the user know that the computer is working on that operation by providing a message or by changing the pointer to a working pointer.

Anticipate Errors

Anticipate the errors that are likely to occur. By anticipating errors, you can avoid them in your design, enable the support of recovery attempts, and provide messages informing the user of the proper corrective action. For example, one technique for avoiding excessive error messages is to dim interface components when they cannot be used.

Context-sensitive help aids understanding, reduces errors, and eases recovery efforts. Help information text needs to be clear, concise, and written in everyday language. Help information needs to be readily accessible and just as readily removable.

Many users are most comfortable with learning how to use software applications when they use a natural, trial-and-error method. An undo function supports learning by trial and error by minimizing the cost of errors. An undo function allows the user to retract previous actions, and fosters a spirit of exploration and experimentation that is essential.

Use Explicit Destruction

Explicit destruction means that, when an action has irreversible negative consequences, it should require the user to take an explicit action to perform it. For example, while a worksheet can be saved simply by clicking on a Save PushButton, erasing the worksheet should require clicking on an Erase PushButton and answering a warning question like "Are you sure you want to erase this worksheet?" with a button click in the warning DialogBox.

Warnings protect the user from inadvertent destructive operations, yet allow the user to remain in control of the application. Warnings also encourage the user to experiment without fear of loss. Operations that can cause a serious or unrecoverable loss of data should warn the user of the consequences and request explicit confirmation.