Course Outline
Course Outline
Instructor:
Course Name: Database Management Systems
Course Number: MDS510
Phone:
E-Mail:
Course Description
This course provides an in-depth understanding of Database Management Systems (DBMS) using MySQL, a
popular open-source relational database management system. Students will learn the fundamental concepts of
database management systems, including data modeling, database design, normalization, querying, and
transaction management. They will also gain hands-on experience in using MySQL to create, manipulate, and
manage databases, as well as develop skills in writing SQL queries and optimizing database performance.
Course Outcomes
1. Students will be able to understand the fundamental concepts of Database Management Systems,
including data modeling, database design, normalization, and transaction management.
2. Students will be able to explain the features and functionality of MySQL as a relational database
management system, and describe data modeling, database design, normalization, and transaction
management concepts in detail.
3. Students will be able to create and manage databases using MySQL, write SQL queries to retrieve and
manipulate data, and implement performance optimization techniques.
4. Students will be able to analyze and evaluate the performance of MySQL databases using profiling and
optimization techniques, and assess the security measures of MySQL databases.
5. Students will be able to evaluate the effectiveness of database design and normalization techniques in
MySQL.
6. Students will be able to design and implement database schema using MySQL, and develop best practices
for managing databases.
Course Prerequisites
Technical E-journals, E-magazines, web links and video links if any, shall be given in the class and uploaded
on the LMS.
Grading Scheme
Important Note: To pass this course, a student must achieve a minimum of 60% on the total of the grading
components.
Course Schedule
• Attendance
Students are expected to attend every lecture and lab session. Please refer the Birchwood University
attendance policy for more details. Students who fail to meet the attendance criteria shall be withdrawn
from the course.
• Class Conduct
During lectures and lab sessions, the student is expected to act in a professional and respectful manner
towards other students and instructors; students not conducting themselves in such a manner may be
asked to leave. In particular, private conversations during lectures or labs are NOT allowed. Anyone
doing so will be asked to leave the lecture or lab immediately.
• Missed work
All exams and quizzes must be written at the designated time. Missed exams, and assignments will count
as zero unless medical reasons supported by a medical doctor’s note are provided.
• Plagiarism
Presenting someone else’s work as though it is your own. In an academic community the use of words, ideas,
or discoveries of another person without explicit, formal acknowledgement constitutes an act of theft or
plagiarism. In order to avoid the charge of plagiarism, students must engage in standard academic practices
such as putting quotation marks around words that are not their own, employing the appropriate
documentation or citation, and including a formal acknowledgement of the source in the proper format.
Academic Plan
Week Topics
Week 1 Introduction to Database Management Systems
• Overview of MySQL as a Relational Database Management System
• Understanding Data Modeling and Database Design
• Database architecture
• File system V/s Database system
Week 2 Database design
• ER model, Entity Types, Entity Sets, Attributes, and Keys
• Relationship Types, Relationship Sets, Weak Entity Types
• Generalization, Specialization and Aggregation
• EER model
• Relational Schemas
• Introduction to UML
Week 3 Structured Query Language
• Overview of SQL
• Data Definition Commands, Set operations, aggregate function, null values
• Data Manipulation commands, Data Control commands
• Views in SQL
• Complex Retrieval Queries using Group By and order by clauses
• Recursive Queries, nested Queries
• Referential integrity in SQL
• Triggers in SQL
Week 4 SQL Queries
• Creating and Managing Tables in MySQL
• Writing Basic SQL Queries in MySQL
• Advanced SQL Queries in MySQL
Week 5 Relational-Database Design
• Design guidelines for relational schema
• Functional Dependencies
• Definition of Normal Forms - 1NF, 2NF, 3NF, BCNF
Week 6 Relational Algebra and Calculus
• Introduction
• Selection and projection, set operations, renaming, division, syntax, semantics
• Operators, grouping and ungrouping, relational comparison
• Tuple relational calculus, domain relational calculus, calculus vs algebra
Week 7 Joins, Subqueries and Database Connectivity
• Types of joins
• Joins with operators
• Types of subqueries
• Clauses
• Database Connectivity and Application Development in MySQL
Week 8 Transaction management and Concurrency control
• ACID properties, serializability and concurrency control,
• Lock based concurrency control (2PL, Deadlocks)
• Time stamping methods
• Database recovery management
Note: The above listing is a broad outline of the topics intended to be covered in the course. As the
course progresses, each module will be outlined in detail.
Lab Topics