CSE 544 - Syllabus, Winter 2009

 

Goals and class format

Databases are at the heart of modern commercial application development. Their use extends beyond this to many applications and environments where large amounts of data must be stored for efficient update and retrieval. The purpose of this course is to provide an introduction to the design and use of database systems, as well as an appreciation of the key issues in building such systems.

The class meets twice a week. Each lecture comes with one or two reading assignments. It is very important that you read the papers before class and come prepared to discuss them. Each class will be a mix of lecture and discussion. Class participation is a significant part of your final grade.

There will be three homework assignments. The main goal of these assignments is to ensure that everyone in the class knows (a) how to use a database management system (DBMS), (b) how to write applications that use such a system, and (b) gets a sense of how to build a DBMS.

A big part of the class will be a programming project, which will be designed as a mini research project. You can find the instructions for the project on the class website (http://www.cs.washington.edu/education/09wi/544/project/). At the end of the project, you are expected to hand-in a conference-style paper and make a presentation in class.

 

General advice

Read the papers before coming to lecture and start your project early. Plan to work on the project, readings, and assignments in parallel! There is not enough time between deadlines to work on them in sequence. We expect you to spend a significant amount of time each week working on this class.

 

Assumed Background

We assume that you have taken an undergraduate database class and that you vaguely remember it. If you did not take a database class before, for each topic that we cover, you should read the related undergraduate material in the textbook. You can also expect that the workload in the class will be higher for you. But this should not discourage you from taking the class. In the past, students without prior database knowledge have successfully taken the class.

 

Textbooks and lecture notes

We will post copies of the slides used in the lecture on the class web site (after the lecture).

The following book is required for the class. A few lectures will review material from this textbook and will include readings from this book. Please make sure to get the third edition of this book.

The following are additional books that you may find useful:

 

Evaluation

The evaluation includes 3 assignments, a project, paper reviews, class participation, and a final exam.

Late policy: Since this is a graduate class, we are more lenient about late days. We will accept valid excuses (conferences, paper deadlines, etc.) and will work with you to figure out the earliest day that you can hand in your work. Note, however, that the schedule for the entire course is very tight. Once you fall behind, it will be very hard to catch-up. Also, we will not grade anything handed in after the final exam.

Collaboration policy: You are encouraged to discuss the content of this course with anyone you like. Assignments are to be completed in groups of two students. Within the group of two, divide the work any way you see fit - of course some modes of collaboration lead to better learning than others. Please do NOT discuss your answers with other groups, although feel free to point each other to any relevant documentation. The project is to be done in a group of two to four students. Groups can talk to each other about their projects as much as they want. Of course, if two teams pick the same project, we expect each team to produce original work different from that of other teams. Paper reviews should be done individually without talking to others. Feel free to look-up any information on the web that you may find useful in completing the assignments, projects, or paper reviews.

 

Topics and Schedule

Please see the class schedule posted on the class website (http://www.cs.washington.edu/education/09wi/544/schedule.html).

 

Attendance

I hope you will attend every lecture. If you miss a lecture, talk to a friend who was present, and be sure to check the class website for messages.

 

Tools

The course website and mailing list will be used extensively to provide you with course information, such as the class schedule, lecture notes, homework assignments, class messages, and other things.

 

Computing Resources

Information about labs, computing resources, and various other useful pointers are posted on the: class website (http://www.cs.washington.edu/education/09wi/544/resources/).