Part E - Interaction

Interaction Styles

Describe the basic interaction styles
Analyze the compound WIMP style

Command Line | Form | Menu | Q & A | Direct Manipulation | WIMP | Exercises

Patterns of interaction are identifiable in the sense of interaction styles.  Many of the interaction styles that we use today were developed in the transition to the second - mind-computer - paradigm.  These basic styles include:

  • command line
  • form
  • menu
  • question and answer
  • direct manipulation

In this chapter, we review these basic interaction styles and the compound WIMP style assembled from them.  It is these styles to which most users are accustomed. 

Command Line

The earliest interaction style was the command line.  Despite the present availability of more elaborate interfaces, many professionals continue to use this style.  This style is especially popular with Linux/Unix interfaces. 

The command line style provides direct access to the system commands without imposing any structure on the set of system commands.  Commands accept options to modify their behavior.  This style is extremely powerful and flexible.  It supports scripting and is used extensively in system administration. 

The command line style relies on recall rather than recognition and makes extensive use of abbreviation.  Reliance on recall places a high cognitive burden on any non-expert user.  The user needs to decipher the abbreviation in order to confirm the purpose of the command: ls for list, cp for copy, etc.  Error rates are high and error messages are often difficult to decipher for novice users. 

Command line interfaces have extremely steep learning curves.  The user must store much of the syntax in long-term memory before being able to use the interface in any effective way.  The user can lessen this burden slightly by introducing meaningful aliases for the commands and their options.

Notably, the command line style does not require any pointing device.


The form style is at the opposite end of the spectrum compared to the command line style.  This style does not involve any entry of system commands or any option selection.  It is particularily suitable for data entry by novice users or clerical workers who have no particular interest in learning cryptic commands.  This style originates with paper forms in hard-copy format. 

A form consists of sets of label and data entry field pairs.  The labels describe the nature of the data to be entered.  The data entry fields provide the space for the user to enter the data.  The user presses the TAB key to move from one data entry field to the next and the ENTER key to submit the form to the system. 

The pre-defined and ordered fields of a form only require recognition by the user.  The learning curve is short and shallow.  The separation of input into distinct fields allows validation of each user entry. 

Form interfaces consume significant screen space and impose a rigid structure on the input process.  This style lacks flexibility and ensures that the work flow is monotonous. 

The form style, like the command line style, does not require any pointing device.  Use of the TAB and SHIFT-TAB keys is sufficient for navigation.  Unlike the command line style, a pointing device is optional with this style. 

Advanced forms allow the user to leave certain fields blank and to fill in non-blank fields in arbitrary order. 


Spreadsheets are one example of the form style.  They allow the results of changes in one field to affect other related fields immediately. 


The menu style provides the intermediate alternative between the command line style and the form style for non-expert users.  This style displays a subset of the available system commands and offers the user a predefined set of choices for each command.  The user selects a menu item, which causes a change of state in the interface.  A well-designed interface shows the change immediately. 

The menu style is convenient for novice and occasional users who cannot recall command syntax readily.  The user can explore the commands without having to remember their syntax.  The menu style structures the decision making process into a sequence of steps.  This style avoids errors due to misspelt commands or options since there is no need to parse the input. 

The menu style has certain disadvantages with respect to the command line style.  It occupies significant screen space and may conceal data that is important to the user in selecting a menu item.  The menu style may not be suitable for smaller displays.  The layout is hierarchical.  Its structure might not necessarily match the structure that the user has in mind.  Since all of the commands are not visible at first glance, the user may have to wander through the hierarchy before finding the sought-for command. 

The menu style has certain disadvantages with respect to the form style as well.  It leaves the initiative to the user.  The user must have a clear idea of what they want to achieve: their goal must be clear to them. 

Grouping and naming of menu items is critical in minimizing the amount of learning and navigation.  Inclusion of short-cut keystrokes makes this style more acceptable to expert users.  The choices must be meaningful and easy to understand. 

If a pointing device is installed, the user can point to a menu item directly.  If not, the user can use either the numeric keys or the arrow keys to make their selection. 

Point and Click

The point and click style is an extremely simple style for selecting a command.  The command is represented graphical on the display.  The user uses a pointing device to select it. 

This style requires a graphic display device and a pointing device.  It is relatively easy to program, but more complicated than the command-line, form, and menu styles. 

Question and Answer

The question and answer style involves a single-question-at-a-time dialog with the user.  Each question is restricted to one command that the system can process.  The order of the questions is pre-defined.  This style is common in wizards, which help install software on a system.  It is easy for novice users to follow. 

