Lecture 10

advertisement
IAT 334
Interface Design
Chris Shaw
______________________________________________________________________________________
SCHOOL OF INTERACTIVE ARTS + TECHNOLOGY [SIAT] | WWW.SIAT.SFU.CA
May 18, 2010
IAT 334
1
Exam Materials
 Slides
 Shneiderman
& Plaisant Chapters 1-8
 Programming materials
– Supplemantary: Glassner Book
• Chapters 1-5,
• Chapters 10.2, 13.1-13.6
– On Sakai: Password: GlassnerIAT334
May 18, 2010
IAT 334
2
Why We Are Here
 Look
at human factors that affect
software design and development
 Central
May 18, 2010
Topic: User interface design
IAT 334
3
HCI

What happens when a human and a computer
get together to perform a task
– Task
•
•
•
•
Write a document
Plan a budget
Design a presentation
Play a video game
– Not a task..
• Goof off (obviously)
May 18, 2010
IAT 334
4
Why is this important?
 Computers
(in one way or another) affect
every person in society
– Increasing % use computers in work, at
home in the road…
 Product
May 18, 2010
success depends on ease of use
IAT 334
5
Course Aims
 Consciousness
raising for you
– Eg. Don Norman
• “The Design of Everyday Things”
– Doors
• Handles afford various opening method
 Design
May 18, 2010
critic
IAT 334
6
Goals of HCI
(Shneiderman & Plaisant Chap1)
 Allow
users to carry out tasks
– Safely
– Effectively
– Efficiently
– Enjoyably
May 18, 2010
IAT 334
7
Goals of System Engineering
Functionality
• Tasks and sub-tasks to be carried out
Reliability
• Maintaining trust in the system
Standardization, integration, consistency and
portability
Schedules and budgets
• Adhering to timelines and expense
• Human factors principles and testing reduces costs
May 18, 2010
IAT 334
Usability
 Five
Measurable Goals of UI Design
 Combination of
– Ease of learning
– High speed of user task performance
– Low user error rate
– Subjective user satisfaction
– User retention over time
May 18, 2010
IAT 334
9
Interests in Human Factors
in Design
Life-critical systems: air traffic control, emergency, power utilities
etc.
• high reliability, error-free performance, lengthy training for
systems, subjective satisfaction less of an issue
Industrial and commercial uses: banking, inventory management,
airline and hotel reservations, etc.
• low costs is critical over reliability, ease of learning, errors
calculated against costs, subjective satisfaction of modest
importance
May 18, 2010
IAT 334
Interests in Human Factors
in Design
Office, home, entertainment: productivity and entertainment
applications
• ease of learning, low error rates, subjective satisfaction are
paramount since use is discretionary and competition is fierce.
Range of types of users from novice to expert.
Exploratory, creative, and cooperative: web-based, decisionmaking, design-support, collaborative work, etc.
• users knowledgeable in domain but vary in computer skills, directmanipulation using familiar routines and gestures work best,
difficult systems to design and evaluate.
Sept14, 2009
IAT 334
Accommodating
Human Diversity
Physical
Abilities and
Workplaces
Cognitive
and Perceptual
Abilities
May 18, 2010
Personality
Differences
Users with
Disabilities
Cultural
and International
Diversity
IAT 334
Elderly
Users
Key Historical Event
 Design
 “The
May 18, 2010
of the first Mac 1983-1984
computer for the rest of us”
IAT 334
13
Improving Interfaces
 Know
the User!
– Physical abilities
– Cognitive abilities
– Personality differences
– Skill differences
– Cultural diversity
– Motivation
– Special needs
May 18, 2010
IAT 334
14
Two Crucial Errors
 Assume
all users are alike
 Assume
all users are like the designer
May 18, 2010
IAT 334
15
Another Crucial Error
 Have
the user design it!
 Users
bring vital knowledge to design:
– They know a lot about the problem
– They know a lot about the current tools
– They typically know very little about design
May 18, 2010
IAT 334
16
UI Design/Develop Process
 Analyze
user’s goals
 Create design alternatives
 Analyze designs
 Implement prototype
Evaluate
 Test
 Refine
May 18, 2010
IAT 334
Design
Implement
17
Evaluation
 Things
