DBMS

You might also like

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 3

Course Title: Database Management System

Course Duration: 50 hours (lectures)


Credit: 4
Course Objective:
The objective of this course is to provide students with a comprehensive
understanding of Database Management Systems (DBMS) and its applications
in real-world scenarios. By the end of the course, students should be able to
design, implement, and manage databases efficiently. They should also be able
to apply theoretical concepts to solve practical problems, ensuring the
development of robust and scalable database solutions.
Course Description:
This course serves as an introduction to the fundamental principles and
practices of Database Management Systems (DBMS). It covers a range of topics
including database design, normalization, SQL programming, transaction
management, concurrency control, and database administration. Additionally,
the course delves into advanced concepts such as data warehousing, data
mining, and distributed databases, providing students with a well-rounded
understanding of modern database technologies.

Unit 1: Introduction to DBMS (10 hours)


This unit provides students with a foundational understanding of databases and
Database Management Systems (DBMS). Topics covered include:
Introduction to databases and their importance in modern computing
Overview of Database Management Systems (DBMS) and their role in data
management
Different data models: hierarchical, network, relational, and object-oriented
Core concepts of relational databases: tables, tuples, attributes, and keys
Introduction to SQL (Structured Query Language) and its role in database
querying and manipulation
Overview of database architecture including client-server model and three-level
architecture
Database development process: requirements analysis, conceptual design,
logical design, and physical design
Unit 2: Relational Database Design and Normalization (10 hours)
This unit focuses on the principles of relational database design and
normalization techniques. Topics covered include:
Entity-Relationship (ER) modelling and its role in conceptualizing database
structures
Relational schema and constraints: primary key, foreign key, unique key, and
check constraints
Functional dependencies and their significance in relational database design
Normalization and its importance in reducing data redundancy and improving
data integrity
Normal forms: 1NF, 2NF, 3NF, BCNF, and their application in database design
Denormalization and its implications for performance optimization
Unit 3: SQL Programming (10 hours)
This unit explores SQL (Structured Query Language) programming for database
querying and manipulation. Topics covered include:
Basic SQL commands: SELECT, INSERT, UPDATE, DELETE, and their
syntax and usage
Advanced SQL commands: JOIN, UNION, INTERSECT, EXCEPT, and their
application in complex queries
Subqueries and correlated subqueries for performing nested queries and
advanced data retrieval
Views and indexes: creating and managing database views and indexes to
improve query performance
SQL functions and procedures: user-defined functions, stored procedures, and
their role in data processing and manipulation
Unit 4: Transaction Management and Concurrency Control (10 hours)
This unit focuses on transaction management and concurrency control
mechanisms in DBMS. Topics covered include:
Transactions: definition, properties (ACID properties), and states (active,
partially committed, committed, aborted)
Transaction management in DBMS: transaction processing, concurrency
control, and recovery management
ACID properties (Atomicity, Consistency, Isolation, Durability) and their
significance in ensuring data integrity and reliability
Concurrency control techniques: locking, timestamp-based protocols, and their
role in managing concurrent database access
Deadlock detection and prevention strategies to mitigate the risk of deadlocks in
database systems
Unit 5: Database Administration and Advanced Topics (10 hours)
This unit covers database administration and explores advanced topics in
database management. Topics covered include:

Database security and authorization: user authentication, access control, and


data encryption techniques
Backup and recovery strategies: database backup procedures, recovery
mechanisms, and disaster recovery planning
Performance tuning and optimization techniques to improve database efficiency
and scalability
Introduction to data warehousing and data mining: concepts, architecture, and
applications in decision support systems
Distributed databases and replication: distributed database architecture,
replication techniques, and their role in achieving data consistency and
availability

Textbook:
"Database System Concepts" by Abraham Silberschatz, Henry F. Korth, and S.
Sudarshan

You might also like