CS 306 Database Systems
2024-2025 Fall Syllabus
GENERAL INFORMATION
Office : FENS 2081
Email : ysaygin@[Link]
Tel : 9576
Web :
[Link]
Office Hours : will be announce later
Use sucourse for discussions regarding
the course. (Your TAs will check the
messages regularly and inform me for any
urgent matter)
TAs
Mahdi Ali Pour
(mahdialipour@[Link] )
Amna Amir Butt
([Link]@[Link] )
Recep Gül
([Link]@[Link] )
LA: Kanat Özgen
([Link]@[Link] )
GENERAL INFORMATION : Text
Book
Grading Policy
There will be one Midterm and a Final :
MT - 30% (exact day and time TBA)
FINAL 45%
Quizes - 10%
DB Application: 15%
Group project (max 5 students).
Choose different projects, or variations.
You may use MySQL or any other Database
Management System to develop your database
application.
We will evaluate your contribution to your project
through Project Evaluation Exams (Your 15% will come
from those exams)
Some of the Project Evaluation Exams may be in
conjunction with the Midterm and the Final.
Makeup Policy
Final will be a makeup for the MT for
those with a valid health report
About quizes
We will have 14 or 15 quizes
No makeup if you miss any quiz
If you attend 10 quizes, you will get your full
10%
Quizes will be just simple exercises related to
the lectures
You may work with your friends to answer the
questions
You need to be physically present during the
lecture during the quiz and submit it on your
own.
Learning objectives
Learning how to design and implement a database
application
Conceptual design
Relational Model
Mapping ER to Relational Model
Schema refinement and normal forms
Querying
Learning database system concepts
Concurrency Control and Transaction Management
Recovery
Storage and Indexing
Learning new generation data storage and querying
(and also understanding that the conventional SQL
databases are not obsolete)
List of Topics
(Order of teaching may be slightly different)
Introduction to Database Systems
Entity Relationship Model
Relational Model
Relational Algebra
SQL Queries
List of Topics (Contd.)
Functional Dependencies
Normal Forms
Schema Decomposition into Normal Forms
List of Topics (Contd.)
Data Storage and Indexing
Transaction Management
Concurrency Control
Crash Recovery
Illustration of the topics till
now!
List of Topics (Contd.)
Document databases
List of Topics (Contd.)
Key-value stores
Yves Klein | Untitled blue
monochrome (IKB 82)
PROJECT
Form your group (Max 5 people)
Think about a real-life database application
project
Step 1: Write a one page report describing
what you want to do for this project. Write your
report using any editor and submit the PDF
through sucourse
Report should list the group members but only
one student should submit the report.
If you submit you will get 0
Otherwise you will get -1
An example database application
(Taken from the book “Fundamentals of Database Systems” by Elmasri and Navathe)
Company database keeps track of a company’s employees, departments and projects.
1. The company is organized into departments. Each department has a unique name, a unique number and a particular
employee who manages the department. We keep track of the start date when that employee began managing the department. A
department may have several locations.
2. A department controls a number of projects, each of which has a unique name, a unique number and a single location.
3. We store each employee’s name, Social Security number, address, salary, sex and birth date. An employee is assigned to one
department but may work on several projects, which are not necessarily controlled by the same department. We keep track of
the number of hours per week that an employee works on each project. We also keep track of the direct supervisor of each
employee.
4. We want to keep track of the dependents of each employee for insurance purposes. We keep each dependent’s first name,
sex, birth date and relationship to the employee.
Learning objectives
Learning how to design and implement a
database application
Conceptual design (ER model)
Relational Model
Mapping ER to Relational Model
Schema refinement and normal forms
Querying (SQL)
Learning database system concepts
Concurrency Control and Transaction Management
Recovery
Storage and Indexing
What you need to do:
Attend the lectures if you want to interact with me
Ask any question you like during the lectures (or
during my office hours)
Don’t be scared to ask questions or contribute with
your comments
Work harmoniously for the group project
Pass this course with a good grade!
You need to collect min 50 out of 100 points to pass
Quizes are for learning together and collecting points
(even bonus points)!
Please take advantage of the midterm, final could be
harsh.