Important: Design Course Changes for Fall 2023

05-651: Interaction Design Studio 1 and 05-392/692: Interaction Design Overview are being retired and combined into one new course: 05-360/05-660: Interaction Design Fundamentals (12 units).

Any undergraduate student who would normally take 05-651 OR 05-392 will replace that course with 05-360. It will be offered both semesters beginning fall 2023.

(Note: students who have already successfully taken 05-651 OR 05-392 have already completed this requirement and will not need to take the new replacement course, 05-360.)



Human-Computer Interaction (HCI) is a fast growing field devoted to the design, implementation, and evaluation of interactive computer-based technology. Examples of HCI products include intelligent computer tutors, wearable computers, social networking sites, and internet-connected personal digital assistants (PDAs). Constructing an HCI product is a cyclic, iterative process that has at least three stages: Design, Implementation, and Evaluation.

The Design stage involves principles of design and human behavior, the Implementation stage principles of computer science, and the Evaluation stage empirical research methods common to several disciplines. There are thus four topical areas to cover in this major: Human Behavior, Design, Implementation, and Evaluation. In slightly more detail, the major involves the following sorts of knowledge and skill:


  • Eliciting from the client, formulating, and articulating functional specifications
  • Knowing how human factors and cognitive models should inform design
  • Knowing the principles of, and having experience with, communication design
  • Understanding how implementation constraints should inform design
  • Incorporating evaluation results into iterated designs

Implementation Programming Skills

  • Standard programming languages - e.g., C++, Java
  • Rapid prototyping skills
  • Computational literacy, i.e., knowledge sufficient for effective communication and decision making about:
    • interface construction tools and languages
    • multimedia authoring tools
    • data structures and algorithms
    • operating systems, platforms, etc.


  • Experimental design
  • Focus groups
  • Surveys
  • Usability testing (Cognitive walkthroughs, user models, heuristic evaluation, GOMS)
  • Statistical analysis

There are over 45 courses relevant to these areas that are now offered by eight different departments in four different colleges at Carnegie Mellon (School of Computer Science, Dietrich College of Humanities and Social Sciences, College of Fine Arts, and Tepper School of Business).


About the Additional Major

The Additional Major in Interdisciplinary Human-Computer Interaction (HCI) is available to current undergraduate students from any CMU college. Students maintain their primary major, and by adding an additional major in HCI, can explore multiple areas of study during their time at CMU. Applications to the additional major are processed once a year, in the spring semesters. Learn more about our Additional Major in Interdisciplinary HCI admissions process.


The following requirements are for students entering Fall 2023.

The Additional Major in Interdisciplinary Human-Computer Interaction (HCI) consists of 12 prerequisite and required courses.

Prerequisite Courses (4 courses)

These courses do not need to be taken before applying to the additional major program. However, please note the required order sequence for two courses, listed below.

  • Introductory statistics course, details below
  • Psychology, details below
  • A freshman-level programming course (details below) must be completed before enrolling in the HCI core course 05-430 or 05-380
  • 05-360: Interaction Design Fundamentals must be completed before enrolling in the HCI core course 05-361 Advanced Interaction Design


Psychology (Select one)    

  • 85-211    Cognitive Psychology    9 units
  • 85-241    Social Psychology    9
  • 85-213    Human Information Processing and Artificial Intelligence    9


Statistics (Select one)

  • 36-200    Reasoning with Data    9
  • 36-220    Engineering Statistics and Quality Control    9
  • 36-225-36-226    Introduction to Probability Theory - Introduction to Statistical Inference    18
  • 36-226    Introduction to Statistical Inference    9
  • 36-247    Statistics for Lab Sciences    9
  • 70-207    Probability and Statistics for Business Applications    9

Introduction to Programming (Select one)

  • 15-104    Introduction to Computing for Creative Practice    10
  • 15-110    Principles of Computing    10
  • 15-112    Fundamentals of Programming and Computer Science    12
  • 15-121    Introduction to Data Structures    10

HCI Core Courses (4 courses)

The HCI core courses include the following required courses: (Prerequisite courses and the electives are not core courses.)

  • 05-410: User-Centered Research & Evaluation (UCRE)  12
  • Advanced Design course (select one)
      05-361: Advanced Interaction Design   12
      or 05-291    Learning Media Design    12
      or 05-315    Persuasive Design    12
      or 05-317    Design of Artificial Intelligence Products    12
      or 05-418    Design Educational Games    12
      or 05-452    Service Design    12
      or 05-470    Digital Service Innovation    12
     *Some (but not all) special topics classes (05-499) might also count towards the advanced design class requirement. Please consult with an HCI undergraduate advisor.
  • Select one
      05-430: Programming Usable Interfaces (PUI) 
      or  05-380: Prototyping Algorithmic Experiences (PAX)
      or  05-431: Software Structures for User Interfaces (SSUI)
  • 05-571: Undergraduate Project in HCI
    This Capstone course should be taken during the student’s final spring semester.

Special Notes for Design Majors

Design majors do not need to take 05-360 Interaction Design for Human Computer Interaction as a prerequisite, since they learn similar material in other courses for their major.


Electives (4 courses)

HCI additional major students must take four HCI-related electives (9 units or more). Electives are intended to provide additional major students with advanced concepts and skills relevant to HCI or breadth of experience not available from their primary major. Given these goals, most electives will be 300-level courses or higher. Courses at the 100-level and 200-level in one's primary major will not count as electives, although the same course taken by a non-major may count (approval is still required).

Students can take electives in the HCII or courses relevant to HCI from many other departments on campus. All external electives are approved on a case-by-case basis.

All 05-xxx courses are pre-approved as HCI electives; however, core courses cannot double count as electives. See the HCII website for a list of current pre-approved undergraduate electives.


Students may double count up to two (2) of the required core and elective courses (prerequisite courses do not apply to the double-counting rule) with their primary major.

Accelerated Master's Program (AMHCI)

The HCII currently offers a three semester (12-month), 15 course Masters in HCI. Undergraduates currently enrolled in the HCI major may apply for the Accelerated Masters in HCI program in the fall semester of their senior year. If admitted, students finish the masters degree the following fall semester.

Admission to the Additional Major

Because space is limited in the major's required courses, enrollment in the HCI additional major is currently limited. The admissions period occurs in spring semesters. For more details, visit our Additional Major Admissions page.