Human-Computer Interaction

Haiyi Zhu, Director of the Undergraduate Programs and Professor, Human-Computer Interaction Institute
Email: haiyiz@andrew.cmu.edu
Amelia Baisley, Academic Program Coordinator, Human-Computer Interaction Institute
Ashley Kosko, Academic Coordinator, Human- Computer Interaction Institute
Location: Newell Simon Hall 3526B
https://www.hcii.cmu.edu/academics/hci-undergraduate

Undergraduate Major in HCI

In 2020, Carnegie Mellon University became one of the first universities worldwide to offer a primary major in Human-Computer Interaction (HCI). Students within the School of Computer Science (SCS) can now declare HCI as their primary major.

About the B.S. in HCI

The Bachelor of Science in Human-Computer Interaction will produce HCI specialists who are technically skilled and adept at designing and prototyping interactive solutions with the latest digital technologies. Students graduating from the HCI primary will have a unique perspective on how digital products and services impact humans, and also how they can be designed to have a positive impact.

Students in this major will have a strong Computer Science core of programming, algorithms, systems and mathematical foundations, just like the other undergraduate majors in SCS. They will specialize by making core elements of human-computer interaction the primary focus of their upper-level classes, and can explore a large range of HCI topics in greater depth through their elective choices. In the final capstone project course, they will work as part of an interdisciplinary student team to produce innovative digital solutions for a problem presented by a client.

Responding to the Demand for HCI in Tech

Our corporate partners spoke of the need for competitive entry-level professionals who can enter the workforce with a solid understanding of HCI. This technical program will prepare graduates to understand and create innovative services, systems and applications that serve all people. Students will have the opportunity to design for a range of digital technologies, including web, mobile, IoT, VR, AR, sensors, fabrication, gadgets and more.

There is also a need for HCI practitioners with a "T-shaped person" knowledgebase. That is, professionals who exhibit broad knowledge and diverse technical skills, as well as a valuable focus in a specialization area. HCI majors will build a broad foundational knowledge in computing, mathematics and statistics; development skills for digital and interactive technologies; and experience with methods of rapid prototyping, all of which will help them to collaborate with their peers in related fields.

Opportunities for B.S. in HCI Grads

Graduates with this rigorous background will serve key roles in the tech industry. B.S. in HCI graduates will be poised to take on strategic roles at early stages of their careers, including Front End Engineer, Interaction Designer, Technical Product Manager and UX Engineer positions. HCI students aiming for research careers or graduate school can select a senior thesis option and conduct independent research work under the mentorship of HCI faculty.

Bachelor of Science in HCI Degree Requirements

The primary major in HCI supports students by preparing them with very strong technical knowledge, skills, and understanding. HCI majors must take a minimum of 360 units (35 courses) distributed as follows:

  • CS Core:  5 courses + freshman immigration course
  • Computing @ Carnegie Mellon: 3 units
  • Mathematics and Statistics:  4 courses
  • HCI Core: 6 courses
  • HCI Electives: 4 courses
  • HCI Capstone Project: 1 course
  • Free Electives: 4  courses
  • Science and Engineering: 4 courses
  • Humanities and Arts (Gen Ed):  7 courses

Total: 35 courses

Computer Science Core  (5 courses + immigration course)

Prerequisite Courses Units
15-112Fundamentals of Programming and Computer Science12
07-131Great Practical Ideas for Computer Scientists2
Required Courses Units
07-128First Year Immigration Course3
15-122Principles of Imperative Computation12
15-150Principles of Functional Programming12
15-151Mathematical Foundations for Computer Science12
15-210Parallel and Sequential Data Structures and Algorithms12
15-213Introduction to Computer Systems12

Mathematics and Statistics Core  (4 courses )

Prerequisite Course Units
21-120Differential and Integral Calculus10
Required Courses
21-122Integration and Approximation10
21-259Calculus in Three Dimensions10
Select one of the following courses:
15-259Probability and Computing12
21-325Probability9
36-218Probability Theory for Computer Scientists9
36-225Introduction to Probability Theory9
Select one of the following courses:
15-251Great Ideas in Theoretical Computer Science12
21-241Matrices and Linear Transformations11
21-242Matrix Theory11
36-226Introduction to Statistical Inference9
36-401Modern Regression9

HCI Core  (6 courses) 

Research & Evaluation Courses (2) Units
05-410User-Centered Research and Evaluation12
Select one:
36-202Methods for Statistics & Data Science9
36-315Statistical Graphics and Visualization9
70-208Regression Analysis9
Ideation & Design Courses (2)
05-360Interaction Design Fundamentals12
Select one:
05-361Advanced Interaction Design12
05-291Learning Media Design12
05-315Persuasive Design12
05-317Design of Artificial Intelligence Products12
05-418Design Educational Games12
05-452Service Design12
05-470Digital Service Innovation12
*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.
Technical Core (2)
05-380Prototyping Algorithmic Experiences15
05-431Software Structures for User Interfaces12

Psychology (1 course) 

Select one: Units
85-211Cognitive Psychology9
85-213Human Information Processing and Artificial Intelligence9
85-241Social Psychology9
85-251Personality9
85-370Perception9
85-408Visual Cognition9
85-421Language and Thought9
88-120Reason, Passion and Cognition9
Note: The Psychology course fulfills the Category 1: Cognition, Choice and Behavior requirement for HCI majors. 

HCI Electives (4 courses)

Design Elective (1) **Select a different course from that chosen under Ideation and Design HCI core (above) Units
05-361Advanced Interaction Design12
05-291Learning Media Design12
05-315Persuasive Design12
05-317Design of Artificial Intelligence Products12
05-418Design Educational Games12
05-452Service Design12
05-470Digital Service Innovation12
*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.
Technical Elective (1)
05-318Human AI Interaction12
05-333Gadgets, Sensors and Activity Recognition in HCI12
05-434Machine Learning in Practice12
05-839Interactive Data Science12
10-315Introduction to Machine Learning (SCS Majors)12
11-411Natural Language Processing12
15-281Artificial Intelligence: Representation and Problem Solving12
15-365Experimental Animation12
15-388Practical Data Science9
15-462Computer Graphics12
15-464Technical Animation12
15-466Computer Game Programming12
15-494Cognitive Robotics: The Future of Robot Toys12
16-467Human Robot Interaction12
17-428Machine Learning and Sensing12
17-437Web Application Development12
17-537Artificial Intelligence Methods for Social Good9
*The remaining 2 electives can be chosen from the above lists or from the pre-approved list of HCI electives. Other options will require approval from the program director.

HCI Capstone Project  (1 course) 

05-571Undergraduate Project in HCI12

Science & Engineering (4 courses)

Four courses in the domain of science and engineering are required, of which at least one must have a laboratory component and at least two must be from the same department. These courses typically come from the Mellon College of Science and the College of Engineering (CIT). Courses with a primary focus on programming, computation or mathematics are not acceptable for science or engineering courses. Requirements for this component of the degree are listed under the SCS main page under General Education Requirements.

