55
CogSys-HCI Lecture 1: Introduction Human Computer Interaction Ute Schmid (lecture and practice) Applied Computer Science, Bamberg University last change October 16, 2007 CogSys-HCI Lecture 1: Introduction – p. 1

CogSys-HCI Lecture 1: Introduction · CogSys-HCI Lecture 1: Introduction Human Computer Interaction Ute Schmid (lecture and practice) Applied Computer Science, Bamberg University

  • Upload
    buithuy

  • View
    217

  • Download
    3

Embed Size (px)

Citation preview

CogSys-HCI Lecture 1: IntroductionHuman Computer Interaction

Ute Schmid (lecture and practice)

Applied Computer Science, Bamberg University

last change October 16, 2007

CogSys-HCI Lecture 1: Introduction – p. 1

Organization

Prerequisit: succesful participation in CogSys-IA orequivalent

Homepage of the course:http://www.cogsys.wiai.uni-bamberg.de/teaching/

Practice: conducting a small empirical study

CogSys-HCI Lecture 1: Introduction – p. 2

Course Objective

Problems of and techniques forhuman-computer-interaction

Core topics:characteristics of human informationprocessing, psychological concepts for HCI design,cognitive architectures and cognitive modeling,empirical methods for the evaluation of softwaresystems and usability studies

Further topics: user adaptivity, enduser programming,antropomorphic agents, tutor systems, social software,...

CogSys-HCI Lecture 1: Introduction – p. 3

ResourcesText Books

Alan Dix, Janet Finlay, Gregory Abowd, RussellBeale (2004). Human-Computer Interaction (3rdEd.). Prentice Hall.Jennifer Preece, Yvonne Rogers, Helen Sharp(2002). Interaction Design. Wiley.William Newman and Michael Lamming (1995).Interactive Systems Design. Addison-Wesley.and many more

Journals and Conferences:Conference on Human Factors in ComputingSystems (CHI)Human-Computer Interactionand many moresee: http://www.hcibib.org/

CogSys-HCI Lecture 1: Introduction – p. 4

The HCI Challenge

Human computer interaction is a difficult endeavor withglorious rewards.

Designing interactive systems to be

effective

efficient

easy to use

enjoyable to use

so that people and society may realize the benefits ofcomputation-based devices

CogSys-HCI Lecture 1: Introduction – p. 5

Problem

Interleaved constraints with sometimes necessarytrade-offs

human

machine

algorithmic

task

social

aesthetic

economic

CogSys-HCI Lecture 1: Introduction – p. 6

Reward

Digital libraries where scholars can find and turn pagesof medieval manuscripts located far away

Medical instruments allowing complex neurosurgicaloperations

Virtual worlds for entertainment and social interaction

Responsive and efficient government services

Smart phones

...

CogSys-HCI Lecture 1: Introduction – p. 7

Definition of HCI

Human-computer interaction (HCI) is:

concerned with the design, evaluation and implementationof interactive computing systems for human use and withthe study of major phenomena surrounding them.(ACM SIGCHI, 1992, p.6)

Increasingly more application areas, moretechnologies and more issues to consider whendesigning ’interfaces’!

CogSys-HCI Lecture 1: Introduction – p. 8

Development of Interfaces

50s – Interface at the hardware level for engineers -switch panels

60-70s – interface at the programming level - COBOL,FORTRAN

70-90s – Interface at the terminal level - commandlanguages

80s – Interface at the interaction dialogue level - GUIs,multimedia

90s – Interface at the work setting - networkedsystems, groupware

00s – Interface becomes pervasive RF tags, Bluetoothtechnology, mobile devices, consumer electronics,interactive screens, embedded technology

CogSys-HCI Lecture 1: Introduction – p. 9

HCI as Subfield of Computer Science

Computer science mainly concerned with the study ofalgorithms (sound, complete, efficient algorithms are anecessary condition for working systems)

