All problems
Advanced·📚 Education·Coursera · Udemy · Chegg +2

Design
Course Registration System

Design a university course registration system where students enrol in course sections, prerequisite chains are validated via a dependency graph, schedule conflicts are detected, waitlists auto-enrol students on drop, and faculty manage their sections — all under high-concurrency during registration windows.

#OOP#Graph Algorithms#Concurrency#Scheduling
Start Solving 8F + 3NF requirements inside

01 -  Why interviewers ask this

Course Registration combines graph algorithms (prerequisite DAG), interval scheduling (conflict detection), concurrency control (last-seat race), and queue-based automation (waitlist promotion) — making it a strong signal for senior engineers who can bridge algorithmic thinking with clean OOP class design under real-world constraints.

02 -  Where this system exists in the real world

You interact with this design every day.

Direct model for university ERP systems like Banner, PeopleSoft, and Workday Student

Prerequisite graph validation is used in e-learning platforms (Coursera learning paths, LinkedIn Learning)

Waitlist and capacity management logic is reused in event booking, healthcare appointment, and class scheduling systems

Conflict detection generalises to employee shift scheduling, sports fixture planning, and conference room booking

03 -  What you'll master

Solve this once. Know it forever.

01

Model and traverse a prerequisite dependency graph using BFS/DFS

02

Implement interval-overlap detection for schedule conflict prevention

03

Handle last-seat race conditions with optimistic locking or compare-and-swap

04

Design a Waitlist with automatic promotion on vacancy using a FIFO queue

04 -  What you'll design

8 functional · 3 non-functional requirements.

Define courses with prerequisites (supports chains: A → B → C), credit hours, and department

7 more requirements inside

Sign in to unlock the full brief and start designing

Unlock Requirements

05 -  Companies that ask this

You may face this exact question in your next interview.

C
Coursera
U
Udemy
C
Chegg
G
Google
M
Microsoft

Ready?

Open the canvas.
Design it yourself.

See all requirements, use staged hints, run your code, and compare with community discussions - all on the same canvas.

Start Solving