CMT207: Information Modelling and Database Systems
School | Cardiff School of Computer Science and Informatics |
Department Code | COMSC |
Module Code | CMT207 |
External Subject Code | 100370 |
Number of Credits | 20 |
Level | L7 |
Language of Delivery | English |
Module Leader | Professor Irena Spasic |
Semester | Spring Semester |
Academic Year | 2023/4 |
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 third generation and NOSQL database technology. The module also highlights how database systems are at the core of modern information-rich Web sites, and explores the role of XML and “Web of data” technologies. Systems for data mining and business intelligence will be discussed.
On completion of the module a student should be able to
- Design a relational database, i.e. map conceptual models to efficient representations in a database schema.
- Query a relational database.
- Describe and Evaluate the principles of other types of database management systems – object-oriented, object-relational, NoSQL, cloud, distributed.
- Discuss the principles of data mining algorithms and critically analyse their applications in business intelligence.
- Describe how markup languages and Semantic Web technologies are used to model and manage information in a Web context.
How the module will be delivered
This module will be delivered through a combination of lectures, supervised lab sessions, example classes and tutorials, as appropriate.
Skills that will be practised and developed
Be able to understand the role of information in decision making.
Be able to define and contrast the terms: data, information and knowledge.
Be able to design a relational database including:
(1) conceptual design (build a model independent of the choice of a database management system)
(2) logical design (create the database in a chosen database management system)
(3) physical design (physically store the database on disk)
Be able to understand issues concerning database applications including database security and data integrity.
Be able to access relational databases from computer programs.
Be able to use markup languages (XML and JSON) and Semantic Web to model information.
Be able to design and query object-oriented and object-relational databases.
Be able to understand the difference between relational and NoSQL databases.
Be able to select appropriate techniques for mining large data sets.
Be able to identify ways in which systems can be designed to support business operations by providing business intelligence.
How the module will be assessed
Coursework will consist of a series of problem solving questions that address learning outcomes LO1 and LO2. The relevant topics from the syllabus include:
Introduction to databases
Information, data and knowledge
Database systems
Relational data model
SQL
Relational algebra
Database design
Conceptual database design (ER diagrams)
Logical database design (ER to SQL)
Physical database design (indexes)
Problem solving questions may include but would not be limited to examples such as writing SQL queries, designing a database using an ER diagram or normalizing a database.
The coursework will be set in Week 6 of the Spring semester. The coursework submission date will be during Week 11 of the Spring semester.
NOTE: The exam will also be covering the learning outcomes LO1 and LO2, but it will be focusing on different topics. Some topics from the part of the syllabus covered by the coursework will be relevant for the exam as well, but the exam will be focusing largely on this part of the syllabus in relation to the learning outcomes LO1 and LO2:
Security, transactions and concurrency
Security and integrity
Transactions and recovery
Concurrency control
The exam will also contain questions that will test the learning outcomes LO3, LO4 and LO5, which will be covered by the remainder of the syllabus.
Students will be provided with reassessment opportunities in line with University regulations.
Assessment Breakdown
Type | % | Title | Duration(hrs) |
---|---|---|---|
Written Assessment | 100 | Practical Group Project | N/A |
Syllabus content
Introduction to databases
Information, data and knowledge
Database systems
Relational data model
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
Object orientation
SQL and programming languages (Java)
Object-oriented databases
Object-relational databases
Markup languages and NoSQL databases
XML, XPath and XQuery
JSON
NoSQL
Data mining
Frequent itemsets
Similarity and distance
Clustering
Classification
Semantic Web
URI, RDF
Ontologies