But: Human users and their contexts are majorcomponents of the design problem and cannot bewished away simply because they are complex toaddress

Largest part of program code typically deals withinteraction

CogSys-HCI Lecture 1: Introduction – p. 10

The Science of HCI

Domain of HCI is much more complex and fuzzy thanclassical computer science

How to go beyond platitudes like “know the user”?

Providing generative design principles

Focus on both analytic and implementation methods:Practitioners who can only evaluate but not designand build are under a handicapBuilders who cannot reason analytical about thesystems they build and who do not understandhuman information processing or social contexts oftheir design are under a handicap

CogSys-HCI Lecture 1: Introduction – p. 11

Examples for Bad Design

Jacques Carelman, “Coffeepot for Masochists”, Catalog of UnfindableObjectsDesign must support functionalty! →֒ Task analysis

CogSys-HCI Lecture 1: Introduction – p. 12

Examples for Bad Design (2)

Menu-oriented word-processing package

Save and delete both in menu “File” (makes sense)

as adjacent items

together with cursor controlled by a trackball this canbe dangerous!

Pop-up of a confirmation box, which looks very similarto the confirmation box for saving

→֒ violation of the usability goal “safety”

CogSys-HCI Lecture 1: Introduction – p. 13

Examples for Bad Design (3)

VCR: recording a different program than you wanted

Voice mail in many organizations/hotels: input manynumbers, lots of

Internet shop: long video clip which cannot beinterrupted as intro, slow and tedious procedure forfilling out an online form – which often was notsuccesful (company went bankrupt within a few monthof going public)

Car radios

Mobile devices

...

CogSys-HCI Lecture 1: Introduction – p. 14

Good and Poor Design cont.

see http://www.baddesigns.com/ for more

CogSys-HCI Lecture 1: Introduction – p. 15

Usability Goals

(Nielsen, 2001)

Effectivity (how good is the system at doing what it issupposed to do)

Efficiency (speed of information access, speed ofdoing what the user wants to do, easy to learn)

Safety (protecting the user from dangerous conditionsand undesirable situations)

Utility (provides the right kind of functionality)

Learnability

Memorability

CogSys-HCI Lecture 1: Introduction – p. 16

Remember: Safe/Unsafe Menu

Edit Image

New ...Open ...

CloseSaveSave As ...

Page Setup ...Print ...

Quit

Edit Image

New ...Open ...

Page Setup ...Print ...

DeleteSave

CloseQuit

File File

Putting ’Save’ near ’Delete’ and/or ’Quit’ might produceunwanted errors

CogSys-HCI Lecture 1: Introduction – p. 17

The Ten-Minute Rule

Assessing whether a system is easy to learn

Ten-minute-rule by Nelson (1980)

A computer system for architects is not expected toteach architecture. Quite the reverse: the ten-minuterule requires that what an architect already knows behelpful in learning to use the system. (Rubinstein &Hersh, 1984)

Ten-minute rule is inappropriate for complex systemsFlight support system for pilotsWord processor (diverse functionalities)Video game (high level of skills)

CogSys-HCI Lecture 1: Introduction – p. 18

Fast Learnability vs. Efficient Use

The ten-minute rule might be also not appropriate forexpert computer users in general

Think about emacs + LaTeX vs. Word: where can youproduce the desired outcome more efficient?

Think about a person writing one email per week vs. aprofessional writing 100 emails per day

Classic studies: keyboard shortcuts are more efficientthan mouse input for expert users (Shneiderman,Designing the User Interface: Strategies for HCI, 1998)

If keyboard shortcuts, then for everything (changingcosts between mouse and keybord)

CogSys-HCI Lecture 1: Introduction – p. 19

User Experience Goals

Satisfying, Enjoyable, Entertaining

Helpful, Motivating, Supportive of Creativity

Aesthetically pleasing

...

How does the system feel like to the user

Explicating the nature of user experience in subjectiveterms

