640 likes | 1.64k Views
213: User Interface Design and Development. KLM and GOMS. Lecture #11 - March 31st, 2009. Today’s Outline. Cognitive Modeling Keystroke-Level Model (KLM) Other GOMS Variants. Cognitive Modeling. Cognitive approach to HCI attempts to predict user performance based on a model of cognition
E N D
213: User Interface Design and Development KLM and GOMS Lecture #11 - March 31st, 2009
Today’s Outline • Cognitive Modeling • Keystroke-Level Model (KLM) • 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
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
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 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 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 Adapted from Rob Miller
Using KLM KLM can help evaluate UI designs, interaction methods and trade-offs, using parametric analysis If common tasks take too long or consist of too many statements, can provide shortcuts T Del n times Shift-click n 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 (well-learned) 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 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 perceivetarget perceivecursor PP 100 100 start eye move start mouse move verifytarget start Shift press CP 50 50 50 50 move mouse MPright 480 pressShift MPleft 100 move eye to target MP eye 30 Adapted from Rob Miller
Critical Path 0 perceivetarget perceivecursor PP 100 100 start eye move start mouse move verifytarget start Shift press CP 50 50 50 50 move mouse MPright 480 pressShift MPleft 100 move eye to target MP eye 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!