CS 4400 Introduction to Database Design
Spring Semester 2003


Section A: (MWF 2-3pm), B6 Boggs-Chemistry
Professor: Leo Mark Office: COC 137 Phone: (404) 894-2746
Email: leomark@cc.gatech.edu   Office Hours: 3-4pm (MWF)  
     
Section B: (MWF 9-10am), 17 College of Computing
Professor: Al Watkins Office: COC 104A Phone: (404) 894-7008
Email: watkins@cc.gatech.edu   Office Hours: 10-11am (MWF)  
     
Section C: (MWF 1-2pm), B6 Boggs-Chemistry
Professor: Sham Navathe Office: COC 139 Phone: (404) 894-0537
Email: sham@cc.gatech.edu   Office Hours: 2-3pm (MWF)  

Teaching Assistants:
Samuel Collins (scollins@cc.gatech.edu) (Office Hours MT 4:30-6)
Woo Yong Lee (wooylee@cc.gatech.edu) (Office Hours TTH 3-4:30)
Ying Liu (yingliu@cc.gatech.edu) (Office Hours TTH 9:30-11)
Namgeun Jeong (namgeun@cc.gatech.edu) (Office Hours TBA)
Kaizad Mehta (kmehta@cc.gatech.edu) (Office Hours MW 11:30-1)
Laxmi Patel (laxmip@cc.gatech.edu) (Office Hours TTH 1:30-3)
Wiewiek Sunarko (tweety@cc.gatech.edu) (Office Hours MF 10-11:30)


General course information will be posted in the newsgroup git.cc.class.cs4400 and/or on this class web page. You should read the newsgroup and web page regularly to ensure that you do not miss important information about the course.


NEW STUFF (last updated April 22, 2003)

  1. (1/6) Check this section of the web page often (especially close to quizzes and due dates) for updates, information, and assignments!
  2. (1/16) Section B: In-class Exercise and Solution 1
  3. (1/23) Section B: In-class Exercise 2
  4. (1/29) Project Description (pdf)
  5. (2/3) Project Statistics (pdf)
  6. (2/12) Project Revision (pdf)
  7. (2/19) The Complete Revised Project (pdf)
  8. (3/8) Section C: Notes on Mapping ER and EER schemas into the Relational Model (Chapter 9.1, 9.2)
  9. (3/10) Quiz III has been rescheduled for March 31, 2003
  10. (3/17) Exercise on ER to Relational Mapping ( pdf, doc)
  11. (3/18) Updated notes on Relational Algebra Concepts ( ppt)
  12. (3/18) Oracle-SQL-Java-JDBC Information
  13. (3/24) Sample Task Form for Phase II
  14. (4/2) Quiz IV has been rescheduled for April 18, 2003
  15. (4/8) Key Oracle Functions
  16. (4/8) SQL for Web Nerds
  17. (4/10) Books Data
  18. (4/10) Phase III - Demo Instructions
  19. (4/14) Demo Sign-Up Sheets have been posted.
  20. (4/14) Downgrade option: If you are doing a heavy weight version but you cannot seem to make it work, you can extract the SQL code and do it in a light weight way. But in that case you need to take the final. This option is ***not*** valid for groups with 4 members!
  21. (4/18)Chad Joyce's groups have been reassigned (see list) to other TAs. Please sign up for your demo with your new TA.
  22. (4/22) Section C: Phase III Update!


TEXT:

Fundamentals of Database Systems, 3rd edition, Elmasri & Navathe, Addison-Wesley, 2000


NOTES:

Professor Leo Mark's Course Notes and Slides: click here
Professor Sham Navathe's Course Notes and Slides: click here


PROJECT:

You will design and implement a database application using the ORACLE relational database system available on ACME. The Project can be done in groups of 3 or 4 students. We will follow a typical database design methodology for this project. Notes describing the methodology wil be available via the class web page. The project will consist of 3 phases (deliverables) as well as a final demonstration to the TA. Phase I and Phase II of the project are each worth 10% credit. Credit for phase III depends on the implementation option you choose.

  1. Project Description (pdf)
  2. Project Statistics (pdf)
  3. Project Revision (pdf)
  4. The Complete Revised Project (pdf)
  5. Book Data
  6. Phase III - Demo Instructions
  7. Demo Sign-Up Sheets have been posted.
  8. Downgrade option: If you are doing a heavy weight version but you cannot seem to make it work, you can extract the SQL code and do it in a light weight way. But in that case you need to take the final. This option is ***not*** valid for groups with 4 members!
  9. (4/18)Chad Joyce's groups have been reassigned (see list) to other TAs. Please sign up for your demo with your new TA.
  10. (4/22) Section C: Phase III Update!

GUI/JDBC Phase III Option - 20% credit: We will use the embedded SQL feature of ORACLE, called JDBC, which allows us to embed SQL statements in a Java program.

Lightweight SQLPLUS Phase III Option - 5% credit: We will use the SQLPLUS feature of ORACLE, which allows us to execute stand alone SQL statements.

COURSE CONTENT:

In this course we introduce the fundamental concepts necessary for the design and use of modern database systems. We examine the concepts in the order that we encounter them in the actual database design process. We start with the problem of conceptually representing data that is to be stored in a database. From there, we see how the data in a conceptual data model can be converted to a database specific model (e.g., the relational data model). We also discuss various forms for relations that possess good properties. We see how to use the relational database language SQL to define the relations and to write SQL statements to insert, delete, retrieve and update the data. We also examine some of the fundamental storage structures that are used in relational database systems. We end the course with a discussion of some advanced topics in the database management area.

Topic Chapter
Basic concepts - data independence, 3 level database 1,2
architecture, database system components  
Conceptual database level - entity-relationship model, 3,4
DBMS Design Methodology (Part I) for the notes
analysis and specification of database applications  
Relational data model introduction & algebra 7
Query By Example (QBE) 9.5
SQL query language 8
Mapping from ER model to relational model 9.1,9.2
Relational database design - normal forms, functional 14,15
dependencies  
Oracle JDBC and JAVA notes
DBMS Design Methodology (Part II) for the notes
design and implementation of database applications  
Internal database level - storage structures 5,6
Data warehousing and data mining 26
Client-server and distributed databases 24




GRADING:

Option I 4 quizzes 15% (each) Project (gui/jdbc) - 40%  
Option II 4 quizzes 15% (each) final exam - 15% Project (lightweight) - 25%

Project Schedule   Quiz Schedule  
Phase Due Date   Quiz Topic Date  
I February 26   I ER+EER  Model January 29  
II March 26   II Relations, Algebra February 19  
III April 22   III QBE, SQL, Mapping March 31  
Demo April 23-25   IV Normalization and Physical Design April 18  

The Final exam will be held during the scheduled final exam period.