Trade-offs between usability and user experiencegoals:a process control system should be safe! (might beincompatible with being fun)

CogSys-HCI Lecture 1: Introduction – p. 20

Norman’s Design Principles

Visibility

Feedback

Constraints

Mapping

Consistency

Affordance

CogSys-HCI Lecture 1: Introduction – p. 21

Visibility and Feedback

Visibility:

e.g.: controls for different operations in a car are visible(indicators, horn, hazard warning lights) andrelationship between their positions make it easy forthe driver to find the appropriate control for the task athand

The more visible functions are, the more likely userswill be able to know what to do next

Feedback

Sending back information about what action has beenperformed and what has been accomplished

Audio, tactile, verbal, visual, and combinations

CogSys-HCI Lecture 1: Introduction – p. 22

Constraints

Physical: restriction of the movement of things (e.g., adisk can be placed into a drive only in one way)

Logical: relying on people’s common sense reasoningabout actions and consequences (e.g., disabling andshadowing menu options which are currently notexecutable)

Cultural: exploiting learned conventions (e.g., usingred for warning)

CogSys-HCI Lecture 1: Introduction – p. 23

Mapping

Relationship between controls and their effects in theworld

e.g., up and down arrows representing up/downmovement of cursor

Mapping of relative positions of controls is also ofimportance

unnaturalnatural

CogSys-HCI Lecture 1: Introduction – p. 24

Consistency

Similar operations for similar tasks (e.g., always leftmouse button for selecting items)

Similar elements for similar tasks

Placement of related operations in a common menu(categorization)

External Consistency: be consistent with what peopledo in the worldInternal Consistency: be consistent within the system

Problem with complex systems with thousands ofdifferent operations

E.g., “sort” in Word is not in the “Tools” menu but in the“Table” menu

In relation: principle of least astonishmentCogSys-HCI Lecture 1: Introduction – p. 25

Principle of Least Astonishment

In user interface design, programming languagedesign, and ergonomics: when two elements of aninterface conflict or are ambiguous, the behaviourshould be that which will least surprise the human useror programmer at the time the conflict arises, becausethe least surprising behavior will usually be the correctone.

Example: a user interface may have the behaviour that pressingControl-Q causes the program to quit. The same user interface mayhave a facility for recording macros, or sequence of keystrokes to beplayed back later, intended to be able to control all aspects of theprogram. The user may want to record a keystroke sequence withControl-Q as part (most likely the last part) of the macro. Theprinciple of least surprise says that pressing Control-Q whilerecording a macro should not quit the program (which wouldsurprise the user), but rather to record the keystroke.CogSys-HCI Lecture 1: Introduction – p. 26

Affordance

Attribute of an object that allows people how to use it

e.g., door handle invites pulling; cup handle invitesgrasping; mouse button invites pushing;

Icons should be designed to afford clicking, scroll barsto afford moving

“I put an affordance there”, a participant would say, “Iwonder if the object affords clicking ...” affordance this,affordance that. And no data, just opinion. Yikes! Whathad I unleashed upon the world? (Norman, 1999)

CogSys-HCI Lecture 1: Introduction – p. 27

Meeting Design/Usability Goals

System design using software engineering methods tomeet requirements of functionality, performancequality, safety (not topic of this lecture)

Requisits for HCI design:Knowledge about the system domain, generalaspects of human information processing, specialaspects of the kind of users which will use thesystemFormulation of targets for usability goalsMethods to support system analysis and synthesis

CogSys-HCI Lecture 1: Introduction – p. 28

Design Activities

Identifying needs and establishing requirements

Developing alternative designs to meet thoserequirements

Building interactive versions of the designs so that theycan be communicated and assessed

Evaluating what is being built throughout the process

CogSys-HCI Lecture 1: Introduction – p. 29

System analysis

How is the system likely to affect the user’s activities?

Can things be done faster with fewer errors?

