Additional Course Information


Textbook:
Database Management Systems 3rd Edition by Ramakrishnan and Gehrke.

Grading Policy (percentages subject to change):
  • Homework/Project Assignments: 40% of semester grade. See assignment info below.
  • Mid-term 1: 15% of the semester grade.
  • Mid-term 2: 15% of the semester grade.
  • Final Exam: 30% of the semester grade.
Notes on grading (please read):
  • The percentages are subject to change as circumstances dictate.
  • Since exams are the main indicators we have of individual grasp of the material, we reserve the right to adjust final letter grades based on exam performance.  In particular, students who do not achieve a passing average on the exams will not receive a passing grade in the class.
  • We will be following the EECS departmental policy on Academic Honesty, so be sure you are familiar with it.
Assignments (see Assignments Page for details):

NUMBER NAME DUE DATE % of PROJECT GRADE
(subject to change)
1 PostgreSQL Buffer Manager
Part 1 M 9/15
Part 2 F 9/26
20%
2 PostgreSQL  Internals Project II
approx 10/27
40%
3 PostgreSQL Optimizer Assignment
approx 11/10
10%
4

Application Development Project

approx 12/2
30%

This semester, we will be doing three types of assignments. For the first two assignments we will be modifying the internals of the PostgreSQL database management system -- a full-function, open-source DBMS with most of the features we will study this semester.  PostgreSQL is written in C, and it is assumed that you are comfortable programming in C, debugging via gdb, and so on.  The third assignment involves writing SQL queries and understanding the query plans generated by the PostgreSQL optimizer.   The fourth assignment will be to build and optimize a web application using Ruby-on-Rails and sqlite.

Late Policy on Homeworks (updated 9/23) . Each student gets an automatic extension of 4 calendar days. You can use the extension on any assignment(s) remaining during the semester (in increments that are rounded up to the nearest integer). For instance, you can hand in one assignment 4 days late, or each of four assignments 1 day late. For group project assignments, the slip time will be deducted from each team member's remaining slip time. When you hand in a late assignment, you must identify in the README file the following: (i) how late this assignment is, and (ii) how much of the total slip time you have left. No assignment will be accepted more then 4 days late. After you have used up your slip time, any assignment handed in late will be marked off 25% per day. There will be no extensions granted.