UMBC              Spring 2006
CMSC461        Database Management Systems

Instructor
Dr. Padma Mundur
Computer Science  & Electrical Engineering Department
Office : ITE 350
Phone : (410) 455 3019
Email : pmundur@cs.umbc.edu
Class homepage : http://www.csee.umbc.edu/~pmundur/courses/CMSC461-06/
Office hours:  Mondays and Wednesdays 4 - 5 pm and by appointment; Email at any time

Teaching Assistant
Patrick Gillespie (Evening Section)
Office: ITE 353
email: pgille1@umbc.edu
Office hours: 4:30 to 5:30 Mondays and Wednesdays

Adam Anthony (Afternoon Section)
Office: ITE 349
email: aanthon2@umbc.edu
Office hours: 10 -11 Monday

Meeting Time and Place
Monday and Wednesday  5:30pm - 6:45 pm     Room ITE 231 (Section 0101)
Monday and Wednesday  2:30pm - 3:45 pm     Room ACIV 305 (Section 0201)


Important Dates
Midterm Exam : March 29, 2006  (class meeting time) (notice the change in date!)
Final Exam :  CMSC 461  0101 & 0201 (Common Exam Time for both Sections) May 19 6-8 pm  LH 8
Project Due :  TBA (typically last day of class)
Last Day of Class: May 15, 2006


Prerequisites    CMSC 341 -- Data Structures (Required), CMSC 421 -- Operating Systems and CMSC 411 -- Architecture (Desirable)

Required Programming Skills -- Java

Required Text    Silberschatz, Korth, and Sudharshan, "Database System Concepts," McGraw Hill Publishers, 4th Edition

Course Description     This course is meant to be a first course in Databases to be taken by the students in their senior year. While CMSC421 and CMSC411 are not listed as  prerequisites, it is preferred that the student take this course with a basic knowledge of both those courses. The first half of the course is theory-based and the second half of the course will discuss DB implementation  issues. The level of difficulty is similar to any other core 400 level CS course. As part of a semester-long project the student will be expected to implement a DB application using Oracle from OIT and Java. The students will learn to apply design theory discussed in class to their  project and implement it using Oracle and Java. List of topics and a tentative schedule:

Before Midterm

     
  1. Data models  -- Entity-Relationship Model, Relational Model (first 3 weeks)
  2. Relational Databases -- Query Languages -- SQL and  Other Languages, Database Design theory (next 4 weeks)
Spring Break: March 20-26

After Midterm

  1. Data Storage and Querying -- Storage and File Structure, Indexing and Hashing, Query Processing (4 weeks)
  2. Transaction Management -- Transactions, Concurrency Control, Recovery (3 weeks)
Course Objective
At the end of the course, the student will have developed skills in two areas: i) a fundamental understanding of the theory behind various data models and query languages and of issues related to management of databases including  recovery, and concurrency control; ii) a practical knowledge in designing and implementing a relational database using modern software tools.

Grading    The student requires a passing grade in EACH of the criteria shown below to pass the course. There will be at least 4 homework assignments.  All homework must be done independently.  No late homework is accepted.  Submission of all homework is mandatory. There will also be unannounced pop quizzes in class.

You will be required to work on a project requiring substantial work.  Project work requires working in a team of 2-3 students.  A detailed description of the project will be provided during the third week of class. Teams will also be assigned at the same time.  A final project report is due on the date shown above.  A demonstration of the project will be scheduled for each team around the same time.  You are also required to pass intermediate milestones. No late projects are accepted. You will be provided accounts on the Oracle Server from OIT.

Midterm and final exams are closed book and conducted in class during the times shown above. Final exam is comprehensive (but more weight will be given to topics from second half). Makeup exams and incompletes are allowed only under extraordinary circumstances as per University policy.


Academic Honesty
Each individual is responsible for his or her own homework. Under no circumstances should written or printed materials be shared. With respect to the project, I would like to see a healthy competition among teams to generate innovative ideas and come up with the best project at the end of the semester.  Photo IDs may be required for admission to exams.
By enrolling in this course, each student assumes the responsibilities of an active participant in UMBC's scholarly community in which everyone's academic work and behavior are held to the highest standards of honesty. Cheating, fabrication, plagiarism, and helping others to commit these acts are all forms of academic dishonesty, and they are wrong.  Academic misconduct could result in disciplinary action that may include, BUT IS NOT LIMITED TO, suspension or dismissal. To read the full Student Academic Conduct Policy, consult the UMBC Student Handbook.