we can measure
– Time to learn
– Speed of performance
– Rate of errors by user
– Retention over time
– Subjective satisfaction
May 18, 2010
IAT 334
18
Interfaces in the World
 VCR
 Mouse
 Phone
 Copier
 Car
 Airline
reservation
 Air traffic control
May 18, 2010
IAT 334
19
History of HCI
______________________________________________________________________________________
SCHOOL OF INTERACTIVE ARTS + TECHNOLOGY [SIAT] | WWW.SIAT.SFU.CA
May 18, 2010
IAT 334
20
Ivan Sutherland
 SketchPad
- ‘63 PhD thesis at MIT
– Hierarchy - pictures & subpictures
– Master picture with instances
– Constraints
– Icons
– Copying
– Light pen as input device
– Recursive operations
May 18, 2010
IAT 334
21
Douglas Engelbart
 Invented
the mouse
 Landmark system/demo:
– hierarchical hypertext, multimedia, mouse,
high-res display, windows, shared files,
electronic messaging, CSCW,
teleconferencing, …

http://www.youtube.com/watch?v=JfIgzSoTMOs
May 18, 2010
IAT 334
22
The Mouse
Doug Engelbart’s mouse - 1963-64
source: resonancepub.com & brittanica.com
May 18, 2010
IAT 334
Alan Kay
 Dynabook
- Notebook sized computer
loaded with multimedia and can store
everything
 Personal Computing
 Desktop Interface
May 18, 2010
IAT 334
24
PCs with GUIs
 Xerox
PARC - mid 1970’s
– Alto
– Local processor, Bitmap display, Mouse
– Precursor to modern GUI
– LAN - Ethernet
May 18, 2010
IAT 334
25
Menus
Bill Atkinson’s Polaroids of the first pull-down menu prototype - circa 1979
source: folklore.org
May 18, 2010
IAT 334
Xerox Star - ‘81
 First
commercial PC designed for
“business professionals”
– Desktop metaphor, pointing, WYSIWYG
 First
system based on usability
engineering
May 18, 2010
IAT 334
27
Windows 95
May 18, 2010
IAT 334
28
Handhelds
 Portable
computing + phone
 Newton, Palm, Blackberry, iPhone
May 18, 2010
IAT 334
29
Human Capabilities
 Want
to improve user performance
 Know
the user!
– Senses
– Information processing systems
May 18, 2010
IAT 334
30
Senses
 Sight,
hearing, touch important for
current HCI
– smell, taste ???
May 18, 2010
IAT 334
31
Sight
 Visual
System workings
 Color
- color blindness: 8% males,
1% females
 Much
done by context & grouping
(words, optical illusions, …)
May 18, 2010
IAT 334
32
Hearing
 Often
taken for granted how good it is
– Pitch - frequency
– Loudness - amplitude
– Timbre - type of sound (instrument)
 Sensitive
to range 20Hz - 22000Hz
 Limited spatially, good temporal
performance
May 18, 2010
IAT 334
33
Touch
 Three
main sensations handled by
different types of receptors:
– Pressure (normal)
– Intense pressure (heat/pain)
– Temperature (hot/cold)
 Where
May 18, 2010
important?
IAT 334
34
Models of Human Performance
 Predictive
 Quantitative
– Time to perform
– Time to learn
– Number and type of errors
– Time to recover from errors
 Approximations
May 18, 2010
IAT 334
35
Basic HCI

Model Human Processor
– A simple model of human cognition
– Card, Moran, Newell 1983

Components:
–
–
–
–
–
Senses
Sensory store
Short-term memory
Long-term memory
Cognition
May 18, 2010
IAT 334
36
Information Processing
 Usually
serial action
– Respond to buzzer by pressing button
 Usually
parallel recognition
• Driving, reading signs, listening to radio
May 18, 2010
IAT 334
37
Model Human Processor
Basics
 Parameters
– Processors cycle time of 50-200ms
– Memories have type, capacity, decay time
 Types
– Visual
– Auditory
– Tactile
– Taste, smell, proprioception, etc
May 18, 2010
IAT 334
38
Model Picture Closeup
May 18, 2010
IAT 334
39
Perceptual Processor
 Continually
“grabs data” from the sensory
system
 Cycle time: 100ms [50 - 200] ms
 Passes data to Image Store in
