Revised September 26, 2011

CS 449: Human Computer Interaction

Watch a video introduction to this course on YouTube.


Human-Computer Interaction teaches the fundamental issues that underlie the creation and evaluation of usable and useful computational artifacts. Over the term, students will learn how to design novel computational artifacts that enable a well-defined user group to achieve specific goals more effectively than via current means. More specifically, students will learn and directly apply:

  • Rapid ethnography and contextual design techniques to identify a well-defined user group’s needs
  • Rapid, user-centered design techniques, including low-fidelity, high-iteration prototyping practices (e.g., paper-based prototyping and Wizard-of-Oz studies)
  • Evaluation methods for measuring how a design compares to existing methods of accomplishing a task.
Students will also be introduced to major threads of HCI research.


Related courses
Prerequisites: CS 240 241; Level at least 3B; Computer Science students only.
Successors: CS 349
Conflicts: SYDE 348
Calendar description
Hardware/software used: N/A.

Typical references:
Contextual Design, by Beyer and Holtzblatt
Interaction Design, by Preece, Rogers, and Sharp
Human-Computer Interaction, by Dix, Finley, Abowd and Beale
Designing the User Interface: Strategies for Effective Human-Computer Interaction, by Shneiderman and Plaisant

Required Preparation

The primary requirement for this course is experience in school, managing projects, and working. In particular, time management and communication skills (written, oral, and visual) are essential for success in this course. Thus, students with 3+ years of experience with courses at Waterloo (especially project-based courses), and experience with co-op positions, should fare well.

Learning Objectives

By the end of the course, students should have the ability to:

  • Conduct in-situ interviews and observations of end-users
  • Analyze qualitative data to produce models of users and their work practices
  • Use rapid prototyping practices to design novel computational artifacts, where the designs may be situated in traditional desktop computing contexts and/or off-the-desktop computing paradigms (e.g., mobile computing, wall-based displays, tabletop systems, etc.)
  • Evaluate their designs using expert evaluation techniques (e.g., cognitive walkthroughs), experimental methods, and/or discount evaluation methods (e.g., heuristic evaluation, Wizard-of-Oz evaluation)
  • Describe current trends in HCI research

Typical Syllabus

1. Introduction to, and history of, HCI
Hours: 3

  • Ability to identify the primary luminaries relevant to HCI, as well as their visions (e.g., Vannevar Bush and his Memex; Ivan Sutherland and the Sketchpad; Douglas Engelbart and his system for augmenting human intelligence)
  • Articulate the primary concerns of HCI practitioners: Understanding users and their needs within a sociocultural context; design; prototyping; and evaluation

2. Data gathering
Hours: 6

  • Describe the human rights and ethics issues in doing work with human subjects; know how to obtain informed consent; know when institutional approval is needed for human subjects research
  • Articulate the strengths and weaknesses of both quantitative and qualitative methods of describing humans and human activity
  • Ability to plan and conduct semi-structured interviews using common practices of qualitative researchers
  • Ability to plan and conduct in-situ observations

3. Data analysis
Hours: 6

  • Ability to convert data collected from field studies into one or more of Contextual Design’s five models (flow, sequence, artifact, cultural, physical)
  • Ability to develop and apply coding schemes to qualitative data
  • Ability to extract, and articulate, design requirements from collected data

4. Design and prototyping
Hours: 9

  • Ability to differentiate between interaction design, interface design, and interface element design
  • Ability to create both horizontal and vertical designs
  • Ability to create low-fidelity, interactive prototypes using techniques such as paper-prototyping, storyboarding, role-playing, and video prototyping
  • Ability to hold and participate in design critiques

5. Evaluation
Hours: 6

  • Describe the differences, relative merits of quantitative vs. qualitative, naturalistic vs. experimental evaluations
  • Ability to form and execute an evaluation plan, identifying specific measures and goals of the evaluation
  • Ability to apply discount usability evaluations to interface designs and prototypes, functioning applications, including Wizard-of-Oz prototyping and heuristic evaluation
  • Articulate elements of good experimental design

6. Topics in HCI research
Hours: 6

  • Ability to identify major movements in HCI research, and their motivations, philosophies, and goals
  • Articulate the current state of an area well enough to know what has been tried, what has been successful, what hasn’t, and why. For example: Speech interfaces, their limitations and successes