title: Database Management Systems (DBMS)
meeting_times: Mon/Wed/Friday 9:00–9:50 AM
location: 2201 Hull Mcknight GCC
instructor: Dr. Nisha Panwar
email: npanwar@augusta.edu
office_hours: Mon, Wed 10:30 - 11:30 AM (or by appointment)
lms_link: Desire2Learn (D2L)
Database Management Systems (DBMS)
This course introduces the foundations of modern database systems: data modeling, SQL, normalization, indexing, query processing and optimization, transaction management, and recovery. By the end, you will be able to design relational schemas, write correct and efficient SQL queries, and explain how a DBMS executes queries reliably at scale.
By the end of the course, you should be able to:
- Model real-world applications using ER/EER diagrams and convert them to relational schemas.
- Write complex SQL queries (joins, aggregation, subqueries, views) and reason about correctness.
- Explain core storage concepts, indexing (B+ trees, hashing), and access paths.
- Describe query execution (scans, selections, projections, joins) and cost-based optimization.
- Explain transactions, ACID properties, concurrency control, and recovery (logging/checkpointing).
- Evaluate practical DB design and performance decisions using simple experiments.
- Programming proficiency (any language)
- Basic data structures (arrays/lists, trees helpful)
- Announcements and grades: LMS
- Questions: post to LMS discussion board (preferred) or email for personal matters.
- Email subject format: [aist3410] Topic — Your Name
- SQL engine: MySQL or PostgreSQL (setup instructions provided)
- Optional: Docker for consistent local environments
- LMS (or GitHub) for submissions
- Silberschatz, Korth, Sudarshan — Database System Concepts
- Ramakrishnan and Gehrke — Database Management Systems
- Homework / Labs (SQL and design): 30%
- Final exam (or final project): 20%
- Participation (quizzes or in-class activities): 30%
- Each student has 5 late days for the term (24 hours equals 1 late day).
- After late days are used: 10% per day penalty, up to 3 days late.
- No submissions accepted after solutions are released unless documented emergencies.
- You may discuss concepts with classmates.
- All submitted work must be your own (or your team’s for team deliverables).
- For SQL assignments: you may discuss approach, but do not share finished queries.
- Always list collaborators (names) in your submission.
- Explaining concepts (What is a B+ tree?)
- Debugging help if usage is cited and work is explained in your own words
- Generating final answers submitted as-is (SQL queries, ER diagrams, proofs, exam answers)
- Using AI during exams or quizzes unless explicitly stated
If AI is used: include a short AI-use note describing prompt summary, changes made, and what was learned.
Course schedule (14 weeks)
| 1 | Course intro; What is a DBMS? Data independence; DB architecture |
| 2 | Relational model; constraints; keys; relational algebra basics | RA to SQL mapping |
| 3 | SQL I: SELECT/FROM/WHERE; joins; NULL semantics | Query practice set |
| 4 | SQL II: GROUP BY/HAVING; subqueries; set ops; views | Query clinic |
| 5 | Query processing I: operators; scans; selections; projections; join ordering; NLJ|
| 6 | Query processing II: joins (cost model for NLJ, join selectivity, sort-merge, hash join)|
| 7 | Storage and file organization; pages/records; buffer manager |
| 8 | Indexing I: clustered vs unclustered; composite indexes |
| 9 | Indexing II: B+ trees traversal, insertion, deletion |
| 10 | MIDTERM Indexing III: hashing; index selection |
| 12 | SQL IV recursive relations
| 14 | Transactions and concurrency: ACID; schedules; locking; deadlocks; isolation levels |
| 15 | Recovery: WAL logging; checkpoints; crash recovery; intro to distributed DBs |
- SQL homeworks focusing on correctness, readability, and edge cases
- Design tasks including ER modeling, schema mapping
- Performance labs with indexing experiments and query plan interpretation
- Course project integrating design, querying, and optimization
theme A: workflow design /mini application
- Choose a domain such as clinic, inventory, course management, or publications
- Design ER and relational schema with constraints
- Write a query suite (10–15 queries)
- Demonstrate at least two performance improvements
theme B: system-level design
- Replicate a small DBMS component experiment (joins, indexing trade-offs)
- Compare alternatives using measured results
- Checkpoint 1: schema, initial data, and queries
- Checkpoint 2: query plans and optimization
Accessibility and support
If accommodations are needed, reach out early to coordinate with university services. If you are struggling, attend office hours.
Academic dishonesty such as plagiarism, unauthorized aid, copied SQL, or sharing solutions will be handled under university policy.