213: User Interface Design and Development KLM and GOMS Lecture #11 - March 31st, 2009

Download Report

Transcript 213: User Interface Design and Development KLM and GOMS Lecture #11 - March 31st, 2009

213: User Interface Design and Development
KLM and GOMS
Lecture #11 - March 31st, 2009
Today’s Outline
1) Cognitive Modeling
2) Keystroke-Level Model (KLM)
3) Other GOMS Variants
Cognitive Modeling
Cognitive approach to HCI attempts to
predict user performance based on a
model of cognition
Start with a model of how humans act
Use that model to predict how humans
would complete tasks using a
particular UI
Provided theoretical foundation of HCI
in the 1970s and 1980s
QuickTime™ and a
decompressor
are needed to see this picture.
Source: Stuart Card, Lecture on Human Information Interaction, 2007
Cognitive Models are…
Abstract
Quantitative
Approximate
Estimated from experiments
Based on a theory of cognition
Adapted from Rob Miller
Advantages
Don’t need to implement / prototype
Don’t need to test with real users
Theory has explanatory power
Provides scientific foundation for
design, like other engineering fields
Adapted from Rob Miller
Cognitive Theories in HCI
KLM (Keystroke-Level Model) - Description of user
tasks based on low-level actions (keystrokes, etc.)
GOMS (Goals, Operators, Methods, Selectors) Higher-level then KLM, with structure and hierarchy
Fitts’ Law - Predicts how long it will take a user to
select a target; used for evaluating device input
Model Human Processor (MHP) - Model of human
cognition underlying each of these theories
QuickTime™ and a
decompressor
are needed to see this picture.
Keystroke-Level
Model (KLM)
KLM Operators
K
Press a key or button
P
Point to a target on the display
H
Home hands on input device
D
Draw a line segment
M
Mentally prepare for an action
R
(system response time)
Example: Replacing a Word
Adapted from Lorin Hochstein
KLM Analysis
Walk through a task, listing the operators
needed to complete it
Use heuristics to insert M operators (for
example, place M’s in front of all P’s that
select a command)
– These can be different for different UI styles
Based on estimates for each operator,
calculate the amount of time required to
complete the task
Adapted from Rob Miller
Operator Estimates
Keystroke determined by typing speed
0.28s for average typist (40 wpm), 0.08s for fast
typist (155 wpm), 1.20s for worst typist
Pointing determined by Fitts’ Law (or
general approximation)
T = a + b log (d/s +1) OR
T = 1.1s
Drawing determined by Steering Law
T = a + b (d/s)
Adapted from Rob Miller
Operator Estimates
Homing estimated by measurement
T = 0.36s (between keyboard and mouse)
Mental prep estimated by measurement
T = 1.35s
(estimated by taking the total task time,
subtracting physical operator time, and dividing
by the number of “chunks” of activity)
Adapted from Rob Miller
Heuristics for adding M’s
Basic idea: Put an M before each step requiring
access of a “chunk” from long-term memory
Insert M’s before each K and P
K -> MK; P -> MP
Delete M’s in the middle of typing a word or string
MKMKMK -> MKKK
Delete M’s in the middle of composite actions (for
example, point and click)
MPMK -> MPK
Adapted from Rob Miller
Example: Deleting a Word
Using Shift-Click
M
P [start of word]
K [click]
M
P [end of word]
K [shift]
K [click]
H [to keyboard]
M
K [Del]
Total: 3M + 2P + 4K
= 7.37 sec
Using Delete
M
P [start of word]
K [click]
H
M
K [Del] x n [length of word]
Total: 2M + P + H + (n+1) K
= 4.44 + 0.28n sec
Adapted from Rob Miller
Using KLM
KLM can help evaluate UI designs, interaction
methods and trade-offs, using parametric
analysis
T
Del n times
Shift-click
n
If common tasks take too long or consist of too
many statements, can provide shortcuts
Adapted from Rob Miller
Empirical Validation of KLM
Source: Card, Moran and Newell, “The Keystroke Level Model for User Performance Time with Interactive Systems”
In-class Exercise
Generate a KLM model for deleting a file
from your desktop
Estimate the time it would take using
the provided operator times
Compare the predicted time with the
actual time
Limitations of KLM
Only applies to expert users doing routine (welllearned) tasks
Only predicts efficiency - not error rate,
memorizability, learnability, etc.
Impractical for all but the simplest tasks
Ignores
– Parallel processing
– Goal interleaving
– Mental workload (working memory limits, fatigue)
– Planning and problem-solving (how to select a method?)
Adapted from Rob Miller
GOMS
GOMS
GOMS provides a higher-level language for task
analysis and UI modeling
Generates a set of quantitative and qualitative
measures based on description of the task and
user interface
Provides a hierarchy of goals and methods to
achieve them
Different GOMS variants use different terms,
operate at various levels of abstraction, and
make different simplifying assumptions
GOMS
Goals - What the user wants to achieve; can be
broken down into subgoals
Operators - An action performed in service of a goal;
can be perceptual, cognitive or motor acts
Methods - Sequences of operators and subgoal
invocations that accomplish a specified goal
Selection Rules - Represent the user’s knowledge of
which method should be applied
Source: John and Kieras, “The GOMS Family of User Interface Analysis Techniques”
Example
Goal: delete text (n chars long)
Select: method 1 if n > 10
method 2 if n < 10
Method 1: Goal: highlight text & delete
Goal: highlight text
Point
Click
Point
Shift
Click
Verify
Click
Method 2: Goal: delete n chars
Adapted from Rob Miller
Goals vs. Operators
The difference between goals and operators is
simply the level of detail chosen by the analyzer
Goals are usually important end-user intentions
Operators usually represent primitive user actions,
that have a fixed execution time regardless of the
context (or that is a constant function of some
parameter), that can be estimated empirically
As a result, operators usually stop at the command
or keystroke level
GOMS Variants
KLM - Simplest version (Card, Moran, Newell 1983)
CMN-GOMS - Original formulation; includes methods
and selection rules (Card, Moran, Newell 1983)
NGOMSL - GOMS using natural language; also can
model memory usage and learning times (Kieras
1988)
CPM-GOMS - Models parallel processing by cognitive,
perceptual and motor systems (John 1990)
Source: John and Kieras, “The GOMS Family of User Interface Analysis Techniques”
CMN-GOMS
Provides for methods to achieve explicit goals and
subgoals
Selection of methods are predicted by the system based on user’s rational decision-making
Mental operations are modeled either as:
– VERIFY operators
– Subgoal invocations
– Selection rules
Building a CMN-GOMS Model
Generate task description
– Pick high-level user Goal
– Write Method for accomplishing Goal (may
invoke subgoals)
– Write Methods for subgoals (recursive)
– Stop when Operators are reached
Evaluate description of task
Apply results to UI
Iterate
Adapted from Chris Long, Marti Hearst
NGOMSL
Structured natural language notation for
representing GOMS models
Can predict learning time based on the number of
NGOMSL statements in a method (plus loading
any additional static data in memory)
Can be used for developing training materials, help
modules, etc.
Models the operation of working memory by
including Retain and Recall statements
More specific notation for mental operations
Still does not address parallel processing, goal
interleaving, fatigue, problem-solving, etc.
Example
Source: John and Kieras, “The GOMS Family of User Interface Analysis Techniques”
CPM-GOMS
Cognitive-Preceptual-Motor or Critical-Path-Method
Works at an even lower level of detail then KLM
Primitive operators are very simple perceptual,
cognitive or motor acts
Explicitly models parallelism by considering three
mental processors and storage systems that can
work in parallel (based on Model Human
Processor - to be discussed in next lecture)
Execution time predicted using critical path - the
longest path through the task based on cognitive
limitations and information flow dependencies
Critical Path
0
PP
CP
start
start
eye move mouse move
50
perceive
cursor
100
100
verify
target
start
Shift press
50
50
50
move
mouse
MP
right
480
press
Shift
MP
left
MP
eye
perceive
target
100
move eye
to target
30
Adapted from Rob Miller
Critical Path
0
PP
CP
start
start
eye move mouse move
50
perceive
cursor
100
100
verify
target
start
Shift press
50
50
50
move
mouse
MP
right
480
press
Shift
MP
left
MP
eye
perceive
target
100
move eye
to target
30
Adapted from Rob Miller
CPM-GOMS Success Story
Phone company considering redesign of a
workstation for telephone operators
– Reduced keystrokes needed for common tasks
– Put frequently-used keys closer to user’s fingers
New design was 4% slower than old design
– 1 sec/call = $3 million/year
Keystroke-level model has no explanation
But CPM-GOMS explained why:
– Keystrokes removed were not on the critical path
– Used during slack time, while greeting customer
– A keystroke was moved from the beginning of call
(during slack time) to later (putting it on the critical
path)
Adapted from Rob Miller
In-class Exercise
Generate GOMS models (CNM-GOMS or
NGOMSL) for deleting a file from your
desktop using two methods
– Drag-and-drop
– Using terminal window
Compare the two models for deciding
which should be used, and in which
contexts
Limitations of GOMS
Assumes extreme expert behavior
Tasks must be goal-directed
Does not model problem-solving, exploration, etc.
Difficult to model behavior at this level of detail
Still hard to model anything but the simplest tasks
Not as easy as heuristic analysis, guidelines, or
cognitive walkthrough
Conclusion: GOMS is an interesting theoretical
model, but is hardly ever used in practice
For Next Time
We will talk about the conceptual
theories underlying KLM and GOMS
– Fitts’ Law
– Model Human Processor
Interactive Prototype #2 and Experiment
Design due on April 13th!