Department and Course Number CS 405  Course Coordinator Soon Chung
Course Title Introduction to Data Base Management Systems Total Credits 4

Catalog Description

Survey of logical and physical aspects of data base management systems. Hierarchical, network, and relational models of a data base are presented. Physical implementation methods are discussed. Experience in creating and manipulating a data base. 3 hours lecture, 2 hours lab. Prerequisite: CS 400. 

Text Books and Other Source Materials

  1. R. Elmasri and S. B. Navathe, Fundamentals of Database Systems, 3rd edition, The Benjamin/Cummings Publishing Co., 2000.

Course Goals

The student should have learned the following:

  1. The theoretical foundations of a relational DB system via set theory
  2. How to use the ER model to design applications
  3. How to use a complete data manipulation/query language
  4. The basic concepts of the physical structuring of DBMS
  5. The basic concepts of constraints, transactions, functional dependencies

The student should be able to apply the concepts above to the following:

  1. Design a standard information system
  2. Use a data manipulation/query language on a DBMS
  3. Analyze a design relative to various types of constraints
  4. Explain the theoretical foundations of a relational DBMS
  5. Explain transactions and recovery concepts
  6. Know the areas of new applications of DBMS

Prerequisites by Topic

  1. Discrete mathematics: sets, propositions, and predicates.
  2. Height balanced trees, 2-3 and 2-3-4 Trees
  3. B-trees, Hashing.
  4. Sequential files, direct files.
  5. Engineering principles: top-down design, and narrow interfaces.

Course Content

Wk

Topics

Read

1

Basic concepts: set theory, logic, tabular manipulation, DBMS intro.

Chapter 1

2

Entity relationship model, design, integrity constraints

2,6

3

Relational model, constraints (key, etc.), mapping ER to relational model.

3

4

Relational algebra, SQL-data manipulation

3, 4

5

SQL-query, set operations, null values, view, joins

4

6

Physical DB structures, storage and file structures, indexing, hashing

10,11

7

Transactions, recovery

13.15

8

Functional dependencies, designs

6.5, 7

9

Database System Architecture-centralized systems, client server

16

10

Network model, Hierarchical model, New applications

App.A,B, 21

Laboratory Projects

Project is either paper review,  programming, or DB design. 

  1. Paper review: Papers reviewed 6%, technical quality 8%, written presentation 7%, discussion 9%.  Submit the topic and a list of 4 (or 5) selected papers. Submit the final report (around 25 pages in double space) 
  2. Programming: Extendible hashing simulation using a high level programming language (Pascal, C, C++, etc). Design 5%, documentation 5%, correctness 15%, discussion 5%.
  3. Small database design and SQL programming using MS Access  or some other DBMS.
    Description of problem 4%, ER design 6%, Relational Schema 5%, SQL queries and results 8%, discussion 7%

Estimate CSAB Category Content

Core Advanced Core Advanced
Data Structures 1.0 Concepts of PL 1.0
Algorithms 1.0 Comp Organization + Architecture
Software Design 1.0 Other

Oral and Written Communications

There are no oral presentations.  Students submit source code of their projects along with a "ReadMe", a text file that highlights the design details as well as problems and defects in their program.  We do not claim that the ReadMe.txt constitutes written communications.

Social and Ethical Issues

None.

Theoretical Content

None.

Problem Analysis

The projects are about a component of Data Base Management Systems reduced in size  and sophistication to fit a 10-week course.  Detailed analyses of the requirements of the project are performed by the student before implementing them.

Solution Design

The projects are about a component of Data Base Management Systems reduced in size and sophistication to fit a 10-week course.  Skeletal solutions of the project are given by the instructor at the conceptual level in the lectures, and also in source code files.  The student needs to design further details and implement them.