Relation Between Tasks and User-Interfaces
- searching for information
- When the information-base contains typed information,
a form can be used to enter search terms of specific types.
Typical examples are library information systems, which store
titles, authors, publishers, classifications, abstracts.
- When the information is not structured, keyord-based
search is possible. Words can be entered in a single input field.
- Menu-selection is generally unsuitable as the sole search method.
Systems like Yahoo are menu based
but also offer keyword search.
- Paging backwards and forwards should be possible.
- Answers should be rated and sorted from most to least relevant.
- reading text
An interface for reading (large amounts of) text should satisfy
the following requirements:
- A consistent layout of titles, headers and footers is less
distracting than a varying layout.
- The user should be able to flip pages quickly and easily,
through function keys and/or buttons.
- When paging is automatic and timed the remaining reading time
should be made visible.
The written television news for the deaf satisfied this requirement.
- When screen size and/or resolution is limited the full height of
the screen should be used for text. High and narrow columns of text
are easier to read than long lines.
Unfortunately the style guide for most windowing systems require
menus, buttons, and status information to appear at the top or bottom
of windows, thereby consuming valuable screen height.
- Hypertext links should be marked using moderate color or brightness
differences so as to not disturb the reading process.
- The user must be able to mark pages for easy return later.
(Such markers are called bookmarks.)
- Since screen resolution is limited and many windowing systems
do not use anti-aliasing, the font size should be large enough.
Anti-aliasing is a technique for creating the illusion of a higher
screen resolution by using dots of different brightness.
Black text on a white background is enhanced by using gray dots.
- Hyphenation should be avoided.
- Few different fonts should be used. One plain, bold and italic
style, and one fixed-width font should suffice, in one normal, large and
small size.
- Vertical scrolling is acceptable, horizontal scrolling is not.
- data entry
Data entry is a task for frequent users. The emphasis is on speed.
- Forms with navigation using keyboard shortcuts and function keys
avoid the overhead of moving the hand between keyboard and mouse.
- If possible, use a special purpose keyboard and study the optimal
layout for skilled users.
- Provide single-key shortcuts for the most frequent actions.
- Keep the screen layout quiet: no blinking fields, no long textual
messages, etc.
- Error messages should be accompanied with sound, since an expert
typist does not look at the screen very often.
- controlling and monitoring
For controlling or monitoring a physical process, like air-traffic
control, power-plant control, etc., the screen displays status information
and data about the physical system, and expects decisions from the user.
- Graphical presentation through icons should resemble the physical objects.
- Few colors should be used. Bright alarming colors (like red) should
indicate situations that require immediate attention.
- The user must be able to cancle an "alarm" condition, at least
temporarily, without solving the problem. Blinking red lights and loud
noise make it difficult to think straight and find a solution.
- Special-purpose keyboards with only the appropriate function keys
are recommended, especially for life-critical systems.
- The interface should make it possible to first calculate the consequences
of a user action before executing it.
This makes an undo possible before disaster actually happens.
- Concentrate on error avoidance, error correction, and on providing
brief messages. (Skilled users know how to interpret brief messages.)
- diagnosing
Diagnosing can relate to physical processes but also to question and answer
systems (in expert systems).
- It is important to show intermediate results.
- Showing the relations between intermediate results and between them
and the final result is important.
- In a question/answer dialog unnecessary questions should be avoided.
(These are questions for which the system already knows the one possible
answer.)
- When the system is learning and improving itself it normally won't
be consistent. (It may decide that it is more effective to change the
order of questions.)
- The dialog should allow for high-speed interaction.
Acting and forming a diagnose should not be slower than the user's
thinking process.
- design tasks
Computer-Aided Design (CAD) is mostly performed by experts.
CAD systems are often application specific.
Still, some general rules are:
- A powerful, terse command language can be complemented by menus for
novices.
- Parallel dialog techniques are thus recommended.
- Drawing requires special input devices besides keyboard and mouse.
(People think drawing using a mouse is easy until they actually try it.)
- The screen needs to have a large size, high resolution, and
a high color depth.
- Drawings are often redone partially. Storing intermediate results
is important.
- There is a need for databases with standard constructions.
- Layout
Layout is often combined with Computer-Aided Design.
Some specific requirements are:
- The screen should be able to display exactly what will appear on paper.
(This is called WYSIWYG, What You See Is What You Get.)
An A4 or letter size portrait-mode screen is more useful than a landscape-mode
screen.
- Individual pieces of material must be easily combined and manipulated.
- Programming
Many characteristics of programming environments are known,
because software developers like to use the latest technology for
themselves.
- The input module (editor) must know and possibly enforce the
syntax of the programming language, and be able to quickly locate errors.
- A source-code browser should be able to locate specific function calls,
variable references, declarations, etc.
- Providing assistance for the programming (writing) phase is better
than providing debugging assistance for finding errors during the testing
phase.
- Compile and execute times should be short: the developer wants to
see the effect of added or modified code immediately.
Long compile times lead to reduced concentration.
- A lot of attention must be paid to error messages, error correction
and the presentation of diagnostic information.
- learning
Learning as a task requires a flexible and adaptive interface:
- Questions and answers are suitable for evaluating how well the
user remembers information.
- A thorough analysis of incorrect answers to open questions is
difficult.
- Feedback to the user should be as informative as possible.
- Information should be presented in meaningful chunks, not A4-sized pages.
- The used terminology may need to depend on the order in which the
user has read pages (to avoid using technical terms before the user has
encountered their definition).
- Learning involves a lot of reading. All advice for reading tasks
also applies.
- calculating
By calculating we mean interactive calculations, not long (dull)
number crunching.
- Intermediate results need to be displayed and saved.
- The task sometimes needs to be resumed from a point where
intermediate results were saved.
- For complex but frequently performed calculations special functions
can be bound to function keys.
- The task must be interruptable without loss of intermediate results.