Routing/Approval:
(chair’s initials/date)

                    
Department

                    
Division

                    
APC

                    
Senate

PROPOSAL FOR A NEW COURSE

Date of proposal: 4/10/06

Title: Database Principles

Department and Course Number: CSCI 325

Crosslisted?   Yes   No X     If yes, crosslisting department and number:

Credit: 1/2   Hours/week: 6 in one module

One-time:     or    Permanent Offering: X

Instructor: Steven Huss-Lederman

How will this course be taught, given present staffing, without creating a course overload?

This course proposal is part of a comprehensive change to the computer science curriculum. The course load under this proposal will not create an overload.

Are there any course fees? If so, specify what the course fees are intended to cover.

None

Prerequisite(s):

Computer Science 205 and 321.

Catalog description (50-150 words, please):

If applicable, include the following language at the end:  “May be repeated for credit if topic is different.”

The foundations of databases, the necessary algorithms, and implementation details are covered. For foundations, the topics of normalization and relational algebra and calculus are investigated. For algorithms, advanced trees, hashing and external sorting are discussed. For implementation details, file storage and optimization are studied. Students should note that the algorithmic areas covered offer a nice study of advanced algorithms as applied to slow storage devices and this course is a good complement to Computer Science 205.

Additional course content description (aims, purposes, etc.) beyond the catalog description:

This course is aimed at students who want a deeper understanding of the internals of a database management system (DBMS). The course emphasizes three areas: foundations, algorithms and implementations. The largest weight is given to algorithms since these are applicable in many areas of CS. As such, the course will focus less on software (unlike CSCI 321) and more on problem solving. In the area of implementations, the details of DBMS is given without having students actually perform a real implementation.

The lettered/numbered lines below come from CC2001. Underlined items are considered essential to a basic curriculum in computer science. Numbers in () indicate minimum number of hours to cover in a lecture style according to CC2001.
Items with a * indicate we plan to cover them in multiple courses.
Other lines include additional topics we plan to cover or clarification of topics we will cover within a CC2001 topic.

Course goals/objectives/outcomes: 

At the end of this course students should be able to:

Course structure. Check all that apply:

 Lecture/Discussion X      Studio     Lab/Workshop X    Other (Specify)

If current library or equipment holdings are inadequate, estimate the cost of additional holdings required.

adequate.

Please attach names of a proposed text and/or core readings.

Database Management Systems, 3rd Ed. by Raghu Ramakrishnan and Johannes Gehrke, 2003. ISBN 0-07-246563-8.

Form revised 11/04