unrecognized form
– “Array of Pixels” (or whatever it is) from eyes
– “Sound Intensities” from ears
May 18, 2010
IAT 334
40
Sensory Store
The “input buffer” of the senses
 Stores most recent input unrecognized
 Storage time and capacity varies by type

– Visual:
NominalRange
• Capacity:
17letters of text [7 - 17] letters
• Decay Time: 200ms
[70 - 1000] ms
– Audio:
• Capacity:
5 letters of text [4.4-6.6] letters
• Decay Time: 1500 ms
[900 - 3500] ms
May 18, 2010
IAT 334
41
Memory
 Three
“types”
– Short-term memory
Conscious thought, calculations
– Intermediate
Storing intermediate results, future plans
– Long-term
Permanent, remember everything ever
happened to us
May 18, 2010
IAT 334
42
Memory: Sort Term
 Short
Term (Working) Memory (WM)
– Gets basic recognition from Sensory Store
• “Stop sign” vs. “red octagon w/white marks”
– 7 +/- 2 “chunks”
• 4048946328 vs. 404-894-6328
– WM:
NominalRange
• Capacity:
7 chunks
[5 - 9] chunks
• Decay Time: 7 seconds
[5 - 226] seconds
• Access Time: 70ms
[25 - 170] ms
May 18, 2010
IAT 334
43
Memory: Long Term
 Long
Term Memory (LTM)
– “Unlimited” size
– Slower access time (100ms)
– Little decay
– Episodic & Semantic
 Why
learn about memory?
– Know what’s behind many HCI techniques
– Predict what users will understand
May 18, 2010
IAT 334
44
LT Memory Structure
 Episodic
memory
– Events & experiences in serial form
 Semantic
memory
– Structured record of facts, concepts & skills
May 18, 2010
IAT 334
45
Read the colors of the words
Black
Red
Orange Yellow
Blue
May 18, 2010
IAT 334
46
MHP Operation
 Recognize-Act
Cycle
– On each cycle, contents in WM initiate actions
associatively linked to them in LTM
– Actions modify contents of WM
 Discrimination
Principle
– Retrieval is determined by candidates that
exist in memory relative to retrieval cues
– Interference by strongly activated chunks
May 18, 2010
IAT 334
47
Perception
 Stimuli that occur within one PP cycle fuse into a
single concept
– movies (frame rate)
• Frame rate > 1 / Tp = 1/(100 msec/frame) = 10 f/sec
– morse code listening rate
 Perceptual causality
– two distinct stimuli can fuse if the first event appears
to cause the other
– events must occur in the same cycle
May 18, 2010
IAT 334
48
Operation
 Variable
Cognitive Processor Rate
– Cognitive Processor cycle time Tc is shorter
with greater effort
– Induced by increased task
demands/information
– Decreases with practice
May 18, 2010
IAT 334
49
Operation: Target finding
 Task:
Move hand to target area
 Fitts Law
– A series of microcorrections
• Correction takes Tp + Tc + Tm
– Time Tpos to move hand to target width W
which is distance D:
• Tpos = a + b log2 (d/w + 1.0)
– Movement time depends on relative precision
May 18, 2010
IAT 334
50
IAT 334
Interface Design
Task Analysis
______________________________________________________________________________________
SCHOOL OF INTERACTIVE ARTS + TECHNOLOGY [SIAT] | WWW.SIAT.SFU.CA
Jan 13, 2011
IAT 334
51
Task Conformance
 Task
coverage
– Can system do all tasks of interest?
 Task
adequacy
– Can user do tasks?
– Does system match real-world tasks?
Jan 13, 2011
IAT 334
52
Task Analysis
 Analyzing
how people do their jobs
– Go to their environment
– Learn about, analyze and describe their tasks
 Examine
users’ tasks to better understand
what they need from interface and how
they will use it
Jan 13, 2011
IAT 334
53
Task Analysis
 Gather
data about what users need to do
or accomplish
…then…
 Represent
data for interpretation and use
in design decisions
Jan 13, 2011
IAT 334
54
Information to be Gathered
 Information
about users
 Description of environment
– where the tasks will be performed
 Major
goals of the job
– what will result in a successful end state?
 User
