CISC/SOFT-325/3.0 Human-Computer Interaction

Original Author: Nick Graham and Roel Vertegaal
Last Revised: March 07, 2007

Calendar Description

Developing usable software requires that human factors be considered throughout the design and development process. This course introduces a series of techniques for developing and evaluating usable software, and shows how these techniques can be integrated into a process for software development.

Prerequisites: CISC-124/3.0, CISC-235/3.0


This introductory course on Human Computer Interaction provides students an opportunity to explore the techniques necessary to design, build and evaluate effective user interfaces. Students examine the physical, psychological, and behavioural characteristics of the user, and then examine their impact on system performance. The course also presents a formal design process that places the user's needs at the forefront. Processes for brainstorming, early design, interface construction, and interface evaluation are presented.

Students will be expected to participate in projects in which they practice design and evaluation of user interfaces.

This course is a prerequisite to CISC/SOFT-423/3.0 (Software Requirements) and a co-requisite to CISC/SOFT-425/3.0 (Advanced User Interfaces).

This course is required in the following programs: CSCI, SODE, and MAJ.


Task Analysis

  • Memory and Human error
  • Visual Perception
  • Introduction to task analysis
  • Hierarchical task analysis
  • Ethnographical methods

Usability and Design Process

  • Interaction Paradigms
  • Usability Principles
  • User-Centered Design Process

User Models

  • From Task to Tool
  • User Conceptual Models in Design

Early Design

  • User Action Notation
  • Design Techniques
  • Visual Design Models

Designing for Input

  • Fitts's Law
  • Evaluating Input Devices

Early Evaluation

  • Evaluating Design Models
  • Evaluating Prototypes

Rapid Prototyping

  • Passive Visual Prototyping
  • Functional Prototyping

Visual Design

  • Characteristics of good representations
  • Tufte's guidelines
  • Visual variables
  • Systems

Empirical Evaluation

  • Designing your experiment
  • Evaluating your results
  • Subjective measurements

Possible Texts

  • Dix, Finlay, Abowd and Beale: Human-Computer Interaction (3rd Edition), Prentice Hall (2004).

  • Shneiderman and Plaisant: Designing the User Interface, Strategies for Effective Human-Computer Interaction (4th Edition), Addison-Wesley (2005).

  • Carroll: HCI Models, Theories, and Frameworks : Toward a Multidisciplinary Science, Morgan Kaufmann (2003).