Introduction to Usability Engineering CS 352 Winter 2009

advertisement

Introduction to Usability Engineering

CS 352

Winter 2009

Logistics: CS352

Email: cjensen (at) eecs

Office hours:

• MW 11-1pm KEC 3061

• By Appointment

TA: Eunyoung Chung (Carrie)

• Email: chung (at) eecs

• Office Hours: ?

Course Description

This class will give you hands-on experience with usability evaluation and user-centered design. In this class you will not learn how to implement user interfaces, but rather how to design these based on the needs of users, which you will determine, and learn how to evaluate your designs rigorously. This is a class for those who wish to know more about usability, human-computer interaction, the psychological aspects of computing, evaluation, and/or experimentation.

The bulk of your grade will be based on a group project, where you will propose, prototype, and evaluate your own novel IT solutions. These projects will be presented to the whole school at the end of the term.

Course Objectives

Learn how to do requirements gathering and interpretation

Learn how to do prototyping and iterative design

Learn how to apply usability testing methods, and legal and ethical requirements

Learn about the evolution of user interfaces

The goal of this class is to teach, in a hands-on manner, how to design a computer product properly.

Learning Objectives

At the completion of the course, students will be able to

1. Describe the human centered design process and usability engineering process and their roles in system design and development.

2. Discuss usability design guidelines, their foundations, assumptions, advantages, and weaknesses.

3. Describe basics of human subjects research.

4. Complete a basic human subjects research certification form.

5. Design a user interface based on analysis of human needs and prepare a prototype system.

6. Assess user interfaces using different usability engineering techniques.

7. Make an oral presentation that justifies design decisions.

Course Assignments and

Grading

This class is meant to be a hand-on course. This means that you will be required to work on group projects (3-4 person groups) and classwork (in addition to doing readings) outside of class time. This class will also be very interactive. Participation will count towards your final grade, and I want a healthy discussion in each class session.

-

-

-

-

-

The grading breakdown will be as follows:

Participation 10%

Assignments 15%

Midterm 1

Midterm 2

Project

• Proposal

• Prototype 25%

• Evaluation Plan

• Evaluation

• Presentation

20%

25%

20%

10%

20%

20%

35%

Assumptions

Prerequisites: CS 161 or CS 295

You should be very familiar with the following concepts and practices:

• Graphical User Interfaces (GUIs)

• Basics of Programming, some VB or HTML

• Basics of some graphics manipulation package

This is a 300-level class, I expect you to be responsible and keep up with the reading and complete your assigned work on time. Lectures will not cover all reading, I will focus on explaining material which is particularly difficult, or which is not well-explained in the book. You are still responsible for all materials for exams and your work.

To the meat of the matter…

What is Usability Engineering?

Usability Engineering is the process of

Methodically designing systems which are

– Useful

– Usable

Which includes

– Determining what is useful

– Determining what is usable

– Evaluating these two factors empirically

Goals of Usability Engineering

Nielsen

– Increase learnability

– Increase efficiency

– Increase memorability

– Decrease errors

– Increase satisfaction

Preece

– Utility ?

– Effectiveness ?

Why bother with usability engineering?

• Computers affect most people

– 89% of US has access to computers, 65% are online

– Have to deal with businesses & government agencies

• Computers are everywhere!!! (help!)

– Not just white boxes

• Success often depends on ease of use, not power or features

“Learning to use a computer system is like learning to use a parachute – if a person fails on the first try, odds are he won’t try again.” – anonymous

Usability as a Process

Nielsen

• Identify who the users are

• Understand their activities

• Understand the context in which these take place

• Applying design principles and design techniques, like:

– Scenarios

– Think-aloud protocols

– Heuristic Evaluation

Preece

• Taking into account what people are good and bad at

• Considering what might help people with the way they currently do things

• Thinking through what might provide quality user experiences

• Listening to what people want and getting them involved in the process

• Using “tried and tested” userbased techniques during design process

Usability by Other Names in Other Fields

• Usability Engineering

• Human-computer interaction

• Computer-human interaction

• Human-machine interaction

• Ergonomics

• Interaction Design

• User-interface design

• User-centered design

• Informatics/information systems/library science

• Psychology/cognitive science

• Ergonomics

• Industrial engineering/design

• Architecture

• Art

• Social sciences

Historical Perspective