preferences & needs
– before they even start: coffee, pen,
notebook, log sheets…
Jan 13, 2011
IAT 334
55
Task Analysis
 Broad
Focus
 Observe users of current system(s)
 Generate requirements
– Hierarchical task analysis
– Knowledge-based task analysis
– Entity-Relationship model
Jan 13, 2011
IAT 334
56
Data Gathering Techniques
Observation
2.
Interviews & Contextual Inquiry
3.
Ethnography
also…
4.
Surveys & Questionnaires
5.
Focus Groups & Expert Debriefing
6.
Competitive Product Review
7.
Documentation mining
8.
Data logging
1.
Jan 13, 2011
IAT 334
57
Information to be Gathered

Tasks & Subtasks:
– Physical
– Cognitive
– Communication
Conditions under which these tasks are done
 Results/outcomes of tasks
 Requirements to perform task:

– Information
– Communication with others
– Equipment
Jan 13, 2011
IAT 334
58
1. Observation
 Watch
users do what they do
– Typically from a distance
 Record
with videotape
– May require coding video later
 Take
lots of notes, sketches
 Focus on specific task-relevant behaviors
in notes, but later convert to abstract
subtasks
Jan 13, 2011
IAT 334
59
2. Interviews
 Engage
the user more than just watching
 Structured interviews
– Efficient, but requires training
 Unstructured
– Inefficient, but requires no training
 Semi-structured
– Good balance
– Often appropriate
Jan 13, 2011
IAT 334
60
3. Ethnography
 Deeply
contextual inquiry
– “Wallow in the data”
 “Live
among” the users
 Understanding the full complexity of
behavior, in its complete social context
 Note:
Techniques based in sociology and
anthropology--the study of humans
Jan 13, 2011
IAT 334
61
4. Surveys & Questionnaires

Subjective answers in a quantitative format
– What does this mean?

Questions:
– Exploratory vs. confirmatory
– Open-ended vs. categorical (exhaustive)
– NB: If you ask it, use it. If you won’t/can’t use it,
don’t ask it.
Jan 13, 2011
IAT 334
62
5. Focus Groups

Structured Interview with groups of individuals
– 3 to 10 persons
– Use several different groups with different roles or
perspectives
– Manage the interaction
• Avoid few people dominating the discussion
Focus on preferences and views, not
performance
 Relatively low cost, quick way to learn a lot
 Audio or video record, with permission

Jan 13, 2011
IAT 334
63
6. Competitive Products
 Looking
for both good and bad ideas
– Functionality
– UI style
 Why
are they successful or unsuccessful?
 What does successful really mean?
– (Note: Successful does not equal usable)
Jan 13, 2011
IAT 334
64
7. Document Mining
 Documentation
– Often contains description of how the tasks
should be done
– Standards docs
– Manuals
– Histories
– Best Practices
Jan 13, 2011
IAT 334
65
8. Data Logging
 Automatically
tracking:
– Keystroke/mouse clicks
– Timers
– Logs of transactions
– Physical location/movement trackers
• Cell phones
• GPS
Jan 13, 2011
IAT 334
66
Now that you have observed…
 You
have piles of notes, hours of video,
surveys up to here…
 How can you digest and represent the
data, to turn it into information?
Jan 13, 2011
IAT 334
67
Describe Tasks
1.
2.
3.
Task Outlines
Narratives
Hierarchies & Network Diagrams
– Hierarchical Task Analysis (HTA)
– Entity-Relationship Diagrams
4.
5.
Flow Charts
Card Sorting
Jan 13, 2011
IAT 334
68
1. Task Outline
Using a lawnmower to cut grass
Step 1. Examine lawn
a.
b.
Make sure grass is dry
Look for objects laying in the grass
Step 2. Inspect lawnmower
a.
Check components for tightness
1)
2)
3)
4)
5)
b.
Check engine oil level
1)
2)
3)
4)
5)
Jan 13, 2011
Check that grass bag handle is securely fastened to the grass bag support
Make sure grass bag connector is securely fastened to bag adaptor
Make sure that deck cover is in place
Check for any loose parts (such as oil caps)
Check to make sure blade is attached securely
Remove oil fill cap and dipstick
Wipe dipstick
Replace dipstick completely in lawnmower
Remove dipstick
Check that oil is past the level line on dipstick
IAT 334
69
2. Narratives
 Describe
