CS 160: User Interface Design, Prototyping, and Evaluation

Updated: December 21, 2007, jt

User Interface Design, Prototyping, and Evaluation
CS 160 - Fall 2007

Lecture: Tues & Thurs 10:30am-12:00, 405 Soda

URL: http://inst.eecs.berkeley.edu/~cs160/

Image:prototype2.png Image:facebook.gif

CS 160 is an introduction to Human Computer Interaction (HCI). You will learn to prototype, evaluate, and design a user interface. You will be expected to work in a team of four students in this project-based course. The project topic developed by the team in the general area of social networking applications that can be delivered on the facebook platform. Your final project should be tailored to your users’ needs based on interviews with them.

In contrast to most of the other CS classes at Berkeley, CS160 does not focus on particular algorithmic techniques or computer technologies. Instead, you will make use of technology to develop your applications, and you will acquire some expertise in the development environment you choose. The focus of the course is on developing a broad set of skills needed for user-centered design. These skills include ideation, needs assessment, communication, rapid prototyping, implementation, and evaluation.

Project Theme: The projects for this semester will be built upon the recently released facebook platform. The projects should take advantage of the social networking opportunities that being deployed on facebook offers. The challenge will be to create an application that is useful and fun enough to attract usage (and thus collect information) from the facebook community


  • Class Project List
  • Schedule
  • Assignments
  • Information
  • Requirements
  • Grading
  • Credits


Aug 28: Introduction: Design Process (slides)
In-class Activities: Course petition
Assignments: sign up for a facebook account if you haven't done so already

Aug 30: Design Process: Needs -- Need-finding (slides)
Readings before class: In Donald Norman's The Design of Everyday Things, Preface to 2002 edition & Chapter 1; Commentary: Human error and the design of computer systems
Handouts: Rapid Vis by Hanks & Belliston, pages 1-25 (handout photocopied from out of print edition)
Assignments: Idea Log; emphasis on number of ideas (due Sept. 4)

Sep 4: Design Process: Need-finding continued and Design -- Ideating (slides)
Assignments due in class: Idea Log
In-class Activities: Brainstorming activity in groups
Assignments: Map of Berkeley (due Sept. 11)

Sep 7 Discussion Section: Perspective drawing

