cs 160 introduction - university of california, berkeleyjfc/cs160/f04/lectures/lec1/lec1.pdf · hci...

53
8/31/2004 1 CS 160 Introduction Professor John Canny Fall 2004

Upload: others

Post on 27-Jun-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: CS 160 Introduction - University of California, Berkeleyjfc/cs160/F04/lectures/lec1/lec1.pdf · HCI Challenges Ill-posed problems * You don’t get to start with a “clean” problem

8/31/2004 1

CS 160 Introduction

Professor John CannyFall 2004

Page 2: CS 160 Introduction - University of California, Berkeleyjfc/cs160/F04/lectures/lec1/lec1.pdf · HCI Challenges Ill-posed problems * You don’t get to start with a “clean” problem

8/31/2004 2

Outline

Who am I?HCI introductionCourse overviewProject description & handoutAdministrivia

Page 3: CS 160 Introduction - University of California, Berkeleyjfc/cs160/F04/lectures/lec1/lec1.pdf · HCI Challenges Ill-posed problems * You don’t get to start with a “clean” problem

8/31/2004 3

Who am I?Professor in EECSPh.D. in CS from MIT 1987* Robot motion planning, computer algebra

Research interests:* Educational Technology* Context-aware and mobile computing* Privacy and cryptography* Rapid prototyping technology

Accent is from South Australia

Page 4: CS 160 Introduction - University of California, Berkeleyjfc/cs160/F04/lectures/lec1/lec1.pdf · HCI Challenges Ill-posed problems * You don’t get to start with a “clean” problem

8/31/2004 4

Humans* A person trying to accomplish something* Other innocent bystanders

Human-Computer Interaction (HCI)

Computers* Run application programs* Often remote (client-server)

Interaction* Human expresses their wishes to the machine* The machine responds

Page 5: CS 160 Introduction - University of California, Berkeleyjfc/cs160/F04/lectures/lec1/lec1.pdf · HCI Challenges Ill-posed problems * You don’t get to start with a “clean” problem

8/31/2004 5

Understanding people* People are not all the same - values very different

* Identity (traits) are bothindividual and collective

* Tension between designingtoo narrowly and too broadly

* Diversity in the design teamhelps

HCI Challenges

Page 6: CS 160 Introduction - University of California, Berkeleyjfc/cs160/F04/lectures/lec1/lec1.pdf · HCI Challenges Ill-posed problems * You don’t get to start with a “clean” problem

8/31/2004 6

HCI Challenges

Ill-posed problems* You don’t get to start with a “clean” problem -

problem solving is only part of design* Defining the problem is much of the work* The problem spec may

change during design, e.g. in “extremeprogramming”

Page 7: CS 160 Introduction - University of California, Berkeleyjfc/cs160/F04/lectures/lec1/lec1.pdf · HCI Challenges Ill-posed problems * You don’t get to start with a “clean” problem

8/31/2004 7

Benefits of HCI Skills

CS160 projects are like companies* Deal with users: understand and involve them* Communication* Subjective judgments* Flexibility and time

constraints!

MIT ME survey

Page 8: CS 160 Introduction - University of California, Berkeleyjfc/cs160/F04/lectures/lec1/lec1.pdf · HCI Challenges Ill-posed problems * You don’t get to start with a “clean” problem

8/31/2004 8

UI design

Design

Organizational &Social Issues

Medium(technology)

People

Task

Page 9: CS 160 Introduction - University of California, Berkeleyjfc/cs160/F04/lectures/lec1/lec1.pdf · HCI Challenges Ill-posed problems * You don’t get to start with a “clean” problem

8/31/2004 9

User Interfaces (UIs)

Part of application that allows users* to express their intentions to the machine* to interpret results of machine

actions

Page 10: CS 160 Introduction - University of California, Berkeleyjfc/cs160/F04/lectures/lec1/lec1.pdf · HCI Challenges Ill-posed problems * You don’t get to start with a “clean” problem

8/31/2004 10

User Interfaces (UIs)

HCD = Human-Centered Design* Understanding user needs * Design* Prototyping* Evaluation* Final implementation of UIs

Page 11: CS 160 Introduction - University of California, Berkeleyjfc/cs160/F04/lectures/lec1/lec1.pdf · HCI Challenges Ill-posed problems * You don’t get to start with a “clean” problem

