spring 2002 1 chp.2: components of hci how to achieve hci goal of developing or improving systems...

32
Spring 2002 1 Chp.2: Components of HCI How to achieve HCI goal of developing or improving systems (safety, utility, effectiveness, efficiency, usability, etc.) AND make sure system integrates well into organizational settings in which it’s used? A multi-disciplinary perspective is used -- analyze problems from different perspectives, including consideration of range of factors: organization (training, job design, politics) environment (noise, lighting, ventilation) health & safety (stress, headaches, fatigue) human & comfort factors (motivation, enjoyment, satisfaction, proficiency) user interface (input, output, color, graphics, etc.) task factors (easy, complex, etc.) constraints (cost, timescales, budgets, staff, equipment) system functionality (hardware, software, application) productivity factors (ouput levels, cost, production time)

Upload: alexandra-wade

Post on 11-Jan-2016

216 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Spring 2002 1 Chp.2: Components of HCI How to achieve HCI goal of developing or improving systems (safety, utility, effectiveness, efficiency, usability,

Spring 2002

1

Chp.2: Components of HCI

• How to achieve HCI goal of developing or improving systems (safety, utility, effectiveness, efficiency, usability, etc.) AND make sure system integrates well into organizational settings in which it’s used?

• A multi-disciplinary perspective is used -- analyze problems from different perspectives, including consideration of range of factors:

– organization (training, job design, politics)– environment (noise, lighting, ventilation)– health & safety (stress, headaches, fatigue)– human & comfort factors (motivation, enjoyment, satisfaction, proficiency)– user interface (input, output, color, graphics, etc.)– task factors (easy, complex, etc.)– constraints (cost, timescales, budgets, staff, equipment)– system functionality (hardware, software, application)– productivity factors (ouput levels, cost, production time)

Page 2: Spring 2002 1 Chp.2: Components of HCI How to achieve HCI goal of developing or improving systems (safety, utility, effectiveness, efficiency, usability,

Spring 2002

2

Chp.2: Components of HCI

• Three case studies:– airline ticket reservations– supermarket checkout– paper interface

• Each case considered in terms of a range of HCI factors:– human (e.g., staff, customer)– user interface– work activity– organization– comfort– productivity– etc…

Page 3: Spring 2002 1 Chp.2: Components of HCI How to achieve HCI goal of developing or improving systems (safety, utility, effectiveness, efficiency, usability,

Spring 2002

3

Chp.2: Components of HCI

• Airline reservation system• Before:

– customer went to travel agency– gave desired destination and travel times to agent– agent called airline– check with customer to see if times ok– if seats/time not ok, repeat…– ticket accounting: agents fills out paper forms,

sends to airlines bi-weekly

Page 4: Spring 2002 1 Chp.2: Components of HCI How to achieve HCI goal of developing or improving systems (safety, utility, effectiveness, efficiency, usability,

Spring 2002

4

Chp.2: Components of HCI

• Airline reservation system• Now:

– customer goes on-line– use types in desired times, destination– wait for search engine– like times, prices? if not repeat.– press buttons to give payment info– ticket accounting: issued electronically, airline dB

updated immediately

Page 5: Spring 2002 1 Chp.2: Components of HCI How to achieve HCI goal of developing or improving systems (safety, utility, effectiveness, efficiency, usability,

Spring 2002

5

Chp.2: Components of HCI

• Airline reservation system• HCI factors:

– human (staff): possibly out of work– human (customer): enjoys immediacy of seat selection, but

has to do more work him/her-self– UI: keyboard, web forms, etc.– work activity: more work placed on user– organization: training needs - user has to know, learn how

to use system; impersonal (some people prefer F2F interaction with travel agent)

– comfort: use has to have computer, may interfere with current task

– productivity: user has to take time away from other tasks

Page 6: Spring 2002 1 Chp.2: Components of HCI How to achieve HCI goal of developing or improving systems (safety, utility, effectiveness, efficiency, usability,

Spring 2002

6

Chp.2: Components of HCI

• Supermarket checkout• Goal: automate pricing/inventory procedures• Infrastructure requirements:

– all items in store must be barcoded– dB must exist to handle purchases/pricing– need scanning systems installed

Page 7: Spring 2002 1 Chp.2: Components of HCI How to achieve HCI goal of developing or improving systems (safety, utility, effectiveness, efficiency, usability,

Spring 2002

7

Chp.2: Components of HCI

• Supermarket checkout• Discussion:

– What are effects on:• user (staff)?• user (customer)?• is the user interface easy to learn/use?• how are problems handled (e.g., mis-scanned product,

incorrect price)?• what is the work activity - is training required? for whom?

(customer, staff, both?)• comfort: how is cashier affected?• system: what is needed (expensive? difficulty of install?)• productivity and “spin-off” factors: is process more

streamlined? What about marketing analysis (BiLo card)?

Page 8: Spring 2002 1 Chp.2: Components of HCI How to achieve HCI goal of developing or improving systems (safety, utility, effectiveness, efficiency, usability,

Spring 2002

8

Chp.2: Components of HCI

• Xerox Parc’s paper user interface (PalmPilot more appropriate)

• Discussion:– What are effects on:

• technology: what is required for development of PDA such as the PalmPilot (hardware, software)?

• what is the user-interface: easy to learn?• organization: is user’s “world” better organized?• comfort: easy to handle, transport?

Page 9: Spring 2002 1 Chp.2: Components of HCI How to achieve HCI goal of developing or improving systems (safety, utility, effectiveness, efficiency, usability,

Spring 2002

9

Chp.2: Components of HCI

• In evaluating multiple factors, various disciplines contribute to HCI:– Computer Science (dB, O/S, AI, Grahpics, …)– Psychology (Cognitive, social, organizational)– IE (Ergonomics, human factors)– Design– Anthropology– Sociology– Philosophy– Linguistics

Page 10: Spring 2002 1 Chp.2: Components of HCI How to achieve HCI goal of developing or improving systems (safety, utility, effectiveness, efficiency, usability,

Spring 2002

10

Chp.2: Components of HCIComputer Science

• Mostly system/technology level– programming languages, compiler, etc.– O/S– Networking– WWW– GUI toolkits and window managers– multimedia– graphics– VR (new devices, incl. sensors, effectors, haptics)

• Application: use whatever devices/techniques suit the application

Page 11: Spring 2002 1 Chp.2: Components of HCI How to achieve HCI goal of developing or improving systems (safety, utility, effectiveness, efficiency, usability,

Spring 2002

11

Chp.2: Components of HCICognitive Psychology

• Understanding human behaviour, underlying mental processes, and capabilities and limitations thereof:– perception– attention– memory– learning– thinking– problem solving

• Application: apply principles to design, e.g., memory and attention are limited, don’t “clutter” UI with > 7 +/- 2 things at a time

Page 12: Spring 2002 1 Chp.2: Components of HCI How to achieve HCI goal of developing or improving systems (safety, utility, effectiveness, efficiency, usability,

Spring 2002

12

Chp.2: Components of HCISocial and Ogranizational Psychology

• Understanding human behaviour in social contexts:– individual’s influence on another– individual’s influence on group (e.g., leadership

qualities, or “weakest link”)– group’s influence on individual (e.g., peer

pressure)– relationship between different groups (e.g.,

different preferences, tastes, as in high school jocks, geeks, etc.)

• Application: consider how computers affect oranizations, groups of people…

Page 13: Spring 2002 1 Chp.2: Components of HCI How to achieve HCI goal of developing or improving systems (safety, utility, effectiveness, efficiency, usability,

Spring 2002

13

Chp.2: Components of HCIErgonomics & Human Factors

• Maximize operator’s safety, efficiency, reliability, performance, satisfaction, etc., e.g., ergonomic cockpits, office furniture, etc.

• Application: evaluate devices/interaction from ergonomic perspective, e.g.,:– “VDUs” (monitors) that minimize eye strain– devices that don’t cause carpel tunnel– VR simulators that promote training, test human

performance

Page 14: Spring 2002 1 Chp.2: Components of HCI How to achieve HCI goal of developing or improving systems (safety, utility, effectiveness, efficiency, usability,

Spring 2002

14

Chp.2: Components of HCILinguistics

• Study of language, understanding structure (syntax) and meaning (semantics)

• Application: apply to human-interface dialogue (how does system “speak” to user):– natural language interface (voice recognition, e.g.,

e.Digital’s MXP 100 MP3 player)– query languages (dB)– internationalization (locales)

Page 15: Spring 2002 1 Chp.2: Components of HCI How to achieve HCI goal of developing or improving systems (safety, utility, effectiveness, efficiency, usability,

Spring 2002

15

Chp.2: Components of HCIPhilosophy, Sociology, Anthropology

• “Soft science”?• Usually considers social implications of IT, e.g.,

– are workers being displaced?– are we becoming less social (more time in email than F2F)?– Increasingly important especially in domains such as

CSCW, I.e., how do people interact, communicate, collaborate

• Application: apply to computer-supported human-human interface dialogue (how do humans communicate):– eye-to-eye contact?– deictic (“look at that”) references?– e.g., Hiroshi Ishii’s TeamWorkstation: maintained eye

contact in video telephony applications

Page 16: Spring 2002 1 Chp.2: Components of HCI How to achieve HCI goal of developing or improving systems (safety, utility, effectiveness, efficiency, usability,

Spring 2002

16

Chp.2: Components of HCIConceptual model of HCI

• HCI is neither the study of humans, nor of technology, rather it is the bridging between the two (to paraphrase Terry Winograd)

• Design concept: know how to make transition from what can be done technologically to how to make it usable for users in their environment

• Lowest level: select most appropriate input (VR, pen, mouse) and output device (video, speech, text), then decide on interaction style (natural language, GUI, VR, multimedia), knowing human psychology and particular human characteristics relevant to task at hand (e.g., for text display, don’t use green on red)

Page 17: Spring 2002 1 Chp.2: Components of HCI How to achieve HCI goal of developing or improving systems (safety, utility, effectiveness, efficiency, usability,

Spring 2002

17

Chp.2: Components of HCIDesign process

• 4 components:– people– work (the task)– environment (physical, organizational, social)– technology

• The HCI design process: not quite as linear as software engineering’s “waterfall model”

• Key differences:– user-centered design: involve users as much as possible– integration of multidisciplinary knowledge– iterative design: periodically check with user

Page 18: Spring 2002 1 Chp.2: Components of HCI How to achieve HCI goal of developing or improving systems (safety, utility, effectiveness, efficiency, usability,

Spring 2002

18

Chp.2: Components of HCIDesign process

• Inolving users:– decide who end user is, how product will be used, made,

sold, marketed– observe current user practices - leads to system

requirements (how can current practice be improved?)– can use psychological models of human, e.g., follow & test

such concepts as Fitt’s Law– include user representatives on team:

• end users• management• marketing personnel• graphic designers, etc.

Page 19: Spring 2002 1 Chp.2: Components of HCI How to achieve HCI goal of developing or improving systems (safety, utility, effectiveness, efficiency, usability,

Spring 2002

19

Chp.2: Components of HCIDesign process

• Incorporating interdisciplinary knowledge:– computer science (AI, graphics, O/S, dB, etc.)– psychology– human factors– linguistics– philosophy– sociology– anthropology

Page 20: Spring 2002 1 Chp.2: Components of HCI How to achieve HCI goal of developing or improving systems (safety, utility, effectiveness, efficiency, usability,

Spring 2002

20

Chp.2: Components of HCIDesign process

• Iterate the design process:– use the Star model: featuring iterative evaluation

(as center of star)– components:

• requirements specification• task analysis / functional analysis• conceptual design / formal design• implementation• prototyping

Page 21: Spring 2002 1 Chp.2: Components of HCI How to achieve HCI goal of developing or improving systems (safety, utility, effectiveness, efficiency, usability,

Spring 2002

21

Chp.2: Theories, Principles, Guidelines

• High-level theories and models– application-independent framework or language– explanatory (e.g., taxonomy) or predictive

• Middle-level principles– creating and comparing design alternatives

• Specific and practical guidelines– helpful reminders of rules uncovered by designers

Page 22: Spring 2002 1 Chp.2: Components of HCI How to achieve HCI goal of developing or improving systems (safety, utility, effectiveness, efficiency, usability,

Spring 2002

22

Chp.2: High-level theories

• Foley van Dam’s 4-level model:– conceptual: user’s mental model (e.g,. text

editing: line editors or screen editors)– semantic: meanings conveyed by input/output

• (often mismatched, e.g., in Unix you have to “move” a file to rename it)

– syntactic: construction of commands, e.g., in Unix, you usually have “cmd <options>”

– lexical: mechanisms by which user specifies syntax (e.g., keyboard? mouse?)

Page 23: Spring 2002 1 Chp.2: Components of HCI How to achieve HCI goal of developing or improving systems (safety, utility, effectiveness, efficiency, usability,

Spring 2002

23

Chp.2: High-level theories

• GOMS model:– goals, operators, methods, selection rules– a model of the user, often in terms of performance

(e.g., keystrokes required to perform some action)– somewhat poor example in the book: deleting a

word in something like MS Word:• can highlight, press backspace• can highlight, chose Edit->Cut from menu

– GOMS is supposed to predict which method is faster

Page 24: Spring 2002 1 Chp.2: Components of HCI How to achieve HCI goal of developing or improving systems (safety, utility, effectiveness, efficiency, usability,

Spring 2002

24

Chp.2: High-level theories

• Norman’s 7 stages of action model:– forming goal (“I want to delete a word”)– forming intention (“I need to highlight it”, etc.)– specifying action (“highlight, then backspace”)– executing action (performing above)– perceiving system state (seeing what happens)– interpreting system state (understanding output)– evaluating outcome (deciding what to do next)

• This model leads to Norman’s principles of visibility, affordance, and feedback

Page 25: Spring 2002 1 Chp.2: Components of HCI How to achieve HCI goal of developing or improving systems (safety, utility, effectiveness, efficiency, usability,

Spring 2002

25

Chp.2: High-level theories

• Reisner’s task-action grammars (TAGs):– addresses multiple levels of consistency (e.g.,

“deleting” a character, word, line, vs. “deleting”, “removing”, “destroying”, “killing”

Page 26: Spring 2002 1 Chp.2: Components of HCI How to achieve HCI goal of developing or improving systems (safety, utility, effectiveness, efficiency, usability,

Spring 2002

26

Chp.2: High-level theories

• Shneiderman’s Object-Action Interface (OAI) model:– described progamming and db-manipulation– adapted to be an explanatory model based on

interface objects (e.g., file folders) and user actions (e.g., click, double-click, click-and-drag)

– important related concept: direct manipulation

Page 27: Spring 2002 1 Chp.2: Components of HCI How to achieve HCI goal of developing or improving systems (safety, utility, effectiveness, efficiency, usability,

Spring 2002

27

Chp.2: Mid-level principles

1. Recognize diversity• profile (“know thy”) user: novice, expert (e.g., newbie,

power user), preschooler, adult, etc.• newbies can be given “training wheels” interface• categorize task (e.g., easy/hard, frequent/infrequent), e.g.,

File->Save is a frequent one• categorize interaction styles:

• direct manipulation (GUI)• menu• form fillin• CLI• natural (spoken) language (who uses this?)

Page 28: Spring 2002 1 Chp.2: Components of HCI How to achieve HCI goal of developing or improving systems (safety, utility, effectiveness, efficiency, usability,

Spring 2002

28

Chp.2: Mid-level principles

1. (How do I make this bulleted list start from #2?)2. Use eight golden rules of interface design

1. strive for consistency (e.g., color, layout, actions [single-click or double-click])

2. allow shortcuts (e.g., hot keys)3. informative feedback (e.g., not “blue screen of death”)4. yield closure (operations have beginnin, middle, end)5. error prevention (e.g,. confirmation dialogs, auto spelling)6. undo7. internal locus of control (huh?)8. reduce short-term memory burden (7 +- 2)

Page 29: Spring 2002 1 Chp.2: Components of HCI How to achieve HCI goal of developing or improving systems (safety, utility, effectiveness, efficiency, usability,

Spring 2002

29

Chp.2: Mid-level principles

1. Prevent errors• improve error messages (good idea even for

compilers, have you noticed how g++ has improved its error reporting over older C compilers?)

• correct matching pairs, e.g., (), some editors can do this, or at least indicate where matching ( is

• complete sequences (incorporated into tcsh - use Tab key)

• correct commands (Shneiderman suggests using direct manipulation instead of CLI)

Page 30: Spring 2002 1 Chp.2: Components of HCI How to achieve HCI goal of developing or improving systems (safety, utility, effectiveness, efficiency, usability,

Spring 2002

30

Chp.2: Specific and Practical Guidelines

• Guidelines for data display• organize the display

• use consistent labels/graphic conventions• standardize abbr.’s• page numbers• use graphics instead of digital values• color, high-resolution, etc.

• get the user’s attention• fonts, color, audio, video, etc.

Page 31: Spring 2002 1 Chp.2: Components of HCI How to achieve HCI goal of developing or improving systems (safety, utility, effectiveness, efficiency, usability,

Spring 2002

31

Chp.2: Specific and Practical Guidelines

• Guidelines for data entry• maintain consistency• minimize user input• minimize user’s memory load• make data format (entry and display) compatible

(e.g., mm/dd/yy for date entry)• provide user-controlled flexibility

Page 32: Spring 2002 1 Chp.2: Components of HCI How to achieve HCI goal of developing or improving systems (safety, utility, effectiveness, efficiency, usability,

Spring 2002

32

Chp.2: Specific and Practical Guidelines

• Maintain balance between human and automated tasks• advocacy for “control panel” metaphor• not sure exactly what the point is here