Practice and Applications of Data Management

COMPSCI 345

Course goals

This course will offer students an introduction to database systems and their applications.

As a successful student, by the end of this course, you will be able to:

  • Design data management systems to meet specific application needs.
  • Provide database integrity database normalization and schema refinement.
  • Design and implement basic database transactions via SQL commands.

Topics

Week Topics
1 Course overview and logistics
2 Basic SQL
3 Join Commands
4 Advanced SQL - part 1
5 Advanced SQL - part 2
6 Review SQL
7 ER models
8 Index selection and tuning
9 Functional dependencies and normalization
10 Security, views, and access control
11 Thanksgiving
12 Transactions
13 Non-SQL systems
14 Review
15 Final exam

Course format

This class meets once per week. It takes a “flipped” approach to learning, where students prepare for the in-class meeting (henceforth referred to as a Lab) by viewing lecture material and completing assigned work in an online textbook. The Lab meeting consists of a scripted worksheet that provides hands-on experience with applying the concepts presented in lecture and textbook to an actual database. Lab work may be done collaboratively. After the Lab, a set of problems are assigned as “homework” to further reinforce learning of the concepts and skills.

Components

Lectures and Material

Lecture material is provided in the form of pdf documents and video recordings. You are not required to view this material though we strongly encourage you to do so.

Textbook

You will be assigned a set of questions in the online, interactive textbook each week to do before the corresponding Lab meeting. You access the text via links in the course Moodle page. Please use these links to access the text so your data is imported to the gradebook. You may purchase an access code by logging in to Moodle and clicking on a link to the textbook.

Lab

Lab meetings are a time for you to apply your knowledge from the prep work, lecture and textbook, to a real database system you have installed on your laptop. You may work collaboratively in a small group if you wish. The activity is individually submitted to Gradescope for grading. The best form of collaboration is when every member of the group understands the answer to the questions and why they work. If you find that you are not sure about an answer, ask the group to explain. Attendance at the lab is required.

Homework

Homework assignments consist of a set of problems to solve using your database system. These assignments are submitted to Gradescope for grading.

Grading

Several factors determine your grade in this course. They are weighted as follows:

Component Weight
Pre-lab assignments (zyBook) 10%
Labs 30%
Post-lab assignments (HW) 30%
Midterm exam 15%
Final exam 15%

Accommodations

The University of Massachusetts Amherst is committed to making reasonable, effective and appropriate accommodations to meet the needs of students with disabilities and help create a barrier-free campus. If you have a documented disability on file with Disability Services, you may be eligible for reasonable accommodations in this course. If your disability requires an accommodation, please notify your instructors as early as possible in the course so that we may make arrangements in a timely manner.

Honesty Policy

We will guide ourselves by the university’s academic honesty policy and guidelines for classroom civility. You must read both of these.