CMSC 434 Introduction to Human Computer Interaction Spring 2010 1
Lecture 12: Errors
March 22
CMSC 434 Introduction to Human Computer Interaction Spring 2010 2
Medical Usability: How to Kill Patients Through Bad Design
• Under dosage • Double dosage • Wrong patient • Wrong date • Medical history ignored • Post-it notes
CMSC 434 Introduction to Human Computer Interaction Spring 2010 3
Hospital’s order-entry system
• Misleading default values – 10 mg
• No feedback, new commands not checked against the old ones – Double dosage
• Poor readability – Wrong patient selected
• Data description errors – Tomorrow
• Memory overload – Too many screens for a patient’s medical history
• Overly complicated overflow – Different from Hospital's actual workflow
CMSC 434 Introduction to Human Computer Interaction Spring 2010 4
Lecture objectives
• Identification – Identify the variety of errors people make
and their possible causes
• Prevention – Discuss guidelines to prevent the errors
from happening by reducing the causes
• Intervention – Discuss ways to recover from errors when
they do happen
CMSC 434 Introduction to Human Computer Interaction Spring 2010 5
Error identification
CMSC 434 Introduction to Human Computer Interaction Spring 2010 6
CMSC 434 Introduction to Human Computer Interaction Spring 2010 7
Errors people make in taking pictures
• Wanting to take pictures but taking videos instead
• Wanting to snap a picture but turning off the camera instead
• Taking pictures with the lid still covering the lenses
• Facing the wrong direction • Sending enormous files by emails • Covering the lenses by fingers • Taking pictures with shaky hands • Not holding the snap button long enough to
trigger a snap
CMSC 434 Introduction to Human Computer Interaction Spring 2010 8
Error classification
• When? – Perceptual errors – Cognitive errors – Motor errors
• How? – Mistakes – Failures – Slips and lapses
CMSC 434 Introduction to Human Computer Interaction Spring 2010 9
Perceptual errors
• Causes: – Misleading perceptual cues – Sensory overload
• Examples: – I didn’t notice the battery indicate turns red. – I didn’t realize these buttons are different. – I thought this underlined sentence is a link. – I thought I heard the sound of someone
sending me an IM.
CMSC 434 Introduction to Human Computer Interaction Spring 2010 10
Cognitive errors
• Causes: – Complex decision process – High load on memory
• Examples: – The password I remembered was wrong. – I added the numbers wrong in my head. – I didn’t know I was in the video mode.
CMSC 434 Introduction to Human Computer Interaction Spring 2010 11
Cognitive errors
• Causes: – Complex decision process – High load on memory
• Examples: – The password I remembered was wrong. – I added the numbers wrong in my head. – I didn’t know I was in the video mode.
CMSC 434 Introduction to Human Computer Interaction Spring 2010 12
Motor errors
• Causes: – Unnatural motor movement • Cross hand
– Similar motor sequences – Pressured for speed – Tricky hand-eye coordination – Special motor skills (typing, hand drawing)
CMSC 434 Introduction to Human Computer Interaction Spring 2010 13
Motor errors
• Examples: – I typed the wrong key. – I pressed the wrong button. – I double clicked instead of single clicked. – I checked the wrong box. – I typed one too many letter. – I can’t get the mouse to where I want.
CMSC 434 Introduction to Human Computer Interaction Spring 2010 14
Failures
• Causes: – Know what to do but difficult to do it
successfully
• Examples: – Putting a thread into the eye of a needle – Looking for a needle in the haystack – Adding numbers in the head – Pulling off a quadruple click
CMSC 434 Introduction to Human Computer Interaction Spring 2010 15
Mistakes
• Causes: – Do the wrong thing for the goal – Apply a rule in a wrong situation – Make a bad decision
• Users may not be aware of the mistake • It can be a learnability or memory issue.
CMSC 434 Introduction to Human Computer Interaction Spring 2010 16
Mistakes
• Examples: – Sending a gigantic photo via email – Ordering a product from a shady vendor – Deleting files by removing shortcuts from
the desktop – Forgetting to turn cell phones to vibration
CMSC 434 Introduction to Human Computer Interaction Spring 2010 17
Slips and lapses
• Causes: – Working memory failure – Do something familiar but miss a few steps
• Slip – failure of execution
• Lapse – failure of memory
CMSC 434 Introduction to Human Computer Interaction Spring 2010 18
• Unintentional • Users realize right away • More common than mistakes • Slow users down
CMSC 434 Introduction to Human Computer Interaction Spring 2010 19
Six types of slips and lapses
1. Capture errors 2. Description errors 3. Data driven errors 4. Associate activation 5. Loss of activation 6. Mode errors
CMSC 434 Introduction to Human Computer Interaction Spring 2010 20
1. Capture errors
• A familiar sequence of actions captures an unfamiliar sequence of actions.
• Examples: – Get off the exit to work prematurely on a
weekend grocery trip – Open up a web browser and find yourself
going to Facebook instead of where you meant to go
CMSC 434 Introduction to Human Computer Interaction Spring 2010 21
2. Data-driven error
• An automatic action triggered by arrival of sensory info which intrudes into the normal action
• Parameters in STM wrongly replaced by new sensory info
• Examples: – Wanting to say X but instead saying Y
because you heard someone nearby yelling Y
CMSC 434 Introduction to Human Computer Interaction Spring 2010 22
3. Description errors
• Actions have similar descriptions • When performing one action, one
mistakenly perform a different action that fits the description.
• Description can be visual, spatial, or semantic.
CMSC 434 Introduction to Human Computer Interaction Spring 2010 23
CMSC 434 Introduction to Human Computer Interaction Spring 2010 24
CMSC 434 Introduction to Human Computer Interaction Spring 2010 25
3. Description errors
• Wanting to maximize a window but instead minimizing it – Description: ?
• Wanting to save a file but instead opening up the save-as dialog box – Description: ?
• Wanting to reply to sender but instead reply to all – Description: ?
CMSC 434 Introduction to Human Computer Interaction Spring 2010 26
3. Description errors
• Wanting to maximize a window but instead minimizing it – Description: click on the button at the upper-left
corner (spatial similarity) • Wanting to save a file but instead opening
up the save-as dialog box – Description: click on the button that looks like a
floppy disk (visual similarity) • Wanting to reply to sender but instead reply
to all – Description: click on the button for reply
(semantic similarity)
CMSC 434 Introduction to Human Computer Interaction Spring 2010 27
CMSC 434 Introduction to Human Computer Interaction Spring 2010 28
4. Associative activation
• Internal thoughts and associations trigger the wrong action
• Wrong reflexes • Example: – Phone rings yell “come in”. – Dismiss an important message box
CMSC 434 Introduction to Human Computer Interaction Spring 2010 29
5. Loss of activation
• Forgot the goal in the middle of a sequence of actions performed to fulfill the goal.
• Examples: – Forgot what we went into the room for. – Forgot why we visited a website – After starting Skype, forgot whom we wanted
to call – Go to Google but forgot want we wanted to
search
CMSC 434 Introduction to Human Computer Interaction Spring 2010 30
6. Mode error
• Do action in one mode thinking you’re in another.
• Examples: – Typing password not knowing the Cap Lock
is on – Deleting all files but in the wrong directory. – Typing gibberish in the wrong language
mode.
CMSC 434 Introduction to Human Computer Interaction Spring 2010 31
Exploiting user errors (Bad)
• Phishing • Fake anti-virus program • Internet button next to call button
CMSC 434 Introduction to Human Computer Interaction Spring 2010 32
Activity: What kinds of slips and lapses?
1. Wanting to take a picture but shooting a video instead
2. Typing the password in the field for the login name
3. After installing a software, forgetting why you did it
4. Clicking on “send” without first attaching a filf 5. Typing ‘ls’ in a Windows terminal 6. Closing a popup immediately upon seeing it
and prematurely terminating a process 7. After seeing a new email notification, typing the
sender’s name in a word document
CMSC 434 Introduction to Human Computer Interaction Spring 2010 33
Error prevention
CMSC 434 Introduction to Human Computer Interaction Spring 2010 34
Tragedy that can be avoided
• People running down the stairs but found themselves trapped in the basement …
CMSC 434 Introduction to Human Computer Interaction Spring 2010 35
CMSC 434 Introduction to Human Computer Interaction Spring 2010 36
CMSC 434 Introduction to Human Computer Interaction Spring 2010 37
CMSC 434 Introduction to Human Computer Interaction Spring 2010 38
CMSC 434 Introduction to Human Computer Interaction Spring 2010 39
Forcing function
• Interlock • Lockin • Lockout
• Behavior shaping constraints • Physical vs. Software
CMSC 434 Introduction to Human Computer Interaction Spring 2010 40
Interlock
• Force operations to take place in a proper sequence
• Real-world examples: – Cars that force us to shift to P before we can
turn the engine off
• UI examples: – ATMs that force us to remove ATM cards
before before we can proceed
CMSC 434 Introduction to Human Computer Interaction Spring 2010 41
Lockin
• Keep an operation active, preventing someone from accidentally stopping it prematurely
• Real-world examples • UI examples: – soft on/off switch
CMSC 434 Introduction to Human Computer Interaction Spring 2010 42
Lockout
• Require efforts to unlock a feature to prevent accidental access
• Real-world examples: the stopping bar in the stair to the basement, the safety-pin of a grenade
• UI examples: – Mac’s lock button
CMSC 434 Introduction to Human Computer Interaction Spring 2010 43
Errors where forcing functions may apply
• I forgot to remove the cartridge before turning my Nintendo off. – Interlock
• I forgot to remove the lid off the lenses before taking pictures – Interlock
• I accidentally close the window before the download is completed – Lockin
• I accidentally formatted my hard drive. – Lockout
CMSC 434 Introduction to Human Computer Interaction Spring 2010 44
Errors summary
• When? (read-scan, think, act) – Perceptual errors – Cognitive error – Motor errors
• How? (intentional vs. accidental) – Failures – Mistakes – Slips and lapses
1. Capture errors 2. Description errors 3. Data driven errors 4. Associate activation 5. Loss of activation 6. Mode errors
CMSC 434 Introduction to Human Computer Interaction Spring 2010 45
Preventing general errors
Avoid the causes listed earlier …
• Perceptual – Avoid misleading visual cues
• Cognitive – Avoid memory load
• Motor – Avoid unnatural motor movement
CMSC 434 Introduction to Human Computer Interaction Spring 2010 46
Preventing mistakes
• Hard to do through design – We can’t prevent users from making bad
decisions by intention
• Possible solutions: – Provide “reasonableness” check – Provide help and documentation
CMSC 434 Introduction to Human Computer Interaction Spring 2010 47
Preventing lapses
1. Capture errors 2. Description errors 3. Data driven errors 4. Associative activation 5. Loss of activation 6. Mode errors
CMSC 434 Introduction to Human Computer Interaction Spring 2010 48
1. Preventing capture errors
• Avoid habitual action sequences with identical prefixes
CMSC 434 Introduction to Human Computer Interaction Spring 2010 49
2. Preventing description errors
• Avoid actions with very similar descriptions
• Keep dangerous commands away from common ones – E.g., save and delete should not be together
• Provide contrast
CMSC 434 Introduction to Human Computer Interaction Spring 2010 50
3. Preventing data-driven errors
• Avoid distracting sensory information • Reduce the need to keep data in the
working memory (so it won’t get replaced)
CMSC 434 Introduction to Human Computer Interaction Spring 2010 51
4. Preventing associative activation errors
• Avoid similar stimulus or notification for different actions
CMSC 434 Introduction to Human Computer Interaction Spring 2010 52
5. Preventing loss of activation
• Keep procedures short – so users won’t lose track of the steps
• Minimize interruptions – so users won’t get distracted and forget
CMSC 434 Introduction to Human Computer Interaction Spring 2010 53
6. Preventing mode errors
• Eliminate modes or provide visible cues • Minimize shared actions across modes • Use spring loaded or temporary modes. – Examples: • drag-and-drop by holding down mouse button • batch-selection by holding shift
CMSC 434 Introduction to Human Computer Interaction Spring 2010 54
Confirmation dialog
• Limitations: – People tend to explain away errors. – Reduces the efficiency – Habitual dismissal reduces its effectiveness
when something serious really happens
• Examples: – Engine check light – False alarms – Web site security warning
CMSC 434 Introduction to Human Computer Interaction Spring 2010 55
Activity: What kinds of slips and lapses?
1. Wanting to take a picture but shooting a video instead
2. Typing the password in the field for the login name
3. After installing a software, forgetting why you did it
4. Clicking on “send” without first attaching a filf 5. Typing ‘ls’ in a Windows terminal 6. Closing a popup immediately upon seeing it
and prematurely terminating a process 7. After seeing a new email notification, typing the
sender’s name in a word document
CMSC 434 Introduction to Human Computer Interaction Spring 2010 56
Error recovery
CMSC 434 Introduction to Human Computer Interaction Spring 2010 57
Guidelines
• Provide undo • Provide cancel • For form input errors, help users locate
the fields that need to be fixed • Provide context-sensitive help • Comfort the users
CMSC 434 Introduction to Human Computer Interaction Spring 2010 58
CMSC 434 Introduction to Human Computer Interaction Spring 2010 59
CMSC 434 Introduction to Human Computer Interaction Spring 2010 60
Error messages
• Best error message is none at all • Be precise • Restate user’s input • Speak the user’s language • Give constructive help • Be polite, avoid loaded words • Avoid frivolous error messages
CMSC 434 Introduction to Human Computer Interaction Spring 2010 61
• The mouse cursor is outside of the visible screen area.
• A string is typed in the font size selection text field!!
• Error code = 24 • Your action has caused the program to
crash.
CMSC 434 Introduction to Human Computer Interaction Spring 2010 62
• Fatal error saving file • The file can not be saved. • There is an error saving “xxx.doc”. • There is an error saving “xxx.doc”
because of the format. • There is an error saving “xxx.doc”
because of the format. Please make sure it is an image file.
CMSC 434 Introduction to Human Computer Interaction Spring 2010 63
CMSC 434 Introduction to Human Computer Interaction Spring 2010 64
CMSC 434 Introduction to Human Computer Interaction Spring 2010 65
CMSC 434 Introduction to Human Computer Interaction Spring 2010 66