Schedule
- Lecture 1: “Introduction to Databases” on Wednesday, January 17th
- Lab 1: “Database Schema Exploration” on Friday, January 19th, due Thursday, January 25th
- Prepare by reading Chapter 1 through Chapter 2.1
- Description
- Homework 1: “Database Schema Design” assigned Friday, January 19th, due Thursday, January 25th
- Lecture 2: “Introduction to ER Modeling” on Monday, January 22nd
- Prepare by reading Chapter 3 through Chapter 3.4
- Slides
- Lab 2: “ER Schema Design” on Wednesday, January 24th, due Thursday, February 1st
- Lecture 3: “Advanced ER Modeling” and “Data Lifecycle” on Friday, January 26th
- Prepare by finishing Chapter 3
- Advanced ER Modeling Slides
- Data Lifecycle: Planning Slides
- Homework 2: “ER Schema Interpretation” assigned Friday, January 26th, due Thursday, February 1st
- Lecture 4: “Relational Model” and “SQL DDL” on Monday, January 29th
- Prepare by reading Chapter 5
- Relational Model Slides
- SQL DLL Slides
- Homework 3: “The Relational Data Model” assigned Monday, January 29th, due Thursday, February 8th
- Lab 3: “SQL DDL” on Wednesday, January 31st, due Thursday, February 8th
- Lab 4: “Privacy Laws” on Friday, February 2nd, due Thursday, February 8th
- Lecture 5: “Relational Algebra” on Monday, February 5th
- Prepare by reading Chapter 8 through section 8.5
- Slides
- Lecture 6: “Relational Calculus” on Wednesday, February 7th
- Prepare by finishing Chapter 8
- Slides
- Lab 5: “Relational Algebra and Calculus Practice” on Friday, February 9th, due Thursday, February 15th
- Homework 4: “Relational Algebra and Calculus” assigned Friday, February 9th, due Thursday, February 15th
- Lecture 7: “ER to Relational Mapping” and “Introduction to SQL DML” on Monday, February 12th
- Prepare by skimming Chapter 4 and reading Chapter 9
- ER to Relational Mapping Slides
- SQL DML Slides
- Homework 5: “ER to Relational Mapping” assigned Monday, February 12th, due Thursday, February 22nd
- Lecture 8: “Review” on Wednesday, February 14th
- Prepare by reviewing feedback on your homework, catching up with reading, and identifying topics you have questions about
- Prepare by reviewing feedback on your homework, catching up with reading, and identifying topics you have questions about
- Midterm Exam on Monday, February 19th
- Covering all material from Lecture 1 to Lecture 7
- Open Book, Open Notes, Closed Discussion, Closed Internet Search
- Lab 6: “SQL DML” on Wednesday, February 21st, due Thursday, February 29th
- Prepare by reading Chapter 6
- SQL DML Slides
- Description
- Homework 6: “Project Proposals” assigned Wednesday, February 21st, due Thursday, February 29th
- Lab 7: “Docker” on Friday, February 23rd due Thursday, February 29th
- Prepare by reading Docker’s “Quick hands-on guides”
- Docker Slides
- Description
- Lecture 9: “Database Programming” on Monday, February 26th
- Prepare by skimming Chapter 10
- Slides
- Lab 8: “Database Programming with SQLite” on Wednesday, February 28th, due Thursday, March 14th
- Lecture 10: “Web Database Applications” on Friday, March 1st
- Prepare by skimming Chapter 11 and carefully reading this WSGI tutorial
- Slides
- Homework 7: “University Web App” assigned Friday, March 1st, due Thursday, March 14th
- Start this assignment early, since it may be time-consuming!
- Description
-
No class for Spring Break: Monday, March 4th through Friday, March 8th
- Lecture 11: “Functional Dependencies” on Monday, March 11th
- Prepare by reading Chapter 14
- Slides
- Homework 8: “Project Milestone: ER Diagram” assigned Monday, March 11th, due Thursday, March 21st
- Lecture 12: “Database Normalization” on Wednesday, March 13th
- Prepare by reading Chapter 15
- Slides
- Lab 9: “Database Design” on Friday, March 15th, due Thursday, March 21st
- Lecture 13: “File Structures and Indexing, part 1” on Monday, March 18th
- Prepare by reading Chapter 16
- Slides
- Lab 10: “Advanced SQL DDL” on Wednesday, March 20th, due Thursday, March 28th
- Prepare by reading Chapter 26.1
- Advanced SQL DDL Slides
- Description
- Lecture 14: “File Structures and Indexing, part 2” and “DB Frameworks” on Friday, March 22nd
- Prepare by reading Chapter 17
- File Structures and Indexing Slides
- DB Frameworks Slides
- Homework 9: “Project Milestone: Relational Schema Design” assigned Friday, March 22nd, due Thursday, March 28th
- Lecture 15: “Query Processing and Optimization” on Monday, March 25th
- Prepare by skimming Chapters 18 and 19
- Slides
- Homework 10: “File Structures, Indexing, and Query Optimization” assigned Monday, March 25th, due Thursday, April 4th
- Lab 11: “Query Processing and Optimization” on Wednesday, March 27th, due Thursday, April 4th
- Lecture 16: “Transactions” on Friday, March 29th
- Prepare by reading Chapter 20
- Slides
- Lecture 17: “Crash Recovery” on Monday, April 1st
- Prepare by reading Chapter 22
- Slides
- Lab 12: “Object-Relational Mapping with Django” on Wednesday, April 3rd, due Thursday, April 11th
- Homework 11: “Project Milestone: Database Schema Implementation” assigned Wednesday, April 3rd, due Thursday, April 11th
- Lecture 18: “Concurrency Control” on Friday, April 5th
- Prepare by reading Chapter 21
- Prof. Magee guest lecturing
- Slides
- Lecture 19: “Database Architectures” on Monday, April 8th
- Prepare by reading Chapter 23
- Slides
- Lab 13: “Concurrency Control” on Wednesday, April 10th, due Thursday, April 18th
- Lecture 20: “NoSQL, part 1” on Friday, April 12th
- Prepare by reading Chapter 24 or by watching the first 25 minutes of Martin Fowler’s “Introduction to NoSQL”
- Slides
- Homework 12: “Project Milestone: Complete Implementation” assigned Friday, April 12th, due Friday, April 26th
- Lecture 21: “NoSQL, part 2” on Monday, April 15th
- Prepare by reading Chapter 24 or by watching the last 20 minutes of Martin Fowler’s “Introduction to NoSQL”
- Slides
- Lab 14: “Graph Databases” on Wednesday, April 17th, due Thursday, April 25th
- Lecture 22: “NoSQL, part 3” and “Data Science” on Friday, April 19th
- Prepare by reading Chapter 29
- NoSQL Slides
- NoSQL Flowchart
- Data Analysis Slides
- Homework 13: “Project Milestone: Record Presentations” assigned Friday, April 19th, due Sunday, April 28th
- Lecture 23: “Review” on Monday, April 22nd
- Prepare by reviewing feedback on your homework, catching up with reading, and identifying topics you have questions about
- Slides
- Lab 15: “Load Testing” on Wednesday, April 24th, due Monday, April 29th
- Lecture 24: “Database Research” on Friday, April 26th
- Project Presentations on Monday, April 29th
Future
- Capstone requirements due Friday, May 3rd
- Course evaluations are open April 16th until Tuesday, April 30th
- Final Exam on Monday, May 6th 10:30am-12:30pm in MACD117
Advanced Reading
SQL Antipatterns, by Bill Karwin. Available through the Clark Library.