Build a model of the performed activities

Derive performance measures

Make usability assesment

CogSys-HCI Lecture 1: Introduction – p. 30

HCI Methods

Problem definition

User study

Usability analysis

Controlled experiments

Empirical evaluation

Use of guidelines

...

CogSys-HCI Lecture 1: Introduction – p. 31

Contributing Disciplins

Cognitive Engineering

InteractionDesign

Academic Disciplines

Ergonomics

PsychologyCognitive Science

Computer Science

Software Engineering

Social Sciences(Sociology, Anthroplogy)

Human Factors HCI

ErgonomicsCognitive Cooperative Work

Computer−Supported

Film Industry

Industrial Design

Artist Design

Product Design

Graphic Design

Design Practices

Information Systems

Interdisciplinary Fields

CogSys-HCI Lecture 1: Introduction – p. 32

A Closer Look at Interaction Design

Remember the design activities:

Identifying needs and establishing requirements

Developing alternative designs to meet thoserequirements

Building interactive versions of the designs so that theycan be communicated and assessed

Evaluating what is being built throughout the process

CogSys-HCI Lecture 1: Introduction – p. 33

Users and Their Needs

Stakeholdes: People or organizations who will beaffected by the system and who have a direct orindirect influence on the system requirements (Kotonyaand Sommerville, 1998)

Primary User: frequent and hands-onSecondary User: occasional or through intermediaryTertiary User: affected by introduction or influencepurchase(Eason, 1987)

Frequently, the “formal client” who orders the system isvery low on the list of those affected!

Identification of relevant stakeholders is crucial foruser-centered development

CogSys-HCI Lecture 1: Introduction – p. 34

User-Centered Approach

Norman and Draper, 1986

Focussing on the prospective users from the beginningand obtain real data about their needs

→֒ design based on empirical data and not onimagination

CogSys-HCI Lecture 1: Introduction – p. 35

General and Specific Needs

Interaction is a human activity: design must beconsistent with physical and cognitive abilities and thesocial environment→֒ take into account psychological research aboutperception, memory, etc.

Particular expertise, responsibilities, training, workingenvironmentsspecial demands because of impairments→֒ type of user (e.g. passenger, telefon operator, ...)must be specified in problem/requirement definition

Problem: for new inventions it is difficult to defineusers’ needs and representative tasks

CogSys-HCI Lecture 1: Introduction – p. 36

Example Stakeholders

CogSys-HCI Lecture 1: Introduction – p. 37

Requirement Analysis and Specification

Categories:target audience and target platformfeatures of the applicationresponsivenessusability benchmarks (e.g. "such and such a taskmust be completed within 2 minutes")the choice of general look and feel guidelines

established through: a combination of analysis andgathering information from target users, throughinterviews, observation, focus groups, surveys

Often only written down in contract developmentcontext

Validation: analytical and empirical (testing prototypes)CogSys-HCI Lecture 1: Introduction – p. 38

Alternative Designs

Human tendency to stick with something which works“good enough”

The “mysterie” of design creativity

Pragmatic way: looking at other, similar designs

Evolution: e.g., typewriter to word processor

Typically, many, sometimes conflicting, constraints

Example: Software running under Windows mustconform to Windows look and feel

Choosing between alternatives: empirical andanalytical evaluation of prototypes

External: Usability characteristics, Performancetimes, ...Internal: Correctness, consistency, ...

CogSys-HCI Lecture 1: Introduction – p. 39

Creativity and Analogy

Analogy as the basic mechanism of creativity

Cross-fertilization between different domains

Example: Steam engine / water kettle

Key components of analogyRetrieval of a suitable source (bottleneck, what issuitable?, pitfall of superficial similarity)Mapping of source and target structureTransfer: Inference of missing structuralcharacteristics, Adaptation of a solution

CogSys-HCI Lecture 1: Introduction – p. 40

Lifecycle Models

