Bachelor of Science (BSc)

BSc Computer Science and Mathematics

One of the most sought-after subject combinations in industry, this course is designed to provide the perfect balance of creativity and logic.
  • Duration: 3 years
  • Year of entry: 2025
  • UCAS course code: GG14 / Institution code: M20
  • Key features:
  • Scholarships available

Full entry requirementsHow to apply

Course unit details:
Database Systems

Course unit fact file
Unit code COMP23111
Credit rating 10
Unit level Level 2
Teaching period(s) Semester 1
Available as a free choice unit? Yes

Overview

This course provides a comprehensive exploration of databases, emphasizing their pivotal role in modern computing and data management. Students will learn the principles of database design, implementation, and management, with a focus on the relational model, SQL, and normalization. The curriculum also covers database integration with web and front-end systems, transaction management, security, and emerging paradigms like NoSQL. By blending theory with hands-on practice, students will develop essential skills in designing robust databases, writing advanced queries, and leveraging database technologies for real-world applications.

Pre/co-requisites

Available as free choice but students must contact unit lead before choosing.

Aims

The aim of this course unit is to provide students with a comprehensive understanding of the principles, techniques, and practices that underpin modern database management systems (DBMSs) and their applications in contemporary data management environments.

The course introduces the importance of managing data as a strategic asset and explores the fundamental architectural principles of modern DBMSs, considering various architectures and their corresponding application environments.

A significant focus is placed on the relational model of data, including its theoretical foundations, relational database languages, and SQL. This encompasses advanced topics such as views, triggers, embedded SQL and stored procedures. Students will gain hands-on experience in deriving conceptual data models using the Extended Entity-Relationship (EER) paradigm, mapping these models to relational implementations, and applying normalisation techniques to enhance schema quality. They will also develop and execute both basic and advanced SQL queries to validate database designs against defined data requirements, with practical work conducted using the MySQL DBMS.

The course emphasises the integration of databases with front-end systems to create functional, user friendly applications. Students will learn how to design and implement connections between a database and a web or other front-end interface, enabling seamless data interaction. This includes understanding client-server architecture, employing technologies such as APIs or middleware, and ensuring efficiency and reliability in data exchange.

Database security is another critical topic addressed in this course. Students will study common threats, including theft, fraud, and the loss of confidentiality, privacy, integrity, and availability and examine countermeasures such as access control, authorisation mechanisms, and the use of views to enforce security policies.

Finally, the course introduces alternative database paradigms, including NoSQL systems, and discusses their characteristics, trade-offs, and suitability for handling large and diverse datasets in modern applications.

Learning outcomes

On the successful completion of the course, students will be able to: 

  • ILO 1: Demonstrate the ability to discuss, explain, and apply the foundational principles of database design, including conceptual modelling and key design trade-offs.
  • ILO 2: Analyse and apply the relational model, including deriving relational schemas from conceptual designs, normalizing schemas to various normal forms, and evaluating their effectiveness in meeting design goals.
  • ILO 3: Explore, and describe the characteristics, use cases, and trade-offs of NoSQL databases, including their differences from relational databases and their applicability to specific types of applications.
  • ILO 4: Design, implement, and execute SQL and NoSQL queries ranging from basic data retrieval and manipulation to complex operations involving joins, subqueries, aggregation, and advanced features.
  • ILO 5: Be able to design and implement a front end, using appropriate technologies, that allows users to execute CRUD operations as well as displaying data in a meaningful way.
  • ILO 6: Be able to discuss and explain the basic mechanisms to enforce database security, through an understanding of the threats and countermeasures available in classical database management systems.
     

Syllabus

Introduction to Data Management [1 workshop plus laboratory work]

(E)ER Modelling [1 workshop plus laboratory work]

Functional Dependencies & Normalisation [1 workshop plus laboratory work]

Basic SQL + Stored Procedures & Triggers (Adv SQL) [1 workshop plus laboratory work]

Web Programming [1 workshop plus laboratory work]

Transaction Processing [1 workshop plus laboratory work]

Application Integration [1 workshop plus laboratory work]

NoSQL Introduction & Design [1 workshop plus laboratory work] 

More NoSQL + Data Mining & Warehousing [1 workshop plus laboratory work]

NoSQL in CouchBase [1 workshop plus laboratory work]
 

Teaching and learning methods

Workshops [10 in total]
Videos [various each week]
Drop-In Laboratory Session [1 per week]
Lectures [3 in total]
Formative Quizzes [1 per week]
Additional Reading

Employability skills

Analytical skills
Innovation/creativity
Project management
Problem solving

Assessment methods

Method Weight
Written exam 30%
Practical skills assessment 70%

Feedback methods

Workshops, Drop-In Labs, Discussion Boards, Formal through Coursework

Recommended reading

We do not use a recommended textbook instead providing various resources including articles, papers and blogs throughout the semester.

Study hours

Scheduled activity hours
Assessment written exam 2
Lectures 3
Practical classes & workshops 30
Independent study hours
Independent study 65

Teaching staff

Staff member Role
Gareth Henshall Unit coordinator

Return to course details