Course Catalogue

Introduction to Data Science and Systems (M) COMPSCI5089

  • Academic Session: 2026-27
  • School: School of Computing Science
  • Credits: 15
  • Level: Level 5 (SCQF level 11)
  • Typically Offered: Semester 1
  • Available to Visiting Students: No
  • Collaborative Online International Learning: No
  • Curriculum For Life: No

Short Description

To give students a grounding in foundational elements of data science theory and systems, including Data transformations, Database Systems, and practical data processing pipelines.

Timetable

TBC

Requirements of Entry

Acceptance into one of the MSc programmes listed in section 10 below.

Excluded Courses

None

Co-requisites

Programming and Systems Development (H)

Assessment

Exam worth 60%

Weekly assessed in-lab exercises worth 40%

Main Assessment In: December

Course Aims

This module provides a solid foundation in data science theory and practice, focusing on:

Core Foundations:

■ Linear Algebra: Essential for data representation and transformation, useful in machine learning algorithms as well as in other domains.

■ Probability Theory: Understanding uncertainty, probabilistic models, and statistical reasoning.

■ Optimisation: Training methods for large-scale machine learning and deep learning/AI models, including gradient-based approaches and performance considerations.

■ Data Engineering & Lifecycle: Managing data from acquisition through storage, integration, and analysis.

 

Applied Components:

■ Data Transformation: Array manipulation, linear algebra routines, visualisation, and probabilistic concepts

■ Data Stores & Ecosystems: Principles of data store design and selection, and their role in data-intensive systems within real-world data science scenarios

■ Data Processing Pipelines: Practical workflows indicatively using Pandas, Numpy, Scikit-learn for cleaning, integrating, and analysing diverse data; including text representation, vectorisation, similarity measures, clustering, linking, and visualisation

Intended Learning Outcomes of Course

By the end of this course students will be able to: 

1. formulate problems in tensor form, manipulate tensors and run vectorised code efficiently;

2. vectorise data, measure distances between items and apply matrix transformation and decomposition to practical problems;

3. formulate and understand problems with stochastic elements;

4. formulate problems as optimisation and select appropriate approaches to solve them;

5. understand and appreciate data lifecycle principles and data-intensive best practices for designing scalable, efficient solutions to large-scale data science challenges;

6. Select appropriate data storage strategies based on specific pre-processing requirements and the velocity of incoming data;

7. Apply governance and data provenance principles.

Minimum Requirement for Award of Credits

No exceptions