Humanities & Arts (7 courses)

These requirements follow the SCS General Education requirements for Humanities & Arts. Requirements for this component of the degree are listed under the SCS main page under General Education Requirements. NOTE: The Psychology requirement of the HCI core will satisfy the General Education requirement for Category 1: Cognition, Choice & Behavior.

Free Electives (4 courses)

A free elective is any Carnegie Mellon course. However, a maximum of 9 units of Physical Education and/or Military Science (ROTC) and/or Student-Led (StuCo) courses may be used toward fulfilling graduation requirements. These could be used for optional Research Track or an optional minor or concentration.

Additional Major in Interdisciplinary HCI

Haiyi Zhu, Undergraduate Director
Email:  haiyiz@andrew.cmu.edu
www.hcii.cmu.edu

OVERVIEW

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:

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
  • 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.
Evaluation
  • 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 (see below).

CURRICULUM

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)

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 for Human Computer Interaction must be completed before enrolling in the HCI core course 05-361 Advanced Interaction Design 
Prerequisites Units
Psychology (Select one)
85-211Cognitive Psychology9
85-241Social Psychology9
85-213Human Information Processing and Artificial Intelligence9
Design
05-360Interaction Design Fundamentals Design majors do not need to take 05-360 as a prerequisite, since they learn similar material in other courses for their major. 12
Statistics (Select one)
36-200Reasoning with Data9
36-220Engineering Statistics and Quality Control9
36-225-36-226Introduction to Probability Theory - Introduction to Statistical Inference18
36-226Introduction to Statistical Inference9
36-247Statistics for Lab Sciences9
70-207Probability and Statistics for Business Applications9
Introduction to Programming (Select one)
15-104Introduction to Computing for Creative Practice10
15-110Principles of Computing10
15-112Fundamentals of Programming and Computer Science12
15-121Introduction to Data Structures10
HCI Core Courses (4)

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)
  • 05-361: Advanced Interaction Design or another advanced Design course (see details below) 
  • 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 (Capstone) *The Capstone course should be taken during the student’s final spring semester. 
Core Courses Units
05-410User-Centered Research and Evaluation12
Select one:
05-361Advanced Interaction Design12
05-291Learning Media Design12
05-315Persuasive Design12
05-317Design of Artificial Intelligence Products12
05-418Design Educational Games12
05-452Service Design12
05-470Digital Service Innovation12
*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-430Programming Usable Interfaces15
05-380Prototyping Algorithmic Experiences15
05-431Software Structures for User Interfaces12
Capstone
05-571Undergraduate Project in HCI12
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 electives: https://www.hcii.cmu.edu/academics/hci-undergrad/electives

Double Counting

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 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, see the website at hcii.cmu.edu/academics/hci-undergrad/additional-major-hci/admissions.

Minor in Interdisciplinary HCI

The Minor in Interdisciplinary Human-Computer Interaction will give students core knowledge about techniques for building successful user interfaces, approaches for conceiving, refining, and evaluating interfaces that are useful and useable, and techniques for identifying opportunities for computational technology to improve the quality of people’s lives. The students will be able to effectively collaborate in the design, implementation, and evaluation of easy-to-use, desirable, and thoughtful interactive systems. They will be prepared to contribute to multidisciplinary teams that create new interactive products, services, environments, and systems.

The key concepts, skills and methods that students will learn in the HCI Minor include:

  • Fieldwork for understanding people’s needs and the influence of context
  • Generative approaches to imagining many possible solutions such as sketching and “bodystorming”
  • Iterative refinement of designs
  • Basic visual design including typography, grids, color, and the use of images
  • Implementation of interactive prototypes
  • Evaluation techniques including discount and empirical evaluation methods

The HCI minor is targeted at undergraduates who expect to get jobs where they design and/or implement information technology-based systems for end users, as well as students with an interest in learning more about the design of socio-technical systems. It is appropriate for students with a major in Information Systems, as well as students in less software-focused majors, including Design, Architecture, Art, Business Administration, Psychology, Statistics, Decision Science, Mechanical Engineering, Electrical Engineering, English and many others in the university.

CURRICULUM

The following requirements are for students entering Fall 2023. 

Prerequisite (select one) Units
15-110Principles of Computing10
15-112Fundamentals of Programming and Computer Science12
15-121Introduction to Data Structures10
15-104Introduction to Computing for Creative Practice10
Core Courses Units
05-391Designing Human Centered Software Designing Human Centered Software (DHCS)1: This course provides an overview of the most important methods taught in the Additional Major in HCI, such as Contextual Inquiry, Prototyping and Iterative Design, Heuristic Evaluation, and Think Aloud User Studies. It covers in a more abbreviated form the content of 05-410 User-Centered Research and Evaluation and, 05-430 Programming Usable Interfaces. Alternatively, a student can take both 05-410 and 05-430 OR 05-380. If students take this course sequence, they get credit for fulfilling this 05-391 requirement plus one elective.12
05-360Interaction Design Fundamentals12
Special Notes for Design Majors: HCI Minors who have a primary major in Design may substitute taking 05-391 Designing Human-Centered Software with another HCI 05 elective course; HCI Minors who have a primary major in Design must substitute taking 05-360 Interaction Design for Human Computer Interaction with another HCI 05-xxx course.

Electives

HCI minor students must take four HCI-related electives (9 units or more). Electives are intended to provide minor students with advanced concepts ad 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 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 electives: https://www.hcii.cmu.edu/academics/hci-undergrad/electives

Double Counting

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. 

Relationship Between The HCI Additional Major and HCI Minor

Admission
  • HCI Additional Major: Application and admissions required, information on the HCII website.
  • HCI Minor: Application and admissions required, information on the HCII website.
Prerequisites (not necessary for admission) 
  • HCI Additional Major:
    • Freshman-level programming
    • Statistics 
    • Psychology
    • Interaction Design for Human Computer Interaction
  • HCI Minor:
    • Freshman-level programming
Core Courses
  • HCI Additional Major:
    • Advanced Design Course
    • User Centered Research & Evaluation (UCRE)
    • Programming Usable Interfaces (PUI) or Prototyping Algorithmic Experiences (PAX) or Software Structures for User Interfaces (SSUI)
    • BHCI Project (Capstone)
  • HCI Minor:
    • Interaction Design for Human-Computer Interaction
    • Designing Human-Centered Systems (DHCS)
Electives
  • HCI Additional Major: Four (4) electives 
  • HCI Minor: Four (4) electives 
Double Counting
  • HCI Additional Major: Two (2) core courses or electives with primary major.
  • HCI Minor: Two (2) core courses or electives with primary major.

Human-Computer Interaction Courses

About Course Numbers:

Each Carnegie Mellon course number begins with a two-digit prefix that designates the department offering the course (i.e., 76-xxx courses are offered by the Department of English). Although each department maintains its own course numbering practices, typically, the first digit after the prefix indicates the class level: xx-1xx courses are freshmen-level, xx-2xx courses are sophomore level, etc. Depending on the department, xx-6xx courses may be either undergraduate senior-level or graduate-level, and xx-7xx courses and higher are graduate-level. Consult the Schedule of Classes each semester for course offerings and for any necessary pre-requisites or co-requisites.