tasks in sentences
 Often expanded version of task outline
 More effective for communicating general
idea of task
 Not effective for details
 Not effective for branching tasks
 Not effective for parallel tasks
Jan 13, 2011
IAT 334
70
3. Hierarchies & Networks

Hierarchical Task Analysis (HTA)
– Graphical notation & decomposition of tasks
– Tasks as sets of actions
– Tasks organized into plans (describes sequence)

Network / Entity-Relationship Diagrams
– Objects/people with links to related objects
– Links described functionally and in terms of strength
Jan 13, 2011
IAT 334
71
4. Flow Charts
 Flow
Chart of Task Steps
– Combines Entity-relationship (network) with
sequential flow, branching, parallel tasks.
– Includes actions, decisions, logic, by all
elements of the system
– Abstracted
– Mature, well-known, good tools
Jan 13, 2011
IAT 334
72
5. Knowledge-based
Analysis
 List
all objects and actions involved in a
task, then build a taxonomy of them
 Often
times, work with domain expert to
get help
Jan 13, 2011
IAT 334
73
Summary:
Data Gathering Techniques
Observation
2.
Interviews & Contextual Inquiry
3.
Ethnography
also…
4.
Surveys & Questionnaires
5.
Focus Groups & Expert Debriefing
6.
Competitive Product Review
7.
Documentation mining
8.
Data logging
1.
Jan 13, 2011
IAT 334
74
Summary:
Describe Tasks
1.
2.
3.
Task Outlines
Narratives
Hierarchies & Network Diagrams
– Hierarchical Task Analysis (HTA)
– Entity-Relationship Diagrams
4.
5.
Flow Charts
Card Sorting
Jan 13, 2011
IAT 334
75
UI Design Principles
 Categories
– Learnability
• support for learning for users of all levels
– Flexibility
• support for multiple ways of doing tasks
– Robustness
• support for recovery
 Always
Jan 20, 2011
think about exceptions, suitability
IAT 334
76
Learnability Principles
 Predictability
 Synthesizability
 Familiarity
 Generalizability
 Consistency
Jan 20, 2011
IAT 334
77
Predictability
I
think that this action will do…
 Operation
visibility - can see avail actions
– e.g. menus vs. command shell
– grayed menu items
Jan 20, 2011
IAT 334
78
Synthesizability
 From
the resulting system state, My
previous action did…
– compare in command prompt vs UI
– same feedback needed for all users, all apps?
Jan 20, 2011
IAT 334
79
Familiarity
 Does
UI task relate real-world task or
domain knowledge?
– to anything user is familiar with?
– Use of metaphors
• pitfalls
– Are there limitations on familiarity?
Jan 20, 2011
IAT 334
80
Generalizability
 Does
knowledge of one UI apply to
others?
– Cut and paste in many apps
 Does
knowledge of one aspect of a UI
apply to rest of the UI?
– File browsers in MacOS/ Windows
 Aid:
Jan 20, 2011
UI Developers guidelines
IAT 334
81
Consistency
 Similar
ways of doing tasks
– interacting
– output
– screen layout
 Is
this always desirable for all systems, all
users?
Jan 20, 2011
IAT 334
82
Flexibility Principles
 Dialog
Initiative
 Multithreading
 Task migratibility
 Substitutivity
 Customizability
Jan 20, 2011
IAT 334
83
Dialog Initiative
 System
pre-emptive
– system does all prompts, user responds
• sometimes necessary
• Eg. Bank machine
 User
pre-emptive
– user initiates actions
• more flexible
Jan 20, 2011
IAT 334
84
Multithreading
 Two
types
– Concurrent
• input to multiple tasks simultaneously
– Interleaved
• many tasks, but input to one task at a time
Jan 20, 2011
IAT 334
85
Task migratability
 Ability
to move performance of task to
entity (machine or person) that can do it
better
– Eg. Autopilot
– Spellchecking
– When is this good? Bad?
Jan 20, 2011
IAT 334
86
Substitutivity
 Flexibility
in details of operations
– Allow user to choose suitable interaction
methods
– Allow different ways to
• perform actions
• specify data
• configure
– Allow different ways of presenting output
• to suit task, user
Jan 20, 2011
IAT 334
87
Customizability
 Ability
