Database Management System - Syllabus

Embark on a profound academic exploration as you delve into the Database Management System course () within the distinguished Tribhuvan university's CSIT department. Aligned with the 2065 Syllabus, this course (CSC-253) seamlessly merges theoretical frameworks with practical sessions, ensuring a comprehensive understanding of the subject. Rigorous assessment based on a 60+20+20 marks system, coupled with a challenging passing threshold of , propels students to strive for excellence, fostering a deeper grasp of the course content.

This 3 credit-hour journey unfolds as a holistic learning experience, bridging theory and application. Beyond theoretical comprehension, students actively engage in practical sessions, acquiring valuable skills for real-world scenarios. Immerse yourself in this well-structured course, where each element, from the course description to interactive sessions, is meticulously crafted to shape a well-rounded and insightful academic experience.


Course Synopsis: This is a first database course for B.Sc. Computer Science and Information Technology students. It introduces the fundamentals of database technology. Topics covered include: database concepts, Database System Architecture, E-R model, relational model, database design theory, database languages, transaction management, concurrency control and database recovery.

Goal:   There are two principle objectives for this course.
  • To introduce the fundamental concepts and methods necessary for the design and use of a database systems. 
  • To provide practical experience in applying these concepts and methods using commercial database management systems.

Units

Unit 1

ntroduction: Characteristics of database approach, Advantages of using DBMS, Database concept and architecture, Data Abstraction, Data Models, Instances and schema, Data independence, schema architecture, Database Languages, Database Manager, Database Administrator, Database Users


      Data models: Entity-relationship Model: Entities and entity sets, Relationship and Relationship sets, Attributes, Mapping constraints, Keys, Weak and Strong entity types, E-R Diagrams, Reducing E-R Diagrams to Tables, Specialization and Generalization, Aggregation, Design E-R Database Schema

      Relational Model: Structure of Relational Database, The Relational Algebra, The Tuple Relational Calculus, The Domain Relational Calculus, Modifying the Database, Views.

      Historical Models: basic concepts of Hierarchical and Network Models.

Relational Commercial Languages: SQL and Query By Example (QBE)


Unit 2

Integrity & Security: Domain Constraints, Referential Integrity,   Assertion and Triggers, Authorization & Authentication, Data encryption.

Theory of database design: Functional dependencies, trivial and non trivial dependencies, closure of a set of functional dependencies, irreducible sets of dependencies.

Normalization: non-loss decomposition and functional dependencies, first, second, and third normal forms, Dependency preservation, Boyce-Codd normal form.


Unit 3

Transaction Processing: Desirable properties of transactions, Implementation of atomicity and durability, Concurrent executions, Schedules and recoverability, testing for Serializability.

Concurrency Control: Overview of Concurrency Control, Locking techniques, Lock-based protocols, Timestamp-based protocols, Commit protocols, Optimistic technique, Granularity of data items, Time stamp ordering multi version concurrency control, Deadlock handling - detection and resolution.


Database Recovery: Failure Classification, The Storage Hierarchy, Transaction Model, Log-Based recovery, Buffer Management, Checkpoints, Shadow Paging, Failure with Loss of Non-volatile Storage.