IT 244: Database Management Systems
IT244 – Database Management Systems (Diploma in CS and /or IS)
- Course Title:Database Management Systems
- Course Code:IT244
- Category:IT Compulsory (Both CS and IS Diploma Program)
- Length:60 hours
- Description:
This course examines database management systems, file processing, data models, query languages, recovery and concurrency, security and integrity, and the development of database using a relational database model.
- Rationale:
To prepare students to use real world database systems as well as possess the underlying theory.
- Pre-requisite:
7.1141 — Information Systems
7.2142 — Introduction to Programming: Visual Basic .Net
- Learning Outcomes:
At the end of this course, students should be very familiar with MS Access (all aspects, including how to make data pages), as well as how to use a SQL server for a client-server relationship.
This part should use Visual Basic to show how to connect to a SQL server. (No need to spend much time on this, because the IT256 course also covers how to connect to a database with Visual Basic. We will set up a SQL server to use for these instances. Also, there is a SQL server on the Linux machine (mySQL) which is good for SQL practicing)
- Content:
- Database Systems
- The Evolution of Database Systems
- Early Database Management Systems
- Relational Database Systems
- Small and Big Systems
- Client-Server and Multi-Tier Architecture
- Overview of Database Management Systems
- Data-Definition Language Commands
- Overview of Query Processing
- Storage and Buffer Management
- Transaction Processing
- The Query Processor
- Outline of Database-System Studies
- Database Design
- Database Programming
- Database System Implementation
- Information Integration Overview
- The Entity-Relationship Data Model
- Elements of the E/R Model
- Entity Sets
- Attributes
- Relationships
- Entity-Relationship Diagrams
- Instances of an E/R Diagram
- Multiplicity of Binary E/R Diagrams
- Multiway Relationships
- Roles in Relationships
- Attributes on Relationships
- Design Principles
- Faithfulness
- Avoiding Redundancy
- Simplicity
- Choosing Correct Relationships
- The Modeling of Constraints
- Classification of Constraints
- Keys in the E/R Modeling
- Representing Keys in the E/R Modeling
- Single-value Constraints
- Referential Integrity
- Referential Integrity in E/R Diagrams
- Weak Entity Sets
- Causes of Weak Entity Sets
- The Relational Data Model
- Basics of the Relational Model
- Attributes
- Schemas
- Tuples
- Domains
- Equivalent Representations of a Relation
- Relation Instances
- Integrity Constraints (* From last year notes)
- From E/R Diagrams to Relational Designs
- From Entity Sets to Relations
- From E/R Relationships to Relations
- Combining Relations
- Function Dependencies
- Definition of Functional Dependency
- Keys of Relation
- Discovering Keys for Relations
- Design of a Relational Database Schema
- Anomalies
- Decomposing Relations (Normalization)
- Boyce-Codd Normal Form
- Decomposition in BCNF
- Third Normal Form
- Multivalued Dependencies
- Definition of Multivalued Dependencies
- Reasoning of Multivalued Dependencies
- Fourth Normal Form
- Decomposition into Fourth Normal Form
- Other Data Models
- XML
- Semantic Tags
- Well-Formed XML
- Document Type Definitions
- Using a DTD
- Attribute Lists
- Relational Algebra
- Algebra of Relational Algebra
- Basics of Relational Algebra
- Set Operations of Relations
- Projections
- Selections
- Cartesian Product
- Natural Joins
- Structured Query Language (SQL)
- Simple Queries in SQL
- Projection in SQL
- Selection in SQL
- Comparing of Strings
- Dates and Times
- Ordering the Output
- Queries with Multiple Relations
- Products and Joins in SQL
- Clearing up Attributes
- Tuple Variables
- Union, Intersection and Difference Queries
- Sub-Queries
- Sub-queries Introduction
- Full-Relation Operations
- Eliminating Duplicates
- Grouping and Aggregation in SQL
- Aggregation Operations
- Grouping
- HAVING Clauses
- Database Modifications
- Insertion
- Deletion
- Updating
- Defining a Relation Schema in SQL
- Data types
- Simple Table Declarations
- Modifying Relation Schemas
- Keys and Foreign Keys
- Declaring Primary Keys
- UNIQUE Keys
- Enforcing Key Constraints
- Declaring Foreign-Key Constraints
- Maintaining Referential Integrity
- System Aspects of SQL
- SQL in Programming Languages
- The Impedance Mismatch Problem
- The SQL/Host Language Interface
- Transactions in SQL
- Atomicity
- Transactions
- Read-Only Transactions
- Concurrency Control (* from notes last year)
- Disaster Recovery (* from notes last year)
- How to protect data
- How to backup data properly
- Security and User Authorization in SQL
- Privileges
- Creating Privileges
- Granting Privileges
- Revoking Privileges
- Requirements :
Students will be required to:
-attend at least 80% of the classes to be eligible to take the final examination.
-complete both the supervise and unsupervise practical hours. [2 hours supervise practical, 8 hours unsupervise practical per week]
-complete all assessment provided.
-pass both the course work and the Final Exam to pass the course.
- Assessment:
The course will be assessed according to the following:
- Course Work 40%
- Test – 15%
- Project Assignment Par 1 – 10%
- Project Assignment Part 2 – 15%
- Final Exam60%
TOTAL MARK100%
- Course Evaluation:
Students will be given the opportunity to anonymously evaluate the course and their feedback from these evaluations will be used appropriately to improve the course.
- Recommended Reading:
A First Course in Database Systems. Jeffrey Ullman, Jennifer Widom (Third Edition)
- Course Costs:
This course does not entail any additional costs
- Staffing:
This course will be taught by either a TIHE lecturer or an appropriately experienced and qualified lecturer will be contracted.
- Resource Implications:
Resource implications for this course include the following:
Resource Required / Resource Available / ImplicationsOne Textbook for each student / Only one Set for the Tutor / Tutor :-
- Summarize notes for the students
- Recommend online resource assistant
1 Computer per Student during Class / Student share computers during class
Lecture Notes / Lecture Notes are available from the course link at the beginning of the Semester.
Past Exam Papers / Past Exam Papers
Internet Access / Internet Access 24-7
- Consultation Process:
The following people were consulted in the review of this course:
17.1Principal, D Principal, Course Coordinator, Course Tutor:TIHE
1