Formerly Janakpur Engineering College (JEC)Affiliated to Tribhuvan University
Computer engineering students working at desktop workstations in the ICE laboratory

IOE syllabus 2080

ENCT 301 Database Management System

BCT Semester 5 · Tribhuvan University, Institute of Engineering

Database Management System (ENCT 301) is the Semester 5 course for Computer Engineering students on designing, querying and running databases: data models, SQL, normalisation, indexing, transactions, recovery and NoSQL.

  • 3 credits
  • 45 lecture hours
  • 9 chapters
  • 150 marks

About the subject

What Database Management System is for

Almost every useful piece of software stores data, and this course teaches how to do it properly. It moves from design, the E-R and relational models, through the SQL language used to query and change data, to what happens inside the database engine: how queries are optimised, how indexes make lookups fast, and how transactions keep data correct when many users act at once.

It is one of the most directly employable courses in the programme. SQL and relational design are asked for in nearly every software job, and the closing chapter introduces data warehousing, distributed databases and NoSQL.

The objective of this course is to provide a comprehensive understanding of the principles and practices involved in the design and implementation of database systems. It enables students to develop data models, and perform data modification, processing, and management efficiently. The course also introduces advanced concepts such as object-oriented databases, data warehousing, data processing, and big data management.

IOE's course objective for ENCT 301
Taught to
BCT, Semester 5 (Year III, Part I)
Weekly
3 lecture, 1 tutorial, 3 practical hours
Marks
Theory 40 internal + 60 final (3-hour exam); practical 50 internal; 150 in total

Where the marks are

ENCT 301 chapters, hours and final exam marks

IOE's evaluation scheme for the 60-mark final. IOE notes there may be minor deviation.

Scroll the table sideways for hours, marks and share.

Full syllabus

The complete ENCT 301 outline, with how to study each chapter

All 9 chapters and 49 topics as IOE lists them, each with ICE's advice on approaching it.

1Introduction3 hours

Data abstraction, data independence, schemas and instances.

  • 1.1 Application and evolution of database
  • 1.2 Data abstraction (Physical, logical, and view level) and data independence
  • 1.3 Schema and instances

2Data Models7 hours

Data models, above all E-R and relational, 9 marks. Practise drawing E-R diagrams for everyday systems like a library or a hostel and converting them to tables.

  • 2.1 Introduction to data models (Entity-relationship, relational, object model, hierarchical, network, graph data models)
  • 2.2 E-R model
    • Entities and entity sets
    • Attributes and keys
    • Strong and weak entity sets
    • Relationship and relationship sets (Mapping cardinalities)
    • Specialization, generalization and aggregation
  • 2.3 Relational model
    • Concept of relational model, key constraints
    • Converting ER model into relational model

3Relational Query Languages7 hours

Relational algebra and SQL, the longest chapter with 11 subtopics: joins, nested subqueries, aggregation with GROUP BY and HAVING, views, triggers, stored procedures and privileges. Write queries against a real database every week.

  • 3.1 Relational algebra
  • 3.2 Concept of DDL, DML and DCL
  • 3.3 Overview of the SQL query language-DDL and DML queries
  • 3.4 Set operations
  • 3.5 Aggregate functions – GROUP BY – HAVING
  • 3.6 Joins and types of joins
  • 3.7 Nested sub queries
  • 3.8 Database modification (Insert, update, delete)
  • 3.9 Views
  • 3.10 Triggers and stored procedures
  • 3.11 Privilege and roles management – GRANT and REVOKE statements

4Database Constraints and Normalization6 hours

Constraints, functional dependencies and normal forms up to BCNF, 9 marks. Normalise the same schema step by step through each form.

  • 4.1 Integrity constraints and domain constraints
  • 4.2 Assertions
  • 4.3 Functional dependencies
  • 4.4 Different normal forms (1NF, 2NF, 3NF, BCNF)

5Query Processing and Optimization4 hours

