ACM SIGCHI Curricula for Human-Computer Interaction
by Hewett, Baecker, Card, Carey, Gasen, Mantei, Perlman, Strong and Verplank
Copyright © 1992,1996 ACM SIGCHI
skip navigation Contents | Preface | Introduction | Definition | Courses | Programs | Issues | References | Resources

Last updated: 2008-04-11   Accesses since 1997-04-17: 98,772

APPENDIX C: A Computer Science Undergraduate Specialization in Human-Computer Interaction (User-centered System and Interface Design) {p. 101}

Ronald Baecker
Department of Computer Science
University of Toronto

Table of Contents


This appendix describes a new undergraduate Computer Science specialist program begun by the University of Toronto Computer Science Department in September 1991. This program in human-computer interaction and user-centered system and interface design illustrates how such a program can be embedded within a Computer Science department framework. The special conditions at the University of Toronto underlying this particular curriculum design are first discussed. There follows a complete description of the program, including the goals of the curriculum and a list of course offerings and requirements for an undergraduate degree in the form of a prototypical 4 year schedule. To understand the context in which this curriculum has been developed, it is helpful to read the text of the preceding report. Copies are available from the author of this document. The intellectual foundations of this curriculum have been described in Baecker, Ronald, A Vision of Education in User-centered System and Interface Design, SIGCHI Bulletin, 20(3), 10-13.

C.1: Background and Constraints {p. 101}

  1. The University of Toronto undergraduate degree in Computer Science is a broad program in both theoretical and applied computer science, but, compared to many other programs, it places particular emphasis on the theory of computation and on numerical analysis. On the other hand, there are precedents for modifying the program in substantial ways, and the department already supports the following Specialist Programs:
  2. All courses in computer science are half courses (1 term long). These are denoted by an H.
  3. Most courses in psychology and sociology are full course (1 year, or 2 terms long). These are denoted by a Y.
  4. Only 2 courses in "media and design" are offered at the University of Toronto.

C.2: Rationale {p. 102}

Proposals for curricula cannot arise in a vacuum. They must reflect our conceptions of the nature of a field or discipline. They must be grounded in our beliefs about the kinds of graduates we are hoping to produce.

The author of this proposal became involved 2 and 1/2 years ago in the work of an ACM SIGCHI Committee on Curriculum Development for the discipline of human-computer interaction. He began his work by thinking about the nature of the field. The result was the a recognition of the incredible breadth of focus that it implies. How can we do justice to it within a single course or single curriculum? How can we fit the diversity within the confines of an existing discipline such as computer science or psychology? The answers to these questions appear on the following pages.

The field of human-computer interaction is not only a collection of topics spanning interaction techniques to design methodologies, cognitive models to experimental design, organizational issues to physical environments. It is fundamentally a tension between analysis and synthesis, between observation and design, between the emerging science of human-computer interaction and the poorly-understood craft of user-centered system design.

We must seek, therefore, to educate a new generation of system designers, builders, and implementers who are truly sensitive to those who will ultimately use their software. We need students who are sensitive observers and incisive analysts; good conceptual thinkers and sophisticated theory builders; creative, imaginative, and elegant designers and skilled, adept implementers. They should be familiar with a wide variety of relevant disciplines, for example, software engineering and user interface management systems, the psychology of perception and cognitive science, graphic design and industrial design, organization theory and experimental design. They must be able to communicate with users, managers, programmers, psychologists, and graphic designers. They must have a deep commitment to and empathy with the problems of the computer user.

To do this, we need a new kind of curriculum. Instead of just getting experience on toy problems with clear specifications, students need experience designing, building, and evaluating systems that have the fuzzy kinds of specifications that real systems have. In addition to thinking about proving programs correct, students need to understand how to make systems usable, to understand the pervasive problems real users have with most computer systems, and to understand the complexities of the organizational environments in which systems exist and often fail. Instead of learning about theoretical statistics, students need to learn about applied statistics, about the philosophical underpinnings for designing experiments and extracting human behaviour data, and about the kinds of observational techniques that will help them evaluate and improve the systems they design and build. In addition to the techniques of analysis that are stressed by our current program, students need more experience in the disciplines of synthesis, design, and creation of artifacts of many kinds. Finally, in addition to the skills of communication in mathematics and algorithms, our students need practice and improvement in the art of communication in written and spoken English. As professors, we feel an obligation to do something about this. As people who have worked in industry, we see the need.

