Introduction to Databases:
Introduction, Characteristics of database approach, Advantages of using the DBMS approach, History of database applications.
Overview of Database Languages and Architectures:
Data Models, Schemas, and Instances. Three schema architecture and data independence, database languages, and interfaces, The Database System environment.
Conceptual Data Modelling using Entities and Relationships:
Entity types, Entity sets, attributes, roles, and structural constraints, Weak entity types, ER diagrams, Examples
Textbook 1: Ch 1.1 to 1.8, 2.1 to 2.6, 3.1 to 3.7
Relational Model:
Relational Model Concepts, Relational Model Constraints and relational database schemas, Update operations, transactions, and dealing with constraint violations.
Relational Algebra:
Unary and Binary relational operations, additional relational operations (aggregate, grouping, etc.) Examples of Queries in relational algebra.
Mapping Conceptual Design into a Logical Design:
Relational Database Design using ER-to-Relational mapping.
Textbook 1:, Ch 5.1 to 5.3, 8.1 to 8.5, 9.1;
SQL:
SQL data definition and data types, specifying constraints in SQL, retrieval queries in SQL, INSERT, DELETE, and UPDATE statements in SQL, Additional features of SQL.
Advances Queries:
More complex SQL retrieval queries, Specifying constraints as assertions and action triggers, Views in SQL, Schema change statements in SQL. Database
Application Development:
Accessing databases from applications, An introduction to JDBC, JDBC classes and interfaces, SQLJ, Stored procedures, Case study: The internet Bookshop.
Textbook 1: Ch 6.1 to 6.5, 7.1 to 7.4; Textbook 2: 6.1 to 6.6;
Normalization: Database Design Theory –
Introduction to Normalization using Functional and Multivalued Dependencies: Informal design guidelines for relation schema, Functional Dependencies, Normal Forms based on Primary Keys, Second and Third Normal Forms, Boyce-Codd Normal Form, Multivalued Dependency and Fourth Normal Form, Join Dependencies and Fifth Normal Form. Examples on normal forms.
Normalization Algorithms:
Inference Rules, Equivalence, and Minimal Cover, Properties of Relational Decompositions, Algorithms for Relational Database Schema Design, Nulls, Dangling tuples, and alternate Relational Designs, Further discussion of Multivalued dependencies and 4NF, Other dependencies and Normal Forms
Textbook 1: Ch 14.1 to -14.7, 15.1 to 15.6
Transaction Processing:
Introduction to Transaction Processing, Transaction and System concepts, Desirable properties of Transactions, Characterizing schedules based on recoverability, Characterizing schedules based on Serializability, Transaction support in SQL.
Concurrency Control in Databases:
Two-phase locking techniques for Concurrency control, Concurrency control based on Timestamp ordering, Multiversion Concurrency control techniques, Validation Concurrency control techniques, Granularity of Data items and Multiple Granularity Locking. Textbook 1: Ch 20.1 to 20.6, 21.1 to 21.7;
Course Outcomes
At the end of the course the student will be able to:
CO 1. Identify, analyze and define database objects, enforce integrity constraints on a database using RDBMS
CO 2. Use Structured Query Language (SQL) for database manipulation and also demonstrate the basic of query evaluation.
CO 3. Design and build simple database systems and relate the concept of transaction, concurrency control and recovery in database
CO 4. Develop application to interact with databases, relational algebra expression.
CO 5. Develop applications using tuple and domain relation expression from queries.
Assessment Details (both CIE and SEE)
Continuous Internal Evaluation:
Three Unit Tests each of 20 Marks (duration 01 hour)
1. First test at the end of 5th week of the semester
2. Second test at the end of the 10th week of the semester
3. Third test at the end of the 15th week of the semester
Two assignments each of 10 Marks
4. First assignment at the end of 4th week of the semester
5. Second assignment at the end of 9th week of the semester Group discussion/Seminar/quiz any one of three suitably planned to attain the COs and POs for 20 Marks (duration 01 hours)
6. At the end of the 13th week of the semester
The sum of three tests, two assignments, and quiz/seminar/group discussion will be out of 100 marks and will be scaled down to 50 marks (to have less stressed CIE, the portion of the syllabus should not be common /repeated for any of the methods of the CIE. Each method of CIE should have a different syllabus portion of the course).
CIE methods /question paper has to be designed to attain the different levels of Bloom’s taxonomy as per the outcome defined for the course.
Semester End Examination:
Theory SEE will be conducted by University as per the scheduled timetable, with common question papers for the subject (duration 03 hours)
1. The question paper will have ten questions. Each question is set for 20 marks. Marks scored shall be proportionally reduced to 50 marks.
2. There will be 2 questions from each module. Each of the two questions under a module (with a maximum of 3 sub-questions), should have a mix of topics under that module.
The students have to answer 5 full questions, selecting one full question from each module.
Suggested Learning Resources:
Textbooks
1. Fundamentals of Database Systems, Ramez Elmasri and Shamkant B. Navathe, 7th Edition, 2017, Pearson.
2. Database management systems, Ramakrishnan, and Gehrke, 3rd Edition, 2014, McGraw Hill
Reference Books:
1. Abraham Silberschatz, Henry F. Korth and S. Sudarshan’s Database System Concepts 6th EditionTata Mcgraw Hill Education Private Limited