Module Identifier |
CS27310 |
Module Title |
DATABASE MANAGEMENT SYSTEMS |
Academic Year |
2004/2005 |
Co-ordinator |
Dr Horst Holstein |
Semester |
Semester 2 |
Other staff |
Dr Horst Holstein |
Pre-Requisite |
CS12420 , CS10610 or equivalent |
Course delivery |
Lecture | 22 lectures |
|
Other | Workshop. Up to 4 workshop sessions |
|
Practical | Up to 2 x 2hr |
Assessment |
Assessment Type | Assessment Length/Details | Proportion |
Semester Exam | 2 Hours | 100% |
Supplementary Exam | Will take the same form, under the terms of the Department's policy | |
|
Further details |
http://www.aber.ac.uk/compsci/ModuleInfo/CS27310 |
Learning outcomes
On successful completion of this module, students will be able to:
-
design and validate a relational database from a given enterprise description, justifying design decisions;
-
implement a relational database design using a modern DBMS;
-
describe and use the facilities of a modern DBMS and be able to select appropriate ones for a range of realistic situations;
-
explain and provide a rationale for database concepts;
-
understand and use a data model, in particular, the relational data model and contrast this with an object model;
-
improve and extend a database design.
Brief description
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.
Aims
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.
Content
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.
Reading Lists
Books
** Recommended Text
Thomas M Connolly and Carolyn E. Begg (2000) Database Solutions: A step-by-step approach to building databases.
1. Addison -Wesley ISBN 0-201-67476-9
Thomas Connolly and Carolyn Begg (1998) Database Systems: A practical Approach to Design, Implementation and Management
2nd. Addison-Wesley ISBN: 0201342871
** Supplementary Text
Barry Eaglestone and Mick Ridley (1998) Object databases: An introduction.
McGraw Hill
** Consult For Futher Information
C.J. Date (2000) An Introduction to Database Systems
7th. Addison-Wesley
David M. Kroenke (2000) Database Processing: Fundamentals, design and implementation
7th. Prentice Hall, London
Kroenke provides a simple introduction and more useful examples.
or
Date is a very authoratative text, containing much theoretical justifications. Many people find it hard to use.
Notes
This module is at CQFW Level 5