| Week | Lecture Topics & Slides | Readings | Dates | Important Dates | |
|---|---|---|---|---|---|
| 1 | Overview of DBMSs, Course Overview, Administrative Information [l1.pdf] | DSC Ch 1 | Thu, Sep 10 | ||
| 2 | Introduction to the Relational Model [l2.pdf] | DSC Ch 2 | Tue, Sep 15 | ||
| Relational Algebra Part 2 + SQL (1) [l3-RA.pdf] [l3-SQL.pdf] | DSC Ch 2 | Thu, Sep 17 | |||
| 3 | SQL (2) | DSC Ch 3 | Thu, Sep 22 | ||
| SQL (3) | DSC Ch 3-4 | Thu, Sep 24 | |||
| 4 | SQL (4) | DSC Ch 4-5 | Tue, Sep 29 | ||
| SQL (5) | DSC Ch 4, 5 | Thu, Oct 1 | |||
| Fri, Oct 2 | Project Milestone 0 Due | ||||
| 5 | DB Design: DB Design E/R Model | DSC Ch 6 | Tue, Oct 6 | Assignment 1 Due | |
| DB Design: Theory (1) | DSC Ch 7 | Thu, Oct 8 | |||
| Fri, Oct 9 | Midterm 1 | ||||
| 6 | No classes - reading week | ||||
| 7 | DB Design: Theory (2) | DSC Ch 7 | Tue, Oct 20 | ||
| DBMS Architecture Overview & Physical Data Organization | DSC Ch 12, 13 | Thu, Oct 22 | |||
| Fri, Oct 23 | Project Milestone 1 Due | ||||
| 8 | Indexing - 1 | DSC Ch 14 | Tue, Oct 27 | ||
| Indexing - 2 | DSC Ch 14 | Thu, Oct 29 | |||
| 9 | Query Processing and Optimization - 1 | DSC Ch 15 | Tue, Nov 3 | Assignment 2 Due | |
| Review lecture | Thu, Nov 5 | ||||
| Fri, Nov 6 | Midterm 2 | 10 | Query Processing and Optimization - 2 | DSC Ch 15 | Tue, Nov 10 |
| Query Processing and Optimization - 2 | DSC Ch 16 | Thu, Nov 12 | 11 | Transactions | DSC Ch 17 (Optional: DIA Ch 7) | Tue, Nov 17 |
| Pessimistic Concurrency Control | DSC Ch 17 (Optional: DIA Ch 7) | Thu, Nov 19 | |||
| Fri, Nov 13 | Project Milestone 2 Due | 12 | Optimistic Concurrency Control | DSC Ch 17 (Optional: DIA Ch 7) | Tue, Nov 24 |
| Database Recovery | DSC Ch 18, 19 | Thu, Nov 26 | 13 | Project demos | Tue, Dec 1 | Assignment 3 Due |
| Project demos | Thu, Dec 3 | Project Final Report Due | 14 | Finals review Q&A style | Tue, Dec 8 |
Marmoset will be used for the assignments. More details will be provided in individual assignments.
Assignment release dates and due dates are as follows (dates are tentative and may change):
| Assignment | Date Posted | Due (11:59pm EDT/EST) | Hand In Via |
|---|---|---|---|
| 1 - SQL | Thu, Sep 17 | Tue, Oct 6 | Marmoset |
| 2 - Normalization and Indexing | Fri, Oct 22 | Tue, Nov 3 | Marmoset |
| 3 - Joins and Concurrency Control | Mon, Nov 9 | Tue, Dec 1 | Marmoset |
Collaboration Policy: The work you hand in must be your own. Unless specified otherwise, you can always use any result from the textbook, notes, or previous assignment just by citing it. You may discuss the assignment questions verbally with others, but you should come away from these discussions with no written or electronic records and you must acknowledge the discussion. Acknowledge any sources you have used. Any assistance received (from human or nonhuman sources) that is not given proper citation may be considered a violation of the university policies.
Late Policy:
The group project is optional. You can choose between doing the group project or individual programming assignments Mark Breakdown section below).
Learn will be used to submit the group project. Detailed instructions will be given in week 2.
| Milestone | Due (11:59pm EDT/EST) |
|---|---|
| 0 (Team up) | Fri, Oct 2 |
| 1 (Proposal) | Fri, Oct 23 |
| Deadline to switch out of project | Fri, Oct 30 |
| 2 (Progress Report) | Fri, Nov 13 |
| 3 (Final Report & Demo) | Thu, Dec 3 |
We will use Piazza for all course announcements and as a forum for students to ask and answer questions. Note that Piazza is for student-student interactions. So you should enroll yourself at your earliest convenience. During Piazza discussions, please do not reveal the solutions to the assignments by requesting or offering detailed advice. We'll delete comments that reveal too much. Violations can result in academic sanctions.
Similarly, do not solicit hints or provide hints about how to solve the homework problems on other forums. Violations can result in academic sanctions.
Piazza is not the place to dispute how assignments are marked. If you have a complaint, please follow the process given below.
| Instructor | Email (@uwaterloo.ca) |
Office Hours |
|---|---|---|
| Sujaya Maiyya | (smaiyya) | Tuesdays, 2:30-3:30 (DC 3343) |
| Instructional Apprentices and Teaching Assistants | Email (@uwaterloo.ca) |
|---|---|
| Christina Li (Project IA) | (c296li) |
| Zhiang Wu (Assignment IA) | (z46wu) |
| Maksym Bidnyi | (mbidnyi) |
| Zhengyuan Dong | (z6dong) |
| Mariia Ponomarenko | (m2ponoma) |
| Brandon Zhou | (z458zhou) |
| Instructional Support Coordinator | Email (@uwaterloo.ca) |
|---|---|
| Sylvie Davies | (sldavies) |
Two marking schemes, depending on whether you choose to do the group project or individual programming assignments:
Note: If you decide to e-mail the course staff, you must use your uwaterloo Quest e-mail account (WatIAM/Quest userID @uwaterloo.ca); otherwise we cannot verify who you are and are limited on what we can accept and respond to.
| Help Topic | Contact |
|---|---|
| Assignment: Missed Deadline | We do not accept emailed assignments. The last files submitted before the
deadline will be marked (submit early and often, even if
not finished). If the deadline is missed due to illness or other valid, verifiable reason, see Missed Work Due To Illness below. |
| Assignment: Marking Error | Re-mark request, due within one week of release of marks on Markoset. Contact the TA who marked the specific question and submit a written request. See TAs for contact information. |
| Assignment: Recording Error | Grades will be made available through Marmoset. Official marks will finally be on Learn. If you notice an error in the recorded value, please contact Sylvie Davies (CS 348 ISC). |
| Enrollment | If Quest won't let you enroll or switch LEC or TUT sections without a permission/override number: Instructors and course staff are unable to help you—you must see a CS academic advisor. |
| General Course Help | Check office hours. |
| Missed Work due to Illness or Valid & Verifiable Reason (Assignments, Exams) | Validation required. See Verification of Illness Services but substitute Sylvie Davies (CS 348 ISC) for references to instructor. Make sure you also read the Math Faculty document on the consequences of submitting a VIF. |
| Accessibility Services (AAS) exam accommodation forms (request to write at AAS) | Submit to AAS at least 3 weeks before exam |
Mental Health: If you or anyone you know experiences any academic stress, difficult life events, or feelings like anxiety or depression, we strongly encourage you to seek support.
On-campus Resources
Off-campus Resources
Diversity: It is our intent that students from all diverse backgrounds and perspectives be well served by this course, and that students’ learning needs be addressed both in and out of class. We recognize the immense value of the diversity in identities, perspectives, and contributions that students bring, and the benefit it has on our educational environment. Your suggestions are encouraged and appreciated. Please let us know ways to improve the effectiveness of the course for you personally or for other students or student groups. In particular:
MOSS (Measure of Software Similarities) is used in this course as a means of comparing students' assignments to ensure academic integrity. We will report suspicious activity, and penalties for plagiarism/cheating are severe. Please read the available information about academic integrity very carefully.
Discipline cases involving any automated marking system such as Marmoset include, but are not limited to, printing or returning values in order to match expected test results rather than making an actual reasonable attempt to solve the problem as required in the assignment question specification.