to modify interface
– By user - adaptability
– By system - adaptivity
Jan 20, 2011
IAT 334
88
Robustness Principles
 Observability
 Recoverability
 Responsiveness
 Task
Jan 20, 2011
Conformance
IAT 334
89
Observability
 Can
user determine internal state of
system from observable state?
– Browsability
• explore current state (without changing it)
– Reachability
• navigate through observable states
– Persistence
• how long does observable state persist?
Jan 20, 2011
IAT 334
90
Recoverability
 Ability
to continue to a goal after
recognizing error
• Difficulty of Recovery procedure should relate to
difficulty of original task
– Forward Recoverability
• ability to fix when we can’t undo?
– Backward Recoverability
• undo previous error(s)
Jan 20, 2011
IAT 334
91
Responsiveness
 Rate
of communication between user and
system
– Response time
• time for system to respond in some way to user
action(s)
– Stability principle
• response time, rate should be consistent
– As computers have gotten better, required
computer response has gotten shorter
Jan 20, 2011
IAT 334
92
Task Conformance
 Task
coverage
– can system do all tasks of interest?
 Task
adequacy
– Can user do tasks?
– Does system match real-world tasks?
Jan 20, 2011
IAT 334
93
IAT 334
Interface Design
User Centered Design
Metaphor
Models
Practice
______________________________________________________________________________________
SCHOOL OF INTERACTIVE ARTS + TECHNOLOGY [SIAT] | WWW.SIAT.SFU.CA
Feb 3, 2011
IAT 334
94
Agenda


User Centered Design -- Overall Process
Design
– Metaphors
– Mental Models
– Idea generation


Design principles
Displaying your designs
–
–
–
–
Storyboards
Lo-Fi
Wizard of Oz
Visual Basic, Flash, etc
Feb 3, 2011
IAT 334
95
User-Centered Design
 User-centered
design process
– Analysis of user needs
– Prototype
– Informal feedback
– Iterate on design
– Final application
– Formal feedback
Feb 3, 2011
IAT 334
96
Analysis of User Needs
 Techniques:
– Surveys
– Card-sorting tasks
– Interviews
– Focus groups
• Look at competing products
– Ethnography
• Participant observation
Feb 3, 2011
IAT 334
97
Prototyping
 Storyboards
 Paper
simulations of application
 Wizard of Oz experiment
 Prototyping tools
 Cheap!
Feb 3, 2011
IAT 334
98
Informal Feedback
 Present
prototype to users
 Do a quick questionnaire
 Observe the user struggle with your lousy
design
Feb 3, 2011
IAT 334
99
Iterate on Design
 Redesign
system
– in light of initial user impressions
– pay attention to common complaints
 Be
prepared to abandon bad ideas!!
 It’s just an idea, not a measure of your
worth!
Feb 3, 2011
IAT 334
100
Idea Creation
How do we create and develop new interface
ideas and designs?


Ideas come from
– Imagination
– Analogy
– Observation of current
practice
– Observation of current
systems
Feb 3, 2011
IAT 334
Borrow from other
fields
–
–
–
–
–
Animation
Theatre
Information displays
Architecture
...
101
Interface Metaphors
 Metaphor
- Application of name or
descriptive term to another object which
is not literally applicable
– Use: Natural transfer - apply existing
knowledge to new, abstract tasks
– Problem: May introduce incorrect mental
model
Feb 3, 2011
IAT 334
102
Mental Models
 What
models of the world are the users
using?
 Two Classes:
 Functional model
– “Press the accelerator once, then turn the
key”
 Structural
model
– OK, why do we do that?
Feb 3, 2011
IAT 334
103
Another example...
 Functional
model
– “Go north on King George, Cross the Pattullo, Turn
left at 10th Ave, Turn right at Kingsway, go 4.5km”
 Structural
model
– What location??
Feb 3, 2011
IAT 334
104
Idea Creation
 Methods
for creating and developing
interface ideas
– Turn off your natural critique mechanism!
–?
Feb 3, 2011
IAT 334
105
Idea Creation Methods
 1.
Consider new use for object
 2.
Adapt object to be like something else
 3.
Modify object for a new purpose
Feb 3, 2011
IAT 334
106
Idea Creation Methods
 4.
