CS 542: Database Management Systems

Class Meetings

Venue: FL 311
Date/Time: Thursday, 6:00 - 9:00 pm

Teaching Staff

Instructor: Murali Mani, FL-235, x6421, mmani@cs.wpi.edu
Office Hours: M: 9:30 - 10:30, after class on Thursdays

Regarding when to approach the instructor with questions outside of class, please keep in mind the following. We are always willing and eager to answer your questions, and would like you to master the topics covered in a timely manner. There are different venues for bringing questions outside the lecture hours: (a) the instructor will be available immediately after lecture to answer questions (b) you may attend office hours, and if the above hours are not suitable, set up additional appointment (c) you may send an email explaining your questions.

Objectives

This course is an introduction to the theory and design of database management systems (DBMSs). Topics covered include internals of database management systems, fundamental concepts in database theory, and database application design and development. In particular, logical design and conceptual modeling, physical database design strategies, relational data model and query languages (SQL), query optimization, concurrency control and transaction management.

While we primarily concentrate on relational DBMSs, we may possibly also touch on selected topics from the current database research literature, such as distributed databases, web databases, object-relational databases, decision support systems, data warehousing, data mining, based on available time and interests of the students.

Quantitative examples and hands-on assignments will be given. Students will conduct a course project.

Background Material

The core mathematical principles behind relational databases is that of sets, relations and functions. An understanding of these concepts is necessary. A recap of these concepts can be obtained here.

Also for one part of the project, you will integrate the SQL knowledge you learn in this class with other programming languages, such as Java, C, Perl etc. Therefore you must be able to program in at least one of these languages.

Discussion Board

Please use the discussion board available at myWPI.