05-090 Human-Computer Interaction Practicum
All Semesters: 3 units
This course is for HCII students who wish to have an internship experience as part of their curriculum. Students are required to write a one-page summary statement prior to registration that explains how their internship connects with their HCI curriculum, specifically on how it uses material they have learned as well as prepares them for future courses. Near the end of the internship, students will be required to submit a reflection paper that describes the work they did in more detail, including lessons learned about the work experience and how they utilized their HCI education to work effectively. International students should consult with the Office of International Education for appropriate paperwork and additional requirements before registration. Units earned count toward the total required units necessary for degree completion; students should speak with an academic advisor for details. This course may be taken at most 3 times for a total of 9 units maximum. Students normally register for this course for use during the summer semester.
05-120 Introduction to Human-Computer Interaction
Spring: 5 units
This course is only for freshman SCS students that are interested in learning more about HCI.
05-200 Ethics and Policy Issues in Computing
Intermittent: 9 units
Should autonomous robots make life and death decisions on their own? Should we allow them to select a target and launch weapons? To diagnose injuries and perform surgery when human doctors are not around? Who should be permitted to observe you, find out who your friends are, what you do and say with them, what you buy, and where you go? Do social media and personalized search restrict our intellectual horizons? Do we live in polarizing information bubbles, just hearing echoes of what we already know and believe? As computing technology becomes ever more pervasive and sophisticated, we are presented with an escalating barrage of decisions about who, how, when, and for what purposes technology should be used. This course will provide an intellectual framework for discussing these pressing issues of our time, as we shape the technologies that in turn shape us. We will seek insight through reading, discussion, guest lectures, and debates. Students will also undertake an analysis of a relevant issue of their choice, developing their own position, and acquiring the research skills needed to lend depth to their thinking. The course will enhance students' ability to think clearly about contentious technology choices, formulate smart positions, and support their views with winning arguments.
05-291 Learning Media Design
Fall: 12 units
[IDeATe collaborative course] Learning is a complex human phenomenon with cognitive, social and personal dimensions that need to be accounted for in the design of technology enhanced learning experiences. In this studio course students will apply learning science concepts to critique existing forms of learning media, establish a set of design precedents to guide project work and produce a series of design concepts that support learning interactions in a real-world context. Collaborating in small interdisciplinary teams, students will partner with a local informal learning organization (e.g. museum, after school program provider, maker space) to conduct learning design research studies, synthesize findings, establish learning goals and iteratively prototype and assess design concepts. As final deliverables, students will present their design research findings, design concepts, and prototypes to stakeholders, and draft a media-rich proposal for their learning media concept to pitch to a local funder. Please note that there may be usage/materials fees associated with this course. Please note that there may be usage/materials fees associated with this course.
05-292 IDeATe: Learning in Museums
Spring: 12 units
Learning in Museums brings together students from across the disciplines to consider the design of mediated learning experiences though a project-based inquiry course. Students will be introduced to a range of design research methods and associated frameworks that explore the cognitive, social and affective dimensions of learning in everyday contexts through readings, invited lectures, in-class activities and assignments. Students will conduct a series of short design research studies to define learning goals and develop supporting design concepts that improve learning outcomes for diverse participants in informal learning settings (e.g. museums, after school programs, maker spaces or online). In concept development, we will look at how to position technology and question its role in the setting to engage and foster positive learning interactions. This course will culminate in a media-rich presentation of design concepts and a prototype to a stakeholder audience, and include an evaluation plan describing how learning outcomes for the project would be assessed.
05-300 HCI Undergraduate Pro Seminar
All Semesters: 2 units
HCI is a broad field that brings together approaches from design, computer science, and psychology. This course provides an introduction to the field of HCI and to the HCI community at CMU. Guest speakers from around campus will provide a general introduction to these approaches and how they are pursued at CMU, and will describe research opportunities that are available to undergraduates. The course will also discuss career options in both industry and academia for students of HCI, and will include presentations from HCI alumni and sessions on preparing resumes, creating portfolios, and interviewing for jobs. The course is designed for current or potential HCI majors and minors but is open to anyone with an interest in applying for the HCI major/minor.

Course Website: https://hcii.cmu.edu/academics/courses
05-315 Persuasive Design
Fall: 12 units
This project-based course focuses on the ethical, human-centered design and evaluation of persuasive technologies that aim to change users' attitudes, emotions, or behaviors in ways that benefit the self and/or society. In addition to exposing students to an array of psychological theories and strategies for implicit and explicit persuasion, the course will cover a variety of topics illustrating both the pitfalls and possibilities in designing for positive impact in HCI. The focal point of the class will be the semester project, for which student teams will iteratively conceptualize, prototype, implement, and evaluate a tool, system, or change to a ubiquitous computing environment that intends to stimulate and sustain belief or behavior change (such as reducing cognitive or social biases, building healthy or prosocial habits, or resisting other persuasive forces one encounters on a daily basis).
05-317 Design of Artificial Intelligence Products
Intermittent: 12 units
This course teaches students how to design new products and services that leverage the capabilities of AI and machine learning to improve the quality of peoples lives. Students will learn to follow a matchmaking design, user-centered design, and service design process. Students will learn to ideate; reframing problematic situations by envisioning many possible products and services. Students will learn to iteratively refine and assess their ideas with real users/customers. Class projects will focus on the challenges of deploying systems that generate errors and the challenges of situating intelligent systems such that they harmonize the best qualities of human and machine intelligence.

Course Website: https://hcii.cmu.edu/academics/courses
05-318 Human AI Interaction
Intermittent: 12 units
Artificial Intelligence is inspired by human intelligence, made powerful by human data, and ultimately only useful in how it positively affects the human experience. This course is an introduction to harnessing the power of AI so that it is beneficial and useful to people. We will cover a number of general topics: agency and initiative, AI and ethics, bias and transparency, confidence and errors, human augmentation and amplification, trust and explainability, mixed-initiative systems, and programming by example. These topics will be explored via projects in dialog and speech-controlled systems, automatic speech recognition, computer vision, data science, recommender systems, text summarization, learning science, UI personalization, and visualization. Students will complete individual weekly mini-projects in which they will design and build AI systems across a wide variety of domains. Students should be comfortable with programming; assignments will be primarily in Python and Javascript. Prior experience with AI/machine learning will be useful but is not required. Students will also be responsible for weekly readings and occasional presentations to the class.

Course Website: http://www.hcii.cmu.edu/academics/courses
05-319 Data Visualization
Fall: 12 units
This course is an introduction to key design principles and techniques for interactively visualizing data. The major goals of this course are to understand how visual representations can help in the analysis and understanding of complex data, how to design effective visualizations, and how to create your own interactive visualizations using modern web-based frameworks.