8/31/2004 11

Iterative vs. top-down design

Human-Centered Design is an iterative process, rather than top-down. Why?Hard to predict user performance with the productUsers have very different intuition/conceptual modelsHard to model (mathematically) Users can help with design

Page 12: CS 160 Introduction - University of California, Berkeleyjfc/cs160/F04/lectures/lec1/lec1.pdf · HCI Challenges Ill-posed problems * You don’t get to start with a “clean” problem

8/31/2004 12

Why Study User Interfaces?Major part of work for “real” programs* approximately 50%

Many application programs are mostly UI* word proc., spreadsheet, PDAs, email, calendars etc.

You will work on consumer software* intended for users other than yourself

Page 13: CS 160 Introduction - University of California, Berkeleyjfc/cs160/F04/lectures/lec1/lec1.pdf · HCI Challenges Ill-posed problems * You don’t get to start with a “clean” problem

8/31/2004 13

Why Study User Interfaces?Bad user interfaces cost* money (5% ↓↓↓↓ satisfaction -> up to 85% ↓↓↓↓ profits)* lives (Therac-25)

User interfaces hard to get right* people and tasks are complex

Page 14: CS 160 Introduction - University of California, Berkeleyjfc/cs160/F04/lectures/lec1/lec1.pdf · HCI Challenges Ill-posed problems * You don’t get to start with a “clean” problem

8/31/2004 14

Who builds UIs?

A multi-disciplinary team (ideally)* graphic designers* interaction / interface designers* technical writers* marketers* test engineers* software engineers* Users

Why?

Page 15: CS 160 Introduction - University of California, Berkeleyjfc/cs160/F04/lectures/lec1/lec1.pdf · HCI Challenges Ill-posed problems * You don’t get to start with a “clean” problem

8/31/2004 15

How to Design and Build UIs

Identify and understand users’ needsTask analysis & contextual inquiryRapid prototypingEvaluationProgrammingIteration

Page 16: CS 160 Introduction - University of California, Berkeleyjfc/cs160/F04/lectures/lec1/lec1.pdf · HCI Challenges Ill-posed problems * You don’t get to start with a “clean” problem

8/31/2004 16

Hand in petition forms toMy office 529 Soda

Page 17: CS 160 Introduction - University of California, Berkeleyjfc/cs160/F04/lectures/lec1/lec1.pdf · HCI Challenges Ill-posed problems * You don’t get to start with a “clean” problem

8/31/2004 17

Administrivia

Registration* Class size target is 50 students* Please fill out petition form if you are not

yet registered.* You must also be on the wait list to sign

up.

Page 18: CS 160 Introduction - University of California, Berkeleyjfc/cs160/F04/lectures/lec1/lec1.pdf · HCI Challenges Ill-posed problems * You don’t get to start with a “clean” problem

8/31/2004 18

Administrivia

John’s office hours* Tu 1-2, W 2-3 noon (529 Soda)* email jfc@cs for appointments at other times

Teaching assistants* Scott Lederer [email protected]

Page 19: CS 160 Introduction - University of California, Berkeleyjfc/cs160/F04/lectures/lec1/lec1.pdf · HCI Challenges Ill-posed problems * You don’t get to start with a “clean” problem

8/31/2004 19

Administrivia (cont.)

Discussion sections* Tuesday 9-10, 10-11 in 320 Soda* new material covered in section -you should

attendNo sections this weekClass ombudsman appointed next class (need volunteer). Relay student concerns to staff.

Page 20: CS 160 Introduction - University of California, Berkeleyjfc/cs160/F04/lectures/lec1/lec1.pdf · HCI Challenges Ill-posed problems * You don’t get to start with a “clean” problem

8/31/2004 20

Books

We will mainly hand out papers, give you web links, & refer to lecture slidesTwo recommended textbooks* Human-Computer Interaction by Alan Dix, et. al.,

2nd edition, 1998.* Designing the User Interface by Ben

Shneiderman, 3rd edition, 1998.

Other recommended books on web page

Page 21: CS 160 Introduction - University of California, Berkeleyjfc/cs160/F04/lectures/lec1/lec1.pdf · HCI Challenges Ill-posed problems * You don’t get to start with a “clean” problem

8/31/2004 21

Assignments

Individual* 2 written

Group* 5 written assignments* 2 presentation/demos with write-ups

