utah school of computing preliminaries cs5540 human computer interfaces rich riesenfeld fall 2008

46
Utah School of Computing Preliminaries CS5540 Human Computer Interfaces Rich Riesenfeld Fall 2008

Upload: eunice-roberts

Post on 14-Jan-2016

213 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Utah School of Computing Preliminaries CS5540 Human Computer Interfaces Rich Riesenfeld Fall 2008

Utah School of Computing

Preliminaries

CS5540 Human Computer InterfacesRich Riesenfeld

Fall 2008

Page 2: Utah School of Computing Preliminaries CS5540 Human Computer Interfaces Rich Riesenfeld Fall 2008

Utah School of Computing

Donald A. Norman, Psychology/Design of

Everyday Things

Page 3: Utah School of Computing Preliminaries CS5540 Human Computer Interfaces Rich Riesenfeld Fall 2008

Student Name ServerUtah School of Computing slide slide 33Fall 2008

Affordances

• Affordances refers to the perceived

and actual properties, esp wrt how it

is used or applied

• Affordances provide “strong clues” to

the operation of things

Page 4: Utah School of Computing Preliminaries CS5540 Human Computer Interfaces Rich Riesenfeld Fall 2008

Student Name ServerUtah School of Computing slide slide 44Fall 2008

Mappings

• Mappings refers to the relationship between two things

• Eg, control and movement- Steering wheel- Door handle

Page 5: Utah School of Computing Preliminaries CS5540 Human Computer Interfaces Rich Riesenfeld Fall 2008

Student Name ServerUtah School of Computing slide slide 55Fall 2008

Map’s & Afford’s: Ex’s - 1

• Door Knobs v Levers

Page 6: Utah School of Computing Preliminaries CS5540 Human Computer Interfaces Rich Riesenfeld Fall 2008

Student Name ServerUtah School of Computing slide slide 66Fall 2008

Map’s & Afford’s: Ex’s - 2

Doors open left or right ?

Page 7: Utah School of Computing Preliminaries CS5540 Human Computer Interfaces Rich Riesenfeld Fall 2008

Student Name ServerUtah School of Computing slide slide 77Fall 2008

Map’s & Afford’s: Ex’s - 3

Lego pieces

Page 8: Utah School of Computing Preliminaries CS5540 Human Computer Interfaces Rich Riesenfeld Fall 2008

Student Name ServerUtah School of Computing slide slide 88Fall 2008

Map’s & Afford’s: Ex’s - 4

• Bicycle- Seat, position, handlebars, brakes

Page 9: Utah School of Computing Preliminaries CS5540 Human Computer Interfaces Rich Riesenfeld Fall 2008

Student Name ServerUtah School of Computing slide slide 99Fall 2008

Map’s & Afford’s: Ex’s - 5

• Mercedes power seat adjustment

Page 10: Utah School of Computing Preliminaries CS5540 Human Computer Interfaces Rich Riesenfeld Fall 2008

Student Name ServerUtah School of Computing slide slide 1010Fall 2008

Map’s & Afford’s: Ex’s - 6

• Motorcycle- Clutch, shifting pattern

• Climate Control in a car-- Want to set temperature- Really setting amount of hot water circulating

through radiator

Page 11: Utah School of Computing Preliminaries CS5540 Human Computer Interfaces Rich Riesenfeld Fall 2008

Student Name ServerUtah School of Computing slide slide 1111Fall 2008

Mappings & Affordances: Ex’s -2

• Stereo Controls- Knobs v Sliders

• TV Controls- Menus

• Triggers

Page 12: Utah School of Computing Preliminaries CS5540 Human Computer Interfaces Rich Riesenfeld Fall 2008

Student Name ServerUtah School of Computing slide slide 1212

Functionality v Interface/Mapping

Fall 2008

Page 13: Utah School of Computing Preliminaries CS5540 Human Computer Interfaces Rich Riesenfeld Fall 2008

Student Name ServerUtah School of Computing slide slide 1313

Huh? What’s this ?

Fall 2008

