David Chiu

Professor of Computer Science
University of Puget Sound
dchiu@pugetsound.edu


home | teaching | research | people | service | faq for students

CS 455 - Principles of Database Systems - Syllabus

Course Info

Course Description

The management of data is one of the classical problems in computing. This course centers around the fundamental concepts and theory behind the relational data model, which addresses numerous problems that plague data management, including data independence, access, consistency, and information loss. Course topics include the relational data model, database languages (e.g., SQL), relational database theory, database design (by decomposition), query execution, and considerations that affect system performance. Students will design database schemas that effectively model an organization’s information and write applications that require database integration. Students will also gain insight through the implementation of influential data structures and algorithms that are commonly used in modern relational database systems.

Prerequisites

A grade of C- or higher in the following course is required, or with permission from the instructor:

Required Textbook

Silberschatz, Korth, and Sudarshan, Database System Concepts. 7th Ed.

Course Topics

Student Learning Outcomes

Upon completion of this course, students will be able to:

Grades

Your overall grade is broken down as as follows:

  % Weight
Participation 7%
Term Project 15%
Homework Assignments 25%
Midterm I 15%
Midterm II 18%
Final Exam 20%
Homework Assignments

Homework assignments are a mix of paper-based and coding-based. They account for a significant portion of the final grade. Unless otherwise noted, you are to work on homework assignments alone. You are welcome to brainstorm with others (including tutors) for ideas, but any code you submit should be yours.

Do not copy code you find on the web and/or ChatGPT. This is considered plagiarism. Please see the “Academic Integrity” section below.

Term Project

There will be an open-ended group project assigned about mid-way through the course. The most successful teams meet and physically work together at an agreed-upon location and time – that is, uno animo. It is a good idea to set up version control environments and practice scrum, to ensure everyone has something to do and is making progress. A final presentation will be given toward the end of the semester. Each member of the team should contribute equally to the assignment. Students on the same team may receive different grades based on perceived effort and contributions (via scrum logs and git commit history).

Clasroom Policies

Final Letter Grades

These are the cutoffs when assigning your final letter grades. The cutoffs below might come down, but will not be set higher.

Final Average Letter Grade
100% - 94% A
93% - 90% A-
89% - 87% B+
86% - 84% B
83% - 80% B-
79% - 77% C+
76% - 74% C
73% - 70% C-
69% - 67% D+
66% - 64% D
63% - 60% D-
59% and below F
Attendance and Participation

Regular attendance and participation in class are required. Attendance, to be graded out of 10 “participation points,” applies toward your final grade. I deduct 2 points for each unexcused absence, 1 point for being late, and 1 point for engaging in activities that can disrupt others: scrolling through your phone, texting, playing games on your laptop, etc.

Furthermore, if a student misses more than 6 class meetings (15% of the semester) without a verified excuse or accommodation, they will be automatically withdrawn from the course (W) or assigned a failing grade (F). Exceptions may be granted for verified emergencies with appropriate documentation.

During Class: Phones Off!

Phones are a common distraction during lectures. Please turn your phones off, or at least put your phones on silent during lecture. If you are caught using your phone during class and/or lab, it will affect your participation points.

Academic Integrity

I adhere to the university’s academic integrity policy. If a student is caught misrepresenting their work, then at minimum, they will receive an automatic zero for the assignment and the case will be reported upstream, which may affect the student’s athletic and scholarship eligibilities. To avoid such problems, use common sense and when in doubt, ask me for advice. Examples of academic dishonesty include, but are not limited to, the following:

AI Usage Policy

In this course, all work that students turn in must be produced by the students themselves. Any direct use of AI-generated material within an assignment constitutes academic dishonesty. Students may use AI in indirect ways, such as consultation for brainstorming purposes or as a study assistant. However, the student should be forewarned that AI tools are frequently inaccurate and students are responsible for their own study processes. Further, AI-generated material must not be copied or paraphrased into an assignment. If you have questions about the use of AI in this course, please ask your professor.

In select courses, I have created an “AI Tutor” that has been trained on our course materials. You can use this AI tutor freely to get help on assignments, to brainstorm for ideas, and to review for exams. If an AI Tutor has been created for this class, I will make it available through canvas. Limit your AI usage to just this bot, as other AI tools can lead you astray from the course materials.

When used properly, ChatGPT, Gemini, and other generative AI are powerful tools and can be a great help in understanding the technical contents of this course. Because of that, on surface, I am not opposed to their use for my classes. However, there are clear boundaries that, when crossed, could lead to severe consequences for students. Here are some do’s-and-don’ts guidelines on how to properly use these tools for this class:

Late Policy, Extensions, and Makeup

Late Deduction

For each day that a homework assignment is late beyond the due date (or the adjusted date according to your accommodations), I assess a \(3^d\%\) deduction, where \(d\) is the number of days late including weekends.

Deadline Extensions

Ample time is provided to complete each assignment, and I do not assign work that has not already been covered in lectures. Generally, no extensions be will given for assignments. The exception is when you can provide documentation for unique circumstances, or if you have student accommodations. As a general rule of thumb, come talk to me and explain what might be going on.

Exam Policies

University, Academic, and Administrative Policies

There are many university policies and resources that offer guidance on how to be safe and make the most of your college education. Here are a few that you should take a moment to review: