01 HCI Introduction
01 HCI Introduction
Introduction
Human Computer Interaction
• The Humans
• The Computers
• The Interaction
INTRODUCTION
1. HCI Introduction
2. Bad Designs are everywhere
3. Psychology of Design
4. Psychopathology of Design
5. Human Computer Interaction
6. History of User Interfaces
7. Course Reference Material
INTRODUCTION
And
“ When simple things need pictures, labels, or instructions, the design has
failed. ”
Psychopathology of Everyday Things
• Can you use all the functions of your
– Digital watch
– Mobile phone
– Washing machine
– Video recorder
• The most basic functionality of a video recorder, playing
a tape, is easy to use. However, anything more
advanced, such as programming a recording, can
become rather difficult.
Feature Shock
• Every digital device has more features than its manual
counterpart
No Visibility!
Psychopathology of Everyday Things
Psychopathology of Everyday Things
Fundamental Truths about Computers
• Computers are ubiquitous
– Everything we use is equipped with computer
technology
Better Designs!
4. HUMAN COMPUTER
INTERACTION
How do we design good interfaces?
User-Centered Design, Simplicity, Consistency, Feedback, Hierarchy, Flexibility, Error
Handling: Design clear and informative error messages that help users understand what
went wrong and how to fix it.
Requirements
Design
Implement
Test
design implementation
evaluation
• Why
– to enable us to design interactive products to
support people in their everyday and working lives
Human-Computer Interaction
• Goals
– Usability
– Pleasurableness
– User experience and emotions
– Satisfaction
– Learnability
– Error reduction
– engagement
HCI: AN Interdisciplinary Area
Why is HCI Important?
• 80% of software lifecycle costs occur after the product is released, in
the maintenance phase - of that work, 80 % is due to unmet or
unforeseen user requirements; only 20 % is due to bugs or reliability
problems (IEEE Software)
• Effects on
– Effectiveness
– Productivity
– Morale
– Safety
– Society
– Individuals
– And a lot more
5. HISTORY OF USER INTERFACES
A Brief History of User Interfaces
• Batch-processing
– No interactive capabilities
– All user input specified in advance (punch cards, ...)
– All system output collected at end of program run
(printouts,...)
– Applications have no user interface component
distinguishable from File I/O
– Job Control Languages (example: IBM3090–JCL):
specify job and parameters
A Brief History of User Interfaces
• Time-sharing Systems
– Command-line based interaction with simple terminal
– Similar program structure
– Applications read arguments from the command line,
return results
– Example: still visible in Unix commands
• Full-screen textual interfaces
– Interaction starts to feel "real-time" (example: vi)
– Applications receive UI input and react immediately in
main "loop" (threading becomes important)
A Brief History of User Interfaces
• Menu-based systems
– Discover "Read & Select" over "Memorize & Type"
advantage
– Still text-based!
– Example: UCSD Pascal Development Environment
– Applications have explicit UI component
– But: choices are limited to a particular menu item
at a time (hierarchical selection)
– Application still "in control"
A Brief History of User Interfaces
• Graphical User Interface Systems
– From character generator to bitmap display (Alto/Star/Lisa..)
– Pointing devices in addition to keyboard
-> Event-based program structure
• Most dramatic paradigm shift for application development
• User is "in control"
• Application only reacts to user (or system) events
• Callback paradigm
– Event handling
• Initially application-explicit
• Later system-implicit
Book Reference
• Book: Human Computer Interaction - 3rd
Edition by - ALAN DIX_ JANET FINLAY
Chapter: 1, 2, 3 and 4