Course Website: https://dig.cmu.edu/courses/2022-fall-datavis.html
05-320 Social Web
Intermittent: 12 units
With the growth of online environments like MySpace, Second Life, World of Warcraft, Wikipedia, blogs, online support groups, and open source development communities, the web is no longer just about information. This course, jointly taught by a computer scientist and a behavioral scientist, will examine a sampling of the social, technical and business challenges social web sites must solve to be successful, teach students how to use high-level tools to analyze, design or build online communities, and help them understand the social impact of spending at least part of their lives online. This class is open to advanced undergraduates and graduate students with either technical or non-technical backgrounds. Course work will include lectures and class discussion, homework, class presentations, and a group research or design project.
05-321 Transformational Game Design Studio
Fall: 12 units
TBA
05-333 Gadgets, Sensors and Activity Recognition in HCI
Fall: 12 units
Recent advances in HCI have been driven by new capabilities to deliver inexpensive devices to users, to display information in mobile and other contexts, to sense the user and their environment, and use these sensors to create models of a user's context and actions. This course will consider both concepts surrounding these new technological opportunities through discussion of current literature - and practical considerations the skills needed to actually build devices. About 1/3 of this class will review current advances in this area. The remainder will be devoted to development of individual skills so that students leaving the class will have an ability to actually build small devices for human interaction (in short: "HCI gadgets"). In particular, the course will concentrate on the basics of building simple microcontroller-based devices and will also provide very basic coverage of the machine learning techniques needed for simple sensor-driven statistical models. The course is designed to be accessible to students with a wide range of backgrounds including both technically-oriented and non-technical students (especially Designers) interested in HCI. The class will be project oriented with 4-5 electronic prototype building projects during the semester. At least two of these projects will be self-defined in nature and can be adapted to the existing skills and interests of each student. There are no formal prerequisites for this class. However, the class will involve programming and debugging of micro-controllers. Some coverage of the language used to do this will be provided, and if required by your background, the programming component of the projects can be made comparatively small (but, in that case some other aspect of the projects will need to be expanded). However, you should not take this course if you have no programming background. This course assumes no background in electronics.

Course Website: http://www.hcii.cmu.edu/courses/applied-gadgets-sensors-and-activity-recognition-hci
05-341 Organizational Communication
All Semesters: 9 units
Most of management is communication. You communicate to get information that will be the basis of decisions, coordinate activity, to provide a vision for the people who work for and with you, to and to sell yourself and your work. The goal of this course is to identify communication challenges within work groups and organizations and ways to overcome them. To do this requires that we know how communication normally works, what parts are difficult, and how to fix it when it goes wrong. The focus of this course is on providing you with a broad understanding of the way communication operates within dyads, work groups, and organizations. The intent is to give you theoretical and empirical underpinnings for the communication you will undoubtedly participate in when you move to a work environment, and strategies for improving communication within your groups. Because technology is changing communication patterns and outcomes both in organizations and more broadly in society, the course examines these technological changes. Readings come primarily from the empirical research literature.

Course Website: http://www.hcii.cmu.edu/courses/organizational-communication
05-360 Interaction Design Fundamentals
Fall and Spring: 12 units
IXD Fundamentals introduces the human-centered design process as well as fundamental interaction design principles, methods, and practices. The course is for both students who may only enroll in one interaction design course and those who intend to build upon their HCI learning by taking advanced interaction design courses. Students must work effectively as individuals and in small teams to learn interaction design concepts and apply them to real-world problems. By the end of this course students should be able to; -Apply appropriate interaction design methods in a human-centered design process. -Create persuasive interim and final design artifacts that demonstrate communication design fundamentals. -Facilitate productive and structured critique across the class and with instructors. -Explain and apply fundamental interaction design principles. -Create clarity and readability in artifacts, including GUIs and deliverables, through the disciplined application of visual design principles such as typography, color and composition. -Practice reframing a given problem in order to create opportunities that drive generating multiple solutions. -Demonstrate habits that foster the creative process, including drawing, divergent thinking, and creative experimentation. -Identify and explore with interaction design materials. This course serves as a prerequisite for Advanced Interaction Design Studio (number TBD). Students who are required to take this course have priority and will be enrolled first. No coding is required.
05-361 Advanced Interaction Design
Spring: 12 units
Advanced Interaction Design (05-361/05-661) follows Interaction Design for Human-Computer Interaction (05-360/05-660). Students are expected to build on the basic interaction design principles they learned in Interaction Design for Human-Computer Interaction by applying advanced methods to solve more complex problems using emerging technologies in user experiences that cross devices, modalities and contexts. Students learn how to design with advanced technologies that predict, assist and automate, and make through a design system. Systems thinking, data as a design material, and UI design are emphasized in projects which are designed to give students experience solving complex problems that they are likely to encounter as practitioners. Advanced Interaction Design prepares students to become interaction designers that take a rigorous and principled approach to solving enterprise-scale problems where many systems and applications serve many stakeholders.
05-380 Prototyping Algorithmic Experiences
Intermittent: 15 units
This project-based course provides an overview and hands-on introduction to iterative prototyping methods in HCI, with an emphasis on current and emerging technologies such as data-driven algorithmic systems, AI and machine learning, spatial computing, and IoT. Students will learn and implement approaches for creating and using prototypes to iteratively inform the creation of new technologies. The course will help students learn to strategically evaluate whether a given prototyping approach is a good fit for a given design or research question. In addition to HCI undergraduate majors, the course is open to undergraduate and graduate level students with proficiency in programming and prior courses or experience in user-centered research, design, and/or evaluation. Some exceptions to the course prerequisites will be granted with permission of the instructor.
Prerequisites: 15-112 and (15-122 or 15-121 or 15-150 or 15-210) and (05-410 or 05-391) and (05-452 or 05-650 or 05-651 or 05-470 or 05-317)
05-391 Designing Human Centered Software
All Semesters: 12 units
"Why are things so hard to use these days? Why doesn't this thing I just bought work? Why is this web site so hard to use? These are frustrations that we have all faced from systems not designed with people in mind. The question this course will focus on is: how can we design human-centered systems that people find useful and usable? This course is a broad introduction to designing, prototyping, and evaluating user interfaces. If you take only one course in Human-Computer Interaction, this is the course for you. We will cover theory as well as practical application of ideas from Human-Computer Interaction. Coursework includes lectures, class discussion, homework, class presentations, and group projects. This class is open to all undergrads and grad students, with either technical or non-technical majors. However, there is a programming prerequisite. "
Prerequisites: 15-110 or 15-104 or 15-122 or 15-112
Course Website: http://www.hcii.cmu.edu/courses/designing-human-centered-software
05-392 Interaction Design Overview
Fall: 9 units
This studio course offers a broad overview of communication and interaction design. Students will learn design methodologies such as brainstorming, sketching, storyboarding, wire framing, and prototyping. Students learn to take a human-centered design approach to their work. Assignments include short in-class exercises as well as individual and team-based projects. Students take part in studio critiques, engaging in critical discussions about the strengths and weaknesses of their own work and the work of others. No coding is required.
05-395 Applications of Cognitive Science
Spring: 9 units
The goal of this course is to examine cases where basic research on cognitive science, including cognitive neuroscience, has made its way into application, in order to understand how science gets applied more generally. The course focuses on applications that are sufficiently advanced as to have made an impact outside of the research field per se; for example, as a product, a change in practice, or a legal statute. Examples are virtual reality (in vision, hearing, and touch), cognitive tutors, phonologically based reading programs, latent semantic analysis applications to writing assessment, and measures of consumers' implicit attitudes. The course will use a case-study approach that considers a set of applications in detail, while building a general understanding of what it means to move research into the applied setting. The questions to be considered include: What makes a body of theoretically based research applicable? What is the pathway from laboratory to practice? What are the barriers - economic, legal, entrenched belief or practice? The format will emphasize analysis and discussion by students. They should bring to the course an interest in application; extensive prior experience in cognitive science is not necessary. The course will include tutorials on basic topics in cognitive science such as perception, memory, and spatial cognition. These should provide sufficient grounding to discuss the applications.

