References


Labels for Multipage Tables

For a large table that exceeds the capacity of one display frame, ensure that users can see column headings and row labels in all displayed sections of the table.

Distinctive Format for User Guidance

Design display formats so that user guidance material is readily distinguishable from displayed data.
 Comment: Consistent location of user guidance on the display will usually suffice, but other formatting conventions may help distinguish particular categories of user guidance, such as labels, prompts, etc., as recommended in other guidelines.

Clear Data Labels

Label all displayed data clearly.
Comment : Labels for individual data fields can be omitted only where display format and labeling of grouped data clearly identify subordinate items, as in row/column labeling of tabular data.

Maintaining Significant Zeros

When a user must enter numeric values that will later be displayed, maintain all significant zeros; zeros should not be arbitrarily removed after a decimal point if they affect the meaning of the number in terms of significant digits.


Row Scanning Cues

In dense tables with many rows, insert a blank line (or some other distinctive feature to aid horizontal scanning) after a group of rows at regular intervals.
Example: For many applications it will suffice to insert a blank line after every five rows.
Example:

(Good)APL(Bad)APL
COBOLCOBOL
FORTRANFORTRAN
PL1PL1

Single Method for Entering Data

Design the data entry transactions and associated displays so that a user can stay with one method of entry, and not have to shift to another.
Example: Minimize shifts from lightpen to keyboard entry and then back again.
Example: As a negative example, a user should not have to shift from one keyboard to another, or move from one work station to another, to accomplish different data entry tasks. Comment : This, like other guidelines here, assumes a task-oriented user, busy or even overloaded, who needs efficiency of data entry.

Distinctive Cursor

For position designation on an electronic display, provide a movable cursor with distinctive visual features (shape, blink, etc.).
Exception: When position designation involves only selection among displayed alternatives, highlighting selected items might be used instead of a separately displayed cursor.
Comment: When choosing a cursor shape, consider the general content of the display. For instance, an underscore cursor would be difficult to see on a display of underscored text, or on a graphical display containing many other lines.
Comment: If the cursor is changed to denote different functions (e.g., to signal deletion rather than entry), then each different cursor should be distinguishable from the others.
Comment: If multiple cursors are used on the same display (e.g., one for alphanumeric entry and one for line drawing), then each cursor should be distinguishable from the others.

Responsive Cursor Control

For arbitrary position designation, moving a cursor from one position to another, design the cursor control to permit both fast movement and accurate placement.
Comment: Ideally, when the user moves a pointing device the displayed cursor should appear to move instantly. Rough positioning should take no more than 0.5 seconds for full screen traversal. Fine positioning may require incremental stepping of the cursor, or a control device incorporating a large control/display ratio for small displacements, or a selectable vernier mode of control use. For any given cursor control action, the rate of cursor movement should be constant, i.e., should not change with time.
Comment: Slow visual feedback of cursor movement can be particularly irritating when a user is repeatedly pressing a cursor control key, or perhaps holding the key down. In that case, slow feedback will cause the user to misjudge location and move the cursor too far.

Rubberbanding

When lines must be drawn at arbitrary positions, lengths and angles, provide a rubberbanding capability, in which the computer displays a tentative line extending from a designated start point to whatever is the currently proposed end point.
Comment: This technique permits users to enter or change a line segment rapidly and with confidence by designating its starting point and then simply moving the cursor to the desired end-point, thus placing the "rubberband" line in its intended position. A similar capability should be provided to aid entry/editing of specified outline figures. A rectangle might be rubberbanded by fixing one corner and moving the opposite corner. A circle might be rubberbanded to desired size by fixing its center and changing the extension of its radius.

Enlargement for Symbol Drawing

In applications where users may create special symbols, provide a capability for drawing (or changing) a symbol in large scale, with automatic reduction by the computer to the needed size.
Example: Enlargement might aid in specifying shapes to be used for plotting points or for map symbols, or in designing icons or the letters in a font.
Comment : When drawing symbols in large scale, a rough sketch may suffice, requiring less dexterity from a user. The desirable degree of scale expansion will depend upon symbol complexity, and can probably be determined by testing. Some designers recommend a 20x20 grid to provide an enlarged pixel representation, on which a user can add or delete pixels to create a symbol.

Zooming for Display Expansion