Page 14: Utah School of Computing Preliminaries CS5540 Human Computer Interfaces Rich Riesenfeld Fall 2008

Student Name ServerUtah School of Computing slide slide 1414Fall 2008

Page 15: Utah School of Computing Preliminaries CS5540 Human Computer Interfaces Rich Riesenfeld Fall 2008

Student Name ServerUtah School of Computing slide slide 1515Fall 2008

7 Stages of Action - 1

1. Form Goal

2. Form Intent

3. Specify Action

4. Execute Action

5. Perceive State of World

6. Evaluate Outcome

7. Interpret State of World

Page 16: Utah School of Computing Preliminaries CS5540 Human Computer Interfaces Rich Riesenfeld Fall 2008

Student Name ServerUtah School of Computing slide slide 1616Fall 2008

7 Stages of Action - 1

A. Abstraction1. Form Goal

B. Execution Phase2. Form Intent3. Specify Action4. Execute Action

C. Evaluation Phase5. Perceive State of World6. Evaluate Outcome7. Interpret State of World

Page 17: Utah School of Computing Preliminaries CS5540 Human Computer Interfaces Rich Riesenfeld Fall 2008

Student Name ServerUtah School of Computing slide slide 1717Fall 2008

7 Stages of Action - 2

1. Form Goal

Get more light to read

Page 18: Utah School of Computing Preliminaries CS5540 Human Computer Interfaces Rich Riesenfeld Fall 2008

Student Name ServerUtah School of Computing slide slide 1818Fall 2008

7 Stages of Action - 2

2. Form Intent

Flip on a wall switch

3. Specify Action (Instantiate Plan)

Get out of chair, walk to switch …

4. Execute Action

Carry out plan

Page 19: Utah School of Computing Preliminaries CS5540 Human Computer Interfaces Rich Riesenfeld Fall 2008

Student Name ServerUtah School of Computing slide slide 1919Fall 2008

7 Stages of Action - 4

5. Perceive State of World

Collect external data

6. Evaluate Outcome

7. Interpret State of World

Page 20: Utah School of Computing Preliminaries CS5540 Human Computer Interfaces Rich Riesenfeld Fall 2008

Student Name ServerUtah School of Computing slide slide 2020Fall 2008

Issues

• Gulf of Execution- Wrong thing happened- Unexpected response

• Gulf of Evaluation- What is going on?- What am I?

Page 21: Utah School of Computing Preliminaries CS5540 Human Computer Interfaces Rich Riesenfeld Fall 2008

Student Name ServerUtah School of Computing slide slide 2121Fall 2008

Control Structures

• Shallow structures

- ice cream store menu

• Narrow structures

• Cooking recipe

- small vocab

- many steps

Page 22: Utah School of Computing Preliminaries CS5540 Human Computer Interfaces Rich Riesenfeld Fall 2008

Student Name ServerUtah School of Computing slide slide 2222Fall 2008

Errors

• Design for errors

• Making mistakes is normal

• Implement fault tolerant designs

- redundancy

Page 23: Utah School of Computing Preliminaries CS5540 Human Computer Interfaces Rich Riesenfeld Fall 2008

Student Name ServerUtah School of Computing slide slide 2323Fall 2008

Designing for Errors - 1

• Understand the cause, and minimize• Implement UNDO • Make errors easy to

- detect- Correct

• Think of user as - engaged in approximate behavior - don’t think of it as wrong behavior

Page 24: Utah School of Computing Preliminaries CS5540 Human Computer Interfaces Rich Riesenfeld Fall 2008

Student Name ServerUtah School of Computing slide slide 2424Fall 2008

Designing for Errors - 2

• Example: Locking keys in car- various alerts and inhibitions- don’t want a voice telling you that you just

locked your keys in car!

Page 25: Utah School of Computing Preliminaries CS5540 Human Computer Interfaces Rich Riesenfeld Fall 2008

Student Name ServerUtah School of Computing slide slide 2525Fall 2008

Forcing Functions - 1

• Forcing Function is a form of physical (or other, ie, aversive, etc) constraint- make this hard to turn, hard to open- Barriers

