CS 374: Database Systems
James Madison University, Spring 2020 Semester

Course Syllabus Detailed Schedule PDBM Textbook

About the Course


Chris Mayfield, Ph.D.

This database design course is for advanced undergraduates in computer science. Database systems are essential to nearly every business today. The goal of this course is to give you hands-on experience with fundamental data management techniques. We will focus mainly on the relational model and the use of SQL, a declarative programming language for writing queries. You will gain practical experience designing and programming data-driven applications that directly impact the real world.

We will also study design theory and normalization, embedding SQL in host languages like Java and Python, the basics of 3-tier web development, issues in query optimization and transaction processing, and noSQL databases like MongoDB and Neo4j. The knowledge and skills you acquire in CS 374 will open the door to solving interesting and challenging problems—not to mention summer internships and networking opportunities.

Unless otherwise noted, the materials on this website are freely available under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.