Skip to main content
CPE
341
Database Management Systems
Principles of database systems: History and motivation, DBMS functions, database architectures, use of a database query language. Data modeling: conceptual models, object-oriented model, and relational data model. Relational databases: conceptual schema and relational schema, and integrity constraint. Relational algebra and relational calculus. Functional dependencies and normal forms. Database query languages. Relational database design. The course stresses basic concepts and presents many examples from existing database systems. A database design and implementation project of a real world application is required, using modern database management tools.
Prerequisites:
0612207
Corequisites:
0612342
0612341
(3-0-3)

Credits and Contact Hours

3 credits, 43 hours

Course Instructor Name

Dr. Mohammad Allaho, and Dr. Abdullah Alshaibani

Textbook

Database Management Systems, Raghu Ramakrishnan and Johannes Gehrke, 3rd Edition

Fundamentals of Database Systems, Ramez Elmasri and Shamkant B. Navathe, 7th Edition

Catalog Description

Principles of database systems: History and motivation, DBMS functions, database architectures, use of a database query language. Data modeling: conceptual models, object-oriented model, and relational data model. Relational databases: conceptual schema and relational schema, and integrity constraint. Relational algebra and relational calculus. Functional dependencies and normal forms. Database query languages. Relational database design. The course stresses basic concepts and presents many examples from existing database systems. A database design and implementation project of a real world application is required, using modern database management tools.

Prerequisite

CpE-207

Co-requisite

CpE-342

Specific Goals for the Course

Upon successful completion of this course, students will be able to:

Recognize the importance of database management in modern applications. (Student outcomes: 1, 2, 4)

Differentiate between database models and the advantages and disadvantage of each model. (Student outcomes: 1, 2, 4)

Write program in SQL and Embedded SQL. (Student outcomes: 1, 2)

Learn the importance of security and integrity in databases and how to set and reset access permissions to database objects. (Student outcomes: 4)

Understand the importance of transaction processing and concurrency control in database systems. (Student outcomes: 1, 2, 4)

Model a real-life problem using database modeling techniques, to use CASE tools in their database implementation. (Student outcomes: 1, 2, 4)

Learn how to map their models into database tables and how to check for correctness, and how to normalize their design for maximum efficiency. (Student outcomes: 1, 2)

Learn the advantage of using database systems in shortening the life cycle of software creation. (Student outcomes: 4)

Learn how to improve the performance and consistency of the software through using formal design and query methods. (Student outcomes: 1, 2, 4)

Learn how to divide the roles and task to achieve the project completion, learn how to communicate and discuss ideas between team members, and learn how to write and present their work in formal reports. (Student outcomes: 4, 5)

Topics to Be Covered

Introduction to Basic Concepts of Database Management Systems

Logical, Conceptual, and Physical Design Phases

Enhanced Entity Relationship Model

Relational Data Models and Relational algebra

Standard Query Language SQL

Schema refinement and normalization

Disks, Records, and Files

Hashing and B-Trees

Query Optimization Theory and Practice

Transaction Processing and Concurrency Control in Databases Theory and Practice

Database Integrity and Security Models

Database/Internet Connectivity Middleware

Cloud Services (AWS, Azure)

MongoDB