An HCI specialization within computer science must contain "most" of the contents of a good computer science degree. It must not be viewed as watered-down computer science. It must be an academic degree with a great deal of depth and rigour. We want our graduates to be able to go on to graduate work in human-computer interaction or in other areas of computer science. They should also be well prepared for careers in software development, interface design, or human factors either in software development companies or in corporate environments concerned with the planning, management, implementation, or use of software solutions.

We therefore organize the proposed curriculum in terms of four groups of courses:

Course Schedule

Year One
...             A first year calculus course (MAT135Y/139Y/149Y/150Y)
...             A first year physical science (PHY130Y/138Y/150Y)

CSC 148F/158S   Introduction to computing / Computer applications
or
CSC 150F/160S   Introductory computer science / Applications of computer science

SOC 101Y        Introduction to sociology
or
yyyH/zzzH       Elective stressing writing in English
                (ENG103Y, Effective Writing, recommended)

Year Two

MAT 229H        Linear algebra
CSC 238H        Discrete mathematics for computer science

CSC 228H        File structures and data management
CSC 258H        Computer organization

PSY 100Y        Introductory psychology

SOC 200Y        Introduction to social research

xxxY or         Elective
yyyH/zzzH

Year Three

CSC 300F        Computers and society
CSC 318S        Introduction to user interface design and interactive graphics
CSC 324F        Principles of programming languages
CSC 340S        Information systems analysis and design

CSC 364H        Effective and efficient computing
or CSC 378H     Information structures

PSY 201H/202H   Research design and analysis in psychology I and II
or STA 222Y     Statistics: A general survey
or SOC 300Y     Quantitative analysis

PSY 270H        Introduction to cognitive psychology
or JUP 250Y     Introduction to cognitive science

qqqH            Elective

Year Four

CSC 428F        Human-computer interaction

CSC 364H        Effective and efficient computing
or CSC 378H     Information structures

Two of the following:

CSC 408H        Software engineering
or CSC 418H     Computer graphics
or CSC 448H     Formal languages and automata
or CSC 454S     The business of software
or CSC 468F     Operating systems
or CSC 484S     Applied artificial intelligence
or CSC 485F     Introduction to computational linguistics
or CSC 494H     Computer science project

WDW 260Y        Organizational behaviour

SMC 415Y        Seminar in film and videotape production
or ARC 381Y     Visual studies: towards an understanding of form

xxxY or         Elective
yyyH/zzzH

Some Recommended Electives

Any of the above courses not already taken
ANT 100Y        Introduction to anthropology
IND 205F        Human factors in workplace design
IND 323S        Analysis of man-machine systems
IND 325S        Information display systems
IND 424F        Design of human-machine systems
IND 427S        Human factors: Case studies
NEW 205H        Information skills
PSY 220H        Introduction to social psychology
PSY 280Y        Perception
PSY 370H        Thinking and reasoning
PSY 389Y        Laboratory in perception
SOC 207Y        Sociology of work and occupations
SOC 317Y        Industrial sociology
SOC 375Y        Sociology of organizations
SOC 387Y        Qualitative analysis

C.3: Procedural Matters {p. 107}

The University of Toronto Department of Computer Science Undergraduate Curriculum Committee approved this program in principle in April of 1990 and in its final form in October of 1990. The Faculty of Arts and Science approved it in November of 1990. This program incorporates suggestions made by other members of the university community, especially in psychology, sociology, industrial engineering and media, and by students and individuals from industry. Everyone who has commented has been enthusiastic. The program began in September of 1991.

Students who started in the fall of 1990 can join the program after year one by taking both PSY 100Y and SOC 101Y in year two. Students who started in September of 1989 can join the program after year two by taking SOC 101Y in the summer of 1991, by taking PSY 100Y in 1991-92, by taking SOC 200Y in 1991-92, and by taking CSC 364H or CSC 378H and PSY 270H or JUP 250Y in 1992-93, potentially allowing the first students to graduate in 1993.

skip navigation Contents | Preface | Introduction | Definition | Courses | Programs | Issues | References | Resources | Top