Course Website: http://www.hcii.cmu.edu/courses/applications-cognitive-science
05-410 User-Centered Research and Evaluation
Fall: 12 units
This course provides an overview and introduction to the field of human-computer interaction (HCI). 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 generative and evaluative research methods. This is a companion course to courses in visual design (51-422) and software implementation (05-430, 05-431). When registering for this course, undergraduate students are automatically placed the wait list. Students will be then moved into the class, based on if they are in the BHCI second major and year in school e.g. seniors, juniors, etc In the Fall, this course is NOT open to students outside the HCI major. The Spring offering is open to all students. This course is a core requirement for students in the HCI additional major.
05-413 Human Factors
Fall: 9 units
This course uses theory and research from human factors, cognitive science, and social science to understand and design the interactions of humans with the built world, tools, and technology. The course emphasizes current work in applied domains such as automotive design, house construction, medical human factors, and design of information devices. The course also will emphasize not only individual human factors (e.g., visual response, anthropometry) but also the organizational arrangements that can amplify or correct human factors problems. Through reading, discussion, and projects, you will learn about human perceptual, cognitive, and physical processes that affect how people interact with, and use, technology and tools. You will learn why we have so many automobile accidents, voting irregularities, and injuries from prescription medication. You will learn some tried and true solutions for human factors problems, and some of the many problems in human factors that remain. You will also have gained experience in research in this field.

Course Website: http://www.hcii.cs.cmu.edu
05-417 Computer-mediated Communication
Spring: 6 units
This course examines fundamental aspects of interpersonal communication and considers how different types of computer-mediated communications (CMC) technologies affect communication processes. Among the topics we will consider are: conversational structure and CMC, tools to support nonverbal and paralinguistic aspects of communication such as gesture and eye gaze, and social and cultural dimensions of CMC. Students will be expected to post to weekly discussion lists, to write a paper on a specific aspect of CMC, and to present a talk on their final project to the class. The course should be appropriate for graduate students in all areas and for advanced undergraduates.
05-418 Design Educational Games
Spring: 12 units
The potential of digital games to improve education is enormous. However, it is a significant challenge to create a game that is both fun and educational. In this course, students will learn to meet this challenge by combining processes and principles from game design and instructional design. Students will also learn to evaluate their games for fun, learning, and the integration of the two. They will be guided by the EDGE framework for the analysis and design educational games. The course will involve a significant hands-on portion, in which students learn a design process to create educational games digital or non-digital. They will also read about existing educational games and discuss game design, instructional design, learning and transfer, and the educational effectiveness of digital games. They will analyze an educational game and present their analysis to the class.

Course Website: https://www.hcii.cmu.edu/course/design-of-educational-games
05-430 Programming Usable Interfaces
Spring: 15 units
This course is combines lecture, 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. In lab, you will learn how to design and program effective graphical user interfaces, and how to perform user tests. We will cover a number of prototyping tools and require prototypes to be constructed in each, ranging from animated mock-ups to fully functional programs. Assignments will require implementing UIs, testing that interface with users, and then modifying the interface based on findings. Some class sessions will feature design reviews of student work. This course is for HCII Masters students and HCI dual majors with a minimal programming background. Students will often not be professional programmers, but will need to interact with programmers. RECITATION SELECTION: Students taking this course can sign up for either Prototyping Lab recitation. PREREQUISITES: Proficiency in a programming language, program structure, algorithm analysis, and data abstraction. Normally met through an introductory programming course using C, C++, Pascal or Java, such as 15100, 15112, 15127 or equivalent. Students entering this course should be able to independently write a 300-line program in 48 hours. This course is NOT open to students outside of the BHCI program.
Prerequisites: 15-127 or 15-112 or 15-110 or 15-104 or 15-100
05-431 Software Structures for User Interfaces
Fall: 12 units
This course considers the basic and detailed concepts for building software to implement user interfaces (UIs). It considers factors of input, output, application interface, and related infrastructure as well as the typical patterns used to implement them. It considers how these aspects are organized and managed within a well-structured object oriented system. We will cover a variety of "front-end" programming contexts, including conventional graphical user interface (GUI) programming for mobile apps (phones, watches), web apps, and regular desktop applications, across a variety of frameworks. We will also cover programming for data-driven and conversational (AI) user interfaces. We will briefly touch on front-end programming for visualizations, games, 3D, and virtual and artificial reality (VR and AR), along with interactive UI tools such as prototypers and resource editors. The homeworks and project in this course will involve extensive object-oriented programming, likely in both Java and JavaScript, so this course is only appropriate for students with a strong programming background. Note that this is not an HCI methods course and #8212; we do not cover user-centered design or evaluation methods. This course is designed for students in the SCS HCI undergrad Major, but it also available to any undergrad or graduate student with an interest in the topic and solid prior programming experience who wish to understand the structures needed for professional development of interactive systems. Note that all students who register for this class will initially be placed on a waitlist. Priority for getting into the class are students in the HCII programs (more senior students first), and then others. The graduate (05-631) and undergraduate (05-431) numbers are for the same course with the same work.
Prerequisites: 17-514 or 17-437 or 17-214 or 14-513 or 15-513 or 18-213 or 15-213 or 15-214
05-432 Personalized Online Learning
Fall: 12 units
Online learning has become widespread (e.g., MOOCs, online and blended courses, and Khan Academy) and many claim it will revolutionize higher education and K-12. How can we make sure online learning is maximally effective? Learners differ along many dimensions and they change over time. Therefore, advanced learning technologies must adapt to learners to provide individualized learning experiences. This course covers a number of proven personalization techniques used in advanced learning technologies. One of the techniques is the use of cognitive modeling to personalize practice of complex cognitive skills in intelligent tutoring systems. This approach, developed at CMU, may well be the most significant application of cognitive science in education and is commercially successful. We will also survey newer techniques, such as personalizing based on student meta-cognition, affect, and motivation. Finally, we will look at personalization approaches that are widely believed to be effective but have not proven to be so. The course involves readings and discussion of different ways of personalizing instruction, with an emphasis on cognitive modeling approaches. Students will learn to use the Cognitive Tutor Authoring Tools (CTAT) to implement tutor prototypes that rely on computer-executable models of human problem solving to personalize instruction. The course is meant for graduate or advanced undergraduate students in Human-Computer Interaction, Psychology, Computer Science, Design, or related fields, who are interested in educational applications. Students should either have some programming skills or experience in the cognitive psychology of human problem solving, or experience with instructional design.

