Human Perception Christine Robson September 20, 2007 First Computer “bug” Self Checkout love it or hate it? too much of a good thing? Another word about grading We are not grading according to strict percentages This class is qualitative not quantitative – Assignments are less structured then most CS classes Most of the grade is on the final project Overall, pleased with effort – Giving feedback on areas to improve Today Human Information Processing – – – – – – Perception Motor Skills Memory Decision Making Attention Vision Modeling Human Actions – Fitts’s Law – GOMS – KLM Stage Theory of Human Perception & Memory Sensory Image Store Working Memory Long Term Memory Short-Term Sensory Store Visual information store – Encoded as a physical image – Size approx 7-17 letters – Decay ~200ms (70-1000ms) Auditory information store – Encoded as a physical sound – Size 4.4-6.2 letters – Decay ~1500ms (900-3500ms) Preattentive Processing http://www.csc.ncsu.edu/faculty/healey/PP/index.html Preattentive Processing http://www.csc.ncsu.edu/faculty/healey/PP/index.html Preattentive Processing http://www.csc.ncsu.edu/faculty/healey/PP/index.html Say the colors of these words aloud Cat Jacket Train Lunch Knife Road Do it again… Orange Purple White Red Yellow Green Read them in order… White Green Orange Red Yellow Purple Perceptual Fusion Two stimuli within the same PP cycle (perceptual processor cycle, approx 100ms) appear fused Consequences: – 10 frames/second seems to be moving (20fps looks smooth) – Computer responses in less then 100ms appear instantaneous i.e. That’s how this projector works Stage Theory of Human Perception & Memory maintenance rehearsal Sensory Image Store decay Working Memory Long Term Memory elaboration decay, displacement decay? interference? Working Memory Small capacity: 7 +/- 2 chunks – A memory chunk is a small grouping of data eg 800 411 4664 is three chunks Fast decay rate (~7 [5-226] sec) Maintenance Rehearsal fends off delay Interference causes faster delay Long-term Memory (LTM) Huge capacity Little decay Elaborative rehearsal moves chunks from working memory into LTM by making connections with other chunks Recall Who were the 7 dwarves in Snow White? Recognition Grouchy Sneezy Smiley Sleepy Pop Grumpy Cheerful Dopey Bashful Wheezy Doc Lazy Happy Nifty Sleepy Does that help? Power Law of Practice Task time on the nth trial: Tn = T1 n-a + c where a = 0.4 ; c is a limiting constant You get faster the more times you do it! Applies to skilled behavior – eg. Sensory & Motor – Not to knowledge acquisition or improving quality Human Actions Divided Attention Multitasking – Attention is a resource that can be shared among different tasks simultaneously Depends on – The structure of the tasks (similar tasks interfere, different tasks are easy to share) modality, encoding, and components – Difficulty of the task Choice Reaction Time Reaction time is proportional to information content of stimulus If the user has to make a choice, it takes much longer to respond Double your number of stimuli, double your reaction time Hick’s Law Time it takes for a user to make a decision. Given n equally probable choices, the average reaction time T required to choose among them: T = b log2(n + 1) Information Clutter We don’t even need Hick’s Law to see this is a bad idea… Motor Processing Pianist: up to 16 finger movements per second – You might faster then you speak – You certainly type faster then you click Point of no return for muscle action Fitts’s Law Time T to move your hand to a target of size S at distance D away is T = RT + MT = a + b log (D/S +1) D start S – Depends only on index of difficulty log (D/S +1) Hand movement based on a series of microcorrections Implications of Fitts’s Law A start start C start start B D Which targets are easier to hit? Why? Visualization of Fitts’s Law Time to move for distances (1 to 10) and a widths (0.1 to 1.0): www.mindhacks.com/blog/moving/index.html Toolbar Example How can you make a simple change to improve this tool bar – Apply Fitts’s Law! Targets at screen edge are easy to hit GOMS Describe the user behavior in terms of – Goals i.e. edit manuscript, locate line – Operators Elementary perceptual, motor, or cognative acts – Methods Procedure for using operators to accomplish goals – Selection rules Used if several methods are available for a given goal Family of methods – KLM, CMN-GOMS, NGOMSL, CPM-GOMS GOMS Example Goal (the big picture) – Go from home to the airport Methods (or subgoals?) – Take BART, taxi, airport shuttle Operators – Go to BART station, wait for BART… Selection rules – BART is cheaper, but I’m running late… GOMS How-To: Generate task description – Pick high-level user Goal – Write Methods for reaching Goal (may invoke sub-goals) – Write Methods for sub-goals – Iterate recursively until Operators are reached Evaluate description of task Apply results to UI Iterate GOMS Calculations Execution time – Add up times from operators – Assume experts (have mastered tasks) – Assume error-free behavior – Very good rank ordering – Absolute accuracy (~10%-20%) Using GOMS Analysis Check that frequent goals can be achieved quickly Making operator hierarchy is often the value – Functional coverage & consistency Does UI contain needed functions? Are similar tasks preformed similarly? – Operator Sequence In what order are individual operations done? Keystroke Level Model Describe the task using the following Operators – K: pressing a key or a pressing (or releasing) of a button T(K) = 0.08~1.2 seconds (~0.2 avg) – P: pointing T(P) = 1.1 seconds (without button presses) – H: homing (switching device T(H) = 0.4 sec – D(n,L): drawing segmented lines T(D) = 0.9n + 0.16L – M: mentally prepare T(M) = 1.35s – R(t) : system repsonse time T(R) = t KLM Heuristic Rules (Raskin) 0: Insert M – in front of all K – in front of all P’s selecting a command (not in front of P’s ending a command) 1: Remove M between fully anticipated operators – MPK PK 2: if a string of MKs belong to a cognitive unit, delete all M’s except the first – 4564.23: MKMKMKMKMKMKMK MKKKKKKK 3: if K is a redundant terminator, then delete M in front of it – [enter] [enter]: MKMK MKK 4a: if K terminates a constant string (command name) delete the M in front of it – cd [enter]: MKKMK MKKK 4b: if K terminates a variable string (parameter) keep the M in front of it – cd class [enter]: MKKKMKKKKMK MKKKMKKKKKMK Using KLM Encode using all physical operators – K, M, P, H, D(n,l), R(t) Apply Raskin’s KLM rules Transform R followed by an M – If t ≤ T(M) : R(t) R(0) – If T(M) < t : R(t) R(t – T(M) ) Compute the total time by adding each time cost Applications of GOMS Compare different UI designs Profiling (time) Building a help system? Why? – Modeling makes user tasks & goals explicit – Can suggest questions users will ask & the answers What GOMS Can Model Task must be goal-directed – Some activities are more goal-directed then others – Creative activities may not be as goal-directed Task must be a routine cognitive skill – As opposed to problem solving – Good for machine operators Serial and parallel tasks (CMP-GOMS) Advantages of GOMS Gives qualitative and quantitative measures Model explains the results Less work then a user study- no users! Easy to modify when UI is revised Disadvantages of GOMS Not as easy as other evaluation methods – Heuristic evaluation, guidelines, etc. Takes lots of time, skill & effort Only works for goal-directed tasks Assumes expert performance Does not address several UI issues – Readability, memorizability of icons, etc In conclusion Know your users capabilities and limits Models such as Fitts’s and GOMS can help you test your UI without real users But there’s still no substitute for user studies Nuts & Bolts Assignments Upcoming: Contextual inquiry (Due Sept. 27) – Pick appropriate method – Group analysis – Report Next time Design Process: Implement Low Fidelity Prototyping Readings – The Case Against User Interface Consistency – Norman's The Design of Everyday Things, Chapter 6 – Steve Krug "Don't make me think" (handout) Don’t Forget to pickup: “Don’t Make Me Think!” handout A gift for your test subject