Module Identifier CS27020  
Module Title DATABASE MANAGEMENT SYSTEMS  
Academic Year 2007/2008  
Co-ordinator Mr Nigel W Hardy  
Semester Semester 2 (Taught over 2 semesters)  
Other staff Mr Nigel W Hardy, Mr David J Smith, Mr Rhys Parry, Mr Richard C Shipman  
Pre-Requisite CS12230, CS12320 or CS10610 or equivalent  
Course delivery Seminars / Tutorials   Regular exercises: up to 8  
  Lecture   44 Hours.  
Assessment
Assessment TypeAssessment Length/DetailsProportion
Semester Exam2 Hours  60%
Semester Assessment COURSE WORK: REGULAR WORKSHEETS.  10%
Semester Assessment COURSE WORK: DESIGN A MULTI-TABLE RELATIONAL DATABASE  30%
Supplementary Exam2 Hours  100%
Further details http://www.aber.ac.uk/compsci/ModuleInfo/CS27020  

Learning outcomes

On successful completion of this module students should 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.

access a relational database through an appropriate programmatic interface.

explain and provide a rationale for relational, object, object-relational and semi-structured data model concepts.

implement a given design in a relational system, using a Java class library and in XML, making effective use of tools for automatic code generation.

Aims

Brief description

This module develops the concepts of database design, and implementation and use. The emphasis is on relational and semi-structured (XML) 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.

Content

1. Database System Concepts - 2 Lectures

Review and persistence, outline history. The value of general models: relational; object oriented; semi-structured. Databases, DBMS and applications programs. DBMS as reuse.

2. Relational Modelling I - 6 Lectures

Entities and relationships. Connection traps. The design of relations. Transformation of an E-R model into a relational schema. Use of UML.

3. The Relational Model - 6 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. SQL and implementation - 4 Lectures

Introduction. Status. DDL statements. SELECT clauses. Constraints. Built-in functions. Queries and views. Nested SELECT. Stored procedures.

5. Additional relational integrity constraints - 2 Lectures

Table and database level constraints. Triggers. Use of stored procedures.

6. Transactions - 2 Lectures

Introduction to transactions. ACID properties. Rollback.

7. Standard Interfaces - 1 Lecture

Forms; binding, GUI items, user support. Reports.

8. Integration with general high level languages - 2 Lectures

Embeddings and APIs. DBMS connections and services. ODBC, JDBC. Application development. The data dictionary.

9. Introduction to Object Databases - 2 Lectures

Perceived weaknesses of the relational model. Possible benefits of an object model. ODMG model.

10. Building and Manipulating Object Databases - 2 Lectures

Design. ODL, OQL and OML.

11. Object Relational Systems - 3 Lectures

Comparisons of relational and object systems. Object oriented extensions to relational systems. SQL3.

12. The semi-structured database model and XML - 5 lectures

The model: outline; perceived advantages. The XML standard. XMLSchema: overview; type constraint; keys and keyrefs; comparison with SQL. XPath and XQuery: syntax; power. XML databases: native databases; extensions to RDBMS.

13. Mixed solutions - 4 lectures

Relational/XML/object library mappings. Tools to generate mappings.

14. Large Scale DBMS - 3 Lectures

Concurrency. Security. Distributed Databases.

Module Skills

Communication Requirements analysis is a major component. This requires careful and insightful reading and analysis of ¿customer¿ documents, followed by reflection of requirements back to the customer to verify mutual understanding.  
Improving own Learning and Performance Systematic and comprehensive analysis and design require good workjing practices, which are explored in the module.  
Information Technology Database systems are central to much IT.  
Subject Specific Skills Use of UML (industry standard modelling language). Use of SQL and XML languages, plus additional aspects of Java. Experience of a major DBMS.  

Reading Lists

Books
** General Text
Connolly, Thomas M. (2005.) Database systems :a practical approach to design, implementation, and management /Thomas M. Connolly, Carolyn E. Begg. 4th. 0321210255

Notes

This module is at CQFW Level 5