Carnegie Mellon University's Master of Human-Computer Interaction degree is a rigorous, interdisciplinary program. The MHCI curriculum is strategically designed to teach core user-centered research, interaction design, user experience and interface programming skills while allowing students to customize their own HCI path with unique electives from across the university.
Students enrolled in the MHCI program are required to take seven core classes and five electives to graduate. The MHCI program does not have a unit requirement for graduation. Students must complete the required courses and number of electives to be eligible to complete their degree.
Prospective students can view sample study plans for both full-time and part-time student schedules. Part-time studies are only available for domestic students on the Pittsburgh campus for our Master of Human-Computer Interaction program. At this time, there are no online degrees or classes available for any programs in the Human-Computer Interaction Institute.
Seven Core HCI Courses
05-600 HCI Pro-Seminar: Communications in HCI
This course has three objectives to strengthen HCI communication skills for work in industry: to expose students to the world of HCI through research and industry expert talks; to give students the opportunity to sharpen their English writing skills; And to introduce students to conflict management, teamwork and active listening skills in order to give them tools to collaborate more efficiently on multi-disciplinary teams.
This course provides an overview and introduction to the field of human-computer interaction. It introduces students to tools, techniques and sources of information about HCI and provides a systematic approach to design. The course increases awareness of good and bad design through observation of existing technology, and teaches the basic skills of task analysis, and analytic and empirical evaluation methods. Graduate students will also participate in a laboratory where they will practice HCI techniques in an independent, self-defined project.
This studio course introduces students to design thinking and the basic practices of interaction design. It follows a human-centered design process that includes research, concept generation, prototyping, and refinement. Students must work effectively as individuals and in small teams to design mobile information systems and other interactive experiences. Assignments approach design on three levels: specific user interactions, contexts of use, and larger systems. Students will become familiar with design methodologies such as sketching, storyboarding, wire framing, prototyping, etc. No coding is required. This course serves as a prerequisite for Interaction Design Studio 2 (05-650).
This course follows Interaction Design Studio 1 (05-651). Students are expected to apply what they have learned about design thinking and methodologies as a starting point for all assignments. Students will work in teams to perform guerrilla research, synthesize data, and consider the needs of multiple stakeholders in their design of mobile services and other intelligent systems. Design concepts go beyond user inter faces to include sensors, controls, and ubiquitous computing. Emphasis is placed on the quality of the students’ ideas and their ability to give form to their design concepts. By completing and presenting their work, students will gain skills related to professional UX design practice.
This course combines lectures and an intensive programming lab and design studio. It is for those who want to express their interactive ideas in working prototypes. It will cover the importance of human-computer interaction/interface design, iterative design, input/output techniques, how to design and evaluate interfaces, and research topics that will impact user interfaces in the future.
- OR -
SSUI is a combined lectured and lab course. This course considers the basic and detailed concepts that go into building software to implement user interfaces. It considers factors of input, output, application interface, and related infrastructure as well as the typical patterns used to implement them. It will also consider how these components are organized and managed within a well-structured object oriented system. After considering these fundamental concepts in the first portion of the class, the later part will consider advanced topics related to emerging future concepts in user interface design. The course includes an intensive programming lab, either on the topic of mobile or web interfaces.
Should be proficient in programming, and comfortable with abstract concepts relating to program structure, algorithm analysis, and data abstraction equivalent to an undergraduate degree in computer science.
*The student and the program directors will jointly determine the choice of 05-630 or 05-631 and accompanying lab level, based upon the student’s previous programming experience.
05-671 HCI Project I (15-unit spring course) and 05-672 HCI Project II (48-unit summer course)
Experiential learning is key component of the MHCI program. Through a substantial team project, students apply classroom knowledge in analysis and evaluation, implementation and design, and develop skills working in multidisciplinary teams. The project begins in the spring semester before graduation and continues full-time through the final summer semester; it must be taken in consecutive spring and summer semesters. The course number for spring is 05-671 and for summer 05-672.
Application Deadline: January 15, 2019
Application Opening Soon
We will begin accepting online applications for the 2019 cohort of the MHCI program on October 1, 2018.
MHCI Policies and Procedures
Our Student Outcomes
Since its founding, our program has graduated more than 700 students. The in-depth interdisciplinary experiences here at Carnegie Mellon make our students the glue between design, development and management in many companies. The MHCI student is often hired to play one role, but quickly becomes an indispensable team player — in many cases, a team leader for research, design and strategy in software, technical or consulting engagements.