Syllabus and general information for MCS-243: Relational Databases (January 2000)

Overview

Essentially all contemporary information systems used in commerce use relational database technology. This course provides an introduction to this technology, both as a collection of hands-on skills and as a conceptual subject with mathematical foundations.

Office hours

I do not plan to have scheduled office hours this January. Instead, I will be in my office most of the day (outside our class times) most days. You can make an appointment if you want to be sure I'll be there, or you are welcome to just drop by.

World Wide Web

All course materials will be available through my World Wide Web page. The URL for this course is http://www.gustavus.edu/~max/courses/J2000/MCS-243/. After this syllabus I will give hardcopy handouts only to those students who want them.

Text

Our text will be the first edition of Database: Principles, Programming, Performance by Patrick O'Neil, published by Morgan Kaufmann.

Class and lab times

Other than the first and last days of the term, I intend to allocate a portion of our class time each day to lab sessions. On Thursday the 13th and Thursday and Friday the 20th and 21st the lab session will be in the 9:00-10:00 time block, so as to leave the 10:30-12:00 block free for the midterm (on the 13th) and the guests from industry (on the 20th and 21st). The remaining 15 days I expect we will normally have class 9:00-10:00 and lab from 10:30-12:00. However, if at some point it seems we need more class time (and less lab time), I may reverse the two blocks.

Attendance

Attendance is mandatory for all lab sessions and presentations by guests from industry. However, if you have already turned in all lab assignments which have been handed out, you are exempted from the lab attendance requirement. Other than this, I am willing to excuse up to two absences per student. Use yours wisely. You are responsible for all course material, whether or not you are present when it was covered or distributed.

Expectations for out-of-class work

Because we are covering a whole course worth of material in one month, it is essential that you work on the course during the afternoon. You need not only to keep up with the reading and assignments, but also to come talk with me about the course whenever the class time doesn't suffice to clear up all your questions. Given the fast pace, you shouldn't be surprised if that happens. If so, it is your responsibility to come see me.

Tests

There will be an approximately midterm exam and a final exam, as shown on the syllabus below.

Honor

Students are encouraged to discuss the course, including issues raised by the assignments. However, the solutions to assignments should be individual original work unless otherwise specified. If an assignment makes you realize you don't understand the material, ask a fellow student a question designed to improve your understanding, not one designed to get the assignment done. To do otherwise is to cheat yourself out of understanding, as well as to be intolerably dishonorable.

Any substantive contribution to your solution by another person or taken from a publication should be properly acknowledged in writing. Failure to do so is plagiarism and will necessitate disciplinary action.

The same standards regarding plagiarism apply to team projects as to the work of individuals, except that the author is now the entire team rather than an individual. Anything taken from a source outside the team should be be properly cited.

One additional issue that arises from the team authorship of project reports is that all team members must stand behind all reports bearing their names. All team members have quality assurance responsibility for the entire project. If there is irreconcilable disagreement within the team it is necessary to indicate as much in the reports; this can be in the form of a ``minority opinion'' or ``dissenting opinion'' section where appropriate.

Late assignments

All assignments are due at the beginning of class on the day indicated. Late assignments will be penalized by one ``grade notch'' (such as A to A- or A- to B+) for each weekday late or fraction thereof. However, no late assignments will be accepted after graded assignments are handed back.

If you are too sick to complete an assignment on time, you will not be penalized. Simply write ``late due to illness'' at the top of the assignment, sign your name and hand it in. Other circumstances will be evaluated on a case-by-case basis.

Grade changes

Please point out any arithmetic or clerical error I make in grading, and I will gladly fix it. You may also request reconsideration if I have been especially unjust.

Grading

I will provide you with a letter grade on each assignment and on each test, so that you may keep track of your performance. As a guideline, the components will contribute in the following proportion to the final grade: However, I reserve the right to subjectively adjust your final grade. Please see me if you have any question how you stand. Class participation is not graded; however, it allows you to find and repair the gaps in your understanding before doing the assignment or exam, and thus can dramatically improve your grade.

Style guidelines

All assignments should be readily readable, and should not presuppose that I already know what you are trying to say. Use full English sentences where appropriate (namely almost everywhere) and clear diagrams, programs, etc. Remember that your goal is to communicate clearly, and that the appearance of these technical items plays a role in this communication process. Be sure your assignments are always stapled together and that your name is always on them.

Accessibility

Please contact me immediately if you have a learning or physical disability requiring accommodation.

Syllabus

A single number in the reading column means to read that entire chapter. This is my best guess as to the rate at which we will cover material. However, don't be shocked if I have to pass out one or more revised syllabi.
DateReadingTopic
1/31Introduction
1/42.0-2.4Relational model
1/52.5-2.7Relational algebra
1/62.8-2.10More relational algebra
1/73.0-3.3Simple SQL

1/103.4-3.5Subselects
1/113.6-3.8Set functions
1/123.9-3.10Update statements
1/13Midterm exam
1/145.0-5.2E-R modeling

1/175.3-5.5More on design
1/185.6-5.7Dependency and decomposition
1/195.8-5.9Normal forms
1/20Patsy Rossow of CSFA (industrial guest)
1/21Ross Nornes and Sam Glackler of James Tower (industrial guests)

1/246.0-6.1Integrity constraints
1/256.2-6.4Views, security, and metadata
1/269.0-9.3Transaction serializability
1/279.4-9.6Locking and recovery
1/28Final exam

Course web site: http://www.gustavus.edu/~max/courses/J2000/MCS-243/
Instructor: Max Hailperin <max@gustavus.edu>