0% found this document useful (0 votes)
4 views

Fundamentals of database outline

The course 'Fundamentals of Database System' covers key concepts in database systems, including data modeling, relational data models, SQL, normalization, and transaction processing over a 16-week period. Students will learn to design and implement database systems, analyze information storage problems, and utilize SQL for data manipulation. Assessment includes quizzes, assignments, lab work, and a final exam, with a focus on practical application using tools like MySQL and Oracle.

Uploaded by

natiman0099
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
4 views

Fundamentals of database outline

The course 'Fundamentals of Database System' covers key concepts in database systems, including data modeling, relational data models, SQL, normalization, and transaction processing over a 16-week period. Students will learn to design and implement database systems, analyze information storage problems, and utilize SQL for data manipulation. Assessment includes quizzes, assignments, lab work, and a final exam, with a focus on practical application using tools like MySQL and Oracle.

Uploaded by

natiman0099
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 8

School: School of Information Technology and Engineering

Module Title: Full Module Code: SITE-M2101


Stack Development
Fundamentals Module ECTS: 29
Course Title: Fundamentals Course Code: SITE-2101
of Database System
Course ECTS: 7
Course Duration: 16 weeks

Course Description
This course covers fundamentals of Database system includes
extensive coverage of the Database System Concepts and
Architecture Data Modeling and Database Design, Relational Data
Model and SQL, Database Design Theory and Normalization, Query
Processing and Optimization, Transaction Processing, Concurrency
Control, and Recovery. Many additional key database topics from the
design and application-building perspective are also covered,
including indexes, views, and integrity constraints.
Course Objectives
Students successfully completing this course should be able to:
● To understand the different issues involved in the design and
implementation of a database system.
● To study the physical and logical database designs, database
modeling relational, hierarchical, and network models.
● To understand and use data manipulation language to query,
update and manage a database.
● To design and build a single database system and
demonstrate competence with fundamental tasks involved
with modeling, designing and implementing a DBMS.
● To understand database query processing, optimization
transaction processing, concurrency control, and recovery
Learning Outcomes
The Course provides a knowledge and understanding of the following:

● Differentiate database systems from file systems by enumerating


the features provided by database systems and describe each in
both function and benefit.
● Define the terminology, features, classifications, and characteristics
embodied in database systems.
● Analyze an information storage problem and derive an information
model expressed in the form of an entity relation diagram and other
optional analysis forms, such as a data dictionary.
● Demonstrate an understanding of the relational data model.
● Transform an information model into a relational database schema
and to use a data definition language and/or utilities to implement
the schema using a DBMS.
● Formulate, using relational algebra, solutions to a broad range of
query problems.
● Formulate, using SQL, solutions to a broad range of query and data
update problems.
● Demonstrate an understanding of normalization theory and
apply such knowledge to the normalization of a database.
● Use an SQL interface of a multi-user relational DBMS package to
create, secure, populate, maintain, and query a database.
● Demonstrate an understanding of query processing, optimization
transaction
processing, concurrency control, and recovery
Prerequisites:
No-prerequisite

Student Workload

Lecture:32 Tutorial: 32 Home Study:65 hrs Laboratory: 48hrs


hrs hrs
Course Content

CHAPTER 1: INTRODUCTION TO DATABASES


Part One: Databases and Database Users

Basic Definitions
● Types of Databases and Database Applications
● Typical DBMS Functionality
● Example of a Database (UNIVERSITY)
● Database Users
● When Not to Use Databases
Part Two: Filing System and Database Design Methodology
● Manual File Handling Systems and
Limitation File Based Approach and
Limitation
● Database Approach
● Main Characteristics of the Database Approach
● Advantages of Using the Database Approach
● Levels of Abstraction
● Database Design Methodology
Part-Three: Database System Concepts and Architecture

● Data Models and Their Categories


● Schemas, Instances, and States
● Three-Schema Architecture /Levels of Abstraction
● Data Independence
● Classification of DBMSs

CHAPTER 2: CONCEPTUAL DATA MODELING AND DATABASE DESIGN


Part One: Data Modeling Using the Entity-Relationship (ER) Model
● Overview of Database Design Process
● Example Database Application (COMPANY)
● ER Model Concepts
● ER Diagrams - Notation
● ER Diagram for COMPANY Schema
● Alternative Notations – UML class diagrams, others

Part Two: Enhanced Entity-Relationship (EER) Modeling

● EER stands for Enhanced ER or Extended ER


● EER Model Concepts: includes all modeling concepts of
basic ER
● subclasses/super classes,
● specialization/generalization,
● categories (UNION types),
● attribute and relationship inheritance
● object-oriented concepts, such as inheritance

CHAPTER 3: THE RELATIONAL DATA MODEL AND SQL


