3/2/2004an introduction to user interface design matthew plumlee
TRANSCRIPT
3/2/2004 An Introduction to User Interface Design
An Introduction toUser Interface Design
Matthew Plumlee
3/2/2004 An Introduction to User Interface Design
Outline
• What is User Interface Design?
• Models– Norman’s model of task performance– User’s mental models
• Schneiderman’s “8 Golden Rules”
3/2/2004 An Introduction to User Interface Design
What is a User Interface?
• Are user interfaces only on computers?
3/2/2004 An Introduction to User Interface Design
What is a User Interface?
• Are user interfaces only on computers?– Pencil
3/2/2004 An Introduction to User Interface Design
What is a User Interface?
• Are user interfaces only on computers?– Pencil– Flashlight, light switch
3/2/2004 An Introduction to User Interface Design
What is a User Interface?
• Are user interfaces only on computers?– Pencil– Flashlight, light switch– Measuring tape
3/2/2004 An Introduction to User Interface Design
What is a User Interface?
• Are user interfaces only on computers?– Pencil– Flashlight, light switch– Measuring tape– Frying pan
3/2/2004 An Introduction to User Interface Design
What is a User Interface?
• Are user interfaces only on computers?– Pencil– Flashlight, light switch– Measuring tape– Frying pan
• What do all of these things have in common?
3/2/2004 An Introduction to User Interface Design
What is a User Interface?
• Are user interfaces only on computers?– Pencil– Flashlight, light switch– Measuring tape– Frying pan
• What do all of these things have in common?
• Tools, Affordances (The Psychology of Everyday Things)
3/2/2004 An Introduction to User Interface Design
Examples of Affordances
• Doorknobs, push handles, pull handles
3/2/2004 An Introduction to User Interface Design
Examples of Affordances
• Doorknobs, push handles, pull handles
• Buttons/switches– Raised boxes are for pushing– Objlong boxes in tracks are for sliding
3/2/2004 An Introduction to User Interface Design
Examples of Affordances
• Doorknobs, push handles, pull handles
• Buttons/switches– Raised boxes are for pushing– Objlong boxes in tracks are for sliding
• Dials—round things are for turning
3/2/2004 An Introduction to User Interface Design
Examples of Affordances
• Doorknobs, push handles, pull handles
• Buttons/switches– Raised boxes are for pushing– Objlong boxes in tracks are for sliding
• Dials—round things are for turning
• Handles are for grabbing onto/pulling
3/2/2004 An Introduction to User Interface Design
Examples of Affordances
• Doorknobs, push handles, pull handles
• Buttons/switches– Raised boxes are for pushing– Objlong boxes in tracks are for sliding
• Dials—round things are for turning
• Handles are for grabbing onto/pulling
• Can suggest use, can suggest misuse
3/2/2004 An Introduction to User Interface Design
What is User Interface Design?
• User interface…– facilitates the use of a tool…
3/2/2004 An Introduction to User Interface Design
What is User Interface Design?
• User interface…– facilitates the use of a tool…– that tool aids in the completion of a task
3/2/2004 An Introduction to User Interface Design
What is User Interface Design?
• User interface…– facilitates the use of a tool…– that tool aids in the completion of a task
• User interface design:– Creation of user interfaces that best facilitate
the use of a particular tool to complete a task
3/2/2004 An Introduction to User Interface Design
What is User Interface Design?
• User interface…– facilitates the use of a tool…– that tool aids in the completion of a task
• User interface design:– Creation of user interfaces that best facilitate
the use of a particular tool ot complete a task– For computers, actually a bit less direct
(consider mouse/keyboard vs. touchscreen, etc.)
3/2/2004 An Introduction to User Interface Design
Roadmap
• Today:– Models involving users, some general
guidelines for computer UI design
3/2/2004 An Introduction to User Interface Design
Roadmap
• Today:– Models involving users, some general
guidelines for computer UI design
• After Spring Break:– Design process– Testing and evaluation– Examples
3/2/2004 An Introduction to User Interface Design
Models
• 3 Kinds of Models– Explanatory theories (hypotheses)
• Example: Why does patient stop when doctor looks at computer all of a sudden?
3/2/2004 An Introduction to User Interface Design
Models
• 3 Kinds of Models– Explanatory theories (hypotheses)
• Example: Why does patient stop when doctor looks at computer all of a sudden?
– Empirical laws (quantitative, tested hypotheses)• Example: Fitt’s Law
3/2/2004 An Introduction to User Interface Design
Models
• 3 Kinds of Models– Explanatory theories (hypotheses)
• Example: Why does patient stop when doctor looks at computer all of a sudden?
– Empirical laws (quantitative, tested hypotheses)• Example: Fitt’s Law
– Dynamic models (simulation)• Example: what follows…
3/2/2004 An Introduction to User Interface Design
Model of Task Performance• Donald Norman (affordance guy)
• How the user interacts:– Establish goal to be achieved
3/2/2004 An Introduction to User Interface Design
Model of Task Performance• Donald Norman (affordance guy)
• How the user interacts:– Establish goal to be achieved– Form intention for action that will achieve goal
3/2/2004 An Introduction to User Interface Design
Model of Task Performance• Donald Norman (affordance guy)
• How the user interacts:– Establish goal to be achieved– Form intention for action that will achieve goal– Specify action sequence for that intention
3/2/2004 An Introduction to User Interface Design
Model of Task Performance• Donald Norman (affordance guy)
• How the user interacts:– Establish goal to be achieved– Form intention for action that will achieve goal– Specify action sequence for that intention– Execute the action
3/2/2004 An Introduction to User Interface Design
Model of Task Performance• Donald Norman (affordance guy)
• How the user interacts:– Establish goal to be achieved– Form intention for action that will achieve goal– Specify action sequence for that intention– Execute the action– Perceive the system state
3/2/2004 An Introduction to User Interface Design
Model of Task Performance• Donald Norman (affordance guy)
• How the user interacts:– Establish goal to be achieved– Form intention for action that will achieve goal– Specify action sequence for that intention– Execute the action– Perceive the system state– Interpret the state as perceived
3/2/2004 An Introduction to User Interface Design
Model of Task Performance• Donald Norman (affordance guy)
• How the user interacts:– Establish goal to be achieved– Form intention for action that will achieve goal– Specify action sequence for that intention– Execute the action– Perceive the system state– Interpret the state as perceived– Evaluate system state w.r.t goals & intentions
3/2/2004 An Introduction to User Interface Design
Model of Task PerformanceGoal
Intention
Interpretation
Evaluation
Action Seq.
Execution Perception
Physical Activity
Mental Activity
3/2/2004 An Introduction to User Interface Design
Model of Task PerformanceGoal
Intention
Interpretation
Evaluation
Action Seq.
Execution Perception
Physical Activity
Make a copy of two pages from a book to fit on one piece of paper
3/2/2004 An Introduction to User Interface Design
Model of Task PerformanceGoal
Intention
Interpretation
Evaluation
Action Seq.
Execution Perception
Physical Activity
Use the photocopier to reduce the image so two pages fit on one page
3/2/2004 An Introduction to User Interface Design
Model of Task PerformanceGoal
Intention
Interpretation
Evaluation
Action Seq.
Execution Perception
Physical Activity
• Put book on copier
• Set magnification
• Push COPY
• Retrieve copy
3/2/2004 An Introduction to User Interface Design
Model of Task PerformanceGoal
Intention
Interpretation
Evaluation
Action Seq.
Execution Perception
Physical Activity
• Put book on copier
• Set magnification
• Push COPY
• Retrieve copy
3/2/2004 An Introduction to User Interface Design
Model of Task PerformanceGoal
Intention
Interpretation
Evaluation
Action Seq.
Execution Perception
Physical Activity
Look at resulting copy
3/2/2004 An Introduction to User Interface Design
Model of Task PerformanceGoal
Intention
Interpretation
Evaluation
Action Seq.
Execution Perception
Physical Activity
It appears that the right edge of the second page was cut off
3/2/2004 An Introduction to User Interface Design
Model of Task PerformanceGoal
Intention
Interpretation
Evaluation
Action Seq.
Execution Perception
Physical Activity
The two pages don’t fit on one page as intended…
3/2/2004 An Introduction to User Interface Design
Model of Task PerformanceGoal
Intention
Interpretation
Evaluation
Action Seq.
Execution Perception
Physical Activity
Use the photocopier to reduce the image so two pages fit on one page, only this time try a smaller magnification…
3/2/2004 An Introduction to User Interface Design
Model of Task PerformanceGoal
Intention
Interpretation
Evaluation
Action Seq.
Execution Perception
Physical Activity
• Intentions can be nested
• As an interface designer, want to bridge gap between user’s goal and physical activity (involving the system).
3/2/2004 An Introduction to User Interface Design
Mental Models
• How does a user form an intention, or devise an action sequence?
3/2/2004 An Introduction to User Interface Design
Mental Models
• How does a user form an intention, or devise an action sequence?
• How does the user know how to interpret what is perceived, or evaluate it against the intention?
3/2/2004 An Introduction to User Interface Design
Mental Models
• How does a user form an intention, or devise an action sequence?
• How does the user know how to interpret what is perceived, or evaluate it against the intention?
• Analyze your own thought processes…
3/2/2004 An Introduction to User Interface Design
Mental Models
• When you try to solve a problem, what do you do? (Think of a specific problem like getting home or fixing a flat tire…)
3/2/2004 An Introduction to User Interface Design
Mental Models
• When you try to solve a problem, what do you do? (Think of a specific problem like getting home or fixing a flat tire…)
• Some things you might do:– Envision completed goal (2 pages on one)– Take inventory of what objects are available– Take inventory of what actions can be taken– Think about what reactions would be triggered
3/2/2004 An Introduction to User Interface Design
Object-Action vs. Action-Object
• Most natural to think of solutions rooted in objects (tools)– Objects support or facilitate certain actions– Some (cars, computers, people) exhibit regular
behaviors based on interaction
3/2/2004 An Introduction to User Interface Design
Object-Action vs. Action-Object
• Most natural to think of solutions rooted in objects (tools)– Objects support or facilitate certain actions– Some (cars, computers, people) exhibit regular
behaviors based on interaction
• Object-Action Interface model (GUIs, C++)
3/2/2004 An Introduction to User Interface Design
Object-Action vs. Action-Object
• Most natural to think of solutions rooted in objects (tools)– Objects support or facilitate certain actions– Some (cars, computers, people) exhibit regular
behaviors based on interaction
• Object-Action Interface model (GUIs, C++)
• Action-Object Interface model (command line interfaces, C)
3/2/2004 An Introduction to User Interface Design
Survey of Useful Mental Models
• Object-Action Models– What objects available, what actions supported
3/2/2004 An Introduction to User Interface Design
Survey of Useful Mental Models
• Object-Action Models– What objects available, what actions supported
• State Transition Models– Object/system transitions between behavior modes
Example: telephone—Pick-up (dial-tone); push numbers (silence); done pushing numbers (more silence, then either ring or busy)…
3/2/2004 An Introduction to User Interface Design
Survey of Useful Mental Models
• Object-Action Models– What objects available, what actions supported
• State Transition Models– Object/system transitions between behavior modes
• Mapping Models– Sequences of user actions learned for given intention
Example: calculator (multi-digit number entry); bolding a word in text editor (highlight word w/ dbl-click, hit Ctrl-B or bold button)…
3/2/2004 An Introduction to User Interface Design
Survey of Useful Mental Models
• Object-Action Models– What objects available, what actions supported
• State Transition Models– Object/system transitions between behavior modes
• Mapping Models– Sequences of user actions learned for given intention
• Analogical Models– Adapt old model of interaction to new interface
Example: Used to driving particular car, will use same model of interaction for driving other cars or game simulations (not metaphor!)
3/2/2004 An Introduction to User Interface Design
Survey of Useful Mental Models
• Object-Action Models– What objects available, what actions supported
• State Transition Models– Object/system transitions between behavior modes
• Mapping Models– Sequences of user actions learned for given intention
• Analogical Models– Adapt old model of interaction to new interface
• Mixed Models (combine above—handles exceptions)
3/2/2004 An Introduction to User Interface Design
Simple Example: E-mail Client
• Consider Pat, who has used other e-mail clients in the past. How might Pat use this e-mail client, using what mental models?
Send Read Forward Reply
[email protected]: You may have won…
[email protected]: You’re behind in…
[email protected]: Fun virus. Click me!
SuperMail.exe _O X
3/2/2004 An Introduction to User Interface Design
Simple Example: E-mail Client
• Beginning: Analogical—list, forward, reply work fine
Send Read Forward Reply
[email protected]: You may have won…
[email protected]: You’re behind in…
[email protected]: Fun virus. Click me!
SuperMail.exe _O X
3/2/2004 An Introduction to User Interface Design
Simple Example: E-mail Client
• Beginning: Analogical—list, forward, reply work fine
• What does “Send” do (what is the object, what is action)?
Send Read Forward Reply
[email protected]: You may have won…
[email protected]: You’re behind in…
[email protected]: Fun virus. Click me!
SuperMail.exe _O X
3/2/2004 An Introduction to User Interface Design
Simple Example: E-mail Client
• Beginning: Analogical—list, forward, reply work fine
• What does “Send” do (what is the object, what is action)?
• Say interface waits while message is being sent, but lookslike it hangs… eventually learned as a state transition.
Send Read Forward Reply
[email protected]: You may have won…
[email protected]: You’re behind in…
[email protected]: Fun virus. Click me!
SuperMail.exe _O X
3/2/2004 An Introduction to User Interface Design
Simple Example: E-mail Client
• Beginning: Analogical—list, forward, reply work fine
• What does “Send” do (what is the object, what is action)?
• Say interface waits while message is being sent, but lookslike it hangs… eventually learned as a state transition.
• Eventually,learned asstate transition Send Read Forward Reply
[email protected]: You may have won…
[email protected]: You’re behind in…
[email protected]: Fun virus. Click me!
SuperMail.exe _O X
3/2/2004 An Introduction to User Interface Design
Simple Example: E-mail Client
• Beginning: Analogical—list, forward, reply work fine
• What does “Send” do (what is the object, what is action)?
• Say interface waits while message is being sent, but lookslike it hangs… eventually learned as a state transition.
• Eventually,learned asstate transition
• What happens whenthe thing actuallydoes hang?…
Send Read Forward Reply
[email protected]: You may have won…
[email protected]: You’re behind in…
[email protected]: Fun virus. Click me!
SuperMail.exe _O X
3/2/2004 An Introduction to User Interface Design
Schneiderman’s 8 Golden Rules
• Consistency Be consistent within
application: colors, fonts, terminology, etc.
Be consistent with other applications (analogy to literature)
Good to copy the standard practice
3/2/2004 An Introduction to User Interface Design
Schneiderman’s 8 Golden Rules
• Consistency
• Shortcuts for experts
“You’re only a beginner once”
Create/allow special key sequences to be used to bypass long selection processes
Automatic command/ object-name/address expansion
3/2/2004 An Introduction to User Interface Design
Schneiderman’s 8 Golden Rules
• Consistency
• Shortcuts for experts
• Feedback
Every action should be confirmed
Many levels: highlighting/color change, audible or haptic click, visual “depressing” of buttons, real-time movement of objects
Wait icons: hourglass
3/2/2004 An Introduction to User Interface Design
Schneiderman’s 8 Golden Rules
• Consistency
• Shortcuts for experts
• Feedback
• Sequence closure
Group actions in sequences w/ beginning, middle,and end so people can drop their mental baggage at the end of each process (options, contingency plans, anxiety, etc.)
Example: install
3/2/2004 An Introduction to User Interface Design
Schneiderman’s 8 Golden Rules
• Consistency
• Shortcuts for experts
• Feedback
• Sequence closure
• Error prevention/handling
Design so users can’t make serious errors
Don’t allow alpha chars in number fields, check number ranges
Detect errors, suggest simple instructions for recovery (web forms)
Error recovery for crashes (autosave)
3/2/2004 An Introduction to User Interface Design
Schneiderman’s 8 Golden Rules
• Consistency
• Shortcuts for experts
• Feedback
• Sequence closure
• Error prevention/handling
• Reversibility of actions
Deep/infinite undo Relieves user anxiety
(you can try things without worrying about messing up your data or breaking the interface).
3/2/2004 An Introduction to User Interface Design
Schneiderman’s 8 Golden Rules
• Consistency
• Shortcuts for experts
• Feedback
• Sequence closure
• Error prevention/handling
• Reversibility of actions
• Internal locus of control
The human generally should be in control of a human-computer system
Non-obvious or unexpected responses/ actions by computer lead to anxiety or frustration on the user’s part
3/2/2004 An Introduction to User Interface Design
Schneiderman’s 8 Golden Rules
• Consistency
• Shortcuts for experts
• Feedback
• Sequence closure
• Error prevention/handling
• Reversibility of actions
• Internal locus of control
• Reduce short-term memory load
Humans have a very limited capacity for both working memory.
Generally considered 7 ± 2 for verbal items, 3-4 for visual items
Long-term memory is another story (see shortcuts for experts)
3/2/2004 An Introduction to User Interface Design
Creativity, Customization
• What about creativity and customization?– Creativity: good for unique situations (nothing
has been established), or solution is radically better than established practice
3/2/2004 An Introduction to User Interface Design
Creativity, Customization
• What about creativity and customization?– Creativity: good for unique situations (nothing
has been established), or solution is radically better than established practice
– Customization: Are you really going to customize your browser for each computer you come to? Consider customization as something outside normal scope of end-user activities
3/2/2004 An Introduction to User Interface Design
Creativity, Customization
• What about creativity and customization?– Creativity: good for unique situations (nothing
has been established), or solution is radically better than established practice
– Customization: Are you really going to customize your browser for each computer you come to? Consider customization as something outside normal scope of end-user activities
• Artistic creativity, customization are fine