Sep 6: Group Project Introduction -- Social Networking and Facebook (John's slides )
Facebook Guest Lecture: Dave Fetterman, Senior Engineer, founder of Facebook Platform (Slides)
Readings before class: Millen, Feinberg, & Kerr, "Dogear: Social Bookmarking in the Enterprise" ; Kathy J. Lee, "What Goes Around Comes Around: An analysis of del.icio.us as social space"
Assignments: 2 minute summary "commercial" for project idea (due in discussion section, Sept. 12)
Review of a facebook application including two user observations (due Sept. 18)

Sep 11:Design Process: Design -- Representing (Slides)
Readings before class: Task-centered user interface design, Chapter 1
Assignments due in class: Map of Berkeley
Assignments: Visually illustrate 3 ideas from the idea log (due Sept. 18)
Form project teams (by Sept. 13). Submit either a group that you want to work with, or a list of topics and we will help match you to a group.

Sep. 12 Discussion section: Each person presents an idea from idea list in 2-minutes Zip of all slides

Sep 13: Design Principles (Slides)
Readings before class: In Donald Norman's The Design of Everyday Things, Chapter 2; First Principles of Interaction Design
Assignments due in class: Project team group or topics to help form a group
Assignment: Project topic now due Sept. 18, Contextual Inquiry on project topic (pick appropriate method) (due Sept. 27)
See examples of prior student work on a contextual inquiry assignment>

Sep 18: Conceptual models and metaphors (Slides)
Assignment due in class: Visually illustrated 3 ideas. Writeup of a review of a facebook application including two user observations, (added)Group project topic.
Readings before class: In Donald Norman's The Design of Everyday Things, Chapter 3

Sep. 19 Discussion section: Intro to facebook platform(Slides)

Sep 20: Human Information Processing (Slides)
Readings before class: GOMS; KLM; Fitts's Law; GOMS by Lorin Hochstein
Handouts: Steve Krug "Don't make me think"

Sep 25: Interaction Design (Slides)
Readings before class: The Case Against User Interface Consistency; In Donald Norman's The Design of Everyday Things, Chapter 6; Steve Krug "Don't make me think" (handout)
Handouts: Prototyping for Tiny Fingers by Marc Rettig

Sep. 26 Discussion section: Working through examples of Fitts' Law, GOMS analysis (Slides)

Sep 27: Design Process: Implement -- Low Fidelity Prototyping (Slides)
Assignments due in class: Contextual Inquiry on project idea
Readings before class: Prototyping for Tiny Fingers by Marc Rettig; In Donald Norman's The Design of Everyday Things, Chapter 7
Handouts: Understanding your users by Kathy Baxter and Courage (Join CS160-fall07 Google Group to get access to this reading)
Assignments: Project Proposal due Oct 4th

Revisions to Remaining Schedule

We’ve made some adjustments to the remaining schedule below from the plan in the original syllabus. In summary:
  • The Poster Session is now part of the Project Demo session (now on Nov. 13)
  • Both the Project Demo session (now Nov. 13) and Final Presentations (now Dec. 4 & 6) have been pushed back a week to allow for more time to work on the group project
  • Moved the midterm review up to the week before the midterm
  • Some lectures and discussion section topics had to be moved to accommodate the changes, and some more details have been added to some of the assignments.

Oct 2: Design Process: Evaluate -- Qualititative Methods (Slides)
Readings before class: Discussion of guidelines for user observation; Understanding your users by Kathy Baxter and Courage; Heuristic Evaluation by Jacob Nielsen
Handouts: Conducting the Test by Rubin(Join CS160-fall07 Google Group to get access to this reading)
In-class Activities: Analyzing each others' Map of Berkeley

Oct. 3 Discussion Section: Facebook platform API workshop

Oct 4: Design Process: Evaluate -- Quantitative Methods (Slides)
Assignment due in class: Project proposal
Readings before class: Conducting the Test by Rubin; Lampe et al., "A face(book) in the crowd: social Searching vs. social browsing"; Salvucci et al., "iPod distraction: effects of portable music-player use on driver performance"
Assignments: Design an interface storyboard for project and test it with someone (Due Oct. 11)
Update initialize facebook application assignment now due Monday Oct 22nd

Oct 9: Design Process: Implement -- Devices (Tom's slides and John's slides)
Readings before class: TBD

Oct. 10 Discussion Section: Statistical analysis

Oct 11: Midterm Review (Slides)
Assignments due in class: Interface storyboard for project plus initialized facebook application

Oct 16: Design Process: Implement -- Coding (Jeff's Slides) & (Christine's Slides)
Readings before class: The Model-View-Controller Design Pattern

Oct. 17 Discussion Section: Interactive midterm review

Oct 18: Midterm in Soda 405 and Soda 320.
Closed book, closed notes, no electronic devices
Mid Term should take you only 60 minutes, but you have 80 minutes:
Start 10:40 am
Finish 12:00 noon, pens down.
Samples of prior years' midterms

Oct 22: Assignment Due @5pm: initialize facebook application assignment

Oct 23: Visual Information Design : Theory (Slides)
Readings before class: Animation: From Cartoons to the User Interface Assignments: Completed Facebook Application (Checkpoint show and tell due in Discussion Section, Oct. 31, In-class demo and poster session due Nov. 13)
Handouts: The 1984 Olympic message system by Gould (available online in the google group)

Oct. 24 Discussion Section: Working together in groups

Oct 25: How to present information (Slides)
Readings before class: Tufte papers (Google Group)

Oct 30: Guest Lecture, David Nguyen, Computer-Mediated Communication (Slides)
plus a design example from John's research (Slides)

Oct. 31 Discussion Section: Quantatative Analysis Methods

Nov 1:Graphic Design & Aesthetics (Slides)
Readings before class: Tufte papers (Google Group)

Nov 6: Facebook Causes Application
Guest Lecture
Sean Parker: Chairman of Project Agape, Managing Partner at The Founders Fund, Co-founder of Napster, Plaxo, and Facebook  
Joe Green: CEO & co-founder of Project Agape, founder and former CEO of essembly.com  
Chris Chan: Facebook Causes Application Product Manager, former Designer and Product Manager at essembly.com (Slides)

Nov 7 Discussion Section: Project Checkpoint show and tell
Assignments due in section: Demonstrate current progress of project implementation

Nov 8: Usability Study Design (Slides)
Readings before class: The 1984 Olympic message system by Gould; Additional reading TBD
Assignments: Usability study plan due Nov. 15th. Your raw data is due Nov. 27.
Sample consent form

Nov 13: Interactive Prototype Demo and Poster Session, Wozniak Lounge
Assignments due in class: Working prototype and poster session
In-class Activities: Divide class in half, students will demo prototype to each other and teaching staff for grading

Nov 14 Discussion Section: Usability study workshop

Nov 15: Guest lecture: Real User Concerns, Andrea Knight, User Experience Research at Google
Readings before class: When two methods are better than one: combining user study with cognitive modeling also available on the Google Group
Assignments due in Class: Usability Study Plan

Nov 20: Presenting Your Work (John's slides and Christine's slides))
Readings before class: Are we sending the right message?
Assignments: Final presentation and report, including what learned from user study (due week of Dec. 2)