Part One: The Relational Data Model and Relational Database
Constraints
● Relational Model Concepts
● Relational Model Constraints and Relational Database
Schemas
● Update Operations and Dealing with Constraint Violations
● Part Two: SQL (Structured Query Language) -
Schema Definition, Constraints, And
Queries And Views
Domain Types in SQL
DDL -Data Definition Language Retrieval Queries in SQL
Set operations in SQL Aggregate functions in SQL Arithmetic
operations in SQL Specifying Updates in SQL
Part Three: The Relational Algebra And Calculus

● Unary Relational Operations


● Relational Algebra Operations From Set Theory
● Binary Relational Operations
● Examples of Queries in Relational Algebra
● The Tuple Relational Calculus
● The Domain Relational Calculus

Part Four: Relational Database Design by ER- and EERR-to-


Relational Mapping
● ER-to-Relational Mapping Algorithm
● Mapping EER Model Constructs to Relations

CHAPTER 4: DATABASE DESIGN THEORY AND NORMALIZATION


Part One: Functional Dependencies And Normalization For
Relational Databases
● Functional Dependencies (FDs)
● Normal Forms Based on Primary Keys
● General Normal Form Definitions (For Multiple Keys)
● BCNF (Boyce-Codd Normal Form)
Part Two: Relational Database Design Algorithms and
Further Dependencies
● Further Topics in Functional Dependencies:
Inference Rules, Equivalence, and Minimal
Cover

CHAPTER 5: QUERY PROCESSING AND OPTIMIZATION


Part One: Strategies for Query Processing
● Translating SQL Queries into Relational Algebra and
Other Operators
● Algorithms for External Sorting
● Algorithms for SELECT Operation
● Implementing the JOIN Operation
● Algorithms for PROJECT and Set Operations

Part Two: Query Optimization


● Query Trees and Heuristics for Query Optimization

● Choice of Query Execution Plans

● Use of Selectivities in Cost-Based Optimization


● Cost Functions for SELECT Operation

● Cost Functions for the JOIN Operation

CHAPTER 6: TRANSACTION PROCESSING, CONCURRENCY


CONTROL, AND RECOVERY
Part One: Introduction to Transaction Processing Concepts and
Theory

● Transaction and System Concepts


● Desirable Properties of Transactions
● Characterizing Schedules Based on Recoverability
● Characterizing Schedules Based on Serializability
● Transaction Support in SQL
Part Two: Concurrency Control Techniques

● Two-Phase Locking Techniques for Concurrency Control


● Concurrency Control Based on Timestamp Ordering
● Multiversion Concurrency Control Techniques
Part Three: Database Recovery Techniques

● Recovery Concepts 814

Schedule
Weeks Topics and
Subtopics
Lecture Laboratory Assessment
Week 1 – week 2 Chapter Introduction to Assignment #1.
One database working Lab#1, Lab#2
environment and Project Title
tools Approval
Week 3 – week 4 Chapter Working with Data Lab#3, Lab#4
Two Modeling and Quiz #1
Database Design Project Proposal
tools
Week 5 – week 8 Chapter Relational Data Lab#4, Lab#5
Three Model and SQL Mid_exam
Project Progress
Report
Week 9 – week 10 Chapter Database Lab#6, Lab#7
Four Normalization
Week 11 – week 12 Chapter Query Processing Lab#8, Lab#9
Five and Optimization Project Progress
Report Quiz #2
Week 13 – week 14 Chapter Transaction Lab#10, Lab#11
Six Processing, Final Project
Concurrency Report Lab exam
Control,
and Recovery
Week 15 – week 16 Exam Final Exam
Teaching Methods
● The format of the course will be lecture, class discussion and
presentation, lab exercise, assignments and Project.
● Students will work on MySQL/Oracle/SQL Server and modeling
tools
Assessment Method
● Quiz#1 – 5%
● Assignments#1 – 15%
● Mid Exam – 15%
● Lab – 40%
● Final Exam – 25%

Course Policies
❏ Attendance: It is compulsory to attend class in time and
every time. Missing more than three classes during the
term causes readmission for that course.
❏ Assignments: No Late Assignment will be accepted
❏ Test/Quizzes: Rarely re examination schedules will be
arranged for those who missed the exam by accidental or
uncontrollable situation.
❏ Cheating/Plagiarism: No second Chance or excuses.
❏ Project: The project consists of report and presentation on a
topic of your choice that is relevant to the course. It is group-
based
References
1. Elmasri, Ramez, and Sham Navathe. Fundamentals of
database systems. Hoboken, NJ: Pearson, 2016.( Text
Book)
2. Hernandez, Michael J. Database design for mere mortals : a
hands-on guide to relational database design. Upper Saddle
River, NJ: Addison-Wesley, 2013
3. Ullman, Jeffrey D., and Jennifer Widom. A first course in
database systems.
Upper Saddle River, NJ: Pearson/Prentice Hall, 2008

You might also like