CSC 261/461 - Database Systems (Fall 2017)

CRN#

CSC 261 - 86259 (uGrad CS)
CSC 461 - 86277 (Grad CS)
TCS 461 - 86286 (TEAM CS)

Prerequisites

CSC 172, CSC 173 recommended

Teaching staff

Instructor: Tamal Tanu Biswas
Office: Wegmans 2107
Office Hours: Tu 5pm - 6pm, or by appointment
Email: tbiswas2 [at] cs.rochester.edu

TA: Haosen Wen
Office: 2201 Wegmans Hall
Office Hour: Mon/Fri 3:30 - 4:30 pm, Wed 5:00 - 6:00 pm, or by appointment
Email: hwen5 [at] cs.rochester.edu

Course description

This course presents the fundamental concepts of database design and use. It provides a study of data models, data description languages, and query facilities including relational algebra and SQL, data normalization, transactions and their properties, physical data organization and indexing, security issues and object databases. It also looks at the new trends in databases, for example, Big Data, MapReduce, and NoSQL. The knowledge of the above topics will be applied in the design and implementation of a database application using a target database management system as part of a semester-long group project.

Topics covered

The course covers foundational material in the field of database systems. In this course, we will cover:
  • Basic introductory concepts necessary for a good understanding of database models.
  • Database Management System (DBMS) concepts, terminology, and architecture.
  • Entity relationship modeling and database design.
  • Relational database and SQL for efficiently storing, retrieving, and updating data in a database.
  • File organization on disk, indexing and hashing
  • Concurrency and database recovery,
Additionally, the course will cover more advanced topics in database systems, such as
  • Distributed databases, NoSQL storage systems, Big data, MapReduce
  • Basics of MongoDB and Spark.
  • Database Security (if time permits)

Course schedule

FacultyLocationDaysTime
Tamal BiswasCSB 601MW12:30 PM - 1:45 PM

Required textbook


Fundamentals of Database Systems, 7th Edition
(ISBN: 0133970779) by Ramez Elmasri & Shamkant B. Navathe (© Pearson Education, 2016).

Workload

  • In-class Quizzes
  • Assignments and Projects
  • 1 Mid Term
  • 1 Final

Grading policy

  • Quiz (20% of the course grade)
    • There will be 10+ quizzes. Best 10 quizzes are considered for grading.
    • Each quiz carries 2% of the course grade
    • All the quizzes will be held during the lectures on Mondays.
  • Exams (30% of the course grade)
    • 1 midterm (15%)
    • 1 final exam (15%)
    Midterm on Oct 25, 2017
    Final on Monday, December 18,2017 at 7:15 PM
  • Projects (45% of the course grade)
  • Class Participation
    • 5 points will be awarded based on in-class participation and posts on Piazza.
  • Term Paper (Only for CSC/TCS 461 students)
    • Students need to review one or more conference/journal papers, implement or add features to it.
    • Students need to submit a report based on their results or findings.
    • 8 additional points (making the total grade 108. The score will be scaled to 100 for the final letter grade)

Honor Code Policy

You can use the following guideline: For homeworks and programming assignments, students are encouraged to consult each other, the TA, the instructor, or anyone else for that matter. However, the assistance offered or accepted should not go beyond a discussion of the problem and a sketch of a solution. You can use the following guideline: when it comes time for you to write your program or your homework paper, do not use any written material from the discussion. If you can reconstruct the discussion and complete the solution on your own, then you have learned the material (and that is the objective of this course!). For team projects, you should make sure to identify division of labor in your README. You are expected to be familiar with and adhere to the University's Academic Honesty Policy.

Late homework and absences from exams

No late submission is allowed. Examinations will be given at alternate times only with appropriately documented medical excuses.