Introduction to DataBase Management Systems
Bob Matthews
Department of Mathematics and Computer
Science
January, 2005
Administrivia
- Meeting times: 3 - 3:50 MWF, Thursday 3:30 - 4:20, Thompson 322
- Final Exam: Monday, May 8, 8:00 AM: required
- Instructor:
- Bob Matthews (email matthews@ups.edu)
- Thompson 321 B
- Extension 3561
- Office hours (tentative):
- 11:00 MTWThF
- Or by appointment.
If you catch me free at any time, please feel free to drop in.
Messages sent via email are welcome, and can be used to ask a
question or to set up an appointment. Please refer to
My Office Hours for details of
my schedule
- Textbook
- Required: Required: Date, C. J. An
Introduction to Database Systems (Eighth Edition).
Addison-Wesley, 2004 We will cover chapters 1 - 12 (skipping chapter 9), 14, 27, and chapters
25 - 26 if time permits. We may not cover these chapters in order,
nor will we necessarily cover all of a given chapter.
For detailed reading, check the current week's schedule (This Week / Next
Week).
- Required: Sunderraman, Rajshekhar, Oracle9i Programming: A Primer, Addison-Wesley, 2000. We will try
and cover most of the book.
- Required: Oracle tutorials on database
tools (report writer, forms, menus) available on-line
- Course Notes: Course notes from last year will be
available on Hedwig.
- All books are currently available at the Bookstore. Additional
references can frequently be found at Borders or at
amazon.com.
Weekly reading and lecture schedule
Assignments
- Exercise #1
- Exercise #2
- Exercise #3: Group exercise in top-down design (Due Friday, March 4)
- Exercise #4: Group exercise in bottom-up design (due Wednsday, April
6)
- Exercise #5 (Due Monday, April 25)
- There will be one (shorter) exercise assigned before exercise #5 is due.
Exam reviews
Group Projects
Evaluation
- Three hour exams + a comprehensive final: 55% (The final exam
will have the weight of two hour exams)
- Written and programming exercises: 20%
- Group project: 25%
Notes:
Grading Policies
Programming exercises will be graded on style and documentation as
well as correctness. Programs and control scripts must include header
documentation as well as adequate internal documentation unless
otherwise specified. Late assignments will generally not be accepted,
will incur an increasing penalty when accepted, and will certainly
not be accepted after the graded exercise is returned to the class
unless I have asked you to correct and resubmit the exercise. Late
exercises must be submitted in hard-copy form with listings of the
assignment source and of test runs. Programs marked for correction
and re submission must be turned in within a week of the day that the
assignment was returned to the class. If a program or control script
meets requirements, works OK, is readable, and at least minimally
documented (header documentation and some internal documentation at
important points, it earns between 70% and 80% of the points
possible. If a program or control script is well structured, meets
all tests (tests are driven from the statement of the assignment, and
the specific tests I will use on your program will be taken from the
problem description in the assignment write-up, but the specific
tests will not generally be provided in advance), and is well
documented, it will earn between 80% and 95% of the total possible
points. To earn 100% of the total possible points, the program or
control script must generally meet all of the above and do something
exceptional beyond the statement of the program.
A minimum grade of 50% on exams and 50% on homework assignments is a
necessary (but not necessarily sufficient) condition for a passing grade. All
assignments turned in must represent individual effort: work done by a committee
cannot be accepted except where a group effort is a clearly stated part of the
assignment. All students in Computer Science classes at the University of Puget
Sound are responsible for the material contained in the document on academic
honesty published by the Department of Mathematics and Computer Science and
included in the Academic Handbook
I try and return exams and homework within a week, and will let
the class know if that is not possible.
No late homework can be accepted past the last day of classes (Wednesday, May
5).
Attendance Policies:
Although I do not usually take formal attendance (my reading of names is
generally to get to know everyone), this is a project class, and the performance
of your group depends on your full participation. Attendance problems in
class or lack of participation in your group may result in your removal from the
class.
Final Exam:
The final exam for this class will be Monday, May 8, at 8:00 AM. It
will be a comprehensive, two hour in-class examination.
Should you find yourself in difficulty at any point in the semester,
please make arrangements to meet with me as quickly as possible.
Course Syllabus
COMPUTER SCIENCE 455 DATABASE MANAGEMENT
SYSTEMS
I. Introduction
- A. Catalog Description The design and implementation
of database management systems with emphasis on the relational and
object-oriented models for data. Topics will include data models,
design methods and tools for design, SQL, database tools, and
implementation issues, and will include substantial work with a
commercial main-frame relational database management system and
associated tools. A group term project will be a significant part
of the course. Prerequisites: CSci 261, (MA 211 or MA
232).
- B. Purpose CSci 455 is the capstone course in the
Computer Science/Business curriculum. Its purpose is to present
the basics of database management systems and the role these
systems play in the modern business world. Students study the four
basic data models for database management systems (with emphasis
on the relational and object oriented models), database design,
and implementation techniques, and gain substantial experience
with a commercial main-frame relational database system and
associated tools. A writing-intensive group project will be a
significant part of the course. The course is also designed as an
elective course in the Computer Science/Mathematics
curriculum.
- C. Prerequisites CSci 261, (MA 211 or MA 232). A grade
of C- is required in the prerequisite courses.
II. Required Topics
- A. PROGRAMMING TECHNIQUES (this will be touched on only
briefly)
- Review of file organizations.
- File techniques.
- Access methods in relative files.
- The structure of indexed files.
- The role of a file management system (e.g.., RMS)
- B-trees
- Implementing relational operations using indexed
files
- B. Database Techniques.
- Data models for Database Management Systems
- Hierarchical
- Network/CODASYL
- Relational
- Object oriented models
- Semantic models
- Structured Query Language (SQL)
- Data definition
- Data manipulation
- The relational calculus and the relational algebra
- The data dictionary
- Other database systems/languages (We will not emphasize
this material this term)
- Ingres/QUEL
- Postgres (an object oriented database system)
- Knowledge base systems
- C. Software Engineering Techniques.
- The database design process.
- Entity-relationship diagrams (top-down design)
- Forms-based design (bottom-up design)
- Resolution of top-down and bottom-up design
- Data-flow diagrams
- Data normalization
- Database development tools
- Forms development
- Report Writers
- Applications development
- Web applications
- Embedded database languages
- The software engineering process in the design and
implementation of information systems.
Class exercises will include practice with actual database
management systems. The University of Puget Sound has a commercial
copy of the Oracle relational database management system which is
used for the majority of database exercises in the class. In addition,
software developed at the University of Puget Sound will be used for exercises
in the relational algebra and relational calculus. The term project will
involve a substantial effort in the specification, design and implementation of
a information system using Oracle.
Schedule
Note: Please note that, except for scheduled University
events and exam dates, the schedule of topics, readings, and
assignments is tentative. Please refer to the current
weekly schedule posted above. It may be necessary to change an exam
date: if that happens, I will give you at least a week's notice and
make alternate arrangements for students unable to take the exam on
the rescheduled date. Please inform me of any conflict between the
dates entered here and those in the catalog and course schedule. In
the event of any conflicts, the catalog and course schedule have the
final say. Please note: It is not possible to change
the date or time of the final examination. All students in the
class must take the exam at the date and time given in the
final exam schedule. The course is in roughly four parts:
- Introduction to Database systems, Oracle, and SQL
- Database design
- Database tools and implementation
- More theory and future directions
The tentative schedule of readings and examinations can be found
here.
Several of the readings overlap, particularly in the reference
material to which we will return several times during the
semester.
Return to my home
page