When a user may need to perceive graphic relations more accurately, or to view pictures, diagrams, maps, etc. in greater detail, provide a zooming capability that allows the user to expand the display of any selected area.
Comment: Zooming can increase display spacing among crowded data items so that they can be perceived better. Thus an air traffic controller might expand a portion of a situation display to see more clearly the spacing of converging tracks that threaten a collision.
Comment: Zooming can increase the degree of detail, i.e., can add data to a display. Thus a user might expand a city map to see detailed road structures that are not shown in a small-scale map. When used this way, a zooming capability implies that graphic data be "layered" hierarchically at different levels of aggregation, which may require complex data files and data management techniques.
Comment: Zooming might be implemented as a continuous function, by which a display can be expanded to any degree, analogous to a continuous panning capability. Or zooming might be implemented in discrete increments, as in increasing the magnification of an optical instrument to x2, x4, etc. Incremental zooming, with abrupt changes in display scale, may tend to disorient a user, but might prove acceptable in some applications.

Natural Units of Text

Allow users to specify segments of text in whatever units are natural for entry/editing. Example: For unformatted ("free") text, natural units will be characters, words, phrases, sentences, paragraphs, and pages; for specially formatted text, such as computer program listings, allow specification of other logical units, including lines, subsections, sections, etc.

Highlighting Specified Text

When text has been specified to become the subject of control entries, highlight that segment of text in some way to indicate its boundaries.
Comment : Text may be specified for various purposes -- for underlining or bolding, moving, copying, or deleting. Highlighting provides the user with direct feedback on the extent and content of specified text, reducing the likelihood of specification errors.

Highlighting Critical Data

Provide distinctive coding to highlight important display items requiring user attention, particularly when those items are displayed infrequently.
Example: Such items might include recently changed data, or discrepant data exceeding acceptable limits, or data failing to meet some other defined criteria.
Comment: "Highlight" is used here in its general sense, meaning to emphasize or make prominent, and is not restricted to any particular method of display coding such as brightening or inverse video.
Comment: Highlighting is most effective when used sparingly, adding emphasis to a display which is relatively uniform in appearance except for just a few highlighted items.
Comment: For some purposes position coding, i.e., displaying important items consistently in a particular location, might be a sufficient means of highlighting, as when an error message appears in a space otherwise left blank. But auxiliary codes may still be needed to highlight important items, even if they are positioned consistently.

Moving Text

Allow users to select and move text segments from one place to another within a document. Comment: A user should not have to re-enter (i.e., rekey) text that is already available to the computer.
Comment : One convenient method of allowing the user to both move and copy text is to provide a "cut and paste" facility in which the "cut" text remains in a storage buffer and can be "pasted" more than once. For copying, the user can cut text, paste it back into its original location, and paste it again at a new location.

Selecting Graphic Elements

Provide users some means for designating and selecting displayed graphic elements for manipulation.
Example: Designation might be by pointing, in the case of a discrete element, or might require some sort of outlining action to delineate portions of a complex figure.

Aids for Entering Hierarchic Data

If a user must enter hierarchic data, where some items will be subordinate to others, provide computer aids to help the user specify relations in the hierarchic structure.
Comment : For simple data structures, question-and-answer dialogues or form filling may suffice to maintain necessary data relations. For more complex data structures, such as those involved in graphic data entry, special techniques may be needed to help users specify the relations among data entries.
When data must be entered in an organized hierarchic structure, in different sections and at different levels of increasing detail, provide computer aids for that purpose.
Comment: At the least, the computer should provide the user a schematic summary display of any defined data structure for general orientation, with its branches and levels labeled for convenient reference. When a user specifies any portion of the structure for data entry or editing, the computer should display that section of data appropriately labeled, and perhaps show in the display margin a diagram indicating what portion of the overall data structure is currently being displayed.
Comment: When data at one level in a hierarchy are dependent on data entries at other (usually subordinate) levels, the computer should handle cross-level bookkeeping automatically, just as for cross-file updating.
Comment: For entering hierarchic data, a user must specify where in the data structure any new data should be added. If the data structure is complex, it may help if the computer automatically prompts the user to make the appropriate data entries at different levels. Comment: If a user may need to change the data structure, then computer aids may be needed for that purpose as well as for data entry. The computer should bookkeep automatically any changing relations among the data in different sections that might result from changes to the overall data structure.

Automatic Data Validation

Provide software for automatic data validation to check any item whose entry and/or correct format or content is required for subsequent data processing.
Example: If a date is entered as "February 31", the computer should generate an error message asking for a revised entry.
Comment: Do not rely on a user always to make correct entries. Computer aids for checking data entries will improve accuracy.
Comment: Some data entries, of course, may not need checking, or may not be susceptible to computer checking, such as free text entries in a COMMENT field.