Magnify - add to object
 5.
Minimize - subtract from object
 6.
Substitute something similar
Feb 3, 2011
IAT 334
107
Idea Creation Methods
 7.
Rearrange aspects of object
 8.
Change the point of view
 9.
Combine data into an ensemble
Feb 3, 2011
IAT 334
108
Guidelines for Design
 1.
Provide a good conceptual model
– User has mental model of how things work
– Build design that allows user to predict
effects of actions
 2.
Make things visible
– Visible affordances, mappings, constraints
– Remind person of what can be done and how
to do it
Feb 3, 2011
IAT 334
109
Design Principles
 1.
Use simple and natural dialog in user’s
language
– Match user’s task in a natural way
– Avoid jargon, techno-speak
– Present exactly info that user needs
• Less is more!
Feb 3, 2011
IAT 334
110
Design Principles
 Here
are 10 more detailed principles to
follow about what to design and why
Feb 3, 2011
IAT 334
111
Design Principles
 2.
Strive for consistency
– Sequences, actions, commands, layout,
terminology
– Makes more predictable
– Dialog boxes all having same “closure”
options
Feb 3, 2011
IAT 334
112
Design Principles
 3.
Provide informative feedback
– Continuously inform user about what is
occurring
– Most important on frequent, substantive
actions
• % in file
– How to deal with delays?
• Special cursors
• % Done graphs
Feb 3, 2011
IAT 334
113
Design Principles
 4.
Minimize user’s memory load
– Recognition is better than recall
• Make visible!
– Describe required input format, include
example and default
• Date: _ _ - _ _ - _ _ (DD-MM-YY)
– Use small # of generally applicable cmds
Feb 3, 2011
IAT 334
114
Design Principles
 5.
Permit easy reversal of actions
– Undo!
– Reduces anxiety, encourages experimentation
Feb 3, 2011
IAT 334
115
Design Principles
 6.
Provide clearly marked exits
– Don’t want the user to feel trapped
– Examples
• Cancel button on dialogs
• Quit any time
• Interrupt/resume on lengthy operations
Feb 3, 2011
IAT 334
116
Design Principles
 7.
Provide shortcuts
– Enable frequent users to perform often-used
operations quickly
• Keyboard & mouse
–
–
–
–
–
Abbreviations
Menu shortcuts
Function keys
Command completion
Double click vs. menu selection
• Navigation between windows/forms
• Reuse
– Provide a history system
Feb 3, 2011
IAT 334
117
Design Principles
 8.
Support internal locus of control
– Put user in charge, not computer
– Can be major source of anxiety
Feb 3, 2011
IAT 334
118
Design Principles
 9.
Handle errors smoothly and positively
– “That Filename already exists”
vs.
– “Rename failed”
 10.
Provide useful help and
documentation
Feb 3, 2011
IAT 334
119
Dialog Design
Categories of Dialogs
Agenda
 Dialog
design
– Command Language
– WIMP - Window, Icon, Menu, Pointer
– Direct manipulation
– Speech/Natural language
– Gesture, pen, multi-touch, VR…
Feb 10, 2011
IAT 334
121
Command Languages
 Earliest
UI interaction paradigms
 Examples
– MS-DOS shell
– UNIX shell
Feb 10, 2011
IAT 334
122
CL Attributes
 Work
primarily by recall, not recognition
 Heavy memory load
 Little or nothing is visible
so…
 Poor
choice for novices
but...
Feb 10, 2011
IAT 334
123
CL Attributes
 Specify
commands to operate on current
data collection
 User only controls initiation
 Single thread of control
 Some other display area needed
Feb 10, 2011
IAT 334
124
CL Design Goals
 Consistency
– Syntax, order
 Good
naming and abbreviations
 Doing
your homework in design can help
alleviate some of the negatives
Feb 10, 2011
IAT 334
125
Consistency
 Provide
a consistent syntax
– In general: Have options and arguments
expressed the same way everywhere
– UNIX fails here because commands were
developed by lots of different people at
different organizations
• No guidelines provided
Feb 10, 2011
IAT 334
126
Dialog Order
 English:
 CL:
SVO subject verb object
S assumed (you)
Is VO or OV better? % rm file
% file rm
V
dO iO vs. V iO dO
% print file thePrinter
% lpr -PthePrinter file
Feb 10, 2011
IAT 334
127
Dialog Order
 Technical
