—- data course —-
Number: 4016
Title: Database Design
English Title: Database Design
Level: Micromaster
Field: Software Engineering
Credits: 3
Type: Theoretical
Category: Specialized
Priority: 20
Prerequisite: General Objective
Corequisite: –
Image: database.png
ID: 4016
Instructor: Education
Term: Summer 2025
Schedule: Monday 13:00-16:00
General Objective
In this course, students will learn about semantic data modeling and database design concepts. By the end of the semester, students are expected to have complete familiarity with all concepts mentioned in the detailed syllabus.
Topics
Introduction to Database Systems (1 session)
Course introduction
Definition and importance of databases
Key elements of database environment
ACID Properties
Types of database architectures (Centralized, Client-Server, Distributed)
Components of Relational Database Management System (RDBMS)
Relational Model (1 session)
SQL Implementation (4 sessions)
Database Design (4 sessions)
Semantic modeling
Entity, Attribute, Relationship
ER and EER diagrams
Aggregation and Generalization
Converting semantic models to logical design
Normalization (1NF, 2NF, 3NF, and BCNF)
Common pitfalls and solutions
Modern SQL (1 session)
Relational Model Integrity (1 session)
Integrity
Assertion
Procedure, Function
Trigger
Database Performance Optimization (2 sessions)
Data Warehouse (1 session)
Concept and importance of data warehouses
Different data warehouse architectures
ETL processes (Extract, Transform, Load)
Designing and building Data Marts
Implementing Normalized and Denormalized data
Data mining in data warehouses
NoSQL Databases (1 session)
Reasons for using NoSQL databases
CAP theorem
Key-Value, Columnar, Graph, Document and Multi-Model databases
Horizontal and vertical scaling
Database design for big data and distributed architectures
Introduction to MongoDB and Neo4J with real-world applications (1 session)
Introduction to Vector Databases and their applications in AI (1 session)
Note: Starting from the introduction of tabular data structures onward, SQL will be used for examples wherever necessary. Students must study SQL from the third week onward in parallel with course progress.
Assessment
References
Seyed Mohammad Taghi Ruhani Rankoohi. Fundamental Concepts of Databases. 4th Edition, 2011.
R. Elmasri, S. Navathe. Fundamentals of Database Systems. 8th Edition, Pearson, 2019.
A. Silberschatz, H. F. Korth, S. Sudarshan. Database System Concepts. 6th Edition, McGraw-Hill, 2010.
C. J. Date. An Introduction to Database Systems 8th Edition, Pearson, 2003.
T. Connolly, C. Begg. Database Systems. 6th Edition, Pearson, 2014.
R. Ramakrishnan, J. Gehrke. Database Management Systems. 4th Edition, McGraw-Hill, 2014.