CS631p
Human Computer Interaction |
Spring
2000 |
Lecture 1 |
Reasons for a course in Human-Computer Interaction
-
Visual programming tools provide easy facility for creating, displaying,
and managing complex visual objects.
-
Web-based browsers and hypermedia tools have made it easy to deploy any
manner of interface on any computer platform from atomic force microscopes
to interactive commerce systems.
-
Advances in computer vision and artificial intelligence have made it possible
for computers to recognize human speech, gesture, and touch.
-
Advances in computer hardware have made computing ubiquitous, allowing
computers to be embedded in humans, clothing, appliances, and more.
-
Computer science graduates will be building software systems with a variety
of interfaces.
Human-Computer Interaction Defined:
HCI is a discipline concerned with the design, evaluation, and implementation
of interactive computing systems for human use and with the study of major
phenomena surrounding them.
Brief History:
Today's GUI patterned after:
-
1981 - Xerox 8010 (Star)
-
1984 - Apple Macintosh
1945 - Vannevar Bush - As We May Think
- use computer to transform thought
-
Problem: Too much information to cover
in a short time
-
Solution: Memex - use machines
to store and retrieve information
Characteristics:
- Associative indexing
- Multimedia (uses microfilm)
- Response to speech
1960-1965 - Transistor-based computers transform
computing
1960 - J.C. Licklider - Human-Computer Symbiosis
-
Bring computer into formulation of technical problems
-
Bring computer into real-time thinking process
Must Solve 10 Problems before H-C Symbiosis:
Immediate:
-
Time-sharing of computers among users.
-
Visual-Pictorial I/O
-
Interactive Real-time systems
-
Large-scale, cooperative information storage and retrieval
-
Facilitation of human cooperation in design and building of large systems
Intermediate:
-
Combined speech and handwriting recognition with light-pen editing
Long Term:
-
Natural language understanding
-
Speech recognition and speech production
-
Theory of algorithms (discovery, development, and simplification)
-
Heuristic programming
Solving Licklider's Problems:
mid-1960s - Time-sharing and Networking
-
Advanced computer accessibility and size of user communities
-
Terminals linked to computer through terminals
-
Designers could follow users behaviors
-
Text editors, screen editors, and word processors flourished
-
Computer-mediated human interaction began through message passing and shared
file systems
1963 - Ivan Sutherland - Sketchpad
-
Pre-dated by MIT's Whirlwind and SAGE
-
New ideas:
-
Hierarchical internal structure of computer images
-
Master picture(s) with instances as transformed versions of master
-
Constraints as a method of specifying details of geometry
-
Ability to manipulate iconic representations of constraints
-
Ability to copy and instance pictures and constraints
-
Light pen as input device
-
Separation of object space from image space
-
Recursive operations on objects
1963 - Interactive Computer Graphics - SJCC Watershed
Event
-
Functional requirements for CAD system
-
Requirements for CAD system in terms of languages and data structures
-
Hardware requirements for CAD
-
Extension of CAD to 3D
Early-70s - Computer Graphic Innovation
-
Display processors (Meyer and Sutherland)
-
Data Tablets (Davis and Ellis)
-
Operating systems supporting interactive graphics
-
Ken Knowlton (Bell Labs)
-
Cyrus Levinthal (MIT Project MAC)
-
Fred Brooks (UNC)
Mid-60s - Expanding Memex:
Hypertext - Ted Nelson & Doug Engelbart
-
Engelbart - defined hierarchical structure of ordinary documents
Nelson - lateral links and interconnections to create a text
space
-
Engelbart - grouped creation and problem solving
-
Nelson - collective contributions to document structure from people
with no formal ties
-
Engelbart : Need to use computers to augment man's
intellect through
-
Artifacts - physical objects designed add comfort, aid manipulation
of symbols and things
-
Language - the way humans represent and manipulate the world
-
Methodology - methods and strategies used to solve problems
-
Training - training to use augmented means effectively
Human factors, Psychology, and Design of Human-Computer
Dialogues
-
Human factors - a.k.a. Ergonomics - (began in early 20th
C) focuses on enhancing use of artifacts
-
Psychology - (began in 1960s) - study of design of interactive computer
systems
-
'60s - programmers studied - better programming environments
-
'70s - more non-programmers - need to study better HCI
James Martin - Design of Man-Computer Dialogues (1973)
Personal Workstations
1977 - Dynabook - Alan Kay
-
Conceptual model and mock-up
-
Medium for collecting knowledge and organizing thought
-
Size of ordinary notebook
-
Visual output better than newsprint
-
Fast I/O
-
High quality audio
-
Instant response
1979 - Alto - Xerox PARC
-
Local processing and memory
-
High resolution bit-mapped graphics
-
Keyboard, mouse
-
LAN connection
-
Graphical windows interface(WYSIWYG) with integrated text editor, illustration
creation, and email
1981 - Model 8010 (Star) - Xerox PARC
-
Designed for Offices
-
Innovative HCI Interface
-
Desktop Metaphor
-
Direct manipulation
-
Options or properties
-
WYSIWYG
-
Generic Commands (e.g. Move, Copy, Delete)
-
High Degree of Consistency
-
Not Success
-
Too Expensive ($15K)
-
Limited Functionality (e.g. no spreadsheet)
-
Closed architecture (difficult for 3rd parties to write programs)
-
Perceived by users as slow
-
Mouse overused
-
Lessons Learned
-
Design First, Then Code
-
Use of Objects-and-Actions design method
-
Attention to Detail
-
Participation of Designers
1983 - Lisa - Apple
-
Steve Jobs saw Star prototype at PARC
-
$10K
-
Not networked like Star
1984 - Macintosh - Apple
-
$2500
-
Mac succeeded but Star did not
-
Mac did not need to trailblaze
-
Apple learned from experience
-
Mac Aggressively priced
-
Mac had powerful developer toolkit
-
Mac had excellent graphics & 300dpi laser printer
Understanding Interfaces
Don Norman's The Design of Everyday
Things
Analyzes common objects (door, toaster, VCR, telephone)
Concepts of Good/Bad Design
-
Affordances
Perceived properties of an artifact that determines how it can be used
(e.g knobs/buttons/slots)
-
Constraints
Physical, semantic, cultural, and logical factors that encourage proper
actions
-
Conceptual Models
Mental model of system which allows users to:
- understand the system
- predict the effects of actions
- interpret results
-
Mappings
Describe relationship between controls and their effects on system
-
Visibility
The system shows you the conceptual model by showing its state and
actions that can be taken
-
Feedback
Information about effects of user's actions
Norman's Seven Stages of Action that explain
how people do things:
-
Form a goal
-
Form the intention
-
Specify an action
-
Execute the action
-
Perceive the state of the world
-
Interpret the state of the world
-
Evaluate the outcome
Norman's Prescription for User-Centered
Design:
-
Make it easy to know what actions are possible at any time
-
Make thing visible:
-
the conceptual model
-
alternative actions
-
results of actions
-
Make it easy to evaluate the current state of the system
-
Follow natural mappings
-
between actions and effects
-
between visible information and interpretation of system state
Norman's Questions about artifacts:
-
What is the system's function?
-
What system actions are possible?
-
What are the mappings from intention to execution?
-
Does the device inform the user about what state it is in?
-
Can the user determine tell what state the system is in?