Showing how activities are related: lifecycle models

Software lifecycle models: waterfall model, spiralmodel, RAD model

CogSys-HCI Lecture 1: Introduction – p. 41

Waterfall Model

focus on intended functionality, no user involvement

CogSys-HCI Lecture 1: Introduction – p. 42

Spiral Model

Barry Boehm (1988)

Interative framework with risk analysis and prototypingas important features

No user involvement

Iterations to take account of risks in development, i.e.,any kind of uncertainty in requirements (might beresolved by prototyping)

Idea of iterations adopted for HCI design models

CogSys-HCI Lecture 1: Introduction – p. 43

Spiral Model

CogSys-HCI Lecture 1: Introduction – p. 44

Spiral Model in Usability Engineering

4 phases:AnalysisDesignDevelopmentTests

3 Levels:Paper ModelPrototypeFinal Product

CogSys-HCI Lecture 1: Introduction – p. 45

Rapid Applications Development

User-centered view

Minimize risks caused by requirements changes

Joint Application Development (JAD): workshops withusers and developers to gather requirements

CogSys-HCI Lecture 1: Introduction – p. 46

RAD

CogSys-HCI Lecture 1: Introduction – p. 47

Paper Mock-Ups

Results of requirement analysis are modelled on paper

Tests with endusers possible: give concrete tasks andmeasure time to perform and difficulties withinteraction (cognitive effort)

Typically, about 80% of difficulties can be detected inthis early phase!

Nielsen: usability engineering, 1993; Nielsen, UsabilityMetrics: Tracking Interface Improvements, IEEESoftw., 13(6), 1996

CogSys-HCI Lecture 1: Introduction – p. 48

Prototypes

Prototyping: essential element of an iterative designapproach

create, evaluate and refine until desired performanceor usability is achieved

Low-fidelity prototypes: extremely simple sketches

High-fidelity prototypes: systems that contain nearly allthe functionality of the final system

CogSys-HCI Lecture 1: Introduction – p. 49

Lifecycle Models in HCI

Star model (Hartson and Hix, 1989)

Emerged from empirical studies of interface designers

Top-down: Analysis, system’s view

Bottom-up: Synthesis, user’s view

No specific order of activities

CogSys-HCI Lecture 1: Introduction – p. 50

CogSys-HCI Lecture 1: Introduction – p. 51

eXtreme Usability

Holzinger und Slany, Informatik Spektrum, 29, 2, 2006

Integration of eXtreme Programming and UsabilityEngineering

Xtreme Programming (Kent Becker):A not undisputed approach ...Combining best practices of software developmentin an extreme way such that individual weaknessesare compensatedPermanent code reviews by pairs of programmerswho switch tasks every half dayPermanent tests with at least one enduserYAGNI (you aren’t gonna need it): simple design

CogSys-HCI Lecture 1: Introduction – p. 52

... XP

Monthly plan adaptation with stakeholders

Code releases approx. every three month

No specialization of developpers, code is understoodand refactored by all developers

Working along “user stories”: one non-dividable featurewhich is of use for the enduser

Development of test cases for each user story

Usability is one feature among others

Problem: calculating a budget in advanced is nearlyimpossible with iterative approaches (no completerequirement/functional specification in advance)

CogSys-HCI Lecture 1: Introduction – p. 53

XU

Each XP iteration: increasing set of finished userstories and decreasing set of unfinished stories

Usability engineering in each iteration: use papermock-ups for not implemented stories and user studies(e.g. analysis of think aload and video protocolls) forimplemented stories

Getting rid of one crucial problem of usabilityengineering: taking into account too many details tooearly

CogSys-HCI Lecture 1: Introduction – p. 54

Objectices of This Lecture

Closer look to human information processing as themost important constraint for HCI

Introduction of principle methods of empirical researchas the most important way to assess the usability of asystem

CogSys-HCI Lecture 1: Introduction – p. 55