|Module Title||DATABASE MANAGEMENT SYSTEMS|
|Co-ordinator||Dr Mark Ratcliffe|
|Pre-Requisite||CS10720 or CS12420, CS10610|
|Course delivery||Lecture||22 lectures|
|Workshop||(Up to) 4 workshop sessions|
|Practical||(Up to) 2 x 2hr sessions|
|Supplementary examination||Will take the same form, under the terms of the Department's policy|
This module develops the concepts of database design and implementation. The emphasis is on relational systems but object databases are introduced. It covers practical topics concerned with modelling and effective use of the facilities provided by a modern Database Management System (DBMS). Theoretical topics include data modelling, placing particular emphasis on the data model, relational algebra and the realisation of the relational model in a DBMS.
This module aims to familiarise students with the techniques used in designing and implementing database systems, and with the concepts embodied in relational database systems. Students will gain practical skills and develop their understanding through the use of a small scale DBMS. Students will be introduced to the concepts in object databases.
On successful completion of this module, students will be able to:
1. Database System Concepts - 1 Lecture
Persistence. Outline history: file-based, network, relational and object-based systems. Databases, DBMS and applications programs. DBMS as reuse.
2. Relational Modelling I - 4 Lectures
Entities and relationships. Connection traps. The design of relations. Transformation of an E-R model into a relational schema.
3. The Relational Model - 4 Lectures
Domains, Relations and tuples. Primary and foreign keys. Referential integrity. Relational algebra. Null values and the outer join. Data normalisation. Validating a design.
4. SQL2 and implementation - 2 Lectures
Introduction. Status. DDL statements. SELECT clauses. Constraints. Built-in functions. Queries and views. Nested SELECT.
5. Introduction to Object Databases - 2 Lectures
Perceived weaknesses of the relational model. Possible benefits of an object model. ODMG model.
6. Building and Manipulating Object Databases - 3 Lectures
Design; use of the UML. ODL and database aspects of CORBA. OQL and OML.
7. Object Relational Systems - 1 Lecture
Comparisons of relational and object systems. Object oriented extensions to relational systems. SQL3.
8. Building Applications - 1 Lecture
Integrity constraints. Introduction to transactions. Rollback.
9. Standard Interfaces - 1 Lecture
Forms; binding, GUI items, user support. Reports. Languages provided with DBMS.
10. Procedural Interfaces - 1 Lecture
DBMS connections and services. ODBC, JDBC. Application development. The data dictionary.
11. Large Scale DBMS - 2 Lectures
Concurrency. Security. Distributed Databases.
** Recommended Text
C.J. Date. (2000) An Introduction to Database Systems. 7th. Addison-Wesley
** Supplementary Text
Barry Eaglestone and Mick Ridley. (1998) Object databases: An introduction.. McGraw Hill
** Consult For Futher Information
David M. Kroenke. (2000) Database Processing: Fundamentals, design and implementation. 7th. Prentice Hall, London
Kroenke provides a simple introduction and more useful examples. The E-R notation used in the module is based on Kroenke..