Welcome to Computer Science 235!

Your instructor is Adam Shaw, whose email address is ams at cs dot uchicago dot edu and whose office is Ryerson 157.

The syllabus is here: cs235-2015-syllabus.pdf.

This course offers both a theoretical and practical introduction to the design and implementation of database systems. To enroll in the course, you must have taken the introductory CS major/minor courses up to 154, or have received explicit permission from the instructor.

A reasonable level of expertise in C programming is essential to participation in CS235. You will be expected to implement a large project in C, yet C programming itself is not taught in this course.

Lectures are Tuesdays and Thursdays from 1:30 to 2:50 in Ryerson 251.

The course syllabus is coming soon.

The text for the course is Database System Concepts, Sixth Edition by Silberschatz, Korth and Sudarshan. The book is available on campus at the Seminary Co-op Bookstore and on the Internet, new and used, at the usual assortment of online bookstores.

We will use the squire system to manage questions and answers pertaining to the course and course content. You will need an account to participate. Apart from online assistance, in-person help is available during office hours, listed below.

Homework and Projects

Evaluation

There will be no final exam. The last part of the project will be due during finals week (except for graduating students).

Late Work Policy

Simple: late work is not accepted.

Instructor's Office Hours

(revised Apr 22) Office hours are on the following days at the following times (note the locations):

Teaching Assistants

Whenever possible, please communicate with your teaching assistants through squire.

chi* Links

Lecture Schedule

(subject to change)

WeekTuesdayThursdayProjects
1 (Tues 3/31) Welcome! relational database concepts
2 (Tues 4/7) B trees database design
3 (Tues 4/14) relational algebra I relational algebra II project 1 due (Mon 4/20)
4 (Tues 4/21) tuple relational calculus SQL I
5 (Tues 4/28) SQL II entity-relationship I
6 (Tues 5/5) entity-relationship II web databases, SQL injection project 2 due (Monday 5/4)
7 (Tues 5/12) Midterm Exam file organization, indices
8 (Tues 5/19) dependency theory query implementation and optimization I
9 (Tues 5/26) query implementation and optimization II transactions and serializability project 3 due (tentatively Tues 5/26)
10 (Tues 6/2) two-phase locking (reading period)
11 (Tues 6/9) (exam week) (exam week) project 4 due (tentatively Tues 6/9)

Academic Honesty

College-wide honesty guidelines are here.

The following rules of thumb summarize honesty as it pertains to CS 235:

As a corollary to the fourth rule, sharing completed work in advance of its deadline in any way, including posting to the Internet, is expressly forbidden.

As a corollary to the fifth rule, when it is time to do the actual coding, writing, etc., do your own work. Identical submissions from different students will be considered a breach of honesty.

Any student who behaves dishonestly will suffer serious consequences.