The question and answer style provides the user with default input data and the possibility of overwriting that data.  The user who chooses to follow the suggested procedure only needs to answer yes and no questions to reach their goal. 

Direct Manipulation

The direct manipulation style replaces keyboard entry of commands, data, and menu item selection with a point and click style that involves both selection and action.  This style originates in the Sketchpad proposal of Ivan Sutherland (1963). 

This style presents the task concepts visually, admits easy learning, and offers the user immediate satisfaction.  It requires a graphic display device along with a pointing device.  It is significantly more difficult to program than the command-line, form, and menu styles. 

Natural Language

The natural language style lets the user specify their goal in a natural language like English.  The instructions are ambiguous and open to multiple interpretations. 

The natural language style removes all need to learn syntax and to follow pre-defined sets of choices. 

Ambiguity exists in most natural language sentences.  Consider the sentence:

       The boy hit the dog with the stick
There are two possible interpretations:
  • the boy used a stick to hit the dog
  • the boy hit the dog that was carrying the stick

Ambiguity may also exist in the meaning of individual words in a sentence.  Consider the homograph shift

       Did you complete the shift?

There are two possible interpretations:

  • did you complete the change
  • did you complete the period of work

Ambiguity may also exist in the noun to which an adjective belongs.  Consider the following possibilities

       That is a small president's car
There are two possible interpretations:
  • That is a small car for a president
  • That is a car for a small president

Ambiguity may also exist in where the stress belongs within a sentence.  Consider the following possibilities

       I said you took my book
       I said you took my book
       I said you took my book
       I said you took my book
       I said you took my book
       I said you took my book

WIMP Style

The WIMP style is a combination of the basic styles.  This style has been common to windowing interfaces developed under the mind-computer paradigm.  It is the style of the standard interface supported by

  • Microsoft Windows
  • X Windows
  • Apple Mac OS

Basic Components

WIMP stands for the combination of

  • windows
  • icons
  • menus
  • pointers


A window is an a rectangular area of the screen where text and graphics are rendered.


An icon is a small image that represents a concept or an action.  Icons are used with buttons, labels, and representing windows in collapsed form.


A menu is a list of items that lets the user issue a command by selecting from the list.  The use of menus reduces the load on the user's memory.  A menu can be

  • pull-down
  • pop-up
  • fall-down

A menu need not be rectangular in shape: it can also be circular.  A circular menu allows the user to make their selection through a shortest-displacement algorithm (Fitt's Law).


A pointer is implemented through one of the pointing devices: a mouse, a touchpad, a trackball, a tablet, etc.  One of these devices is essential to the operation of the WIMP interface. 

The pointer is represented on the screen by a cursor, which can appear in a variety of shapes.  The shape of the cursor can indicate the current state of the system or the state of the submitted command. 

Additional Components

The WIMP style can also include:

  • buttons
  • toolbars
  • palettes
  • dialog boxes


A button is a small window that the user can select to perform an action.  It can be labelled with text, graphics or both.  A button can change its appearance to indicate its state. 

Two types of button have special names: radio and checkbox.

A radio button is a button that belongs to a set of buttons within amongst only one button can be selected at one time. 

A checkbox is a small square that can be checked or unchecked by the user.  The user can check several checkboxes at the same time.  Unlike radio buttons, they are not mutually exclusive. 


A toolbar is an area of the screen that contains a collection of buttons and icons.  A toolbar is similar to a menu in that it allows the user to select from a pre-defined set of commands.  Toolbars make selections more obvious by displaying all of them at once.  In many applications, the user can customize their display by selecting which icons and buttons appear on the toolbar or by selecting which toolbars are visible. 


A palette is a collection of controls that can alter the state of the system.  Graphics systems often use palettes to select drawing colour, line thickness, etc.  Palettes provide immediate feedback on the option selected. 

Dialog Boxes

A dialog box is a window that conducts an interaction with the user through child windows.  The dialog box provides information to the user, solicits input from the user, and notifies the user of any error.  A dialog box is usually modal so that the user must complete the interaction before continuing with any other task in the application.  A system modal window locks the entire windowing system so that the user cannot interact with any other program.  Such dialog boxes should be avoided wherever possible.

Three Dimensional Style

Work on the three dimensional style has exploded in the last three decades.  The extension of the WIMP style into three-dimensional space has given us a style that holds some promise in the future.

Google SketchUp


Modeling Software