Course Website: http://www.hcii.cmu.edu/courses/personalized-online-learning
05-433 Programming Usable Interfaces OR Software Structures for Usable Interfaces
Fall: 6 units
Section A: Programming Usable Interfaces Section B: Software Structures for Usable Interfaces This is a lecture-only course (see 05-430/05-630 or 05-431/631 for the lecture + lab version of these courses) that is intended for those who want to learn how to design and evaluate user interfaces. We will cover the importance of human-computer interaction and interface design, the iterative design cycle used in HCI, an overview of input and output techniques, how to design and evaluate interaction techniques, and end with a discussion of hot topics in research that will impact user interfaces in the coming years. This course is only intended for HCII Masters students or HCI undergraduate majors who have already taken an associated User Interface lab, or non-MHCI/BHCI students interested in the design of user interfaces. WAITLIST LOGISTICS: Note that ALL students who register for this class will initially be placed on a waitlist. Your position on the waitlist is not an indication of whether you will be accepted into the class. Contacting the instructor will not move you off the waitlist. Priority for getting off the waitlist are MHCI students, BHCI students (more senior students first), and then others.
05-434 Machine Learning in Practice
Fall and Spring: 12 units
Machine Learning is concerned with computer programs that enable the behavior of a computer to be learned from examples or experience rather than dictated through rules written by hand. It has practical value in many application areas of computer science such as on-line communities and digital libraries. This class is meant to teach the practical side of machine learning for applications, such as mining newsgroup data or building adaptive user interfaces. The emphasis will be on learning the process of applying machine learning effectively to a variety of problems rather than emphasizing an understanding of the theory behind what makes machine learning work. This course does not assume any prior exposure to machine learning theory or practice. In the first 2/3 of the course, we will cover a wide range of learning algorithms that can be applied to a variety of problems. In particular, we will cover topics such as decision trees, rule based classification, support vector machines, Bayesian networks, and clustering. In the final third of the class, we will go into more depth on one application area, namely the application of machine learning to problems involving text processing, such as information retrieval or text categorization. 05-834 is the HCII graduate section. If you are an LTI student, please sign up for the LTI graduate course number (11-663) ONLY to count properly towards your degree requirements. 05-434 is the HCII undergraduate section. If you are an LTI student, please sign up for the LTI undergraduate course number (11-344) ONLY to count properly towards your degree requirements.

Course Website: http://www.hcii.cmu.edu/courses/applied-machine-learning
05-435 Applied Fabrication for HCI
Fall: 12 units
This course will consider how new fabrication techniques such as 3D printing, laser cutting, CNC machining and related computer controlled technologies can be applied to problems in Human-Computer Interaction. Each offering will concentrate on a particular application domain for its projects. This year the course will consider assistive technology. This course will be very hands-on and skills-oriented, with the goal of teaching students the skills necessary to apply these technologies to HCI problems such as rapid prototyping of new device concepts. To this end? Every student in this course will build and take home a 3D printer. (There will be $400-$500 cost associated with this course to make that possible. Details on this are still to be determined.)
05-436 Usable Privacy and Security
Spring: 9 units
There is growing recognition that technology alone will not provide all of the solutions to security and privacy problems. Human factors play an important role in these areas, and it is important for security and privacy experts to have an understanding of how people will interact with the systems they develop. This course is designed to introduce students to a variety of usability and user interface problems related to privacy and security and to give them experience in designing studies aimed at helping to evaluate usability issues in security and privacy systems. The course is suitable both for students interested in privacy and security who would like to learn more about usability, as well as for students interested in usability who would like to learn more about security and privacy. Much of the course will be taught in a graduate seminar style in which all students will be expected to do a weekly reading assignment and each week different students will prepare a presentation for the class. Students will also work on a group project throughout the semester. The course is open to all graduate students who have technical backgrounds. The 12-unit course numbers (08-734 and 5-836) are for PhD students and masters students. Students enrolled in these course numbers will be expected to play a leadership role in a group project that produces a paper suitable for publication. The 9-unit 500-level course numbers (08-534 and 05-436) are for juniors, seniors, and masters students. Students enrolled in these course numbers will have less demanding project and presentation requirements.

Course Website: http://www.hcii.cmu.edu/courses/usuable-privacy-and-security
05-439 The Big Data Pipeline: Collecting and Using Big Data for Interactive Systems
Spring: 12 units
This course covers techniques and technologies for creating data driven interfaces. You will learn about the entire data pipeline from sensing to cleaning data to different forms of analysis and computation.

Course Website: http://data.cmubi.org
05-440 Interaction Techniques
Intermittent: 12 units
This course will provide a comprehensive study of the many ways to interact with computers and computerized devices. An "interaction technique" starts when the user does something that causes an electronic device to respond and includes the direct feedback from the device to the user. Examples include physical buttons and switches, on-screen menus and scroll bars operated by a mouse, touch screen widgets and gestures such as flick-to-scroll, text entry on computers or touch screens, game controllers, interactions in 3D and virtual/augmented reality, consumer electronic controls such as remote controls, and adaptations of all of these for people with disabilities. We will start with a history of the invention and development of these techniques, discuss the various options used today, and continue on to the future with the latest research on interaction techniques presented at conferences such as ACM CHI and UIST. Appropriate design and evaluation methods for interaction techniques will also be covered. Guest lectures from inventors of interaction techniques are planned. Students will have a choice for final projects that can focus on historical or novel interaction techniques.

Course Website: http://www.cs.cmu.edu/~bam/uicourse/05440inter/
05-452 Service Design
Fall: 12 units
In this course, we will collectively define and study services and product service systems, and learn the basics of designing them. We will do this through lectures, studio projects, and verbal and written exposition. Classwork will be done individually and in teams.
05-470 Digital Service Innovation
Intermittent: 12 units
Attention entrepreneurs, designers, and engineers! This course teaches you to invent digital services. You will learn about value-creation in the service sector and a human-centered design process including brainstorming, story-boarding, interviewing, video sketches, and pitching. Students work in small, interdisciplinary teams to discover unmet needs of users. They conceive of a digital service and assess its technical feasibility, financial viability, and desirability. Then they produce a plan with a business model and a video sketch and pitch it to industry professionals. Grades will be determined primarily by the quality of the team's products.
05-499 Special Topics in HCI
Fall and Spring: 12 units
Special Topics in HCI is an opportunity for students interested in HCI to gain a deeper understanding of a specific area in this field. Each class is designed to cover an emerging research area within HCI, from designing large-scale peer learning systems to designing games around audience agency. All sections will help students: (1) build a more comprehensive understanding of an area of study within HCI, (2) work closely with faculty and peers to create mini-projects or team assignments that help students master the course material, (3) explore evidence-based research methods and techniques in HCI. Sections will vary in topic and often change from semester to semester. Because of this, students can take multiple sections, as they are individual classes. Undergraduate sections are listed as 499 and graduate sections are listed as 899. For descriptions of specific sections for this academic year, visit the "Courses" section on the Human-Computer Interaction Institute website.