How queries are processed and optimised, materialisation and pipelining, and performance tuning.

  • 5.1 Query processing, optimization and evaluation
  • 5.2 Transformation of relational expressions
  • 5.3 Techniques of implementing query optimization - Cost based optimization and heuristic optimization
  • 5.4 Query evaluation -Materialization and pipelining
  • 5.5 Denormalization for performance
  • 5.6 Materialized view
  • 5.7 Performance tuning

6File Structure and Hashing5 hours

Storage, record organisation, ordered indices, B+ trees and static and dynamic hashing, 8 marks.

  • 6.1 Disks and storage
  • 6.2 Records organizations
  • 6.3 Ordered indices
  • 6.4 B+ tree index
  • 6.5 Hashing concepts - Static and dynamic hashing

7Transaction Processing and Concurrency Control5 hours

Transactions, ACID properties, serialisability, locking and deadlock, 8 marks. Work through schedules by hand to test conflict serialisability.

  • 7.1 Transaction and transaction model - State diagram
  • 7.2 Acid properties
  • 7.3 Concurrent execution of transactions
  • 7.4 Serializability (Conflict and view serializability)
  • 7.5 Lock based protocols
  • 7.6 Deadlock handling and prevention
  • 7.7 Multiple granularity

8Crash Recovery4 hours

Failure types, log-based recovery, shadow paging and remote backup.

  • 8.1 Failure classification
  • 8.2 Recovery and atomicity
  • 8.3 Log-based recovery
  • 8.4 Shadow paging
  • 8.5 High availability using remote backup systems

9Advanced Database Concepts4 hours

Object-oriented and distributed databases, data warehousing and OLAP, and the basics of NoSQL and big data.

  • 9.1 Concept of object-oriented databases
  • 9.2 Distributed database model
  • 9.3 Concept of data warehousing and online analytical processing
  • 9.4 Basic concepts of NoSQL and big data

Laboratory

The ENCT 301 practical

The practical is three hours a week: installing and connecting to a database server, DML and DDL queries, joins and subqueries, aggregation, constraints, triggers and stored procedures, tuning and administration, and a group project. The project is where design, normalisation and SQL come together, so model the data carefully before writing code.

  1. Database server installation and configuration
  2. DB client installation and connection to DB server. Introduction and practice with SELECT command with the existing DB
  3. Further practice with DML queries – Select, insert, update and delete
  4. Advanced queries with joins and subqueries
  5. Aggregation and grou8ping
  6. Practice with DDL commands – Create/alter/drop table, integrity constraints and views
  7. Triggers and stored procedures
  8. Query processing, optimization, performance tuning and database administration
  9. Group project work

Reference books

Books IOE lists for ENCT 301

  1. Silberschatz, A., Korth, H.F., Sudarshan, S. (2019). Database system concepts. McGraw-Hill.
  2. Elmasri, R., Navathe, S.B. (2021). Fundamentals of database systems. Pearson.
  3. Ramakrishnan, R., Gehrke, J. (2002). Database management systems. McGraw-Hill.
  4. Connolly, T.M., Begg, C.E. (2021). Database systems: A practical approach to design, implementation, and management. Pearson.

Quick answers

Database Management System questions

In which semester is DBMS taught in IOE Computer Engineering?

Semester 5, Year III Part I, as ENCT 301 with 3 credits and 150 total marks including practical.

Does the IOE DBMS syllabus include NoSQL?

Yes. Chapter 9 introduces NoSQL and big data along with object-oriented and distributed databases and data warehousing.

Is DBMS taught in BEI?

Not as a core course. ENCT 301 is in the Computer Engineering curriculum; BEI's Semester 5 core covers filter design, embedded systems and antennas instead.

How many credits and marks is ENCT 301 Database Management System?

3 credits and 150 marks: 40 internal and 60 in a 3-hour IOE final for theory, plus 50 marks of practical assessed internally. It is taught 3 lecture, 1 tutorial and 3 practical hours a week.

Source

Checked against IOE

The outline, references and marks are IOE's own, from the ENCT 301 syllabus PDF and IOE's curriculum structure. The study advice is ICE's. If IOE revises the course, its syllabus is what counts. IOE's BCT curriculum page.

Last reviewed by Imperial College of Engineering. Outline and marks checked against IOE's syllabus PDF; study advice written by ICE.