CS 5200 Introduction to Database Management Section 1

Fall 2013

Instructor: Ken Baclawski

342 WVH                                                                  617-373-4631
College of Computer ScienceKen@Baclawski.com
Northeastern UniversityFax: 617-373-5121
Boston, MA 02115


Class meeting times and location: Thursdays 6:00-9:00PM in 220 Shillman

Office hours and location:Monday, Wednesday and Thursday 4:40-5:40PM in 342 WVH.

Fall office hours will begin on 4 September 2013 and end on 12 December 2013.

There will be no classes or office hours on the holidays 14 October, 11 November, 27 November and 28 November 2013.


Required Textbook

Prerequisites

Grading

Class Schedule

Assignments

Academic Honesty and Integrity[pdf]

Accommodations for Students with Disabilities



Required Textbook

Database Design and Implementation by Edward Sciore
John Wiley, October 2008
ISBN: 0471757160
ISBN-13: 9780471757160


Prerequisites


Grading

The course grade will be based on six individual assignments (30%), a group project (20%), and a Final Exam (50%). The Final Exam will be an open-book/open-notes exam. Laptops, PDAs or other communication devices are not permitted at the Final Exam. The Final Exam will be given on 12 December 2013 during the regular class time but not the same room. The Final Exam will use assigned seating and will have a strict time limit.

The course grade will be reduced for the following:

  1. Unexcused class absences
  2. Arriving late to a class or leaving during a class (when unexcused)
  3. Submitting an assignment late (1 point out of 100 for each hour)
  4. Submitting the Final Exam late (1 point out of 60 for each minute)

There will be assigned seating during classes, with students in a team sitting together. The seating chart will be posted after the teams have been formed.


Course Resources

Exercises, quizzes and exams (some of which have solutions) from previous terms are available:
www.ccs.neu.edu/home/kenb/db

The technique for making an OData query in Java is illustrated in ODataRequest.java

The format for a software project report is in Software Project Report Format.

There is a weekly discussion session every Friday from 4pm to 5pm in 366 WVH. The discussion session will be led by a TA.


Class Schedule

DateTopicReading
9/5Overview of database systems, the relational model and UML design Chapters 1, 2, Sections 3.1 and 3.2, and Academic Honesty and Integrity Data Semantics
9/12Database design and translating UML to the relational model Sections 3.3 and 3.4
9/19SQL queries Section 4.3
9/26Advanced SQL queries, updates and views Sections 4.3 to 4.5
10/3Integrity, security, triggers and stored procedures Chapter 5
10/10The database design process and basic relational operators Sections 3.5, 3.6, 4.1 and 4.2, Relational Algebra Symbols
10/17Index design principles and introduction to database programming Section 6.3, Chapter 7 and Section 8.1
10/24Advanced JDBC and object-relational mapping Sections 8.2, 8.3, and Chapter 9
10/31Web services and OData Introduction to OData (slide presentation that will be available to the class)
11/7XML and storage devices Chapter 10, and Sections 12.1 to 12.4
11/14Concurrency control and metadata management Sections 14.4.1 to 14.4.8, and Chapter 16
11/21Log, buffer and recovery management Sections 13.1 to 13.4 and 14.1 to 14.3
12/5Query processing and optimization Sections 17.1 to 17.5 and 21.1 to 21.5
12/12Final exam All course material

The Final Exam will mostly consist of problems similar to the individual assignments, but it will also cover course material that is not on any assignment, such as the last lecture.


Assignments

There will be 6 assignments.

NumberAssignmentDueSolution
1Basic database design and translation to the relational modelWednesday 18 September 2013 at 11:00pm. Solution #1
2SQL queries, updates and viewsWednesday 2 October2013 at 11:00pm. Solution #2
3DBMS API features, including integrity, security, triggers, stored procedures, the design process and relational operatorsSaturday 19 October2013 at 11:00pm. Solution #3
4JDBC programming and object-relational mappingSaturday 2 November 2013 at 11:00pm. Solution #4
5Web services, OData, XML and JSONSaturday 16 November 2013 at 11:00pm. Solution #5
6DBMS componentsSaturday 30 November 2013 at 11:00pm. Solution #6

All assignments must be uploaded to Blackboard. Be sure to check that your upload has been accepted by Blackboard and has been assigned a timestamp. You may upload your solution to an assignment more than once, but only the last one (and its timestamp) will be used for grading. A late submission will lose 1 point out of 100 for each hour that it is late, as determined by the timestamp.

Group Projects

Every student must be part of a group that submits a group project. A group may have up to 4 students. A group can consist of a single student.

The possibilities for projects will be discussed in class. Also see Ideas for Database Projects.

The following are the deadlines for group project submissions:

PhaseDeliverablesDuePercentage
Group formationMembers of the group and an optional group nameWednesday 11 September 2013 at 11:00pm0%
Project topicPurpose and objectives. Use the Proposal Format.Wednesday 25 September at 11:00pm10%
Project requirementsUse cases and use case descriptions. See Size Criteria. An example and style files are available in usecase.zipSaturday 12 October2013 at 11:00pm20%
Project designVaries with project, but will always include a UML class diagram and may include other diagrams. See Size Criteria. Submit a zip file with the images of your diagrams.Saturday 26 October 2013 at 11:00pm20%
Project implementationSource code. See Size CriteriaSaturday 30 November 2013 at 11:00pm30%
Project reportHTML document and slide presentationWednesday 11 December 2013 at 11:00pm20%

All group submissions must be uploaded to Blackboard. Be sure to check that your upload has been accepted by Blackboard and has been assigned a timestamp. All students must submit the first (group formation) assignment to confirm their membership in a group. The other submissions should only be done by one of the group members. You may upload your group submission more than once, but only the last one (and its timestamp) will be used for grading. Late submissions will lose 1 point out of 100 for each hour that it is late, as determined by the timestamp.

Extensions

Individual extensions to the deadlines are given only for documented medical reasons, in which case a grade of I will be given for the course. Extensions are sometimes given to the class as a whole but only for compelling reasons that are discussed in class well before the deadline.