15 440

Distributed Systems

Carnegie Mellon University · UGRD · Fall 2026

1 section
Add to a schedule

Catalog description

The goals of this course are twofold: First, for students to gain an understanding of the principles and techniques behind the design of distributed systems, such as locking, concurrency, scheduling, and communication across the network. Second, for students to gain practical experience designing, implementing, and debugging real distributed systems. The major themes this course will teach include scarcity, scheduling, concurrency and concurrent programming, naming, abstraction and modularity, imperfect communication and other types of failure, protection from accidental and malicious harm, optimism, and the use of instrumentation and monitoring and debugging tools in problem solving. As the creation and management of software systems is a fundamental goal of any undergraduate systems course, students will design, implement, and debug large programming projects. As a consequence, competency in both the C and Java programming languages is required. Prerequisite: 15-213 Min. grade C Course Website: https://www.andrew.cmu.edu/course/15-440/

Sections

Current meeting, instructor, credit, and enrollment details

Updated 5 hours ago

001

Availability not recently verified
Class #carnegie_mellon-15440Fall 2026UGRD12 credits
Days & times
No scheduled meeting time
Meeting dates
Location
Instructor
Staff
Class numbers and section codes come from the registrar.
Spot missing or incorrect course data?