Database Management Systems
Database Management Systems
Course Syllabus
Prepared By:
GENERAL DATA
SUBJECT CODE
Credit Hours
PUBLICATION DATE
DEGREE IN WHICH IT IS
TAUGHT
CONTEXT OF THE SUBJECT
RESPONSIBLE TEACHER
Name
LIST OF TEACHERS
THEORY
TRANSVERSAL COMPETENCES T
1. Acquire abilities to creatively solve database-related problems based on an
autonomous decision-making.
2. Acquire abilities to communicate and transmit knowledge on database design
issues.
3. Acquire abilities to work effectively in groups to successfully design a database.
CONTENT
GENERAL DESCRIPTION
This course provides a solid background in the theory, design, and programming of database
systems, with a focus on relational databases. The relational data model and entity-
relationship diagrams will be covered. The course introduces database query languages,
including an in-depth coverage of the Structured Query Language (SQL). Other database
topics include storage and indexing techniques, transaction management, and database
interface with application programs. Prerequisite: ( ) This course is valuable to analysts,
engineers, designers and developers.
THEORETICAL CONTENT
Theoretical contents
1- Database concepts
a. Why Databases?
b. Data vs. Information
c. Introducing the Database
d. Why Database Design is Important
e. Evolution of File System Data Processing
f. Problems with File System Data Processing
g. Database Systems
a. Data Modeling and Data Models
b. The Importance of Data Models
c. Data Model Basic Building Blocks
d. Business Rules
e. The Evolution of Data Models
f. Degrees of Data Abstraction
g. A Logical View of Data
h. Keys
i. Integrity Rules
j. Relational Set Operators
k. The Data Dictionary and the System Catalog
l. Relationships within the Relational Database
m. Data Redundancy Revisited
n. Indexes
o. Codd’s Relational Database Rules
2. Entity Relationship (ER) Modeling
a. The Entity Relationship Model (ERM)
b. Developing an ER Diagram
c. Database Design Challenges: Conflicting Goals Advanced Data Modeling
d. The Extended Entity Relationship Model
e. Entity Clustering
f. Entity Integrity: Selecting Primary Keys
g. Design Cases: Learning Flexible Database Design
h. Database Tables and Normalization
i. The Need for Normalization
j. The Normalization Process
k. Improving the Design
l. Surrogate Key Considerations
m. Higher-Level Normal Forms
n. Normalization and Database Design
o. Denormalization
p. Data-Modeling Checklist
3. Introduction to Structured Query Language (SQL)
a. Introduction to SQL
b. Data Definition Commands
c. Data Manipulation Commands
d. SELECT Queries
e. Additional Data Definition Commands
f. Additional SELECT Query Keywords
g. Virtual Tables: Creating a View
h. Joining Database Tables
i. Relational Set Operators
j. SQL Join Operators
k. Subqueries and Correlated Queries
l. SQL Functions
4. Advanced topics
a. Semi-structured models
i. XML
ii. Query in semi-structured models
b. NoSQL*
c. Object-relational database*
d. Data warehouse*
e. Spatial databases*
LEARNING PLAN
Weekly detail
EVALUATION SYSTEM
Since this course is project- and industry-based, a significant portion of the course grade will go for the project tasks, and the
industry will be part of the evaluation process. The grade distribution is as follows:
1. First exam
2. Two problem based assignments
Schema on open data
Converting information need to SQL and lab. attendance
3. Term project
4. Final Exam