Course Resources

NEW! June 1st Information on the Final Exam to be held Friday, June 8th.

Information on meeting times, textbook, etc.

Course Syllabus and Calendar with reading assignments

Assignments Assignment #3 due 5/1

Honors Adjunct


Contact Professor Futrelle using email or by sending a form-based message.

Return to Professor Futrelle's Teaching Gateway or to his home page.

[Version of May 13, 2001]

COM1317 -- Transaction Processing Systems -- Spring 2001

College of Computer Science, Northeastern University

Professor Robert P. Futrelle

To students in this course:

Transaction processing in database systems is quite an amazing process, when you get right down to it. It assures that even when many transactions are happening simultaneously (or apparently so) that they don't interfere with one another, or worse, interact in an inconsistent way. More interesting still is that database systems that handle transactions properly cannot ever perform an inconsistent or partial transaction, even in the face of machine or network failure or even disk failure. While a database system is running, you can pull the plug on it. When it recovers, all of the transactions that were in progress when the plug was pulled are restored to a state in which the transactions did not occur at all (and must be redone) or they completed successfully and correctly. The classic example is transferring money between two accounts. You would think that if the money was removed from one account and then the plug was pulled before the money could be added to the other, that the result would be wrong -- that money would have disappeared from the first account and never appear in the second. But transaction processing systems are designed so this cannot happen!

Because of the complex nature of transaction processing this course will cover the ideas in detail but will not include programming projects. So your task will be to learn the concepts and terminology and be able to do the problems, quizzes and exams by answering questions using the correct terminology and concepts and drawing the appropriate diagrams when necessary.

The textbook we will use in this course is brand new, Databases and Transaction Processing: An Application-Oriented Approach by Lewis, Bernstein and Kifer In fact the book is so new that it has not been published yet. So instead, I have arranged to get an advance copy of the text and printed out the relevant chapters and have made them available at Gnomon Copy. You are only assigned about 200 pages of reading, total, but don't be fooled by this number. The material is not easy and requires repeated careful reading as well as working the exercises assigned.

Since we will not have projects, the course will be built around assignments and exams, with the exams by far the most important. Consider the assignments as your way of preparing for the tests. There will be three quizzes, a Midterm and a Final Exam.

Many of you will be involved with databases in your work in the future. It is far easier to work with databases if you really understand what's going on inside them, rather than just knowing some external "user-level" manipulations. This course will be a big step towards giving you the critical inside knowledge that will help you succeed in various endeavors in the future.

      -- Professor Futrelle

The URL of this page is