Tuesday 16 May 2023

Database Management System | Fourth Semester | BICTE | blog

 

Course Title: Database Management System                               Program: BICTE

Course No. : ICT. Ed. 446                                                         Nature of course: Theoretical + Practical

Level: Bachelor                                                                                       Credit Hour:  3 hours (2T+1P)

Semester: Fourth                                                                                 Teaching Hour: 80 hours (32+48)

           

1.              Course Description

The purpose of this course is to introduce the fundamental concepts of database management, including aspects of data models, database languages, and database design. Student will be also able to understand the current trends of database management such as big data, data analytics: data warehousing, online analytical processing and data mining.

2.              General Objectives

Through this course, students shall

·       become proficient at modeling databases at conceptual and logical levels of design,

·       be able to develop database schemas with design principles that enforce data integrity,

·       become knowledgeable in the creation, altering, and manipulation of tables and views using SQL,

·       become proficient at casting queries in SQL, and

·       be able to understand concepts of transaction management, concurrency control, and  recovery.

·       Be able to explain about big data and data analytics such as data warehousing, online analytical processing and data mining

 

3.              Course Outlines: 

Specific Objectives

Contents

 

·       Identify data management approaches and their values.

·       Define differences between file systems and database management systems.

·       Understand benefits of database management systems.

·       Describe different data models and their usefulness.

·       Understand the concept of data abstraction and data independence.

 

Unit 1: Database System Introduction                                       (4 hrs)

1.1.      Database System Applications

1.2.      Purpose of Database Systems

1.3.      View of Data

1.4.      Database and Application Architecture

1.5.      Database Users and Administrators

1.6.      History of Database Systems

 

Practical Work                                                                          (4 hrs)

·       Create program to demonstrate differences between data access from file system and database management system

·       Explain use and importance of ER model.

·       Use ER diagrams to design databases.

·       Learn to identify attributes and entity-relationship sets

·       Make use of generalization, specialization and aggregation concepts

·       Learn conversion of ER diagrams into Relational model.

 

 

Unit 2: Database Design using ER Model                             (4 hrs)

2.1.     The ER Model : entity sets and relationship sets

2.2.     Attributes and its types

2.3.     Mapping Cardinalities

2.4.     Constrains on ER Model

2.5.     Extended ER Features: Aggregation, Specialization and Generalization, Constraints on Specialization/Generalization

2.6.     Reducing ER diagram to Relational Schemas

 

Practical Works:                                                                     (8 hrs)

·       Draw ER diagrams for real world scenarios

·       Learn to use appropriate symbols for constraints

·       Practice Conversion of ER model to Relational model

 

·       Explain structure of SQL queries.

·       Use SELECT, FROM and WHERE clauses efficiently.

·       Understand concept behind join operations.

·       Discuss and Use aggregate functions and subqueries.

·       Apply database modification statements.

·       Explain and use DDL statements.

·       Understand concept behind views and use them.  

·       Make use of grant and revoke statements

Unit 3:  Structured Query Language (SQL)                         (6 hrs)

3.1  Introduction to Relational Database

3.2  Database Schema and Schema Diagram

3.3  Introduction: Basic Structure of SQL Query, SELECT, FROM and WHERE clause, Using Multiple Relations

3.4  String/Pattern Matching, Ordering the Display of Tuples, Cartesian product, Join Operations: Join Types and Join Conditions.

3.5  Set Operations and Null Values

3.6  Nested Queries: Set membership Test, Set Comparison and Test for Empty Relations.

3.7  Aggregate Functions, Group by Clause and Having Clause

3.8  Database Modifications: Insert, Delete and Update Operations

3.9  Data Definition Language: Domain Types in SQL, Create, Alter and Drop statements

3.10         View

3.11         Authorization in SQL : grant and revoke privileges

 

Practical Works:                                                                     (18 hrs)

·       Create relational database by using create statements

·       Populate tables with data by using INSERT statement

·       Practice basic SQL queries by using Select..from.. where

·       Use Cartesian products, natural join and set operations to solve queries

·       Use sub queries, aggregate functions and outer joins to solve queries

·       Practice DML statements DELETE and UPDATE

·       Practice DDL statements ALTER, and DROP

·       Demonstrate SQL authorization: grant and revoke operations

 

·       Understand importance of integrity constraints.

·        List and discuss different types of integrity constraints.

·       Use Integrity constraints for maintaining for achieving correctness of data.

·       Compare and contrast between assertions and triggers

Unit 4:   Integrity Constraints                                                    (4 hrs)

4.1  Domain Constraints: Not Null Constraints, Unique Constraints, Primary key Constraints, Check Constraints.

