Ben Shneiderman's Rules

I was catching up on some reading today and came across something I had forgotten about for a long time, Ben Shneiderman’s “Eight Golden Interface Rules.” We talk a lot about certain figures in design and computer history in this community, and Shneiderman is a name that doesn’t come up enough.

Here are the “rules,” meant to be interpreted as guides given different contexts.

1 Strive for consistency.
Consistent sequences of actions should be required in similar situations; identical terminology should be used in prompts, menus, and help screens; and consistent commands should be employed throughout.

2 Enable frequent users to use shortcuts.
As the frequency of use increases, so do the user’s desires to reduce the number of interactions and to increase the pace of interaction. Abbreviations, function keys, hidden commands, and macro facilities are very helpful to an expert user.

3 Offer informative feedback.
For every operator action, there should be some system feedback. For frequent and minor actions, the response can be modest, while for infrequent and major actions, the response should be more substantial.

4 Design dialog to yield closure.
Sequences of actions should be organized into groups with a beginning, middle, and end. The informative feedback at the completion of a group of actions gives the operators the satisfaction of accomplishment, a sense of relief, the signal to drop contingency plans and options from their minds, and an indication that the way is clear to prepare for the next group of actions.

5 Offer simple error handling.
As much as possible, design the system so the user cannot make a serious error. If an error is made, the system should be able to detect the error and offer simple, comprehensible mechanisms for handling the error.

6 Permit easy reversal of actions.
This feature relieves anxiety, since the user knows that errors can be undone; it thus encourages exploration of unfamiliar options. The units of reversibility may be a single action, a data entry, or a complete group of actions.

7 Support internal locus of control.
Experienced operators strongly desire the sense that they are in charge of the system and that the system responds to their actions. Design the system to make users the initiators of actions rather than the responders.

8 Reduce short-term memory load.
The limitation of human information processing in short-term memory requires that displays be kept simple, multiple page displays be consolidated, window-motion frequency be reduced, and sufficient training time be allotted for codes, mnemonics, and sequences of actions.


1 Like

This is a nice take on interface guidelines, and I think more digestible than Nielsen’s 10. I’d like to see the context in which he presents these guidelines and get a better sense of how he developed them. It’s a nice trick to introduce Nielsen and then highlight that he waded through 249 specific problems to distill the core list. People latch on better when they can picture of a piece of the practice and effort behind this stuff.

Is it worth shelling out for Schneiderman’s book? (Designing the User Interface: Strategies for Effective Human-Computer Interaction) It’s whopper – $120 on Amazon!

I read Shneiderman early on and found his direction not as helpful as others. As to these guidelines, #1 is too simplistic in our current age and has been superseded by better thinking. #2 is old-school, before we figured out that UI didn’t have to involve manuals.

The others are still useful, but strike me as incomplete and inadequate.

So we shouldn’t strive for consistency? I’d say inconsistent use of language and UI elements is still one of the more common causes of problems that I see come up in usability testing.

I don’t see how enabling frequent users to use shortcuts implies manuals. I use shortcuts all of the time in many pieces of software. None of them have involved reading external documentation…

1 Like