• Why?

– Get a sense of where we are

• Things haven’t always been this way, wont always stay this way, computers and interaction evolving

– Understand lessons from history

• Understand why we are here

• Avoid repeating same mistakes

– See that the history of computing is tied to the history of computer usability

History of computer interaction

Batch

Experts

WIMP

(Windows)

Command

Line

Professionals

Educated

1940s – 1950s 1960s – 1970s 1980s - Present

?

?

Eniac (1943) - Gen 0

A general view of the ENIAC, the world's first all electronic numerical integrator and computer.

From IBM Archives.

Mark I (1944)

The Mark I paper tape readers.

From Harvard University Cruft Photo Laboratory.

Stretch (1961)

A close-up of the Stretch technical control panel.

From IBM Archives.

Debugging

Grace Hopper 1945

(Photo courtesy of the United States Naval Historical Center)

Batch Processing – Gen 1

• Computer performed one task at a time

• No “interaction” once computation started

• Switches, wires, punch cards and tapes for I/O

• Very limited, highly trained group of operators

Command Line (Mid 1960s) –

Gen 2

• Computers hit “big business”

– More varied tasks; text processing, editing, email etc

– Need for interactivity

– Used by secretaries, salesmen, accountants, CS students etc

– Reduced training

Need for

HCI

The Ubiquitous Glass Teletype

• 24 x 80 characters

• Up to 19,200 bps (Wow was big stuff!)

Source: http://www.columbia.edu/acis/history/vt100.html

Generation 4 – A computer in every home

Pushing beyond Computing in Business

Need to do more with less

– Need to rethink usability

Little or no training for users

More diverse populations

More diverse uses

WIMP / GUI

W indows, I cons, M enus, P ointers

G raphical U ser I nterface

WIMP interface emulates existing work practices

Direct manipulation

Desktop metaphor

Why was this such an innovation?

What were the innovations making this possible?

Ivan Sutherland

• SketchPad - 1963 PhD thesis at MIT

– Hierarchy - pictures & subpictures

– Master picture with instances (ie, OOP)

– Constraints

– Icons

– Copying

– Light pen input device

– Recursive operations

Douglas Engelbart

• The Problem (early ‘50s)

“...The world is getting more complex, and problems are getting more urgent. These must be dealt with collectively. However, human abilities to deal collectively with complex / urgent problems are not increasing as fast as these problems.

If you could do something to improve human capability to deal with these problems, then you'd really contribute something basic.”

...Doug Engelbart

The First Mouse (1964)

Xerox Star - 1981

• First commercial PC designed for

“business professionals”

– desktop metaphor, pointing, WYSIWYG, high degree of consistency and simplicity

• First system engineered for usability

– Paper prototyping and analysis

– Usability testing and iterative refinement

Xerox Star Desktop

Lessons form Xerox Star?

• Usability matters, usability sells

– Star flopped, but Mac succeeded

• Cost $15,000

• Lacked spreadsheet, standard business software

• Usability can be “engineered”

– Birth of HCI as a design discipline

Evolution from Xerox Star?

1981

Evolution from Xerox Star?

1981

1985

Windows 1.0

Mac OS 1.0

Evolution from Xerox Star?

1981

1985

1987

Mac OS 1.0

Mac OS 5.0

Windows 1.0

Windows 2.0

Evolution from Xerox Star?

1981

1985

1987

1992

Windows 1.0

Mac OS 1.0

Mac OS 5.0

Mac OS 7

Windows 3.0

Evolution from Xerox Star?

1981

1985

1987

1992

1998

Windows 1.0

Mac OS 1.0

Mac OS 5.0

Mac OS 7

Windows 3.0

Evolution from Xerox Star?

1981

1985

1987

1992

1998

2007

Windows 1.0

Mac OS 1.0

Mac OS 5.0

Windows 3.0

Mac OS 7

Evolution from Xerox Star?

1981

1985

1987

1992

1998

2007

Windows 1.0

Mac OS 1.0

Mac OS 5.0

Windows 3.0

Mac OS 7

Where do we go next?

?

WIMP

(Windows)

Command

Line

Batch

1940s – 1950s 1960s – 1970s 1980s - Present

Time

?

Examples of new paradigms

• Mobile computing

• Wearable computing

• Tangible computing

• Ubiquitous computing

– and many more….

Download