Pedestrian Cars (RR X) Allow “X” but not “Y”

Luggage/shopping carts

- loud fire alarms (120 db !)

Page 26: Utah School of Computing Preliminaries CS5540 Human Computer Interfaces Rich Riesenfeld Fall 2008

Student Name ServerUtah School of Computing slide slide 2626Fall 2008

Forcing Functions: Examples - 2

• Child-proof medicine containers

• Engaging reverse in a car

• Inhibit start w transmission

• Critical military decisions- Requires two authorized people

• Fire extinguisher

Page 27: Utah School of Computing Preliminaries CS5540 Human Computer Interfaces Rich Riesenfeld Fall 2008

Student Name ServerUtah School of Computing slide slide 2727Fall 2008

Forcing Functions - 3

• Recessed reset button on equipment

• Turnstiles and automatic gates

• Speed governors on fleet cars

• Function car locks- Child locks on rear doors- Automatic locking when in Drive- Locked steering wheel w/o key

Page 28: Utah School of Computing Preliminaries CS5540 Human Computer Interfaces Rich Riesenfeld Fall 2008

Student Name ServerUtah School of Computing slide slide 2828Fall 2008

Forcing Functions - 4

• Automatic seatbelts restraints

• Open microwave door inhibits POWER

• Self-cleaning oven – door stays locked

• Firearm safety settings

• Double instead of single mouse click

• Elevator – door must be closed

Page 29: Utah School of Computing Preliminaries CS5540 Human Computer Interfaces Rich Riesenfeld Fall 2008

Student Name ServerUtah School of Computing slide slide 2929Fall 2008

Forcing Functions - 5

• Legal and psychological- Policeman at intersection- Police car at roadside

• Security- Security guard- Surveillance camera- Surveillance sign (not for sale, officially)- Guard dog – or any dog

Page 30: Utah School of Computing Preliminaries CS5540 Human Computer Interfaces Rich Riesenfeld Fall 2008

Student Name ServerUtah School of Computing slide slide 3030Fall 2008

Forcing Functions: Advisories - 6

• “Shoplifters will be prosecuted to the fullest extend of law”

• “Speed enforced by radar”

• Radio alert provided by police- Radar in operation in following areas

• Reminder of consequences- Punishable by fine, jail, suspension,

removal, etc.

Page 31: Utah School of Computing Preliminaries CS5540 Human Computer Interfaces Rich Riesenfeld Fall 2008

Student Name ServerUtah School of Computing slide slide 3131Fall 2008

Forcing Function Approach- 7

• Drastic, imposing, assertive, militant, authoritative, officious, Big Brother, risky

• When to use?- This is a choice of the stick over carrot- Often has a goodwill cost

Motorcycle helmets Seatbelts Child restraining seats

Page 32: Utah School of Computing Preliminaries CS5540 Human Computer Interfaces Rich Riesenfeld Fall 2008

Student Name ServerUtah School of Computing slide slide 3232Fall 2008

Forcing Function Approach- 8

• What circumstances justifies this approach?- Safety?- Potential for major damage?- Harm to others/society?

Page 33: Utah School of Computing Preliminaries CS5540 Human Computer Interfaces Rich Riesenfeld Fall 2008

Student Name ServerUtah School of Computing slide slide 3333Fall 2008

Forcing Function Approach- 9

• When does the user subscribe to the approach; when is it resented?- Gun control- Restricted (superuser) functions- Speed limits on German autobahn- Dress/behavior codes

Page 34: Utah School of Computing Preliminaries CS5540 Human Computer Interfaces Rich Riesenfeld Fall 2008

Student Name ServerUtah School of Computing slide slide 3434Fall 2008

Forcing Function Approach- 10

• When does the user subscribe to the approach; when is it resented?- Drug control

Need a prescription Only dispensed for 1 month supply; cannot

renew Cannot call-in to pharmacy ID required Not honored from out-of-state prescription

Page 35: Utah School of Computing Preliminaries CS5540 Human Computer Interfaces Rich Riesenfeld Fall 2008

