Class and Degree Requirements

M.S. Course Requirements (30 credit hours):

Students have to complete 30 credits (10 3-hour courses). This includes fifteen credits of core courses, and fifteen credits of elective courses. In order to graduate, students must also meet the programming course requirement. Students should carefully read the Class and Degree Policies, and ask their advisor for any clarifications.

Core Courses (15 credits) (See details in graduate course catalog)

  • HCC 613 – Graphical User Interface Design & Implementation  (Offered every Spring)
    • Prerequisite or Corequisite: HCC 629
  • HCC 629 – Fundamentals of Human-Centered Computing (Offered every Fall and Spring)
  • HCC 636 – Structured Systems Analysis and Design (Offered every Fall and Spring)
  • HCC 710 – Graphic Design for Interactive Systems (Offered every Fall)
    • Prerequisite or Corequisite: HCC 629
  • HCC 729 – Human-Centered Design (Offered every Spring)
    • Prerequisite or Corequisite: HCC 629 and HCC 636

Elective Courses (15 credits)

We recommend students organize their electives according to a track:

  • Practitioner Track – select any five electives (see additional details).
  • Research Track (no thesis) – Take HCC 760, one independent study (HCC 700), and any three electives.
  • Research Track (with thesis) – Take HCC 760, one elective, one independent study (HCC 700) and two semesters of MS Thesis (HCC 799).

HCC Electives (Offered when possible. Check availability on class schedule)

  • HCC/IS 698 – Special Topics (change frequently, check catalog)
  • HCC 706 – Interfaces for Information Visualization and Retrieval (Offered every Spring)
  • HCC 727 – Computer-Supported Cooperative Work
  • HCC 741 – Introduction to Assistive Technology and Accessibility Research (not offered Spring ’23)
  • HCC 742 – Developing Interfaces for Rehabilitation (not offered Spring ’23)
  • HCC 746 – Affective Human-Computer Interaction (Offered in Spring of even years, e.g., Spring ’24)
  • HCC 760 – Human-Computer Interaction (Offered every Fall)
    • Prerequisite (HCC 629 and HCC 636)

Additional options outside HCC Program. Note: students may take a maximum of two electives outside the HCC program.

  • CMSC 679 – Introduction to Robotics
  • CMSC 628 – Introduction to Mobile Computing
  • CYBR 620 – Introduction to Cybersecurity
  • EDUC 601- Human Learning and Cognition
  • ENMG 650 – Project Management Fundamentals
  • PSYC 605 – Learning and Cognition
  • SOCY 600 – Research Methodology
  • SENG 601 – Ethics in Software Engineering

Programming Requirement

Students who are admitted without taking a college-level programming course will be required to complete one as a graduation requirement.

We recommend students who need to meet programming requirement take IS 600 which is typically offered during the Fall semester. In addition to meeting this graduation requirement, this course may be used as one of the five electives towards graduation.