Course Website: http://www.hcii.cmu.edu/academics/courses
05-540 Rapid Prototyping of Computer Systems
Spring: 12 units
This is a project-oriented course, which will deal with all four aspects of project development: the application, the artifact, the computer-aided design environment, and the physical prototyping facilities. The class consists of students from different disciplines who must synthesize and implement a system in a short period of time. Upon completion of this course the student will be able to: generate systems specifications from a perceived need; partition functionality between hardware and software; produce interface specifications for a system composed of numerous subsystems; use computer-aided development tools; fabricate, integrate, and debug a hardware/software system; and evaluate the system in the context of an end user application. The class consists of students from different disciplines who must synthesize and implement a system in a short period of time.

Course Website: http://www.hcii.cmu.edu/courses/rapid-prototyping-computer-systems
05-571 Undergraduate Project in HCI
Spring: 12 units
Experiential learning is a 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. Student teams work with Carnegie Mellon University-based clients or external clients to iteratively design, build and test a software application which people directly use.
Prerequisites: 05-610 Min. grade B or 05-431 Min. grade B or 05-630 Min. grade B or 05-631 Min. grade B or 05-410 Min. grade B or 05-430 Min. grade B

Course Website: http://www.hcii.cmu.edu/courses/undergraduate-project-hci
05-589 Independent Study in HCI-UG
All Semesters
In collaboration with and with the permission of the professor, undergraduate students may engage in independent project work on any number of research projects sponsored by faculty. Students must complete an Independent Study Proposal, negotiate the number of units to be earned, complete a contract, and present a tangible deliverable. The Undergraduate Program Advisor's signature is required for HCI undergraduate-level Independent Study courses. Registration is through the HCII Undergraduate Programs Manager only.
05-600 HCI Pro Seminar
Fall: 6 units
This course is only for MHCI students. This course is specifically built to expose students to the world of HCI through research and industry talks, as well as strengthening HCI communication skills for work in industry. Seminar Component:To expose students to the world of HCI through research and industry expert talks with written assignments. Conflict Management Component:To educate students on conflict management, teamwork, active listening skills, and communication skills in order to give them tools to collaborate and work more efficiently on multi-disciplinary teams. Professional Series Component: To expose students to the world of HCI through guest speakers, prepare students to navigate job hunting through resume and portfolio workshops and to provide industry insights into HCI and the profession through guest speakers and panel discussions.

Course Website: http://www.hcii.cs.cmu.edu
05-602 IDeATe: Learning in Museums
Spring: 12 units
Learning in Museums brings together students from across the disciplines to consider the design of mediated learning experiences in a project-based inquiry course. Students will be introduced to a range of design research methods and associated frameworks that explore the cognitive, social and affective dimensions of learning in everyday contexts through readings, invited lectures, in-class activities and assignments. Students will conduct a series of short design research studies to define learning goals and develop supporting design concepts intended to improve learning outcomes for diverse participants in informal learning settings (e.g. museums, after-school programs, maker spaces or online). In concept development, we will look at how to position technology and question its role in the setting to engage and foster positive learning interactions and conversation. This semester we will be working with the Carnegie Museum of Natural History as our primary stakeholder. The course will culminate in a media-rich presentation of design concepts and a fielded prototype to a review panel and include a piloted evaluation plan describing how learning outcomes for the project would be assessed. In consultation with the instructor, students in the graduate section of the course will be assigned an HCI/learning research literature review and presentation related to their project topic.
05-610 User-Centered Research and Evaluation
Fall: 12 units
This course provides and overview and introduction to the field of human-computer interaction (HCI). 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 generative and evaluative research methods. This is a companion course to software implementation (05-430, 05-431 05-380). When registering for this course, undergraduate students are automatically placed the wait list. Students will be then moved into the class, based on if they are in the BHCI primary or second major and year in school e.g. seniors, juniors, etc. Freshman are not permitted to register in this course. In the Fall, this course is NOT open to students outside the HCI major or MHCI. The Spring offering is open to all students. This course is a core requirement for students in the HCI additional major and the MHCI program.

Course Website: http://www.hcii.cs.cmu.edu
05-615 Persuasive Design
Fall: 12 units
This project-based course focuses on the ethical, human-centered design and evaluation of persuasive technologies that aim to change users' attitudes, emotions, or behaviors in ways that benefit the self and/or society. In addition to exposing students to an array of psychological theories and strategies for implicit and explicit persuasion, the course will cover a variety of topics illustrating both the pitfalls and possibilities in designing for positive impact in HCI. The focal point of the class will be the semester project, for which student teams will iteratively conceptualize, prototype, implement, and evaluate a tool, system, or change to a ubiquitous computing environment that intends to stimulate and sustain belief or behavior change (such as reducing cognitive or social biases, building healthy or prosocial habits, or resisting other persuasive forces one encounters on a daily basis).
05-618 Human AI Interaction
Intermittent: 12 units
Artificial Intelligence is inspired by human intelligence, made powerful by human data, and ultimately only useful in how it positively affects the human experience. This course is an introduction to harnessing the power of AI so that it is beneficial and useful to people. We will cover a number of general topics: agency and initiative, AI and ethics, bias and transparency, confidence and errors, human augmentation and amplification, trust and explainability, mixed-initiative systems, and programming by example. These topics will be explored via projects in dialog and speech-controlled systems, automatic speech recognition, computer vision, data science, recommender systems, text summarization, learning science, UI personalization, and visualization. Students will complete individual weekly mini-projects in which they will design and build AI systems across a wide variety of domains. Students should be comfortable with programming; assignments will be primarily in Python and Javascript. Prior experience with AI/machine learning will be useful but is not required. Students will also be responsible for weekly readings and occasional presentations to the class.

Course Website: https://www.hcii.cmu.edu/academics/courses
05-619 Data Visualization
Fall: 12 units
This course is an introduction to key design principles and techniques for interactively visualizing data. The major goals of this course are to understand how visual representations can help in the analysis and understanding of complex data, how to design effective visualizations, and how to create your own interactive visualizations using modern web-based frameworks.