V
issues dictate the choice:
iO dO
% lpr -PthePrinter file
 The
command must parse the arguments
– So the command comes first
 Flags
control how to act on the file
– Want to parse all flags before checking files
– e.g. -o outputFile
Feb 10, 2011
IAT 334
128
Syntax
 Pick
a consistent syntax strategy
– Simple command list
• eg., vi minimize keystrokes
– Commands plus arguments
• realistic, can provide keyword parameters
• % cp from=foo to=bar
– Commands plus options plus arguments
• what you usually see
Feb 10, 2011
IAT 334
129
Terminology
 Keep
terminology consistent
– Same concept expressed with same options
– Useful to provide symmetric (congruent)
pairings
• forward/backward
• next/prev
• control/meta
Feb 10, 2011
IAT 334
130
WIMP
 Focus:
Menus, Buttons, Forms
 Predominant
interface paradigm now
(with some direct manipulation added)
 Advantages:
–?
Feb 10, 2011
IAT 334
131
Recognition
 Recognition
is easier than recall!
– Recall has one cue
– Recognition has the recall cue + the presence
of the prompting word/icon
Feb 10, 2011
IAT 334
132
Menus
 Key
advantages:
– 1 keystroke or mouse operation vs. many
– No memorization of commands
– Limited input set
Feb 10, 2011
IAT 334
133
Menus
 Many
different types
– pop-up
– pull-down
– radio buttons
– pie buttons
– hierarchies
Feb 10, 2011
IAT 334
134
Menu Items
 Organization
strategies
– Create groups of logically similar items
– Cover all possibilities
– Ensure that items are non-overlapping
– Keep wording concise, understandable
Feb 10, 2011
IAT 334
135
Presentation Sequence
 Use
natural if available
– Time
• e.g. Breakfast, Lunch, Dinner
– Numeric ordering
• e.g. Point sizes for font
– Size
• Canada-> BC -> Surrey
Feb 10, 2011
IAT 334
136
Presentation Sequence
 Choices
– Alphabetical
– Group related items
– Frequently used first
– Most important first
– Conventional order (MTWRF)
 Don’t
Feb 10, 2011
change the order on the fly!
IAT 334
137
Direct Manipulation
Continuous visibility of the objects and actions
of interest
 Rapid, incremental actions
 Reversibility of all actions to encourage
experimentation
 Syntactic correctness of all actions—every action
is syntactically legal
 Replacement of command language syntax by
direct manipulation of object of interest

Feb 10, 2011
IAT 334
138
Direct Manipulation
 Examples
– WYSIWYG editors and word processors
– VISICALC - 1st electronic spreadsheet
– CAD
– Desktop metaphor
– Video games
Feb 10, 2011
IAT 334
139
DM Syntax
DM syntax is postfix
 DirectObjects first, Verb second
 Typical
– In this case, the command completes the
utterance
 Enables
separate selection syntax
 Indirect objects typically specified before
direct objects
– e.g. brush size before painting in Photoshop
Feb 10, 2011
IAT 334
140
DM Essence
 Representation
manipulated
of reality that can be
 The
user is able to apply intellect directly to
the task
 Don’t have to name things, just touch them
 The tool itself seems to disappear
Feb 10, 2011
IAT 334
141
Direct Manipulation is
Locality

DM Relies on a primary geometric organization
 Items
located nearby are frequently edited
together
– The words in a sentence
– A column of numbers in a spreadsheet
 Less
Feb 10, 2011
related -> Less local -> Less DM!
IAT 334
142
User Modeling
Predicting thoughts and actions
GOMS
Agenda
 User
modeling
– Fitt’s Law
– GOMS
Feb 24, 2011
IAT 334
144
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
145
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
146
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
147
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
148
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
149
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
150
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
151
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
152
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
153
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
154
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
155
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
156
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
157
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
158
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
159
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
160
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
161
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
162
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
163
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
164
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
165
Modeling Problems
 1.
Terminology - example
– High frequency use experts - cmd language
– Infrequent novices - menus
 What’s
Feb 24, 2011
“frequent”, “novice”?
IAT 334
166
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
167
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
168
Download