Course Outline
Learning Outcomes
By the end of this course, students should be able to:
1. Describe database systems concepts and design.
2. Explain database models and construction.
3. Implement databases using SQL.
4. Describe database management, security, and recovery mechanisms.
Course Content
Module 1: Introduction to Database Systems
· Database concepts and definitions
· File systems vs. database systems
· Data models: hierarchical, network, relational, object-oriented, NoSQL
· ANSI/SPARC 3-level architecture
· Relational database model and advantages over older models
Practical: Introduction to DBMS software; setting up databases; basic data storage and retrieval.
Module 2: Database Design and Modelling
· Entity-Relationship (ER) modelling
· Converting ER diagrams to relational schemas
· Integrity constraints and keys (primary, foreign, unique)
· Database normalization (1NF–3NF and BCNF)
Practical: Designing ER diagrams; normalizing tables; implementing schema in a DBMS.
Module 3: Structured Query Language (SQL)
· Introduction to SQL
· Data Definition Language (DDL): CREATE, ALTER, DROP
· Data Manipulation Language (DML): INSERT, UPDATE, DELETE, SELECT
· Joins, subqueries, and indexing
· Query optimization basics
Practical: Writing and executing SQL queries to create, manipulate, and retrieve data; indexing for efficient search.
Module 4: Database Implementation and Management
· Implementing relational databases based on designs
· Transaction management and concurrency control
· Distributed database systems
· Database backup, recovery, and security techniques
· Privacy and access control mechanisms
Practical: Implementing concurrency techniques; simulating transaction failures; applying backup and recovery methods; user access control.
Module 5: Emerging Topics in Databases
· Semi-structured data and XML
· NoSQL databases (e.g., MongoDB basics)
· Object-oriented database concepts
· Trends in database technologies and cloud databases
Practical: Introduction to a NoSQL database; simple data storage and retrieval in XML or JSON.
Teaching Methodology
· Lectures: Interactive presentations with visual aids to introduce theoretical concepts.
· Laboratory Sessions: Intensive hands-on sessions for database design, implementation, and querying.
· Case Studies & Demonstrations: Real-world scenarios to illustrate database security, concurrency, and distributed systems.
· Group Assignments & Projects: Collaborative database design and implementation tasks to build practical skills.
· Quizzes & Discussions: Short assessments and class discussions to reinforce learning outcomes.
Mode of Assessment
· Continuous Assessment (40%)
o Quizzes / Class tests – 10%
o Laboratory exercises and assignments – 20%
o Group project / Presentation – 10%
· Final Examination (60%)
o Theory and practical questions assessing all modules.
Reading List / References (2023–2025)
Primary Texts:
1. Elmasri, R. & Navathe, S. (2023). Fundamentals of Database Systems (8th ed.). Pearson.
2. Coronel, C. & Morris, S. (2024). Database Systems: Design, Implementation, and Management (14th ed.). Cengage.
Supplementary
Texts:
3. Harrington, J. L. (2023). Relational
Database Design and Implementation (5th ed.). Morgan Kaufmann.
4. O’Reilly Media. (2023). Learning
SQL (4th ed.). O’Reilly.
5. Chodorow, K. (2024). MongoDB:
The Definitive Guide (4th ed.). O’Reilly.
Additional Resources:
· Official SQL documentation (PostgreSQL, MySQL, SQL Server).
· Online labs and tutorials on database design and NoSQL.
· Current research articles and industry reports (2023–2025) on emerging database technologies.