BITM Database Management System
Database Management System
Subject Code: IT220
Course Title: Database Management System
Course No: IT220
Nature of Course: Theory & Practical
Full Marks: 60
Pass Marks: 30
Credit Hours: 3
Course Description
Course Objective
Course Contents
| Course Contents | Teaching Methodology | Teaching Hours |
|---|---|---|
| Unit 1: Database Concepts and Architecture (4 Hrs.) | ||
| Database, Database Management System, Database Users, Database Administrator, advantages of Databases | Lecture/Lab | |
| Data Models, Schemas, and Instances | ||
| Three-Schema Architecture and Data Independence | ||
| Database Languages and Interfaces | ||
| the Database System Environment | ||
| Centralized and Client/Server Architectures for DBMSs | ||
| Classification of Database Management Systems | ||
| Unit 2: Data Modelling Using Entity-Relational Model and Relational Model (8 Hrs.) | ||
| Using High-Level Conceptual Data Models for Database Design | Lecture/Lab | |
| Entity Types, Entity Sets, Attributes, and Keys | ||
| Relationship Types, Relationship Sets, Roles, and Structural Constraints | ||
| Weak Entity Types | ||
| ER Diagrams, Naming Conventions, and Design Issues | ||
| Relationship Types of Degree Higher Than Two | ||
| Concepts of Specialization and Generalization | ||
| Constraints and Characteristics of Specialization and Generalization | ||
| Converting ER Diagrams to Tables | ||
| Unit 3: The Relational Algebra and Relational Calculus (5 Hrs.) | ||
| Introduction of Relational Algebra, Unary Relational Operations: SELECT and PROJECT | Lecture/Lab | |
| Relational Algebra Operations from Set Theory | ||
| Binary Relational Operations: JOIN and DIVISION | ||
| Additional Relational Operations | ||
| the Tuple Relational Calculus | ||
| the Domain Relational Calculus | ||
| Unit 4: Database Normalization (4 Hrs.) | ||
| Informal Design Guidelines for Relational Schemas | Lecture/Lab | |
| Functional Dependencies | ||
| Normal Forms Based on Primary Keys | ||
| First, Second and Third Normal Forms | ||
| Boyce-Codd Normal Form | ||
| Multivalued Dependency and Fourth Normal Form | ||
| Properties of Relational Decomposition | ||
| Unit 5: SQL (15 Hrs.) | ||
| Data Definition Language and Data Types, Specifying Constraints, Domain Types in SQL, Schema Definition in SQL | Lecture/Lab | |
| Data Manipulation Language: The select Clause, The where Clause, The from Clause, The Rename Operation, Tuple Variables, String Operations, Ordering the Display of Tuples, Duplicate Tuples | ||
| Set Operations | ||
| Aggregate Functions | ||
| Null Values | ||
| Nested Subqueries: Set Membership, Set Comparison, Test for Empty Relations, Test for the Absence of Duplicate Tuples | ||
| Derived Relations: Views | ||
| Modification of the Database: Deletion, Insertion, Updates, Updates, Update of a view | ||
| Joined Relations: Join types and Conditions, Basic concepts of Stored Procedure, DML Triggers, and Indexing | ||
| Unit 6: Transaction Processing, Concurrency Control and Recovery Techniques (8 Hrs.) | ||
| Introduction to Transaction Processing | Lecture/Lab | |
| Transaction and System Concepts | ||
| Desirable Properties of Transactions | ||
| Serializable Schedule | ||
| Two-Phase Locking and Timestamp Ordering Concurrency Control Techniques | ||
| Recovery Concepts | ||
| NO-UNDO/REDO Recovery Based on Deferred Update | ||
| Recovery Technique Based on Immediate Update | ||
| Shadow Paging | ||
| Database Backup and Recovery from Catastrophic Failures | ||
| Unit 7: Advanced Topics (4 Hrs.) | ||
| Database Performance Tuning | Lecture/Lab | |
| Database Security | ||
| Concept of Parallel and Distributed Databases | ||
| Concept of Data Warehousing and Data Mining, BigData, and NoSQL databases |
Text Books
1. Fundamentals of Database Systems; Seventh Edition; Ramez Elmasri, Shamkant B. Navathe; Pearson Education
2. Database System Concepts; Sixth Edition; Avi Silberschatz, Henry F Korth, S Sudarshan; McGraw-Hill
3. NoSQL for Dummies; Adam Fowler; John Wiley & Sons, Inc.
4. Principles of Distributed Database Systems; M. Tamer Ozsu and Patrick Valduriez; Fourth Edition; Springer 2020
5. Database Management Systems; Third Edition; Raghu Ramakrishnan, Johannes Gehrke; McGraw-Hill
6. A First Course in Database Systems; Jaffrey D. Ullman, Jennifer Widom; Third Edition; Pearson Education Limited.
Lab Works
The laboratory work includes writing SQL statements to create databases and tables, inserting and deleting data, updating data, and writing select queries. The students are required to undertake a project work. The project work can be done individually or in group (at most 4 students).