Student Name ServerUtah School of Computing slide slide 3535Fall 2008

Fault “Intolerance”

• Design so that only correct actions can be taken

• Nuclear power plants

• Cockpits: Flaps down

• Shifting into reverse

• Assemble only one way: right way!

Page 36: Utah School of Computing Preliminaries CS5540 Human Computer Interfaces Rich Riesenfeld Fall 2008

Student Name ServerUtah School of Computing slide slide 3636Fall 2008

Visibility

• Allow the user to be informed

• Show him the state- Where is the elevator? - Can I see the elevator in its shaft?

• Is the medium inserted correctly? Engaged properly?

Page 37: Utah School of Computing Preliminaries CS5540 Human Computer Interfaces Rich Riesenfeld Fall 2008

Student Name ServerUtah School of Computing slide slide 3737Fall 2008

Interpreting Data

• Swiss Air flight- Low oil pressure, level on Eng 1

turn off Eng 1

- Ditto on Eng 2 & 3 impossible, not reasonable!

Page 38: Utah School of Computing Preliminaries CS5540 Human Computer Interfaces Rich Riesenfeld Fall 2008

Student Name ServerUtah School of Computing slide slide 3838Fall 2008

Interpreting Data

• This happened!- New procedure- Same mistake on all engines- Oil ran out because of maintenance error on

new procedure- World view was wrong

Page 39: Utah School of Computing Preliminaries CS5540 Human Computer Interfaces Rich Riesenfeld Fall 2008

Student Name ServerUtah School of Computing slide slide 3939Fall 2008

Effecting Actions

• Command mode- 3rd Person- Proxy- “fly by wire”

• Direct control- “hands on experience”- good haptic feedback

Page 40: Utah School of Computing Preliminaries CS5540 Human Computer Interfaces Rich Riesenfeld Fall 2008

Student Name ServerUtah School of Computing slide slide 4040Fall 2008

Make Complicated Simpler - 1

• Use both world and user knowledge- Can lead to difficult choices

Swiss Air flight

• Simplify structure of tasks

• Make things visible- Bridging execution and evaluation

Page 41: Utah School of Computing Preliminaries CS5540 Human Computer Interfaces Rich Riesenfeld Fall 2008

Student Name ServerUtah School of Computing slide slide 4141Fall 2008

Make Complicated Simpler - 2

• Get mappings right- test and validate

• Exploit constraints

• Design for error

• Standardize

Page 42: Utah School of Computing Preliminaries CS5540 Human Computer Interfaces Rich Riesenfeld Fall 2008

Student Name ServerUtah School of Computing slide slide 4242Fall 2008

Make Complicated Simpler - 3

• Standardize- 911- Electrical power: (Black, Red, White, Green)- Video: (Red, White, Yellow)- Telephone: (Red,Green), (Yellow, Black)- etc

Page 43: Utah School of Computing Preliminaries CS5540 Human Computer Interfaces Rich Riesenfeld Fall 2008

Student Name ServerUtah School of Computing slide slide 4343Fall 2008

Make Complicated Simpler - 4

• Standardize for- Convenience- Ease of use- Safety- Repressive

Hard to change, modernize, update May not be good design

• Issues (cont)

Page 44: Utah School of Computing Preliminaries CS5540 Human Computer Interfaces Rich Riesenfeld Fall 2008

Student Name ServerUtah School of Computing slide slide 4444Fall 2008

Make Complicated Simpler - 5

• Standardization Issues- Standards are hard to achieve- Proprietary interests

Dominant player can dictate

- Role of government- Role of industry organization/society- Renegade players

How to enforce?

Page 45: Utah School of Computing Preliminaries CS5540 Human Computer Interfaces Rich Riesenfeld Fall 2008

Utah School of Computing

End Lecture Set 3 D A Norman Notes

Page 46: Utah School of Computing Preliminaries CS5540 Human Computer Interfaces Rich Riesenfeld Fall 2008

Student Name ServerUtah School of Computing slide slide 4646Fall 2008