CMT220: Databases and Modelling

School Cardiff School of Computer Science and Informatics
Department Code COMSC
Module Code CMT220
External Subject Code 100366
Number of Credits 20
Level L7
Language of Delivery English
Module Leader Professor Irena Spasic
Semester Spring Semester
Academic Year 2020/1

Outline Description of Module

Database systems are the most widely used software systems in commerce and industry. Database management systems are used to store and manage the complex integrated information resources of organisations. This module introduces the theoretical and practical issues relating to the design and use of these systems. In addition to the provision of a sound foundation in traditional, second generation database systems, it explores the representation and management of complex information resources with NoSQL database technology.

On completion of the module a student should be able to

  1. Design a relational database, i.e. map conceptual models to efficient representations in a database schema
  2. Manage relational database systems
  3. Use SQL to define and query a relational database
  4. Discuss and evaluate the principles of data integrity, security and concurrency control
  5. Model and manage information using markup languages
  6. Describe and evaluate the principles behind other types of database management systems, for example NoSQL

How the module will be delivered

Modules will be delivered through blended learning. You will be guided through learning activities appropriate to your module, which may include: • on-line resources that you work through at your own pace (e.g. videos, web resources, e-books, quizzes), • on-line interactive sessions to work with other students and staff (e.g. discussions, live streaming of presentations, live-coding, team meetings) • face to face small group sessions (e.g. help classes, feedback sessions)

Skills that will be practised and developed

Understanding the role of information in decision making

Designing relational databases (including conceptual design, logical design, physical design)

Evaluation of issues concerning database applications, including security and data integrity

Modelling information using markup languages (XML and JSON)

Awareness of the differences between relational and NoSQL databases

How the module will be assessed

A blend of assessment types which may include coursework and portfolio assessments, class tests, and/or formal examinations.

Assessment Breakdown

Type % Title Duration(hrs)
Portfolio 0 Reflective Portfolio And Learning Log N/A
Written Assessment 50 Timed Practical Implementation N/A
Class Test 50 Class Test N/A

Syllabus content

Introduction to databases

Information, data and knowledge

Database systems

Relational data model

Structured Query Language (SQL)

Relational algebra

Database design

Conceptual database design (ER diagrams)

Logical database design (ER to SQL)

Physical database design (indexes)

Security, transactions and concurrency

Security and integrity

Transactions and recovery

Concurrency control

Markup languages and NoSQL databases

XML, XPath and XQuery

JSON

NoSQL

Essential Reading and Resource List

Connolly, T. & Begg, C. (2015), Database Systems: A Practical Approach to Design, Implementation and Management , 6th edition, Addison Wesley,

Dietrich, S. & Urban, S. (2005), An Advanced Course in Database Systems: Beyond Relational Databases , Prentice Hall, ISBN: 0130428981

Harrison, G. (2015) Next generation databases NoSQL, NewSQL, and Big Data, New York: Apress, ISBN: 1484213297


Copyright Cardiff University. Registered charity no. 1136855