Human-Computer Interaction Program
Haiyi Zhu, Director of the Undergraduate Programs and Professor, Human-Computer Interaction Institute
Email: haiyiz@andrew.cmu.edu
Amelia Baisley, Academic Program Manager, Human-Computer Interaction Institute
Ashley Kosko, Senior 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.
Curriculum - B.S. in Human-Computer Interaction
The following requirements are for students entering Fall 2024.
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 distributed as follows:
- CS Core: 5 courses + freshman immigration course
- Core @ CMU: 3 units
- Mathematics and Statistics: 4 courses
- HCI Core: 6 courses
- Psychology: 1 course
- 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: 36 courses
Computer Science Core (5 courses + immigration course)
Prerequisite Courses | Units | |
15-112 | Fundamentals of Programming and Computer Science | 12 |
07-131 | Great Practical Ideas for Computer Scientists | 2 |
Required Courses | Units | |
07-128 | First Year Immigration Course | 3 |
15-122 | Principles of Imperative Computation | 12 |
15-150 | Principles of Functional Programming | 12 |
15-151 | Mathematical Foundations for Computer Science | 12 |
15-210 | Parallel and Sequential Data Structures and Algorithms | 12 |
15-213 | Introduction to Computer Systems | 12 |
Mathematics and Statistics Core (4 courses )
Prerequisite Course | Units | |
21-120 | Differential and Integral Calculus | 10 |
Required Courses | ||
21-122 | Integration and Approximation | 10 |
21-259 | Calculus in Three Dimensions | 10 |
Select one of the following courses: | ||
15-259 | Probability and Computing | 12 |
21-325 | Probability | 9 |
36-218 | Probability Theory for Computer Scientists | 9 |
36-225 | Introduction to Probability Theory | 9 |
Select one of the following courses: | ||
15-251 | Great Ideas in Theoretical Computer Science | 12 |
21-241 | Matrices and Linear Transformations | 11 |
21-242 | Matrix Theory | 11 |
36-226 | Introduction to Statistical Inference | 9 |
36-401 | Modern Regression | 9 |
HCI Core (6 courses)
Research & Evaluation Courses (2) | Units | |
05-410 | User-Centered Research and Evaluation | 12 |
Select one: | ||
36-202 | Methods for Statistics & Data Science | 9 |
36-315 | Statistical Graphics and Visualization | 9 |
70-208 | Regression Analysis | 9 |
Ideation & Design Courses (2) | ||
05-360 | Interaction Design Fundamentals | 12 |
Select one: | ||
05-361 | Advanced Interaction Design | 12 |
05-291 | Learning Media Design | 12 |
05-315 | Persuasive Design | 12 |
05-317 | Design of Artificial Intelligence Products | 12 |
05-418 | Design Educational Games | 12 |
05-452 | Service Design | 12 |
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. | ||
Technical Core (2) | ||
05-380 | Prototyping Algorithmic Experiences | 15 |
05-431 | Software Structures for User Interfaces | 12 |
Psychology (1 course)
Select one: | Units | |
85-211 | Cognitive Psychology | 9 |
85-213 | Human Information Processing and Artificial Intelligence | 9 |
85-241 | Social Psychology | 9 |
85-251 | Personality | 9 |
85-370 | Perception | 9 |
85-408 | Visual Cognition | 9 |
85-421 | Language and Thought | 9 |
88-120 | Reason, Passion and Cognition | 9 |
Note: The Psychology course fulfills the Category 1: Cognition, Choice and Behavior requirement for HCI majors. |
HCI Electives (3 courses)
HCI Design Elective (1) **Select a different course from that chosen under Ideation and Design HCI core (above) | Units | |
05-361 | Advanced Interaction Design | 12 |
05-291 | Learning Media Design | 12 |
05-315 | Persuasive Design | 12 |
05-317 | Design of Artificial Intelligence Products | 12 |
05-418 | Design Educational Games | 12 |
05-452 | Service Design | 12 |
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. | ||
HCI Technical Elective (1) | ||
05-318 | Human AI Interaction | 12 |
05-333 | Gadgets, Sensors and Activity Recognition in HCI | 12 |
05-434 | Machine Learning in Practice | 12 |
05-839 | Interactive Data Science | 12 |
10-315 | Introduction to Machine Learning (SCS Majors) | 12 |
11-411 | Natural Language Processing | 12 |
15-281 | Artificial Intelligence: Representation and Problem Solving | 12 |
15-365 | Experimental Animation | 12 |
15-388 | Practical Data Science | 9 |
15-462 | Computer Graphics | 12 |
15-464 | Technical Animation | 12 |
15-466 | Computer Game Programming | 12 |
15-494 | Cognitive Robotics: The Future of Robot Toys | 12 |
16-467 | Introduction to Human Robot Interaction | 12 |
17-428 | Machine Learning and Sensing | 12 |
17-437 | Web Application Development | 12 |
17-537 | Artificial Intelligence Methods for Social Good | 9 |
**The remaining (1) elective 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. |
SCS Elective (1 Course)
This elective can be from any SCS department; 200-level or above, at least 9 units (see exceptions below): Computer Science [15-], Computational Biology [02-], Human Computer Interaction [05-], Machine Learning [10-], Language Technologies [11-], Robotics [16-], and Software Engineering [17-]. (NOTE: The following undergraduate courses do NOT count as Computer Science electives: 02-201, 02-223, 02-261. Some IDEATE courses and some SCS undergraduate and graduate courses might not be allowed based on course content. Consult with HCI advisor before registration to determine eligibility for this requirement.
*Students who take two intro minis from 02-180, 05-180, 07-180, and 16-180 during their first year may use these two courses together as one SCS elective.
HCI Capstone Project (1 course)
05-571 | Undergraduate Project in HCI | 12 |
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. |
Core@CMU (1 Course)
The following course is required of all CMU students: | ||
99-101 | Core@CMU | 3 |
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 2024.
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 three courses, listed below.
- Introductory statistics course, details below
- Psychology (details below) must be completed before enrolling in the HCI core course 05-410 User-Centered Research and Evaluation
- 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
Prerequisites | Units | |
Psychology (Select one) | ||
85-211 | Cognitive Psychology | 9 |
85-241 | Social Psychology | 9 |
85-213 | Human Information Processing and Artificial Intelligence | 9 |
Design | ||
05-360 | Interaction 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-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 |
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)
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-410 | User-Centered Research and Evaluation | 12 |
Select one: | ||
05-361 | Advanced Interaction Design | 12 |
05-291 | Learning Media Design | 12 |
05-315 | Persuasive Design | 12 |
05-317 | Design of Artificial Intelligence Products | 12 |
05-418 | Design Educational Games | 12 |
05-452 | Service Design | 12 |
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 | 15 |
05-380 | Prototyping Algorithmic Experiences | 15 |
05-431 | Software Structures for User Interfaces | 12 |
Capstone | ||
05-571 | Undergraduate Project in HCI | 12 |
Special Notes for Design Majors
- Design majors do not need to take 05-360 Interaction Design Fundamentals 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. For more information, see the HCII website: https://www.hcii.cmu.edu/academics/accelerated-masters
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 2024.
Prerequisite (select one) | Units | |
15-110 | Principles of Computing | 10 |
15-112 | Fundamentals of Programming and Computer Science | 12 |
15-121 | Introduction to Data Structures | 10 |
15-104 | Introduction to Computing for Creative Practice | 10 |
Core Courses | Units | |
05-391 | Designing 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-360 | Interaction Design Fundamentals | 12 |
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 Fundamentals 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 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 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.
Admission to the Minor
Because space is limited in the minor's required courses, enrollment in the HCI minor is currently limited. The admissions period occurs in spring semesters. For more details, see the website at https://www.hcii.cmu.edu/academics/hci-undergrad/minor-hci.
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-180 Introduction to Human-Computer Interaction
- Spring: 5 units
This course is for first-year students who are interested in learning more about HCI, especially first-year SCS students considering the primary HCI major.
- 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 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 Fundamentals 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.
Prerequisites: 05-392 or 05-651 or 05-360
- 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-121 or 15-122 or 15-150 or 15-210) and (05-650 or 05-651 or 05-391 or 05-410 or 05-392 or 05-470 or 05-317 or 05-360 or 05-452)
- 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-112 or 15-110 or 15-122 or 15-104
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. When registering for this course, undergraduate students are automatically placed the wait list.
- 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.
Prerequisites: 85-421 or 85-408 or 85-370 or 85-251 or 85-213 or 85-211 or 85-241 or 88-120
- 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-110 or 15-104 or 15-112 or 15-127 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-437 or 17-514 or 17-214 or 15-214 or 15-213 or 18-213 or 15-513 or 14-513
- 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.
Course Website: https://www.hcii.cmu.edu/course/digital-service-innovation
- 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-631 Min. grade B or 05-410 Min. grade B or 05-430 Min. grade B or 05-431 Min. grade B or 05-610 Min. grade B or 05-630 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.
Prerequisites: 85-213 or 85-211 or 85-241 or 88-120 or 85-370 or 85-408 or 85-421 or 85-251
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 Fundamentals 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.
Prerequisites: 05-651 or 05-692 or 05-660
- 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.
Course Website: https://www.hcii.cmu.edu/course/digital-service-innovation
- 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, technical studio course provides an overview and hands-on introduction to iterative prototyping methods in HCI. Students learn methods and strategies to iteratively prototype novel technologies with users. Students will practice strategically evaluating whether a given prototyping approach is a good fit for a given design or research question (e.g., in terms of expected time, effort, and informativeness). Through a series of rapid course projects, students will explore the cutting-edge of HCI methods for prototyping complex interactive experiences with challenging design materials, such as AI and machine learning, social computing, and spatial computing. 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-210 or 15-150 or 15-122 or 15-121) and (05-891 or 05-651 or 05-650 or 05-652 or 05-610 or 05-617 or 05-660 or 05-392 or 05-670)
- 05-738 Evidence-Based Educational Design
- Fall: 12 units
In this course, we will explore the essential principles of educational design, focusing on creating inclusive environments for diverse learners and promoting positive behavior. We will explore effective strategies for measuring learning outcomes, enhancing student engagement, and assessing educational effectiveness. Students will prepare for careers as instructional designers, learning engineers, educators, and researchers as we cover the range of topics in this class. The coursework includes a thorough examination of current research in learning sciences through various papers and textbooks. Additionally, students will apply these theoretical principles practically by completing two hands-on projects, seeing the direct application of the concepts to real-world use cases. Class time will be spent discussing the weekly readings, highlighting relevant case studies, and engaging in group activities that foster collaboration and practical application of the material covered. This course will prepare students for real-world challenges in educational design and help integrate learning science knowledge through practical experience, enabling them to create effective educational designs and strategies.
- 05-823 E-Learning Design Principles and Methods
- Fall: 12 units
Good design is a continuous improvement process that combines scientific principles and data-driven methods to achieve desired outcomes. E-learning design is no exception. In this course, you will learn how to design innovative e-learning, that is, online interactions and technology that make learning more effective and efficient. You will practice instructional design using learning science theories and principles and learning engineering using data-driven methods to discover insights about how learners think. Instructional designers explain and use principles of learning and instruction such as proven ways to support learning-by-doing, like deliberate practice and self-explanation, and proven ways to support multimedia learning from text, visuals, and audio. They employ "backward design": designing and aligning learning goals, the assessments that measure them, and the instruction that achieves them. But today's learning engineers do not simply design in sequence and #8212; goals then assessments then instruction and #8212; but are agile and iterative. They collect qualitative data, for example, by having an expert "think aloud" while performing one of their assessments and use the results to add or change goals. They collect and use quantitative data, for example, by mining learning data from online course interactions or by comparing alternative designs in an A/B experiment. By using data, learning engineers create innovative and effective designs unlike the results of others who rely on science and intuition alone. You will do so too in an end-to-end e-learning design project, where you develop an e-learning module of your choice, continuously improve it, and test it in an A/B experiment.
Course Website: https://www.hcii.cmu.edu/course/e-learning-design-principles
- 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.