User Modeling CIS 376 Bruce R. Maxim UM-Dearborn What is HCI? • • • • Answer: human computer interaction Not just human factors No strong agreement Main emphasis of HCI is user interface design User interface involves • Hardware • Behavior of software • Supporting documentation Typical Human Factors Measures • • • • • Time to learn Speed of performance User error rates Retention over time Subjective satisfaction Where do user interfaces come from? • Designed by programmers • Functionality dominates software design and marketing • Designer intuition is often used rather than user modeling (not good) HCI Goals for Designers • Improve user's quality of life by building quality (not flashy) interactive systems • Promote attention to user interface issues which should be considered by managers • Become successful designers of systems that go beyond intuitive concepts like "user friendliness" and focus on supporting the user's real task goals Motivation for Including Human Factors in User Interface Design • • • • Life critical systems Industrial and commercial uses Personal applications Exploratory, creative, and cooperative systems Accommodating Human Diversity in Design • • • • • • Physical workspaces Cognitive and perceptual ability differences Personality differences Cultural and international diversity User disabilities Elderly users US Military Standards for Human Engineering and Design • • • • Achieve required performance Minimize personnel training requirements Achieve required reliability Foster design standardization How is this done? • Ensure functionality by basing design on user task analysis • System reliability requires designer attention to details like privacy, security, and data integrity • Standardization requires attention to issues like system integration, consistency, and portability • Schedule and budget must allow for human factors work like user analysis and testing Approaches to User Interface Design • Human Factors: prototype and test • Cognitive theory: production system • Engineering models: – KLM (keystroke level model) – GOMS Models (goals, operators, methods, selection rules) Keystroke Level Model (KLM) • Choose representative user task scenarios • Specify design to point that keystrokes defining actions can be listed • List keystrokes (operators) required to perform task • Insert mental operators at points user needs to stop and think • Look up standard execution time for each operator • Add up the execution times for the operators • Total is estimated time to complete task Standard Execution Times • • • • • • K - key press (0.2 sec = 55 wpm) P - point with mouse (1.1 sec) B - mouse button press (0.1 sec) BB - press and release button (0.2 sec) H - home hands to keyboard or mouse (0.4 sec) M - mental act of thinking (1.2 sec) Current Design: Delete a file by dragging it to the trash icon 1. Point to file icon (P) 2. Press & hold mouse button (B) 3. Drag file to trash icon (P) 4. Release mouse button (B) 5. Point to original window (P) 3P + 2B = 3.5 sec. New Design: Adding a command to menu 1. Point to file icon (P) 2. Click button (BB) 3. Point to file menu (P) 4. Press and hold button (B) 5. Point to delete command (P) 6. Release mouse button (B) 7. Point to original window (P) 4P + 4B = 4.8 sec. Assumptions • These previous scenarios work only work if the user is currently able to view all the needed windows and icons. • If the trash icon for example is buried under other windows the first procedure is slowed down quite a bit. Inserting Mental Operators: Where does the user stop and think? 1. Initiating a process. 2. Making strategic decisions. 3. Retrieving a chunk from user’s short term memory 4. Finding something on the screen. 5. Verifying intended action is complete. Mental Operators New vs Experienced Users • New users stop and check feedback after every step • New users have small chunks • Experienced users have elaborate chunks • Experienced users may overlap mental operators with physical operators Delete a file by dragging icon to trash 1. Initiate delete. (M) 2. Find file icon. (M) 3. Point to file icon. (P) 4. Press & hold button. (B) 5. Verify icon reverse video. (M) 6. Find trash icon. (M) 7. Drag file to trash icon. (P) 8. Verify trash reverse video. (M) 9. Release button. (B) 10. Verify bulging trash icon. (M) 11. Find original window. (M) 12. Point to window. (P) 3P + 2B + 7M = 12.6 sec. Placement of Mental Operators • Hard to do - requires good intuition from designer • Consistency in the number of Mental's assigned is more important than exact positioning GOMS Model Goals Operators Methods Selection Rules Advantages • GOMS models are executable • GOMS models allow simulated execution of user task • Provide a rigorous description of what user must learn • Provide estimate of size or complexity of interface (number of distinct methods and their length) • Can estimate both learning time (about 30 sec per step and execution time (total of KLM operators) • Allow designer to evaluate the effect of reusing or sharing methods among several tasks This example is extracted from: David Kieras, A Guide to GOMS Task Analysis, University of Michigan Technical Report, Spring, 1994. User Goals • • • • Delete a file. Move a file. Delete a directory. Move a directory. To accomplish goal of deleting a file: 1. Accomplish goal of dragging file to trash. 2. Return with goal completed. To accomplish goal of moving a file: 1. Accomplish goal of dragging file to destination. 2. Return with goal completed. To accomplish goal of deleting a directory: 1. Accomplish goal of dragging directory to trash. 2. Return with goal completed. To accomplish goal of moving a directory: 1. Accomplish goal of dragging directory to destination. 2. Return with goal completed. Generalized Methods Method for accomplishing goal of deleting an object: 1. Accomplish goal of dragging object to trash. 2. Return with goal completed. Method for accomplishing goal of moving an object: 1. Accomplish goal of dragging object to destination. 2. Return with goal completed. Sub Method Accomplish goal of dragging item to destination: 1. Locate icon on screen. 2. Move cursor to item icon location. 3. Hold mouse button. 4. Locate destination icon. 5. Move cursor to destination icon. 6. Verify destination icon reverse video. 7. Release mouse button. 8. Return with goal accomplished. Method for GOMS Model Construction • Make a list of top-level user goals • Write a step-by-step method for accomplishing each goal on list • Continue refining each step that is not a keystroke level operator by defining it as a subgoal and add it to the list of user goals • Continue processing user goals until list is empty (meaning that all user goals are defined in terms of keystrokes) • If there are multiple methods to accomplish a goal supply decision rules to choose which method to invoke