Course Expectations and Tentative Syllabus

 

CSC:240              Database Management Systems                                                  Fall 2005

                              Room     Olney 201                                                                        TR  9:30-10:45am

                                            

Professor:          Dr. Michael Redmond            

330 Olney Hall  (215) 951-1096

redmond@lasalle.edu      

http://www.lasalle.edu/~redmond/teach/240

 

Office Hours:     MW 12-12:50am, MW 5-6pm, TR 2-3pm

                              And at other times by appointment.

 

Text:

Database Systems Design, Implementation, & Management by Peter Rob and Carlos Coronel. Sixth Edition. Publisher: Course Technology Year: 2004  ISBN 0-619-21323-X

 

Recommended:

A comprehensive book on Microsoft Access, such as

Microsoft Access 2003 Bible by Cary N. Prague, Michael R. Irwin,  Jennifer Reardon,  John Wiley & Sons; ISBN: 0-7645-3986-8; 1st edition (October 2003), Average Customer Review: 3.2 out of 5 stars  

(you will want to make sure that the book you choose is for developers, not users, and has intermediate material as well as beginner material (e.g. NOT something like a Learn Access in 24 Hours book). Sure books are expensive, all the more reason that you will want a comprehensive book  --- that will be useful beyond this semester)

 

Course Description:

               Databases are everywhere. Data is a crucial resource for most organizations, so effective storage and access of that data is an important concern.

This course is intended to introduce the student to the important principles of database management systems and the design of databases. In addition, the student will gain experience working with practical database management packages: Oracle and Microsoft Access. Most of the course lectures will focus on the theory; some lab time for learning the packages is planned.  The student will develop a database application using Access; it is expected that the student can learn some of the details about Access on their own.  Oracle is a large professional package, with many features including design and development tools; our work with Oracle will focus on SQL.

This course focuses on Relational Database theory - which is the current technology. The text reflects that emphasis. There may be some discussion of previous database organizations that are still found in industry (hierarchical and network). We may also discuss new technology (object-based databases).

The course is intended for students in computer science, information technology, and Digital Arts, as well as other students who have an interest in developing databases.

 

Project:

You will develop an application working in a group of 3 people. You will be assigned to groups. The most efficient approach is to use meetings to divide up work, monitor progress, ensure consistency, etc, with the brunt of the work done outside meetings.  Note also that, to discourage slackers, 1) included in the project hand-in, you will specify which parts of the project each person was responsible for, and 2) you may be asked to rate the level of effort of group members at the end of the semester. In most cases, the effort should be equal, especially since all students know ahead of time that they must pull their weight. Or 3) I may interview people about aspects of the design / development. Note that if you do not do your share of the project you can get a lower grade than the group grade. If there appears to be a problem in a group, first try to solve it internally. If that doesn't solve the problem, as a last resort (but before the end of the term), I may have to mediate.

The project will be a prototype, it will not be a complete bullet-proof application. Information about the application will be distributed shortly. However, you will not be able to make much progress on the project until after you thoroughly understand database design (covered in early part of course). The database design for your project is due Oct 20; a first installment of the project will be due Nov 17,  the whole application is due Dec 8 (the last day of class). Projects will be demoed in class during the week of Dec 5. Groups will present their database design and their prototype.  All students are expected to be present and to participate equally in the group presentation. Work done in Access before your database design is correct may require substantial re-work (i.e. the first priority is to get the database design right). Thus, you may find it useful to turn in your design early.


Grading:

               Midterm #1                                       15%

               Midterm #2                                       15%

               Final Exam                                        15%

               Class Participation                             5%

               Individual Assignments                  10% (5% for SQL assignment, 5% for all others combined)

               Group Application                           40% (5% DB design; 10% first installment; 20% final product; 5% presentation)

 

               Final Grades:

A            92-100                 A-           90-91

B+          88-89                    B            82-87                    B-           80-81

C+          78-79                    C            72-77                    C-           70-71

D+          68-69                    D            60-67                    F             < 60

 

·        There will be several, varied (mostly short) assignments over the course of the semester. The largest will involve using SQL in Oracle. The second largest will probably be E/R diagrams using Visio.