Page 22: CS 160 Introduction - University of California, Berkeleyjfc/cs160/F04/lectures/lec1/lec1.pdf · HCI Challenges Ill-posed problems * You don’t get to start with a “clean” problem

8/31/2004 22

GradingA combination of* Midterm (15%)* Final (15%)* Individual assignments (15%)* Group project (40%)

+ demos/presentation (group component)+ project write-ups and exercises+ ratings given by other team members & class

* In-class quizzes (10%)* In-class participation (5%)No curve

Page 23: CS 160 Introduction - University of California, Berkeleyjfc/cs160/F04/lectures/lec1/lec1.pdf · HCI Challenges Ill-posed problems * You don’t get to start with a “clean” problem

8/31/2004 23

Assessment

Guidelines will be given in each assignmentYou should read readings and prepare for class, participation is gradedGood communication expected in oral and written presentationsMidterm and finalGroups self-assess participation - should monitor it throughout the projectsMeet with us as soon as problems emerge

Page 24: CS 160 Introduction - University of California, Berkeleyjfc/cs160/F04/lectures/lec1/lec1.pdf · HCI Challenges Ill-posed problems * You don’t get to start with a “clean” problem

8/31/2004 24

Tidbits

Late Policy* no lates on group assignments* individual assignments lose 20% per dayCheating policy (official)* will get you an F in the course* more than once can get you dismissed from CalMore informationwww.cs.berkeley.edu/~jfc/cs160/F04

Page 25: CS 160 Introduction - University of California, Berkeleyjfc/cs160/F04/lectures/lec1/lec1.pdf · HCI Challenges Ill-posed problems * You don’t get to start with a “clean” problem

8/31/2004 25

UI Design Cycle

Design

Prototype

Evaluate

Page 26: CS 160 Introduction - University of California, Berkeleyjfc/cs160/F04/lectures/lec1/lec1.pdf · HCI Challenges Ill-posed problems * You don’t get to start with a “clean” problem

8/31/2004 26

Human-Centered Design

Understanding people* “Get inside the user’s head”* Keep users involved throughout design

Psychology* Cognitive: learning, perception, memory* Social: motives, personalities, group dynamics

Technologies* UI toolkits, design principles* Collaborative technologies

Page 27: CS 160 Introduction - University of California, Berkeleyjfc/cs160/F04/lectures/lec1/lec1.pdf · HCI Challenges Ill-posed problems * You don’t get to start with a “clean” problem

8/31/2004 27

Users: Communities and Personae

Remember that individuals belong to multiple communities - not just trait groups

Communities are a unifying influence, and allow new products to diffuse (be adopted by new users) in society.

Page 28: CS 160 Introduction - University of California, Berkeleyjfc/cs160/F04/lectures/lec1/lec1.pdf · HCI Challenges Ill-posed problems * You don’t get to start with a “clean” problem

8/31/2004 29

Users: PersonaeA portrait of a character (with a name)* Name: Jack * Occupation: Professor* Values: liberal politics* Likes: water (swimming, sailing, lying on a beach),

Asian food, French food, Italian food, seafood,…* Dislikes: traffic, bad comedians, bureaucracy, * Goals: start family, get good education for kids

(probably private), build a leading research group in area,…

Page 29: CS 160 Introduction - University of California, Berkeleyjfc/cs160/F04/lectures/lec1/lec1.pdf · HCI Challenges Ill-posed problems * You don’t get to start with a “clean” problem

8/31/2004 30

Users: Personae* Name: Alice* Occupation: Just graduated MBA, looking,…* Values: Family, friends, work in a humane

workplace* Likes: Dinner parties, Working out, One quiet

night per week, Paris, Lemon drops (drink), foot massages.

* Dislikes: Chauvinism, aggressive drivers, people who drink more than they should, working after 9pm.

* Goals: management role in a mid-size company –making it a better place

Page 30: CS 160 Introduction - University of California, Berkeleyjfc/cs160/F04/lectures/lec1/lec1.pdf · HCI Challenges Ill-posed problems * You don’t get to start with a “clean” problem

8/31/2004 31

Personae

More like a story character than a description of a community or group

Q: Why the “unnecessary” detail?

Page 31: CS 160 Introduction - University of California, Berkeleyjfc/cs160/F04/lectures/lec1/lec1.pdf · HCI Challenges Ill-posed problems * You don’t get to start with a “clean” problem

