CMSC 424: Database Design
Time-stamp: "2001-12-06 14:20:00 chaw" (remember to check subpages too)
- News: Demo schedule for the term
projects is posted below. Final project report guidelines are also
below. The final exam will be held on Monday, 17th December, 2001,
from 10:30am to 12:30pm, in CSS 2428 (the regular classroom).
- Class meetings: Tuesdays and Thursdays,
9:30am to 10:45am;
- Class newsgroup: csd.cmsc424.0101 (local to umd.edu).
We'll use this newsgroup for announcements and discussions. Please post questions and comments to this
newsgroup (instead of emailing them to the instructor or TA)
unless you wish to keep your comments private. This newsgroup is
required reading for this course, and constructive discussions are
highly encouraged. (See note on class participation below.)
- Instructor: Sudarshan S. Chawathe
- Email: firstname.lastname@example.org
Please put the string "CMSC424-0101" near the
beginning of the Subject header for all 424-related email.
- Office hours: Tuesdays and Thursdays 10:45am-12:00pm or by
- Teaching Assistant:
- Email: email@example.com
- Office hours: Mondays 2:30pm--4:00pm; Wednesdays 12:00pm--1:30pm.
There is a lot of useful material (including code samples) on
the Web sites for the textbooks, so browsing the sites is
- Optional references: Principles of
Database and Knowledge-Base Systems (vols 1 and 2) by Jeff Ullman;
Database System Concepts by Korth, Silberschatz and Sudarshan; SQL
for Smarties by Joe Celko (specially recommended); A Guide to the
SQL Standard by Date and Darwen; Foundations of Databases by
Abiteboul, Hull and Vianu. (Most of these books are on reserve in
- Description: This course covers database
systems from the perspective of database designers and database
programmers (not to be confused with database system implementors).
Thus, a more accurate course title is ``(database (design and
programming)).'' The emphasis is on fundamental topics that should be
familiar to every computer scientist and good programmer. In addition
to traditional topics such as Entity-Relationship modeling, relational
database design theory, relational algebra and calculus, SQL, and
Datalog, the course also covers object-oriented and object-relational
databases, with topics such as ODL, OQL, and SQL3. For a more
detailed listing of course topics, refer to the textbook's table of
- Schedule: Here is the proposed schedule. The actual schedule will
depend on factors such as how quickly we are able to cover material,
and feedback from the class.
- Project: The programming project is a
very important component of this course. Not only does it provide an
opportunity to experiment with and apply the ideas discussed in class,
it also provides experience in teamwork and project management. The
project consists of designing, building, documenting, and
demonstrating a substantial database application. Students are
encouraged to pick an application domain that excites them, with the
caveat that it include a nontrivial database component. Here is a collection of some ideas that may help.
A series of project reports and
milestones should help keep the project on schedule. Project Guidelines. The project
details will be updated for Fall 2001 soon.
- Programming: This course assumes that
students have enough programming experience to be able to work in
teams of about four to independently plan, design, and implement a
substantial project involving a possibly new environment. Students
are strongly encouraged to make sure they have such experience. Most
students find database programming harder than it first appears
(unlike, say, writing device drivers, which people expect to be hard).
Please be prepared. Although the university maintains the Oracle
database system for class use, we will not be covering nitty-gritty
details of Oracle in class. (This course is not an Oracle tutorial.)
Further, students are encouraged to install and use other database
systems. Similarly, students are encouraged to program in a language
of their choice.
- Grading: Grading is based on class
participation (5%), homeworks (15%), quizzes (15%), a mid-term exam
(15%), a final exam (20%), and a project (30%).
- Homeworks, Quizzes, and Exams: We'll
post assignments and solutions here. (You may need to authenticate
yourself using the username and password announced in class for some
of these files.) You may want to take a look at last
session's Web site for sample assignments, quizzes, and exams.
- Miscellaneous Links:
- Policies: The class
policy is required reading. (Prospective
students, please read the admission
policy before contacting me.)
- Test area:
link (which goes nowhere good) should validate with W3C.
Unless otherwise noted, all documents in the
http://www.cs.umd.edu/class/fall2001/cmsc424-0101/ hierarchy are
Copyright © 1999--2001 Sudarshan S. Chawathe.
Validated as HTML
Sudarshan S. Chawathe