Last updated: 29th September 1998

# Emergency Exits *

. . . . users working at data processing tasks on conventional workstations — DESKTOP METAPHOR (#), GRAPHICAL USER INTERFACE (#) — who use a number of applications in the course of their work, may need rapidly to exit a program when a higher priority task demands the system resources, or when the program has been launched by mistake.


It is very frustrating to have to wait for an inadvertently launched program to load, and then perhaps go through a protracted dialogue in order to quit it.

The writing of this pattern was occasioned by the author watching a colleague attempting to use Microsoft Exchange version 5 on a Macintosh.  It exemplifies an anti-pattern, and is explored here.

My colleague was not sure if he was registered on the system yet, and so launched it to find out.  After launching the program and entering details in the initial modal dialogue box, the response from the system was:
 

Screen shot of a modal dialog box saying "Credentials supplied incorrect..." only option an "ok" button.
 
So he concluded that he was not yet registered, and wished to quit the program.  Taking the only option (the "ok" button) caused re-presentation of the initial modal dialogue box:
 
Screen shot of a modal dialog box requiring entry of user name and password only with the options; "ok" and "cancle" buttons.
 
He took the "cancel" button option, which produced this response:
 
Screen shot of a modal dialog box saying "... server unavailable..." with the options: retry, work offline, help
 
At this point, he muttered some expletives and then asked me if I knew how to get out of the program.  In fact, the required information was available in the help system.  However, as he expected the help to be directed to using the options presented, i.e., retrying entry of user name and password, or how to work off-line, it was not immediately obvious to him that he should try it.  However, if it is selected, this is the response:
 
Screen shot of help text saying "...  If you do not want to work offline, choose Work Offline ..."

The required instructions are at the bottom of the panel, and — once you find them — are rather counter intuitive!  Carrying them out takes an appreciable period of time, as the remainder of the program must first load, before it can be unloaded.  The user has been forced through a protracted and perverse sequence of manipulations.  In this case, making the cancel button on the initial user name and password entry modal dialogue actually cancel the program (perhaps relabeling it "quit"), and giving an explicit "work off-line" option, together with a quit option on the "logon credential supplied were incorrect..." modal dialogue, would deal with the problem.

As this example illustrates, when the user wishes to quit a program, they wish to do it in the most intuitive and rapid way possible.  They may even wish to quit during the initial loading process of the system!

Therefore:

At all times ensure that the option to quit a program is immediately and obviously available (if possible even during the initial loading of the program) and that access to the option is not masked by modal dialogues.


If the option to quit is exercised after work on data manipulated by the program has been completed, the option to SAVE THE WORK (#) done so far should be presented . . . .


Part of a Usability Pattern Collection maintained by The Usability Group at the University of Brighton, UK.

CGI