8/31/2004 32

Personae

Q: Why the “unnecessary” detail?A: Narrative detail is generative* It helps you generate design ideas* helps you visualize the character,

and anticipate their needs and wantsbased on all your life experience.

* It helps avoid stereotypes andincorrect assumptions

* Avoids specifying users in terms of your product e.g “dislikes waiting for music downloads”

Page 32: CS 160 Introduction - University of California, Berkeleyjfc/cs160/F04/lectures/lec1/lec1.pdf · HCI Challenges Ill-posed problems * You don’t get to start with a “clean” problem

8/31/2004 33

Multiple Personae

With multiple characters, you can explicitly cover a range of user traits: age, education, wealth, culture.

Personnae describe the union of user traits, an abstract categoryof users is an intersection.

Several personae (e.g. 5-10) willallow you to summarize the scopeof the user community.

Page 33: CS 160 Introduction - University of California, Berkeleyjfc/cs160/F04/lectures/lec1/lec1.pdf · HCI Challenges Ill-posed problems * You don’t get to start with a “clean” problem

8/31/2004 34

What a Persona is not

A description of a real person * but it can be based on real people, just like a

story characterA description of common traits of a group of people

A stereotype

Page 34: CS 160 Introduction - University of California, Berkeleyjfc/cs160/F04/lectures/lec1/lec1.pdf · HCI Challenges Ill-posed problems * You don’t get to start with a “clean” problem

8/31/2004 35

Creating personas

Is hard to do – like creating a good story character

Exercise – pick someone you know, and try listing their values, likes, dislikes etc. then ask them as a reality check

Helps separate fact from assumption

Page 35: CS 160 Introduction - University of California, Berkeleyjfc/cs160/F04/lectures/lec1/lec1.pdf · HCI Challenges Ill-posed problems * You don’t get to start with a “clean” problem

8/31/2004 36

Task Analysis & Contextual Inquiry

Observe existing work practices (real users)Create examples and scenarios of actual useTry-out new ideas before building software

?

Page 36: CS 160 Introduction - University of California, Berkeleyjfc/cs160/F04/lectures/lec1/lec1.pdf · HCI Challenges Ill-posed problems * You don’t get to start with a “clean” problem

8/31/2004 37

Rapid Prototyping

Build a mock-up of designLow fidelity techniques* paper sketches* cut, copy, paste* video segments

Interactive prototyping tools* HTML, Visual Basic,

HyperCard, Director, etc.UI builders* Fusion, NeXT, Visual Cafe

Fantasy Basketball

Page 37: CS 160 Introduction - University of California, Berkeleyjfc/cs160/F04/lectures/lec1/lec1.pdf · HCI Challenges Ill-posed problems * You don’t get to start with a “clean” problem

8/31/2004 38

Evaluation

Test with real users (participants)Build modelsLow-cost techniques* expert evaluation* walkthroughs

Page 38: CS 160 Introduction - University of California, Berkeleyjfc/cs160/F04/lectures/lec1/lec1.pdf · HCI Challenges Ill-posed problems * You don’t get to start with a “clean” problem

8/31/2004 39

Programming

ToolkitsUI BuildersEvent modelsInput / Ouput modelsetc.

Page 39: CS 160 Introduction - University of California, Berkeleyjfc/cs160/F04/lectures/lec1/lec1.pdf · HCI Challenges Ill-posed problems * You don’t get to start with a “clean” problem

8/31/2004 40

Iteration

Design

Prototype

Evaluate

At every stage!

Page 40: CS 160 Introduction - University of California, Berkeleyjfc/cs160/F04/lectures/lec1/lec1.pdf · HCI Challenges Ill-posed problems * You don’t get to start with a “clean” problem

8/31/2004 41

Goals of the Course

Learn to design, prototype, & evaluate UIs* the tasks of prospective users* psychological issues that affect design* techniques for evaluating a user interface design* importance of iterative design for usability* technology used to prototype & implement UI code* how to work together on a team project* communicate ideas

+ key to your future success

Page 41: CS 160 Introduction - University of California, Berkeleyjfc/cs160/F04/lectures/lec1/lec1.pdf · HCI Challenges Ill-posed problems * You don’t get to start with a “clean” problem

8/31/2004 42

How CS160 Fits into CS Curriculum