Course Website: https://dig.cmu.edu/courses/2022-fall-datavis.html
05-650 Interaction Design Studio II
Spring: 12 units
This course follows Interaction Design Fundamentals (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 interfaces 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.
Prerequisite: 05-651
Course Website: http://www.hcii.cmu.edu/courses/interaction-design-studio
05-651 Interaction Design Studio 1
Fall: 12 units
This studio course introduces students to design thinking and the basic practices of interaction design. We follow 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 (05-650). Students who are required to take this course have priority and will be enrolled first.
05-660 Interaction Design Fundamentals
Fall and Spring: 12 units
IXD Fundamentals introduces the human-centered design process as well as fundamental interaction design principles, methods, and practices. The course is for both students who may only enroll in one interaction design course and those who intend to build upon their HCI learning by taking advanced interaction design courses. Students must work effectively as individuals and in small teams to learn interaction design concepts and apply them to real-world problems. By the end of this course students should be able to; -Apply appropriate interaction design methods in a human-centered design process. -Create persuasive interim and final design artifacts that demonstrate communication design fundamentals. -Facilitate productive and structured critique across the class and with instructors. -Explain and apply fundamental interaction design principles. -Create clarity and readability in artifacts, including GUIs and deliverables, through the disciplined application of visual design principles such as typography, color and composition. -Practice reframing a given problem in order to create opportunities that drive generating multiple solutions. -Demonstrate habits that foster the creative process, including drawing, divergent thinking, and creative experimentation. -Identify and explore with interaction design materials. This course serves as a prerequisite for Advanced Interaction Design Studio (number TBD). Students who are required to take this course have priority and will be enrolled first. No coding is required.
05-661 Advanced Interaction Design
Spring: 12 units
Advanced Interaction Design (05-361/05-661) follows Interaction Design for Human-Computer Interaction (05-360/05-660). Students are expected to build on the basic interaction design principles they learned in Interaction Design for Human-Computer Interaction by applying advanced methods to solve more complex problems using emerging technologies in user experiences that cross devices, modalities and contexts. Students learn how to design with advanced technologies that predict, assist and automate, and make through a design system. Systems thinking, data as a design material, and UI design are emphasized in projects which are designed to give students experience solving complex problems that they are likely to encounter as practitioners. Advanced Interaction Design prepares students to become interaction designers that take a rigorous and principled approach to solving enterprise-scale problems where many systems and applications serve many stakeholders.
05-670 Digital Service Innovation
Fall: 12 units
Attention entrepreneurs, designers, and engineers! This course teaches you to invent digital services. You will learn about value-creation in the service sector and a human-centered design process including brainstorming, story-boarding, interviewing, video sketches, and pitching. Students work in small, interdisciplinary teams to discover unmet needs of users. They conceive of a digital service and assess its technical feasibility, financial viability, and desirability. Then they produce a plan with a business model and a video sketch and pitch it to industry professionals. Grades will be determined primarily by the quality of the team's products.
05-674 Ethics and Policy Issues in Computing
Intermittent: 9 units
Should autonomous robots make life and death decisions on their own? Should we allow them to select a target and launch weapons? To diagnose injuries and perform surgery when human doctors are not around? Who should be permitted to observe you, find out who your friends are, what you do and say with them, what you buy, and where you go? Do social media and personalized search restrict our intellectual horizons? Do we live in polarizing information bubbles, just hearing echoes of what we already know and believe? As computing technology becomes ever more pervasive and sophisticated, we are presented with an escalating barrage of decisions about who, how, when, and for what purposes technology should be used. This course will provide an intellectual framework for discussing these pressing issues of our time, as we shape the technologies that in turn shape us. We will seek insight through reading, discussion, guest lectures, and debates. Students will also undertake an analysis of a relevant issue of their choice, developing their own position, and acquiring the research skills needed to lend depth to their thinking. The course will enhance students' ability to think clearly about contentious technology choices, formulate smart positions, and support their views with winning arguments.
05-680 Independent Study in HCI - METALS
All Semesters
With the permission of the professor, METALS students may engage in independent project work on any number of innovative research projects sponsored by faculty. Students must complete an Independent Study Proposal, negotiate the number of units to be earned, submit a contract, and present a tangible deliverable. The Program Advisor's signature is required for the METALS Independent Study course.
05-685 Prototyping Algorithmic Experiences
Intermittent: 15 units
This project-based course provides an overview and hands-on introduction to iterative prototyping methods in HCI, with an emphasis on current and emerging technologies such as data-driven algorithmic systems, AI and machine learning, spatial computing, and IoT. Students will learn and implement approaches for creating and using prototypes to iteratively inform the creation of new technologies. The course will help students learn to strategically evaluate whether a given prototyping approach is a good fit for a given design or research question. In addition to HCI undergraduate majors, the course is open to undergraduate and graduate level students with proficiency in programming and prior courses or experience in user-centered research, design, and/or evaluation. Some exceptions to the course prerequisites will be granted with the permission of the instructor.
Prerequisites: 15-112 and (15-121 or 15-150 or 15-210 or 15-122) and (05-891 or 05-610) and (05-651 or 05-650 or 05-652 or 05-617 or 05-670)
05-738 Evidence-Based Educational Design
Fall: 12 units
The aim of this course is to teach students how to develop educational goals based on a detailed task analysis of the knowledge, skills, and dispositions required for mastery of a particular aspect of a domain. Goals for early childhood, elementary, middle school, high school, postsecondary, and adult education will be discussed and related to relevant state, national, and international standards. A comprehensive understanding of student achievement will be developed. The importance of matching the instructional program and its assessment to goals will be discussed and demonstrated. Assessment that focuses on covering the full range of specified goals will be studied along with diverse approaches for valid assessment. Other topics include making instructional material choices, funding, classroom management, ethics, schools, and social systems. Assignments will emphasize linking goals - instruction - assessment. A term project will consist of an in-depth study of one central unit in a discipline or grade level. Undergraduates are invited to take this course with special permission from Dr. Lauren Herckis.
05-823 E-Learning Design Principles and Methods
Fall: 12 units
This course is about e-learning design principles, the evidence and theory behind them, and how to apply these principles to develop effective educational technologies. It is organized around the book "e-Learning and the Science of Instruction: Proven Guidelines for Consumers and Designers of Multimedia Learning" by Clark and amp; Mayer with further readings drawn from cognitive science, educational psychology, and human-computer interaction. You will learn design principles 1) for combining words, audio, and graphics in multimedia instruction, 2) for combining examples, explanations, practice and feedback in online support for learning by doing, and 3) for balancing learner versus system control and supporting student metacognition. You will read about the experiments that support these design principles, see examples of how to design such experiments, and practice applying the principles in educational technology development.

Course Website: http://www.learnlab.org/research/wiki/index.php/E-learning_Design_Principles_2013#Course_Details
05-839 Interactive Data Science
Spring: 12 units
This course covers techniques and technologies for creating data driven interfaces. You will learn about the entire data pipeline from sensing to cleaning data to different forms of analysis and computation.

Course Website: https://hcii.cmu.edu/academics/courses
05-840 Tools for Online Learning
Fall: 12 units
In this course, we will explore issues that pertain to interaction and interface design. The class will focus on elements of the larger interaction design process including basic design principles, information architecture and navigation, planning and brainstorming methods, and techniques for developing rapid sketches and prototypes. Course Requirements: This class will not focus on learning specific software tools. Students are expected to have prior experience using a variety of design and programming tools. Please speak with the instructor if you have questions regarding these prerequisites. This course was design for students in the METALS program.
Back to top