HCI Undergraduate Programs
We offer several unique opportunities for Carnegie Mellon undergraduates to study HCI
Our Programs in Depth
The Human-Computer Interaction Institute offers a variety of HCI programs for Carnegie Mellon University undergraduates to choose from.
Visit the following pages for program information, curriculum details and application information for each:
- Bachelor of Science in Human-Computer Interaction - this is a primary major offered by the School of Computer Science
- Additional Major in Interdisciplinary Human-Computer Interaction - CMU students of all majors can apply
- Minor in Interdisciplinary Human-Computer Interaction - CMU students of all majors can apply
- Accelerated Masters in HCI Program - available to undergraduate HCI majors only
- HCI Concentration - available to School of Computer Science students only
About The Field of HCI
The field of Human-Computer Interaction (HCI) is devoted to the design, implementation, and evaluation of interactive computer-based services and applications. Examples of HCI products include intelligent computer tutors and educational games, online communities, smartphone apps and interactive robots, just to name a few. Constructing an HCI product is a cyclic, iterative process that involves at least three stages.
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, each of the stages involves the following sorts of knowledge and skill:
Design
- 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
- Familiarity with standard languages - e.g., C++, Java, HTML
- Rapid prototyping skills
- Computational literacy, i.e., knowledge sufficient for effective communication and decision making about interface construction tools and languages - e.g., Ruby on Rails, Swing, Java
- Multimedia authoring tools - e.g., Director, Premiere
- Data structures and algorithms operating systems, platforms, etc.
Evaluation
- Interview, contextual inquiry and other needs-finding methods
- Usability testing (e.g., Cognitive Walkthroughs, Heuristic Evaluation)
- Experimental design
- Survey methods
- Statistical Analysis
We teach core courses in each of these areas, and our HCI education culminates in a group-based senior project for a client, which we call our Capstone. In addition, there are over 100 possible elective courses relevant to these areas that are offered by eight different departments in four different colleges at CMU (the Dietrich College of Humanities and Social Sciences, the School of Computer Science, the College of Fine Arts, and the Tepper School of Business). For a list of these courses, refer to the elective course list.