BS Computer Science – People Thread

Design, build, and evaluate systems that treat humans as the central component.

The People thread is where computing meets users. This thread prepares students by helping them to understand the theoretical and computational foundations for designing, building, and evaluating systems that treat the human as a central component.

The student who pursues the People thread can combine it with Devices to study human-robot interaction, Information Internetworks to pursue research in data visualization, Intelligence for learning sciences and technology, Systems & Architecture to explore ubiquitous computing, or various other combinations.


Early Preparation
  • Common Data Structures
  • Programming Fundamentals and Algorithms
  • Object-oriented design and programming
  • Concurrent Processing and Event-driven programming
  • Experience building simple GUIs
Knowledge Goals
  • Understanding human behavior with interactive objects
  • Knowing how to develop and evaluate interactive software using a human-centered approach
  • General knowledge of HCI design issues with multiple types of interactive software.
  • Achieve a depth of understanding of some aspect of people: perceptual, social, motor, cognitive, and so on
Skill Outcomes
  • Able to apply HCI techniques to identify usability problems and gather design requirements
  • Able to build working systems to address those problems
  • Able to apply qualitative and quantitative techniques to evaluate the success of those systems

Resources and Role Models


If you are following one of the BSCS Threads study plans implemented before Summer 2012 or one of the BSCS study plans that were in place prior to Threads, click here.

Required Courses (For Students in the Program of Study that begins Summer 2012)

View the course prerequisites for the People Thread.

Must take PSYC 1101 as one of the Social Sciences electives

  • CS1301 Introduction to Computing and Programming, 3
  • CS1331 Introduction to Object-Oriented Programming, 3
  • CS2340 Objects and Design, 3
  • PSYC2015 Research Methods and Practices, 4

Pick 1 of Social/Behavioral Science for Computing:

  • PSYC2210 Social Psychology, 3
  • PSYC2760 Psychology of Human Language, 3
  • PSYC3040 Sensation and Perception, 3

Pick 2 of Human-Centered Technology:

  • CS3750 Human-Computer Interface Design and Evaluation, 3
  • CS3790 Introduction to Cognitive Science, 3
  • CS4660 Introduction to Educational Technology, 3

Pick 1 of User Support Technology

  • CS4460 Information Visualization, 3
  • CS4470 Introduction to User Interface Software, 3
  • CS4605 Mobile and Ubiquitous Computing, 3
  • CS4625 Intelligent and Interactive Systems, 3

Elective Courses (pick and choose whatever courses you wish)

Free Electives (6 hours)

  • FREE-PEP1 Free Elective-People, 3
  • FREE-PEP2 Free Elective-People, 3

Educational Technology

  • CS4660 Introduction to Educational Technology, 3
  • CS4665 Educational Technology: Design and Evaluation, 3
  • CS4670 Computer-Supported Collaborative Learning, 3

Design and Evaluation

  • CS3750 Human-Computer Interface Design and Evaluation, 3
  • CS4472 Design of Online Communities, 3
  • CS4690 Qualitative Methods, 3
  • CS4770 Mixed Reality Experience Design, 3
  • PSYC2020 Psychological Statistics, 4 (Required for PSYC3011, Requires PSYC2010)

Human Cognition and Interaction

  • CS3790 Introduction to Cognitive Science, 3
  • CS4793 Perspectives Cognitive Science, 3
  • PSYC2210 Social Psychology, 3 (Requires PSYC1101)
  • PSYC2760 Psychology of Human Language, 3
  • PSYC3012 Cognitive Psychology, 4 (Requires 2020)
  • PSYC3040 Sensation and Perception, 3
  • PSYC4090 Cognitive Neuropsychology, 3
  • PSYC4260 Aging, 3