These modules are organized by Knowledge Areas to help discover modules that are based on topics.

Our hope is to assist instructors in adopting modules by providing evaluations that will help prepare them on what they need to consider before adopting the module.

Algorithms and Complexity

Basic Analysis

Fundamental Data Structures and Algorithms

Advanced Data Structures Algorithms and Analysis

Algorithmic Strategies

Traffic Impact Analysis

Computational Science

Introduction to Modeling and Simulation

College Admissions Algorithms

Interactive Visualization

Ethical Implications of the Adoption of Facial Recognition Technology

Discrete Structures

Graphs and Trees

Polling Data, Binary Trees, and Heaps

Graphics and Visualization


White Hat/Black Hat Visualization

Human-Computer Interaction


Inclusive Design

Human Factors and Security

Information Assurance and Security

Security Policy and Governance

Foundational Concepts in Security


Information Management

Data Mining

Biases in Predicting Recidivism and Questions of Fairness

Information Management Concepts

Transparency in Decision-Making Interfaces

Information Storage and Retrieval

Transparency in Decision-Making Interfaces

Intelligent Systems

Basic Knowledge Representation and Reasoning

AI Admissions App

Basic Machine Learning

Fairness, Accountability, Transparency, Privacy

Advanced Machine Learning

Fairness, Accountability, Transparency, Privacy

Fundamental Issues

Self-driving Buses


The Ethics of Lethal Autonomous Weapons


The Ethics of Lethal Autonomous Weapons

Perception and Computer Vision

Parallel and Distributed Computing

Cloud Computing

Ownership and Privacy

Platform-Based Development

Mobile Platforms

Surveillance in the Times of Covid

Software Development Fundamentals

Algorithms and Design

Fundamental Programming Concepts

Fundamental Data Structures

Development Methods

An Introduction to Software Engineering Ethics

Software Engineering

Software Processes

AI Admissions App

Software Design

Software Project Management

Requirements Engineering

Software Verification and Validation

An Introduction to Software Engineering Ethics

Social Issues and Professional Practice

While all of the modules evaluated here fall into this knowledge area in one way or another, there are some that are particularly well-suited for a course focused on Responsible Computer Science.