Design a university management system database
PremiumDatabase designEasy
- ER diagram
- Relational modeling
- Many to many
Quick answer
This database design interview question asks you to design a university management system database. Aim for a design that stores data correctly and serves its main queries well, then explain the schema, keys, indexes and trade-offs. Interviewers want to see how you model entities, choose keys and design for the real access patterns.
The problem
Design the database for a university management system. Students enrol in course sections each term, attend classes in rooms at scheduled times, receive grades and get a transcript. The hard part is registration week, when thousands of students compete for seats in the same popular sections.
Courses have prerequisites. A section has a capacity, an instructor and a weekly timetable.
What must a university management system database do?
- Enrol: Add a student to a section if seats remain, prerequisites are met, there is no timetable clash with their other sections, and they stay within 24 credits for the term.
- Catalog: List courses by department with credits, description and prerequisites; show the sections offered this term with instructor, timetable, room and seats left.
How well must it do it?
- No overbooking: A section never has more enrolled students than its capacity, even during registration rush.
- No clashes: A student cannot hold two sections that meet at overlapping times; a room cannot host two sections at once.
What scale should you design for?
Use these numbers in your estimates.
The scale numbers unlock with this questionUnlock
Key concepts
- ER diagram
- Relational modeling
- Many to many
- Capacity constraints
- Waitlists
- Historical records
How you’ll practise
- Access patterns
- Entities
- Schema
- Indexes and queries
- Scale and consistency
- Wrap-up
Lala, personalized to you, gives a hint when you ask and reviews your design when you are ready.
What do interviewers look for?
In any database design round.
- Lists the entities and how they relate before writing tables
- Designs the schema around the main access patterns
- Chooses primary keys, foreign keys and indexes with reasons
- Explains where to normalise and where to denormalise
- Considers integrity, transactions and concurrent writes
- Plans for growth: partitioning, archiving and migrations
Questions people ask about this interview question
- Which design type is this question?
- It is a database design question. You design a university management system database and explain your choices the way you would in an interview.
- Is this question asked at entry level?
- It is marked Easy, so it suits engineers who are new to database design interviews. It is also a good warm-up before harder questions.
- What should I cover first?
- Start with the entities and the main queries the database must answer. Agree on scope with the interviewer before you design anything.
- Can I practise it for free?
- It is a premium question. Sign up and unlock it once for 10 credits; it then stays unlocked. When you finish, Lala, your personalized AI mentor, can review your design for 30 credits.
Related questions
Updated · Written by the SevyDevy team