Principles:
1 - Recognize Diversity
diversity of users
novice / first time users
novice - no little task or interface concepts
first time users - have task conceps but shallow knowlege of interface
need to be able to accomplish basic needs with small number of consistent
actions
knowledgeable intermittent
users
know about the task and general knowledge about the interface - will forget
specific features
need to easily rediscover how to perform tasks
expert frequent users
thoroughly familiar with task and interface concepts
need ability to quickly carry out actions, get rapid reponses, brief feedback
diversity of tasks
determine set of tasks early
in design
choose 'atomic' actions
look at task frequencies
diversity of interaction styles
Advantages | Disadvantages | |
Direct Manipulation
|
-visually presents task concepts
-allows easy learning -allows easy retention -allows errors to be avoided -encourages exploration -affords high subjective satisfaction |
-may be hard to program
-may require graphics display and pointing device |
Menu Selection | - shortens learning
- reduces keystrokes - structures decision making - permits use of dialogue management tools - allows easy support of error handling |
presents danger of many menus
may slow frequent users consumes screen space requires rapid display rate |
Form Fillin | - simplifies data entry
- requires modest training - gives convenient assistance - permits use of form management tools |
- consumes screen space |
Command Language | - is flexible
- appeals to 'power' users - supports user intiative - allows convenient creation of user-defined macros |
- has poor error handling
- requires substantial training and memorization |
Natural Language | - relieves burden of learning syntax | -requires clarification dialogue
- may require more keystrokes - may not show context - is unpredictable |
a strive for consistency
b enable frequent users to use shortcuts
c other informative feedback
d design dialogues to yield closure
e offer error prevention and simple error handling
f permit easy reversal of actions
g support internal locus of control
- make users the initiators
of actions, want users to feel they are in control
h reduce short term memory load
- 7 +/- 2
3-Prevent Errors
Based on previous user studies there are certain principles within the field
model human processor
chunks
BCSBMICRA
CBSIBMRCA
reading:
250 words per minute
familiar words recognized
by shape
9-12 font size equally legible
given proportional spacing between lines
line lengths between 2/3
and 5.2 inches equally legible
positive contrast (light
on dark) are preferred and show better performance
lower case words are read
faster than words in upper case
individual letters and nonsense
words UA1416 are read faster in upper case
Fitt's Law
time Tpos to move the hand to a target of size S
which lies distance D away is
Tpos = IM
log2 (D/S + 0.5) where IM = 100 [70-120]msec/bit
Time to move depends on relative position required
Different constants for different devices
Power Law of Practice
time Tn to perform a task on the nth
trial follows a power law
Tn = T1n-a
where a = 0.4 [0.2 - 0.6]
Keystroke Level Model
only gives predictions for execution time, not acquisition time (planning)
K - Keystroking - striking
keys
(pressing a shift or a control counts as a K as well)
best typist 0.08 sec (135 wpm)
good typist 0.12 sec (90 wpm)
poor typist 0.28 sec (40 wpm)
non-typist 1.20 sec
B - Pressing a mouse button
down or up 0.10 sec
click
0.20 sec
P - Moving the mouse at
a target
fitts law 0.1 log2(D/S) + 0.5
avarage (mouse) 1.10 sec
H - Homing - switching hand
between mouse and keyboard 0.40 sec
D - Drawing lines using
the mouse -
M - Mentally preparing for
a physical action 1.35 sec
R - System response -
Ms are hard to place - there are a set of heuristsics (p 267 Card book)
Say we are using a word processor
and see an incorrect character on the screen. We use the mouse to
position the insertion bar, delete the incorrect character, add the new
character and then return to where we were in the document:
1 - move hand to mouse | H[mouse] |
2 - position mouse after bad character | PB[left] |
3 - return to keyboard | H[keyboard] |
4 - delete character | MK[delete] |
5 - type correction | K[char] |
6 - reposition insertion point | H[mouse]MPB[left] |
misc
How useful are all these numbers ...