|
Module Availability |
AUTUMN Semester |
|
|
Assessment Pattern |
Assessment Pattern
Unit(s) of Assessment
|
Weighting Towards Module Mark( %)
|
Exam:
2 hour written unseen examination comprising questions on the basic concepts and problem-solving practical database design
|
50%
|
Coursework (individual):
Students will need to create a database system that addresses the needs of the users within the context of a case study. The coursework will cover the best part of the course. It will include the conceptual design of a database, creating the database, querying and updating the database, and identification of most appropriate ways to optimise the way data is stored through the normalisation process.
Students will need to document their design decisions and demonstrate their choices of data types and formats in describing the relevant data. Having created the database, students will need to write SQL queries and updates on the data to demonstrate how the database can be used to address specific user needs.
The above tasks will address the following learning outcomes:
Understand the main issues in database design; information modelling, and describing data.
Construct a conceptual design model of a database.
Create and query / update / modify a database using the declarative language SQL (building on its relational algebra semantics).
Feedback will be provided following the submission of the coursework and in time for the comments to be taken on board before the written examination.
|
50%
|
Qualifying Condition(s)
A weighted aggregate of 40% is required to pass the module.
|
|
|
|
Module Overview |
Module Overview
The course introduces the basic concepts of database management systems and the issues involved in database design. It introduces techniques for modelling information and standard practices in creating and manipulating relational databases. It aims to develop the student’s ability to think in making design decisions and skills in implementing database solutions and using standard querying languages.
|
|
|
|
Prerequisites/Co-requisites |
Pre-requisite/Co-requisites
COM1001 Web Publishing, COM1018 Software Engineering
|
|
|
|
Module Aims |
Module Aims
The course aims to introduce the basic concepts of database management systems and data models to highlight important issues which need to be identified when building database solutions.
We will focus on the techniques that can be used to describe data, create a database, and make use of the data by querying, updating, and modifying the database. The course will also introduce mechanisms to validate the database design, reduce redundancy and avoid update anomalies. The course will include a running example of a large-scale database and will include a number of exercises. It will also include the treatment of concurrency and recovery management in database transactions, and an overview of object-oriented databases, distributed database design, and XML schema for relational databases.
This course will enable you to gain experience in modelling data, designing the database, the use of SQL for performing operations on the database, the technique of normalisation of data, and an appreciation of more advanced topics in database management systems such as transactions, distributed databases and XML querying.
|
|
|
|
Learning Outcomes |
Learning Outcomes
By the end of the course the students will be able to:
1. understand the main issues in database design; data modelling, defining data, manipulating data, optimising data structure
2. construct a conceptual design model of a database
3. derive the corresponding relational data model - logical database design;
4. create and query / update / modify a database using the declarative language SQL (building on its relational algebra semantics)
5. follow a step-by-step process in normalising data
6. understand more advanced topics in database systems
|
|
|
|
Module Content |
Module Content
The course is divided into the following areas:
· basic concepts of database management systems and the 3-level database architecture
· the relational model of data – basic relational algebra operations
· entity-relationship modelling (ER and EER models)
· the standard query language SQL
· validation of database design and normalisation
· concurrency and recovery in ACID transactions on databases
· distributed databases and XML
|
|
|
|
Methods of Teaching/Learning |
Methods of Teaching/Learning
30 hours in teaching weeks of the Spring Semester, consisting of:
· 20 one-hour lectures (2 per week)
· 10 hours of lab classes (2 hour per week, starting Week 4)
Lectures and lab sessions. Exercises will form part of the lectures and solutions to exercises will be available. There will be one compulsory assignment and it will focus on entity-relationship modelling, creating the database from a case study requirements specification, and querying the database with SQL.
|
|
|
|
Selected Texts/Journals |
Selected Texts/Journals
There is not one core text which can be recommended that will cover the whole course. The following are suggestions for reading.
Recommended Resources :
R. Elmasri and S. B. Navathe. Fundamentals of Database Systems. 5th Edition, Addison Wesley, 2007. ISBN 0-321-41506-X
C. J. Date. An Introduction to Database Systems. 8th Edition (IE), Addison Wesley, 2004. ISBN 0-123-18956-6
http://www.w3schools.com/sql/ (SQL tutorials from W3C)
Background
Reading :
R. Ramakrishnan and J. Gehrke. Database Management Systems. 3rd Edition, Mc-Graw-Hill, 2003. ISBN 0-07-123057-2
J. Gray and A. Reuter. Transaction Processing: Concepts and Techniques. Morgan Kaufmann, 1993. ISBN 13:978-1-5586-0190-1
|
|
|
|
Last Updated |
AUG 2010 |
|