Most courses for learning technology* compilers, operating systems, databases, etc.

CS160 concerned w/ design & evaluation* assume you can program/learn new languages* technology as a tool to evaluate via prototyping* skills will become very important upon graduation

+ complex systems, large teams* skills are relevant for other design courses

All systems have usability issues (unless no-one uses them), even if they are indirect

Page 42: CS 160 Introduction - University of California, Berkeleyjfc/cs160/F04/lectures/lec1/lec1.pdf · HCI Challenges Ill-posed problems * You don’t get to start with a “clean” problem

8/31/2004 43

Project Description

Each of you will propose a UI or app.* fixing something you don’t like or a new idea

Groups* 4-5 students to a group* work with students w/ different skills/interests* groups meet with teaching staff every two weeks

Cumulative* apply several HCI methods to a single interface

Page 43: CS 160 Introduction - University of California, Berkeleyjfc/cs160/F04/lectures/lec1/lec1.pdf · HCI Challenges Ill-posed problems * You don’t get to start with a “clean” problem

8/31/2004 44

Project Examples

Biosk - support for biology lab workThe environment:

Page 44: CS 160 Introduction - University of California, Berkeleyjfc/cs160/F04/lectures/lec1/lec1.pdf · HCI Challenges Ill-posed problems * You don’t get to start with a “clean” problem

8/31/2004 45

Project Examples

Biosk - the solution

Page 45: CS 160 Introduction - University of California, Berkeleyjfc/cs160/F04/lectures/lec1/lec1.pdf · HCI Challenges Ill-posed problems * You don’t get to start with a “clean” problem

8/31/2004 46

Project Examples

iCurator: Intelligentmuseum guide

Page 46: CS 160 Introduction - University of California, Berkeleyjfc/cs160/F04/lectures/lec1/lec1.pdf · HCI Challenges Ill-posed problems * You don’t get to start with a “clean” problem

8/31/2004 47

Project ExamplesiCurator: lo-fi and hi-fi prototypes

Page 47: CS 160 Introduction - University of California, Berkeleyjfc/cs160/F04/lectures/lec1/lec1.pdf · HCI Challenges Ill-posed problems * You don’t get to start with a “clean” problem

8/31/2004 48

Project ExamplesSLnotes: Live in-class note-taking

Page 48: CS 160 Introduction - University of California, Berkeleyjfc/cs160/F04/lectures/lec1/lec1.pdf · HCI Challenges Ill-posed problems * You don’t get to start with a “clean” problem

8/31/2004 49

Project Examples

PHAT: Personal Healthcare and Tracking

Page 49: CS 160 Introduction - University of California, Berkeleyjfc/cs160/F04/lectures/lec1/lec1.pdf · HCI Challenges Ill-posed problems * You don’t get to start with a “clean” problem

8/31/2004 50

Project Examples

SmartFridge

Page 50: CS 160 Introduction - University of California, Berkeleyjfc/cs160/F04/lectures/lec1/lec1.pdf · HCI Challenges Ill-posed problems * You don’t get to start with a “clean” problem

8/31/2004 51

Project ExamplesNewsalert: Context-awarenotification for smart phones

Based on Qualcomm’s BREWAPI

Related: Stock Alert and Context-awareness

Page 51: CS 160 Introduction - University of California, Berkeleyjfc/cs160/F04/lectures/lec1/lec1.pdf · HCI Challenges Ill-posed problems * You don’t get to start with a “clean” problem

8/31/2004 52

Project Suggestions

This semester we will focus on human learning, for its own sake and as a model of technology adoption and creative work.

Page 52: CS 160 Introduction - University of California, Berkeleyjfc/cs160/F04/lectures/lec1/lec1.pdf · HCI Challenges Ill-posed problems * You don’t get to start with a “clean” problem

8/31/2004 53

Project Suggestions

Learning/Tutoring systems:Educational gamesTutorial systemsCreative work portalMini-courseSmart HELP system (for an existing product)

Page 53: CS 160 Introduction - University of California, Berkeleyjfc/cs160/F04/lectures/lec1/lec1.pdf · HCI Challenges Ill-posed problems * You don’t get to start with a “clean” problem

8/31/2004 54

Summary

Projects – think about your individual project. Those will be due next week. No section tomorrow Next lecture on history of HCI:* Three readings are online