Slides
Slides
Human-Computer Interaction
David G. Kay
[email protected]
http://www.ics.uci.edu/~kay/courses/131/Slides.pdf
Acknowledgements and caveat
These slides draw liberally, with permission, from the
Informatics 131 slides of Prof. Alfred Kobsa.
Text
The coffee capsule goes
under the clear plastic part of
the “bull’s eye.” How do
you insert it?
Human vision for color
• About 180º
of arc
• Light
reception
happens in
retina (back
of eye)
The retina
• Fovea (highest-
resolution area)
– Just 2º of arc
– 75% of visual
operations
• Not like a camera;
doesn’t take the
whole picture at
once •
Photo-
receptors
in retina
(Re)Design
Evaluate
Build an
interactive
version
Final product
HCI design process (McCracken)
• Needs analysis
• User and task analysis
• Functional analysis
• Requirements analysis
• Setting usability specifications
• Design
• Prototyping
• Evaluation
DESIGN
PROTOTYPE
EVALUATE
—Voltaire
[“Dramatic Art” in Philosophical Dictionary, 1764]
Evaluation exercise
• Start with your ticket reservation system
• Decide on the one aspect that most needs
testing/evaluation (maybe a controversial issue
in your group)
• Design an evaluation plan to test that aspect
(give specific task, technique, design)
• Describe your plan on one page (informally,
possibly with outline or sketches)
• Present to the class
• Turn in page with names of group
Informatics 131 Overview
• The field of HCI
• Human characteristics
• Development and evaluation methodology
• Menu of technologies
• Guidelines and results
Interaction styles (traditional)
• Command entry
• Menus
• Direct manipulation
• Form fill-in
• Natural language
Interaction styles (new)
• Immersive/virtual reality
• Ubiquitous/pervasive computing
• Robotics
Conceptual models for activities
• Giving instructions
• Conversing
• Manipulating, navigating
• Exploring, browsing
Direct manipulation
• GUI objects representing task objects/funcs
• Pointing device
• Based on consistent metaphor
• Congruent operations, always available
• Immediate feedback
• Form of icon or cursor on rollover can
indicate possible operations
Interface hardware (I/O devices)
• Appropriate for users’ tasks
• Suitable for intended work environment
• Match user’s physical characteristics
– age, dexterity, impairments, injury avoidance •
• Match user’s psychological characteristics
– computer skills, capacity for learning
Survey of output devices
• Printers, of course; 3D printers
• Displays (CRT, LCD, …)
– Wearable • • • or room-scale • •
• Audio (speech or non-speech)
• Tactile •
• Olfactory •
• Specialized for disabilities (e.g., Braille •)
Survey of input devices
• Keyboards: QWERTY, Dvorak •, chording • •,
thumb •, numeric, arrows; split/concave •
• Pointers: Mouse, trackball • •, trackpad, joystick,
pen •, 3D •
• Touchscreen
• Speech input
• Handwriting, gestures, “Graffiti” •
• Data gloves • •, data suits, 3D trackers
• Accelerometers, gyroscopes, proximity sensors
• Specialized for disabilities
Hand-held devices
• Often used without watching (“eye-less”), so
highly tactile keypads helpful (Cf. iPhone)
• Highly targeted info (personalization)
• New interaction paradigms:
– Motion-invariant displays •
– Touchscreen dragging (page-flipping) •
– Hand mirror metaphor •
– Keyhole/flashlight metaphor
Informatics 131 Overview
• The field of HCI
• Human characteristics
• Development and evaluation methodology
• Menu of technologies
• Guidelines and results
Design principles (indep. of style)
• Consistency (internal, •
User control
external) •
User diversity,
• Advance information • personalization •
• Immediate feedback • •
Shortcuts for experts
• Easy reversal (undo •) •
Online help •
• Error prevention, help • •
Learning aids •
• Minimal short-term
memory
How do we organize information?
• How do users group concepts together?
• How do we name the groups?
• How do the groups relate to each other?
Organizational schemes
• Exact: alphabetical, chronological,
geographical
• Inexact/ambiguous: topical, task-oriented,
audience-specific
• Combinations
Organization structures
• Shape can be hierarchical, linear/multipath,
network/web, matrix
• Unrestricted
linking makes
orientation hard
• Network/web
structures hard
for beginners
• Database •
Hypermedia and the WWW
• Nodes (info in many media)
• Visible links to other nodes
• HCI view: navigation between pages,
information presentation, multimedia layout
• More than just HCI design • • • •
Visual organization principles
• Use proximity, alignment, consistency,
contrast to good effect
• More closely related things should be closer,
aligned, consistent
• Less closely related: further, contrasting
• Every difference (in size, color, type,
placement) should have a reason or meaning
HCI for Web (Farkas & Farkas)
• 1.1: All links indicate they’re links •
• 1.2: Help viewers notice links
• 1.3: Links clearly indicate destinations
• 2.1: Effective breadth and depth in hierarchies •
• 2.2: Add secondary/shortcut links where
approp.
• 2.3 Allow branches to converge where approp.
• 2.4 Reveal underlying information structure •
HCI for Web (Farkas & Farkas) 2
• 3.1: Clear, conspicuous orientation at top •
• 3.2: Support exploration • • • •
• 4.1: Use site maps for structure and direct
access • • •
• 4.2: Provide search facility or index for
direct access
• 4.3: Provide links to home page throughout
“Information scent”
• Link should “smell right” to user: confidence
before clicking, feel closer afterwards
• Practical measure (Spool 1998):
– Ask users before clicking what they think they’ll get
– Ask how confident they are (–2 to +2)
– Ask users after clicking if they felt closer (–2 to +2)
– Add the two figures
– Accumulate those sums as you go from link to link;
the result should keep increasing
Advance information
• What’s possible now? What will happen next?
What can I do now?
• Prevent errors, unexpected results
• Guidelines
– Give visual indicators, not just text •
– Distinguish unselectable menu items, objects
– Change cursor shape •
– Show submenus on rollover •
– Show data entry format • •
– Indicate long operations, ask permission •
Feedback
• User action, system reaction (ideally < 0.1 sec)
• Guidelines
– Highlight items on rollover
– Mark selected items •
– Show path in navigation hierarchy
– Report errors immediately
– Use status or progress indicators
– Use visual, auditory, and tactile modes
– Make reaction time uniform
Undo
• Encourages users to explore functionality
• Guidelines
– Special-purpose undo (e.g., backspace)
supplements general
– Try to make everything undoable (external
effects clearer to users than internal)
– Multiple undo (undo/redo or linear sequence)
Error avoidance
• Provide advance information
• Keep dangerous controls away from
frequently used ones
• Warn users of irreversible effects; don’t
make them the default; request confirmation
• Turn safety options on by default
• Recognize errors and react ASAP
Error messages and actions
• Explain nature of problem, how user can
solve it (at least with correct examples)
• Describe in terms of user’s task
• Use polite language • • •
• On crash, give opportunity to save
• Support force quit and relaunch
Shneiderman’s error message
guidelines
• Avoid “fatal,” “invalid,” “bad”
• Avoid ALL CAPS, cryptic numbers
• Give control over audio feedback
• Give precise messages
• Provide context-sensitive help
Help: different types
• Tutorial or getting-started manuals
• Guided tours
• Reference manuals
• Reminders (reference cards, keyboard
templates, rollovers)
• Wizards (to walk through tasks)
• Tips
• On-line help (searchable)
Online help
• Available, consistent for all system functions
• Including currently unavailable options
• Situation-sensitive and concrete
• Written in terms of user’s task
• Not obscuring relevant items; movable
• Initially short with details on request
• Good ID reduces need for explicit help
Tours, tutorials, manuals
• Tour should be short, hit highlights
• Encourage active learning (e.g., user actions,
quizzes), address users directly, give examples
• Manuals are last-resort, comprehensive
sources
• Use tech writing specialists where possible
Command interface guidelines
• Use action words, verb first (move a b),
direct object as first argument
• Use congruent names (advance/retreat, not
move/back)
• Allow abbreviations, syntax flexibility,
aliases
• Provide command history (edit, re-enter
recent commands)
• Multiple args, wildcards, macros, scripts
Menu interaction overview
• Activities: navigation, selection, activation
• Selection: mouse, keys, key + return, touch
• Types of menus •:
– Text, graphical •, combination
– Linear, tabular •
– Static (e.g., menu bar), pull-down, pop-up
– Isolated, connected (hierarchical)
– Pie menus •
Menu item guidelines • •
• Head/title: short, meaningful, centered,
upper/lower case, clean design
• Show: selectable items, non-selectable
items, already-selected items, submenu
availability, how to select (besides mouse)
• Entries: short, meaningful, distinguishable
(most significant word first)
• Shortcuts (first letter); external consistency
Menu length, item order guidelines
• Keep short for beginners
• Group according to task
• Put frequent items near top for beginners
• When multiple selection allowed, group
frequent combinations
• Separate dangerous items from frequent ones
• As last resort, use alpha, time, numerical order
Menu dynamics guidelines
• Highlight item under cursor
• Show submenus of item under cursor
• Maintain indication of selected items
• Allow leaving without any selection
• Maintain positional constancy (grey out)
• Maintain visibility against all backgrounds •
Menu hierarchy guidelines
• Avoid deep nesting
• Top, bottom level menus can be longer
• Longer menus better when under pressure
• Avoid scrolling
• Construct hierarchy by theme
• As before: show submenus, moderate length,
external consistency, shortcuts to deeper items
Graphical menu guidelines
• Make items (icons) recognizable, distinct
• Emphasize global properties (form, color, size)
over fine details
– Abstract icons faster than concrete, text • •
• Give similar icons to similar objects/functions
• Use easily understandable (or learnable) icons
• Textual labels help beginners, infrequent users
Adaptable vs. adaptive menus
• Adaptable: user (or admin) can change
(shortcuts, hide/delete/move/duplicate items)
• Adaptive: automatic change (e.g., based on
usage frequency) violates constancy
Form design guidelines
• Allow entry in tables or labeled data fields •
• Left-align labels, fields, columns in tables •
• Arrange sequences in columns •
• Use meaningful, unambiguous labels
• Mirror layout of paper source document
• Use adequate white space • •
• Tell user expected form of data; indicate if
required
• Allow enough space for expected data
Data entry in forms
• Tab or return should move to next field
• Fill fields with default/most recent/inference
• Allow entry in arbitrary order
• Allow abbreviation/expansion
• Show alternatives if entry not unique •
• Don’t supply dangerous values as auto entries
• Detect, indicate, explain errors; allow multiple
corrections
• Don’t require re-entry of correct data
General screen guidelines
• Reflect structure of task, not of implementation
• Group info for coherent subtask on one screen
• With multiple, related screens
– Use same headlines
– Present necessary info on each screen in same place
– Allow navigation to previous screen, access to help,
ability to exit subtask or whole program
Special screen areas
• Title at top, distinguished
• Can use bottom for status info, explanation,
warnings
• Logos typically upper left or upper right
• Clocks (no seconds, no ticking)
Screen layout
• Use proximity, alignment, consistency, contrast
• Use adequate whitespace (60%–80%)
• Alternatives to whitespace for grouping:
– Lines
– Boxes
– Colored/shaded backgrounds
Guidelines for windows
• Windows make it easy to distinguish
– applications
– info or objects within applications
– events stacked in time (e.g., errors, dialogs)
• Tiled windows easiest for beginners, but
overlapping ones are far more flexible
• Signal which window is on top or active
– partial occlusion
– 3D effects (shadow, lighting) or graying out
Color depends on context
• Adds information, interest, emotion
• Perception affected by what other colors are
nearby •
• Cultural connotations
• Color harmony schemes (kuler.adobe.com,
colorschemedesigner.com)
Recommended uses of color
• Emphasis, grouping (especially as background)
• Coding discrete or continuous data • •
• Distinguishing window types
• Visual separation of overlapping graphics
• Depth in 3D graphics (red closer, blue farther)
• Warnings, status reports
• Increasing attractiveness (within guidelines)
Users with disabilities
• Manual/dexterity; visual; auditory; cognitive
• Various legal requirements to make software
and websites accessible:
– Americans with Disabilities Act (ADA •)
– 1998 amendment to Rehabilitation Act of 1973
(www.section508.gov •)
– Institutional directives (e.g., UCI’s Electronic
Communications Policy)
– Web Accessibility Initiative (www.w3.org/WAI •)
Vision
• Blindness, impaired vision, color blindness,
photosensitive epilepsy
• Technologies
– Screen-reading software
– Braille “displays”
– Descriptive audio
– Screen magnifiers (software, hardware)
– Vischeck.com • (software to simulate and
compensate for color blindness)
Considerations/guidelines (visual)
• Allow magnification
• Color-code only large areas
• Avoid frequent color switches
• Color deficiencies (“color blindness”): 8% of
European-descended males (0.5% of females)
see red/green as medium gray
– Design for monochrome first; add color for redun-
dancy; at least don’t just differ by red vs. green
• Special devices, software, design guidelines
Hearing
• Technologies
– Captioning
– American Sign Language (automatically generated
by an animated avatar, asl.cs.depaul.edu •)
Mobility
• Trouble with keyboard and/or mouse
• Caused by disease, injury, RSI, aging
• Technologies
– One-finger sequential typing for, e.g., Ctl-X
– Ignore brief or repeated keystrokes
– Move pointer using keyboard
– Predictive typing; cycle-until-stop
– Head/foot/mouth/gaze/speech control devices
Considerations/guidelines (manual)
• Provide access by keyboard and by pointer
• Provide alternative to simultaneous keystrokes
• Provide alternatives to voluminous data entry
(defaults, completion, aliases/shortcuts, cycling
through until user hits key to stop)
• Provide special devices
Evaluation of accessibility
• Try turning off images, sound, Java
• Try larger-than-normal font sizes
• Try smaller-than-normal screen or window
• Try monochrome display
• Try it without a mouse
• Try it with a text-only or voice browser
• Use Wave •, Bobby •, A-Prompt • tools
• Do user testing
Globalization
• They don’t call it world-wide for nothing
• Internationalization: Identify and isolate
culture-specific items
– Text
– Numbers (34.50 vs. 34,50, $ vs. £, units)
– Dates/times (y/m/d, AM/PM, time zones)
– Colors (different cultural connotations)
• Localization: Translate or create text
appropriate to a given location
Don’t rely on automated translation
• For 60 years, a goal of computing (still unmet)
• It’s far tougher than dog = perro = chien =
• Idioms, nuances, cultural issues, non-
overlapping grammatical categories
• Not just waiting for the next, faster machine:
We just don’t know enough about language
• (You shouldn’t rely on the grammar checker in
Word, for the same reason)
• Use professional human translators
Other tricky cultural issues
• Icons: Symbols and gestures differ
• Addresses
• Reading direction —> page layout
• Space for text (Exit, Salir, Quitter, Verlassen)
• User testing: in target locale and language
Virtual reality
• Three-dimensional objects and environments
• Multi-sensory input (visual, auditory, haptic)
• User feels immersed: user controls scene
movement, receives feedback
• Integrated technologies: displays, position
sensing for head/hand, force feedback, audio
input/output
Virtual reality applications
• Scientific exploration • •
• Architectural exploration •
• Augmented reality
• Training
• Virtual co-presence (meetings, entertainment)
Improving immersion
• Match input from at least two sensors
• Provide high refresh rate
• Minimize response time
• Provide stereoscopic vision
• Provide three-dimensional sound
Design a form
• Form groups of about 4 people
• Identify some mobile app (existing or new)
that might expect the user to enter form-
based data; any kind of app is okay
• Decide precisely what data you will ask the
user to enter
• Carefully design and sketch a form for
entering the data on the mobile device
• Turn in a sheet with group members’ names
Typography
• HCI for documents, affects effectiveness
• Display type vs. body type
– Quick recognition of letters, words, lines
• Great control now in user’s hands
– “With more power comes the power to mess up in
new and more spectacular ways.” —DGK
• Differences between displays and paper
• Less designer control for text on the WWW
Typography terms
f("It’s")-1; // Courier
f("It’s")-1; // Andale
f(“It’s”)-1; // Times
f(“It’s”)-1; // Georgia
f(“It’s”)-1; // Helvetica
Typeface guidelines (characters)
• Mix upper and lower case
• Choose proportional spacing over monospace
• Use fonts with varying stroke width
• Choose serif over sans-serif fonts
– But on the web …
Margin justification
The sun did not shine, it was The sun did not shine, it was
too wet to play, so we sat in the too wet to play, so we sat in the
house all that cold, cold wet house all that cold, cold wet
day. I sat there with Sally, we day. I sat there with Sally, we
sat there, we two, and I said, sat there, we two, and I said,
“How I wish we had something “How I wish we had something
to do.” Too wet to go out and to do.” Too wet to go out and
too cold to play ball, so we sat too cold to play ball, so we sat
in the house. We did nothing at in the house. We did nothing at
all. all.
www.ics.uci.edu/~kay/whatswrong.pdf •
Information visualization
• Allows understanding of huge amounts of data
• Allows perception of unanticipated properties
• Reveals problems with data itself
• Facilitates understanding of large- and small-
scale features of data
• Facilitates hypothesis formation