Title: Understanding the Interaction Between Human and Computer
1Understanding the Interaction Between Human and
Computer
2Models of Interaction
- Interaction styles vary extensively
- From batch input to direct manipulation/virtual
reality - Interaction involves 2 participants
- Human and computer
- Interface translates between them
- Several models
- Examine 2 execution evaluation cycle and
interaction framework
3Terms of Interaction
- Some definitions
- Domain An area of expertise and knowledge in
some real-world activity - Tasks Operations that manipulate concepts in
the domain - Goal Desired output from a task
- Core language The computational attributes of
the domain relative to the system state - Task language The psychological attributes of
the domain relative to the user state.
4Execution-Evaluation Cycle
- 2 stages with 7 steps
- Developed by Norman (1980)
- Execution involves
- Establishing a goal
- Forming the intention
- Creating the plan (i.e. a sequence of actions)
- Executing the plan
- Evaluation involves
- Perceiving system state
- Interpreting state
- Evaluating state wrt goal/intention
5Advantages/Disadvantages
- Allows identification of gulfs of execution and
gulfs of evaluation - Gulf of execution Difference between the users
actions and actions allowed by system - Gulf of evaluation Difference between state of
program and the expectation of user - Problems
- Only considers system as far as interface
- Focuses on users view of interaction
- IMHO not really problems
6Improving Interaction
- Specific issues
- Mode errors
- Idea is to reduce the rigidity of interaction
- Allow computer to vanish into background
- Focus on work, not on interface
7The Mode Problem
to make fun of a near fanatical campaign I have
waged for several years, a campaign to eliminate
modes from the face of the earth or at least
from the face of my computers display
screen Larry Tesler, Byte, 08/1981
- Limit operations available
- Force user to keep track of program state
8Execution-Evaluation Cycle
- 2 stages with 7 steps
- Developed by Norman (1980)
- Execution involves
- Establishing a goal
- Forming the intention
- Creating the plan (i.e. a sequence of actions)
- Executing the plan
- Evaluation involves
- Perceiving system state
- Interpreting state
- Evaluating state wrt goal/intention
9Example Software IBM InkManager Pro.
10Mode-Based Interaction
User Sets Mode
System Sets Edit Mode
System Sets Draw Mode
User selects object to edit
System indicates object to edit
User draws object
User selects edit operation
System displays object
User performs edit operation
System updates object on screen
11Interaction with Paper
User Draws Strokes
Paper displays strokes
12Solutions to Mode Problem
- Haptic interfaces
- Flatlands (PARC)
- Denim (Berkeley)
- Alternative Interpretations
- ASSIST A Shrewd Sketch Interpretation
Simulation Tool (MIT)
13InkScribe Demo.
14Solving the Mode Problem
User performs an action
System attempts To infer Users intent
Add draw object
Perform edit
Add object and Prompt user
15InkScribe Reasoning Diagram
Select button showing
User pressed select
Select object
User Performs action
Selections exist
No selections
User operated on selections
User clicked somewhere else
User selected non-translate operation
Manipulate selections
Short path
Long path
Closed path
Set edit operation
Contains nothing
Contains objects
Nothing selected
On an object
De-select
Selections Exist
Not on an object
Show Select query
Add to selections
Selections exist
Add to selections
Add ink
De-select objects
Nothing selected
16Results
- Conducted a user trial
- Seven users, approximately 40 minutes
Mode errors Preference
User 1 4 I
User 2 1 I
User 3 3 M
User 4 5 I
User 5 0 I
User 6 0 M
User 7 3 M
17Execution-Evaluation Cycle
- 2 stages with 7 steps
- Developed by Norman (1980)
- Execution involves
- Establishing a goal
- Forming the intention
- Creating the plan (i.e. a sequence of actions)
- Executing the plan
- Evaluation involves
- Perceiving system state
- Interpreting state
- Evaluating state wrt goal/intention
18Whats Interesting
- Normans interaction is very naïve
- Execution involves
- Establishing a goal
- Forming the intention
- Creating the plan (i.e. a sequence of actions)
- Executing the plan
- Evaluation involves
- Perceiving system state
- Interpreting state
- Evaluating state wrt goal/intention
- Can make use of to improve much about software
applications
19Interaction Framework
- Extends Normans model
- Includes system state explicitly
- Four nodes
- System, User, Input and Output
- Each node has own language
- System language core language
- User language task language
- Input and Output languages form the interface
- Translates between core and task language
User Task Language
Articulation
Observation
I O
Performance
Presentation
System Core Language
20Commentary
- I like Execution-Evaluation framework for early
stage design - Focuses on user and their view of the system.
- At later stages in implementation, the
Interaction Framework can be valuable - Forces you to think about all aspects of the
interface - Forces you to consider what users want to
accomplish and how to map - All these frameworks are also placed with a
context
21Frameworks and HCI
Social and Organizational Context
Screen Design O
Ergonomics User
System
Dialog Design I
22Ergonomics/Human Factors and HCI
- Arrangement of controls and displays
- Functional, sequential, frequency
- Physical environment of interaction
- Where will system be used, how will it be used
- Critical in control and operational settings
- Health issues
- Physical position, temperature, lighting, noise,
time - Use of color
- Human vision (coming up)
23Recall What is HCI?
Taken from James Landays HCI slides
24Interaction Styles A primer on dialog design
- Command line interfaces
- Menus
- Natural language
- Question/answer and query dialog
- Form-fills and spreadsheets
- WIMP
- Point/click
- 3-D interfaces
- Tangible interfaces (later)
25Dialog design continued Simple screen design
guidelines
- Different information should be presented in
different ways - Text left-aligned
- Numbers aligned over decimal (to see magnitude
- Entering information in forms and dialogs
- Users are likely to read from left to right and
top to bottom (depending on social context!) - Aesthetics and utility
- Pretty ! good
- Ugly ! bad
- Pretty ! bad and Ugly ! good !!!!
- Color -gt low contrast simple backgrounds (like
mine!) are less distracting! - Counter concept Ignore content and just look at
spacing of elements do related thinks seem
grouped? - Many style guidelines out there
- Microsoft has an extensive one probably good to
pay attention to it - Affordance -gt things should suggest function by
appearance - Affordances depend on users background
- Localization/internationalization
- A lot of style guidelines are for
English/European languages bad for middle East
and Asian languages
26Some notes on interactivity
- Interactivity involves the dynamics of the
interaction - How it unfolds over time
- Speech recognition is too poor to allow automatic
transcription, but works for airline reservation
system - The yes/no recognition
- Modal dialog boxes block user (and can sometimes
be really bad!)
27Some notes on interactivity
28Context of Interaction
- Always remember that users work within a broader
context - See contextual inquiry slides
29Principles to Support Usability
- Learnability
- How easily can a user become skilled with
interface? - Flexibility
- How easily can a user adapt the interface to a
task? - Robustness
- How rare are errors and can a user recover?
30Learnability
Principle Definition Principles
Predictability Can history guide future interaction? Operation visibility
Synthesizability Is effect of past operations visible? Immediate/ eventual honesty
Familiarity Knowledge and experience can be leveraged? Guessability Affordance
Generalizability Can extend skills within and across domains
Consistency Similar behavior in similar situations
31Flexibility
Principle Definition Principles
Dialog initiative Can system dialog constraints be reduced/eliminated? System/User Pre-emptive
Multi-threading User can work with more than one task Concurrent vs. interleaving Multi-modality
Task migratability Task performed by user, by system, or shared Guessability Affordance
Substitutivity Values of input or output substituted
Customizability User or system can modify interface !!!
32Robustness
Principle Definition Principles
Observability Can system state be easily evaluated from the screen? Operation visibility, Reachability, Defaults
Recoverability Ability to correct errors once recognized Reachability, Commensurate effort
Responsiveness User perception of rate of communication Stability
Task conformance Does system support all user tasks in a way that user understands Task completeness and adequacy