·        Do your own assignments !!!!  Work that is copied or done with somebody (when not assigned to a group) will be punished. If in a group/pair, your group must do its own work.

·        Late Assignments  -20% per weekday (NOTE - NOT per CLASS)

                              UNLESS SPECIFIED OTHERWISE ASSIGNMENTS ARE DUE AT THE BEGINNING OF CLASS

                               -10% if handed in after start of class and before I leave for the day.

·        Class participation grades will be assigned systematically using attendance, plus participation including questions, comments, and responding to instructor’s questions in class. Deductions could be made for insufficient participation in team work (in addition to any deductions on project grade).

·        Makeup exams only by advance arrangements or for documented real emergencies, such as medical problems. Makeup may involve double-counting your final exam.

·        The Final Exam is cumulative, though it will focus more on the (previously untested) final section of the course.

 

Students generally do better in courses if they read the section of the textbook BEFORE it is presented in class, since they are prepared to ask questions. Working end-of-chapter exercises is a good test of your understanding.

 

 

                Course Objectives

 

Concepts:

1. The student should understand the benefits of database management systems.

 

2. The student should understand the process of semantic data modeling including the entity-relationship approach.

 

3. The student should understand the principles that should be used in designing a relational database, including normalization techniques.

 

4. The student should understand the issues and possible ways of handling relational data integrity constraints.

 

5. The student should understand the relational algebra.

 

6. The student should understand the importance of views, to provide logical data independence and some degree of privacy.

 

7. The student should understand the issues involved in transaction processing.

 

Applications:

1. The student should gain some exposure and experience with a commercial relational database management system (RDBMS). The student should be able to define and set up a relational database using the RDBMS.

 

2.      The student should gain experience working on a group database application development project.

 

3. The student should understand how to define database structures and how to specify database queries using SQL, and gain experience writing SQL queries on a practical system.


Tentative Course Plan:

Date                 Material                                                                       Reading

Aug 30                 Intro to Class

Sept 1                   Intro to Databases, Access, Access Tables (Some Hands on)                                            

 

Sept 6                   Intro to Databases                                                                         Chapt 1, Section 1.1-1.3

Sept 8                   Files vs Databases                                                                         Sections 1.4, 1.5

 

Sept 13                 Database Models                                                                                          Chapt 2, Sections 2.1-2.4

Sept 15                 Database Models                                                                                          Sections 2.5

 

Sept 20                 Relational Databases                                                                    Chapt 3, Sections 3.1-3.3

Sept 22                 Relationships and Redundancy, and Access – Relationships               Sections 3.6,3.7

 

Sept 27                 Entity Relationship Modeling                                                     Chapt 4

Sept 29                 E/R Modeling using Visio

 

Oct 4                     Entity Relationship Modeling                                                     Chapt 4

Oct 6                     The Need for Normalization, Normal Forms                                           Section 5.1

 

Oct 11                  MIDTERM  #1                  

Oct 13                  Normal Forms, Normalization and DB Design                         Sections 5.1-5.4

 

Oct 18                  Microsoft Access – Forms                                                                         

Oct 20                  Relational Algebra                                                                        Section 3.4

Project DB Design Due

 

Oct 25                  FALL BREAK – NO CLASS

Oct 27                  Relational Algebra

 

Nov 1                   Microsoft Access - Queries

Nov 3                   Microsoft Access – Reports

 

Nov 8                   SQL Queries                                                                                   Sections 6.3.3, 6.4, 6.6.1, 6.6.2

Nov 10                 SQL Queries Using Oracle

 

Nov 15                 SQL Queries – Joins and Aggregation and Grouping                             Sections 6.8, 6.6.3, 6.6.4

Nov 17                 SQL Updates                                                                                  Section 6.3

                                                                                                                                       Project First Installment Due

 

Nov 22                 SQL Data Definition                                                                    Sections 6.1, 6.2

Nov 24                THANKSGIVING BREAK – NO CLASS

 

Nov 29                 MIDTERM #2

Dec 1                    Transactions and Concurrency Control                                    Sections 9.1,9.2

 

Dec 6                    Group Presentations

Dec 8                    Group Presentations

 

Final Exam: Thur Dec 15 8:30am