4.2  Referential Integrity: Using Referential Integrity, Cascading Actions

4.3  Assertions and Triggers: Creating and Deleting Assertions, Creating and Deleting Triggers, Assertions vs Triggers.

Practical Works:                                                                       (4 hrs)

·       Demonstrate use of Domain constrains and referential integrity

·       Create assertions and triggers

 

·       Exemplify database modification anomalies.

·       Understand and exemplify functional dependencies.

·       Discuss and exemplify conversion of de-normalized relations into normalized forms.

Unit 5: Relational Database Design                                           (6 hrs)

5.1  Features of good relational designs

5.2  Keys: Super Key, Candidate Keys and Primary Keys

5.3  Functional Dependencies

5.4  Anomalies

5.5  Decomposition using functional dependencies

5.6  Normal forms: 1NF, 2NF, 3NF and BCNF

 Practical Works:                                                                      (8 hrs)

·       Demonstrate Database  anomalies 

·       Design good RDBMS (anomalies free database)

·       Understand the concepts of transaction and its properties

·       Make use of serializability

·       Understand the problems behind concurrent execution of transactions

·       Describe and exemplify lock based concurrency control technique.

·       Discuss need of recovery in database management systems.

 

Unit 6:  Transaction Management                                           (4 hrs)

6.1  Transaction Concept

6.2  ACID Properties

6.3  Serializability

6.4  Concurrency Control:  Need of Concurrency Control, Lock-Based Protocols

6.5  Recovery: Failure Classification, Shadow paging           

 

Practical Works:                                                                         (2 hrs)

·       Demonstrate commit and rollback  

 

·       Understand the concept of big data, NoSQL, data warehousing, data mining and OLAP

Unit 7:  Big Data Analytics                                                         (4 hrs)

7.1  Concept of Big data

7.2  Concept of NoSQL

7.3  Concept of Data Warehouse and Data Mining

7.4  Concept of Online Analytical Processing

 

Practical Works:                                                                         (4 hrs)

·       Research about different NoSQL Syntax

 

 

9       Instructional Techniques

The instructional techniques for this course are divided into two groups.  First group consists of general instructional techniques applicable to most of the units. The second group consists of specific instructional techniques applicable to particular units.

4.1 General Techniques

Reading materials will be provided to students in each unit. Lecture, Discussion, use of multi-media projector, brain storming are used in all units.

 

4.2 Specific Instructional Techniques

Demonstration is an essential instructional technique for all units in this course during teaching learning process. Specifically, demonstration with practical works will be specific instructional technique in this course. The details of suggested instructional techniques are presented below:

Unit 1: Self reading, and making study reports

Unit 2: Assignment on Creating ER diagrams and converting ER model to Relational model

Unit 3: Homework and Assignment on Laboratory works in SQL

Unit 4: Group Discussion on Integrity Constraints

Unit 5: Mini Case Study on Normalization

Unit 6: Self reading and making study reports

Unit 7: Self reading, creating and presenting study reports

 

5.     Evaluation :

Internal Assessment

External Practical Exam/Viva

Semester Examination

Total Marks

40 Points

20 Points

40 Points

100 Points

Note: Students must pass separately in internal assessment, external practical exam and semester examination.

5.1   Internal Evaluation (40 Points):

Internal evaluation will be conducted by subject teacher based on following criteria:

1)     Class Attendance                                                                                 5 points

2)     Learning activities and class performance                                            5 points

3)     First assignment ( written assignment)                                        10 points

4)     Second assignment (Case Study/project work with presentation )    10 points

5)     Terminal Examination                                                                                10 Points

 

                Total                                                                                              40  points

5.2        Semester Examination (40 Points) 

Examination Division, Dean office will conduct final examination at the end of semester.

1)     Objective question (Multiple choice 10 questions x 1mark)  10 Points

2)     Subjective answer questions  (6 questions x 5 marks)             30 Points

Total                                                                                                   40  points                                                                                                                                                                                                                                                                                                   

 

5.3  External Practical Exam/Viva (20 Points):

Examination Division, Dean Office will conduct final practical examination at the end of semester.

 

10    Recommended books and References materials (including relevant published articles in national and international journals)

 

Recommended books:

·       Silberschatz, H.F. Korth, and S. Sudarshan, Database System Concepts, 7th Edition, McGraw Hill, 2019

References materials:

·       C.J. Date, SQL and Relational Theory: How to Write Accurate SQL Code, 2nd Edition, O’Really Media, 2011

  • C.J. Date, An introduction to Database System, 8th Edition, Addison Wesely, 2003

 

No comments:

Post a Comment