Nov 22: HOLIDAY, Thanksgiving No class

Nov 27: Guest lecture: Participatory Urbanism: Empowering Everyday Civic Engagement and Promoting Wonderment, Eric Paulos, Intel Research Berkeley (Slides)
Assignments due in class: Usability study raw data collected

Nov 29: Guest Lecture: Cool things engineers and designers should how about humans, Maria Stone, Visiting Professor at UC Berkeley (Slides)

Dec 4: Final Project Presentations , Wozniak Lounge
Assignments: Final Project (due today for students presenting Dec 6)

Dec 6: Final Project Presentations , Wozniak Lounge (Slides)
Assignments: Final Project (due today for students presenting Dec 4)


Teaching team:

Researchers from IBM Almaden Research Center:
Lead Lecturers: John C. Tang & Christine Robson
Supporting Lecturers: Jeff Nichols

Teaching Assistants:

David Sun
Bryan Tsao

Email (for all class related issues): cs160(at)imail.eecs.berkeley.edu


Office Hours:

Textbook: We will be using Don Norman's The Design of Everyday Things as a textbook for this class. The textbook should be available at the campus bookstore as well as other general sources for books. There will be readings assigned for each lecture. The readings will be available online or handed out in class.


CS160 is an upper division course, and one of few where you will work extensively on one significant programming project. To participate fully in this course, you are required to have taken CS61B. We will assume that you are familiar with either Java or C++ and are comfortable coding a large-scale project.

You will be expected to actively participate in lectures, complete readings ahead of time, and, most importantly, participate fully in your group project. The teaching staff will promptly return graded homework to you, and will be available to provide feedback and help with problems.


Late Policy: Group assignments may not be turned in late. Individual assignments will lose 20% per 24 hours they are late.

Note: This is largely a design class. Unlike most other CS classes there is not always a single "correct" design soution. Usually there are many possible designs with different advantages and disadvantages. In this class you will learn to both design new interfaces and evalaute the pros and cons of the interfaces you design. As you complete the assignments for this class you should try to point out both the pros and the cons of the interfaces and applications you design.

Design is typically evaluated in a qualitative manner. As a result a significant portion of the grading in this class will be qualitative, including assessments of the end user experience of the system and the quality of your designs, evaluations, and prototypes.


This lectures, format and syllabus of this class are based on HCI classes taught by Maneesh Agrawal, Scott Klemmer, Jeff Pierce, and J.O. Wobbrock. These authors have kindly provided access to their lecture slides and our own slides borrow from their earlier work.