CSC-20002 - Database Systems
Coordinator: Thomas Neligwa Room: CR006 Tel: +44 1782 7 33476
Lecture Time:
Level: Level 5
Credits: 15
Study Hours: 150
School Office: 01782 733075

Programme/Approved Electives for 2026/27

None

Available as a Free Standing Elective

No

Co-requisites

None

Prerequisites

Successful completion of CSC-10080 Fundamentals of Computing or equivalent, and CSC-10070 Introduction to Programming or equivalent.


Barred Combinations

None

Description for 2026/27

This module introduces students to databases and database management systems by providing theoretical knowledge and practical experience in data modelling, database design, implementation and administration.

Aims
This module introduces foundational concepts in databases and database management systems (DBMS) by providing theoretical knowledge and practical experience in data modelling, database design, implementation and administration. The module will cover classic database theory centred around the relational data model including relational algebra and SQL (structured query language), and it will involve practical application development using SQL, native PL/SQL extensions and selected Web integration languages such PHP, HTML, etc for a Web-based database interface.

Intended Learning Outcomes

Explain the rationale behind the database approach to data storage and management, and its advantages over earlier file-processing systems: 2
Describe and advise upon the internal components of the DBMS architecture, the importance of data independence, and development tools offered by a particular DBMS: 2
Demonstrate comprehensive knowledge and understanding of the relational data model and its query languages, including relational algebra and SQL for creating and querying relational databases: 1,2
Apply the database systems development lifecycle as a methodology for designing and creating relational databases (including entity-relationship modelling for conceptual design, logical design and normalisation, and physical design for a particular DBMS): 1,2
Extend SQL programs with procedural or programmatic languages (PL/SQL extensions) for advanced implementation of database features including complex enterprise rules, triggers, and conditional execution: 1,2
Design and build a small three-tier database application which integrates SQL with Web scripting languages e.g., PHP/OCI/HTML/etc to allow database access through a Web interface: 1
Explain the importance of concurrency and recovery in transaction processing and how the DBMS manages the transaction lifecycle with concurrency and recovery protocols: 2
Describe and advise upon the important aspects of a database operation, maintenance and administration (including optimisation of storage structures, recovery protocols and database security measures): 2

Study hours

20 hours lectures
20 hours practical work (labs)
5 hours tutorials/workshops
103 hours Independent study/coursework
2 hour Examination

School Rules

None

Description of Module Assessment

1: Assignment weighted 40%
Practical assessment of database development
Design and implementation of a small database application with a Web interface (with a short report of 1000 words max. Overall coursework equivalent to 2500-3000 words).

2: Exam weighted 60%
2-hour closed-book examination
The exam will cover all topics addressed in the lectures. This exam will have short-answer questions focusing on theoretical as well as problem-solving skills learned in the module. The exam will have three questions and candidates are asked to attempt all three questions.