KLM and GOMS

advertisement

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

PP

CP

MP right

0 start start eye move mouse move

50 50 perceive target

100 move mouse

480 verify target

50

MP left

MP eye move eye to target

30 perceive cursor

100 start

Shift press

50 press

Shift

100

Adapted from Rob Miller

Critical Path

PP

CP

MP right

0 start start eye move mouse move

50 50 perceive target

100 move mouse

480 verify target

50

MP left

MP eye move eye to target

30 perceive cursor

100 start

Shift press

50 press

Shift

100

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!

Download