User Modeling Predicting thoughts and actions GOMS ___________________________________________________________________________________________________ SCHOOL OF INTERACTIVE ARTS + TECHNOLOGY [SIAT] | WWW.SIAT.SFU.CA Agenda User modeling – Fitt’s Law – GOMS Feb 24, 2011 IAT 334 2 User Modeling Idea: If we can build a model of how a user works, then we can predict how s/he will interact with the interface – Predictive modeling Many Feb 24, 2011 different modeling techniques exist IAT 334 3 User Modeling – 2 types Stimulus-Response – Hick’s law – Practice law – Fitt’s law Cognitive – human as interperter/predictor – based on Model Human Processor (MHP) – Key-stroke Level Model • Low-level, simple – GOMS (and similar) Models • Higher-level (Goals, Operations, Methods, Selections) • Not discussed here Feb 24, 2011 IAT 334 4 Power Law of Practice Tn = T1n-a – Tn to complete the nth trial is T1 on the first trial times n to the power -a; a is about .4, between .2 and .6 – Skilled behavior - Stimulus-Response and routine cognitive actions • • • • Feb 24, 2011 Typing speed improvement Learning to use mouse Pushing buttons in response to stimuli NOT learning IAT 334 5 Power Law of Practice How to use it? – Use measured T1 on the first trial • Predict whether usability criteria will be met • How many trials? – Predict how many practice iterations needed to reach usability criteria Feb 24, 2011 IAT 334 6 Hick’s Law Decision time to choose among n equally likely alternatives – T = Ic log2(n+1) – Ic ~ 150 msec Feb 24, 2011 IAT 334 7 Hick’s Law How to use it? – Menu selection – Choose among 64 choices: • Single 64-item menu • 2-level menu: 8 choices at each level • 2-level menu: 4 choices then 16 choices Feb 24, 2011 IAT 334 8 Fitts’ Law Models movement times for selection (reaching) tasks in one dimension Basic idea: Movement time for a selection task – Increases as distance to target increases – Decreases as size of target increases Feb 24, 2011 IAT 334 9 Fitts Experiment: 1D d Feb 24, 2011 IAT 334 w 10 Fitts: Index of Difficulty ID - Index of difficulty ID = log2 (d/w + 1.0) bits result distance to move width (tolerance) of target ID is an information theoretic quantity – Based on work of Shannon – larger target => more information (less uncertainty) Feb 24, 2011 IAT 334 11 Fitts formula MT - Movement time MT = k1 + k2*ID MT = k1 + k2 *log2 (d/w + 1.0) MT is a linear function of ID k1 and k2 are experimental constants Feb 24, 2011 IAT 334 12 Run empirical tests to determine k1 and k2 in MT = k1 + k2* ID Will get different ones for different input devices and device uses MT ID = log2(d/w = 1.0) Feb 24, 2011 IAT 334 13 What about 2D h x w rect: one way is ID = log2(d/min(h, w) + 1) – Should take into account direction of approach Feb 24, 2011 IAT 334 14 Design implications Menu item size Icon size Put frequenlty used icons together Scroll bar target size and placement – Up / down scroll arrows together or at top and bottom of scroll bar Feb 24, 2011 IAT 334 15 GOMS One of the most widely known Assumptions – Know sequence of operations for a task – Expert will be carrying them out Goals, Feb 24, 2011 Operators, Methods, Selection Rules IAT 334 16 GOMS Procedure Walk through sequence of steps Assign each an approximate time duration -> Know overall performance time (Can Feb 24, 2011 be tedious) IAT 334 17 Limitations GOMS is not for – Tasks where steps are not well understood – Inexperienced users Why? Good example: Move a sentence in a document to previous paragraph Feb 24, 2011 IAT 334 18 Goal End state trying to achieve Then decompose into subgoals Select sentence Moved sentence Cut sentence Move to new spot Paste sentence Place it Feb 24, 2011 IAT 334 19 Operators Basic actions available for performing a task (lowest level actions) Examples: move mouse pointer, drag, press key, read dialog box, … Feb 24, 2011 IAT 334 20 Methods Sequence of operators (procedures) for accomplishing a goal (may be multiple) Example: Select sentence – Move mouse pointer to first word – Depress button – Drag to last word – Release Feb 24, 2011 IAT 334 21 Selection Rules Invoked method when there is a choice of a Example: Could cut sentence either by menu pulldown or by ctrl-x Feb 24, 2011 IAT 334 22 Further Analysis GOMS is often combined with a keystroke level analysis – Assigns times to different operators – Plus: Rules for adding M’s (mental preparations) in certain spots Feb 24, 2011 IAT 334 23 Example Move Sentence 1. Select sentence Reach for mouse Point to first word Click button down Drag to last word Release H P K P K 2. Cut sentence Press, hold ^ Press and release ‘x’ Release ^ 0.40 1.10 0.60 1.20 0.60 3.90 secs Point to menu Press and hold mouse Move to “cut” Release or 3. ... Feb 24, 2011 IAT 334 24 Keystroke-Level Model Simplified GOMS KSLM - developed by Card, Moran & Newell, see their book – The Psychology of Human-Computer Interaction, Card, Moran and Newell, Erlbaum, 1983 Skilled users performing routine tasks Assigns times to basic human operations experimentally verified Based on MHP - Model Human Processor Feb 24, 2011 IAT 334 25 User Profiles Attributes: – attitude, motivation, reading level, typing skill, education, system experience, task experience, computer literacy, frequency of use, training, color-blindness, handedness, gender,… Novice, Feb 24, 2011 intermediate, expert IAT 334 26 Motivation User – Low motivation, discretionary use – Low motivation, mandatory – High motivation, due to fear – High motivation, due to interest Feb 24, 2011 Design goal – Ease of learning – Control, power – Ease of learning, robustness, control – Power, ease of use IAT 334 27 Knowledge & Experience Experience task system – low low – high high – low high – high low Feb 24, 2011 Design goals – Many syntactic and semantic prompts – Efficient commands, concise syntax – Semantic help facilities – Lots of syntactic prompting IAT 334 28 Job & Task Implications Frequency of use – High - Ease of use – Low - Ease of learning & remembering Task implications – High - Ease of use – Low - Ease of learning System use – Mandatory - Ease of using – Discretionary - Ease of learning Feb 24, 2011 IAT 334 29 Modeling Problems 1. Terminology - example – High frequency use experts - cmd language – Infrequent novices - menus What’s Feb 24, 2011 “frequent”, “novice”? IAT 334 30 Modeling Problems (contd.) 2. Dependent on “grain of analysis” employed – Can break down getting a cup of coffee into 7, 20, or 50 tasks – That affects number of rules and their types Feb 24, 2011 IAT 334 31 Modeling Problems (contd.) 3. Does not involve user per se – Don’t inform designer of what user wants 4. Time-consuming and lengthy Feb 24, 2011 IAT 334 32