D E SI G N R U LE S
LESSON 5
DESIGN RULES
are rules a designer can follow in order to
increase the usability of the eventual software
product.
We can classify these rules along two dimensions:
• Authority
• Generality
Authority
we mean an indication of whether or not the rule
must be followed in design or whether it is only
suggested.
Generality
we mean whether the rule can be applied to many
design situations or whether it is focused on a more
limited application situation.
We will consider a number of different types of design
rules.
• Principles are abstract design rules, with high
generality and low authority.
• Standards are specific design rules, high in
authority and limited in application
• Guidelines tend to be lower in authority and more
general in application.
PRINCIPLES
The most abstract design rules are general
principles, which can be applied to the design of
an interactive system in order to promote its
usability.
The principles we present are first divided into three
main categories:
• Learnability – the ease with which new users can begin
effective interaction and achieve maximal performance.
• Flexibility – the multiplicity of ways in which the user and
system exchange information.
• Robustness – the level of support provided to the user in
determining successful achievement and assessment of
goals.
We will subdivide these main categories into
more specific principles that support them. In
most cases, we are able to situate these more
specific principles within a single category, but
we have made explicit those cases when a
principle falls into two of the above categories.
PRINCIPLES THAT SUPPORT LEARNABILITY
PREDICTABILITY
Predictability of an interactive system means that the
user’s knowledge of the interaction history is sufficient to
determine the result of his future interaction with it.
SYNTHESIZABILITY
Support for the user to assess the effect of past
operations on the current state.
FAMILIARITY
Predictability of an interactive system means that the
user’s knowledge of the interaction history is sufficient to
determine the result of his future interaction with it.
GENERALIZABILITY
Support for the user to extend knowledge of specific
interaction within and across applications to other similar
situations.
CONSISTENCY
Likeness in input–output behavior arising from similar
situations or similar task objectives
PRINCIPLES THAT SUPPORT FLEXIBILITY
DIALOG INITIATIVE
Allowing the user freedom from artificial constraints on the
input dialog imposed by the system
MULTI-THREADING
Ability of the system to support user interaction pertaining
to more than one task at a time
TASK MIGRATABILITY
The ability to pass control for the execution of a given task
so that it becomes either internalized by the user or the
system or shared between them
SUBSTITUTIVITY
The ability to pass control for the execution of a given task
so that it becomes either internalized by the user or the
system or shared between them
CUSTOMIZABILITY
Modifiability of the user interface by the user or the system
PRINCIPLES THAT SUPPORT ROBUSTNES
OBSERVABILITY
Allows the user to evaluate the internal state of the system
by means of its perceivable representation at the interface.
Observability can be discussed through five other
principles: browsability, defaults, reachability, persistence
and operation visibility.
Browsability allows the user to explore the current
internal state of the system via the limited view
provided at the interface.
The availability of defaults can assist the user by
passive recall (for example, a suggested response to
a question can be recognized as correct instead of
recalled).
Reachability refers to the possibility of navigation
through the observable system states.
Persistence deals with the duration of the
effect of a communication act and the ability of
the user to make use of that effect.
Operation visibility refers to how the user is
shown the availability of operations that can
be performed next.
RECOVERABILITY
is the ability to reach a desired goal after recognition
of some error in a previous interaction.
There are two directions in which recovery can occur, forward
or backward.
Forward error recovery involves the acceptance of the current
state and negotiation from that state towards the desired state.
Backward error recovery is an attempt to undo the effects of
previous interaction in order to return to a prior state before
proceeding.
RESPONSIVENESS
measures the rate of communication between the
system and the user.
Response time stability covers the invariance of the
duration for identical or similar computational resources.
TASK CONFORMANCE
degree to which system services support all of the
user's tasks
Task completeness addresses the coverage
issue
Task adequacy addresses the user’s
understanding of the tasks
STANDARDS
Standards for interactive system design are usually set
by national or international bodies to ensure
compliance with a set of design rules by a large
community.
Underlying theory
Standards for hardware are based on an understanding of
physiology or ergonomics/human factors, the results of
which are relatively well known, fixed and readily
adaptable to design of the hardware.
Change
Hardware is more difficult and expensive to change than
software, which is usually designed to be very flexible.
GUIDELINES
Standards for interactive system design are usually set
by national or international bodies to ensure
compliance with a set of design rules by a large
community.
• more suggestive and general
• many textbooks and reports full of guidelines
• abstract guidelines (principles) applicable during
early life cycle activities
• detailed guidelines (style guides) applicable
during later life cycle activities
• understanding justification for guidelines aids in
resolving conflicts
GOLDEN RULES AND HEURISTICS
• “Broad brush” design rules
• Useful check list for good design
• Better design using these than using nothing!
• Different collections e.g.
Nielsen’s 10 Heuristics
Shneiderman’s 8 Golden Rules
Norman’s 7 Principles
Shneiderman’s Eight Golden Rules of Interface Design
1. Strive for consistency in action sequences, layout,
terminology, command use and so on.
2. Enable frequent users to use shortcuts, such as
abbreviations, special key sequences and macros, to
perform regular, familiar actions more quickly.
3. Offer informative feedback for every user action, at a
level appropriate to the magnitude of the action.
4. Design dialogs to yield closure so that the user knows
when they have completed a task.
5. Offer error prevention and simple error handling so that,
ideally, users are prevented from making mistakes and, if they do,
they are offered clear and informative instructions to enable them
to recover.
6. Permit easy reversal of actions in order to relieve anxiety and
encourage exploration, since the user knows that he can always
return to the previous state.
7. Support internal locus of control so that the user is in control of
the system, which responds to his actions.
8. Reduce short-term memory load by keeping displays simple,
consolidating multiple page displays and providing time for
learning action sequences.
Norman’s 7 Principles
1. Use both knowledge in the world and knowledge in the head.
2. Simplify the structure of tasks.
3. Make things visible:
bridge the gulfs of Execution and Evaluation.
4. Get the mappings right.
5. Exploit the power of constraints, both natural and artificial.
6. Design for error.
7. When all else fails, standardize.
END