CMSC 424: Database Design
Time-stamp: "2000-12-17 10:52:09 chaw" (remember to check subpages too)
- News: The final exam will be in the
regular classroom (MCB 1207) on Monday, 18th December 2000, from
10:30am to 12:30pm. See the newsgroup for details. Last year's final
and sample solutions are posted below. Please attempt to solve the
problems before peeking at the solutions and remember that every
semester's final is be different, as it reflects the topics stressed
that semester, the order in which topics were covered, etc.
- Class meetings: Tuesdays and Thursdays,
9:30am to 10:45am; MCB
1207.
- Class newsgroup: csd.cmsc424.0301 (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: chaw@cs.umd.edu
Please put the string "CMSC424-0301" near the
beginning of the Subject header for all 424-related email.
- Office hours: Tuesdays and Thursdays 10:45am-12:00pm or by
arrangement.
- Contact information: finger
chaw@cs.umd.edu
- Teaching Assistant: Yu Deng
- Email: yuzi@cs.umd.edu
- Office hours: Mondays and Wednesdays 1:00pm-2:30pm.
- Contact information: Office: AVW 3252.
- Books:
- Required textbooks: (As of 11th
August 2000, both books are available and in-stock at the
university bookstore; of course, you can also buy them online.)
There is a lot of useful material (including code samples) on
the Web sites for the textbooks, so browsing the sites is
recommended.
- 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
Computer Science
Departmental Library.)
- 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
contents. Truth-in-advertising.
- 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.
- 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, homeworks, quizzes, a mid-term exam, a final exam, and a project; the weights in percentages
are, respectively, 5, 15, 15, 15, 20, and 30.
- Homeworks and Quizzes: (You will need
to authenticate yourself using the username and password announced in
class.)
- Policies: Details
- No work will be accepted after the date and time it
is due. Missing work gets zero credit.
- Academic misconduct will be very seriously penalized.
- Policy on waiting lists,
prerequisites, etc. (Prospective students,
please read.)
- Test area:
Computer Science
Database Group
Unless otherwise noted, all documents in the
http://www.cs.umd.edu/class/Fall2000/cmsc424-0301/ hierarchy are
Copyright © 1998-2000 Sudarshan S. Chawathe.
Validated as HTML
4.0 Transitional
Check
Sudarshan S. Chawathe