Course units
Year 0 (common with BSc Data Science and AI (Artificial Intelligence))
Foundational Programming One (20 credits)
This unit will introduce you to core programming skills and concepts. You will also explore basic coding environments such as Processing and block programming.
Computing Histories (20 credits)
This unit will help you develop academic writing skills and offer diverse historical perspectives of computing.
Computing Project: Introducing Computing One (20 credits)
This unit will introduce project work through set tasks such as simple game creation.
Foundational Programming Two (20 credits)
In this unit, you will apply the skills and knowledge you have developed so far in friendly coding environments such as Processing and block programming.
Foundational Maths for Computing (20 credits)
This unit will develop the foundational maths skills required for the following years of the course.
Computing Project: Introducing Computing Two (20 credits)
In this unit, you will continue your project work through set tasks and introduce code management tools and project management basics.
Year 1
Coding One: Introduction to Programming (20 credits)
This unit will introduce you to programming basics using modern programming languages and constructs that form part of professional practice in computing. You will learn fundamentals including variables, conditionals, loops, functions, simple object orientation and interaction approaches, applying mathematical principals throughout.
Human Factors: Introducing Inclusive HCI (Human Computer Interaction) (20 credits)
This unit will introduce you to human computer interaction fundamentals including key theories and approaches for understanding accessible computing systems. You will learn accessible and inclusive approaches to computing through HCI case studies and practices.
Computing Project: Web Programming (20 credits)
You will learn and apply fundamental approaches to web application development, understanding user requirements, designing interactions, programming interfaces in HTML5/CSS3/JavaScript, and testing, evaluating and presenting your work in class.
Coding Two: Further Programming and Information Architecture (20 credits)
This unit will further expand your knowledge, skills and competencies in programming. You will learn how computing hardware interprets instructions, and how these instructions flow through computing systems. You will explore binary and hexadecimal representations of numbers, and how operations are understood in binary form.
Ethics and Information Security (20 credits)
This unit will introduce cybersecurity essentials through the lens of ethical and legal requirements in relation to data collection, data storage, data access, data sharing and data processing. You will examine current information security processes, which are enforced and regulated by legal and human rights legislation.
Computing Project: Data and Databases (20 credits)
This project will build on your knowledge and skills in web programming. It will also introduce data structures for storing, querying, accessing and interrogating data. You will explore SQL and schemaless NoSQL approaches to data management and storage, moving towards full stack competencies using Python and JavaScript.
Year 2
Coding Three: Algorithms and Complexity (20 credits)
You will be introduced to a range of standard algorithms using programming languages including Python and C. Using common algorithms, you will create and analyse computational models, learning how to determine which ones might be best suited to certain kinds of problems.
Human Factors: Interfaces and Interaction (20 credits)
This unit will help you understand how to design interactive applications, applying user-centred design cycles with related tools and techniques. You will analyse and evaluate user interfaces considering use and stakeholder needs, universal access, inclusiveness, assistive technologies, and culture-sensitive design.
Computing project: Software Engineering One (20 credits)
You will design and develop a prototype software project, supported by and reinforcing learning from your studies in Human Factors and Programming. You will be encouraged to develop projects that consider specific problems and challenges across a range of use cases, learning how software development teams operate, applying professional practice approaches common across the sector.
Coding Four: Computer Graphics and Signal Processing (20 credits)
On this unit, you will learn how sensory information is represented in computers and how images, sounds and related media forms can be stored and analysed in 1, 2 and 3 dimensions. You will also be taught how 3D objects can be represented in 2D, and how to programme contemporary graphics pipelines from scratch.
Computational Entrepreneurship (20 credits)
A key aim of this unit is to enhance your employability and team entrepreneurship skills in a computational context,
Computing project: Software Engineering Two (20 credits)
You will deliver a software project based on the knowledge and skills you have developed so far.
Year 3
Coding Five: AI and Intelligent Systems (20 credits)
Machine learning and Artificial Intelligence is at the core of modern industries. This unit will first introduce you to interactive concepts in machine learning and AI. You will then examine more complex intelligent systems design, including neural networks, reinforcement learning and other critical techniques.
Security, Privacy and Trusted Systems (20 credits)
Cybersecurity essentials are a critical part of computer science. You will be taught to use techniques including static program analysis and threat analysis. You will also become familiar with tools such as Burp Suite which is used to analyse security risks in online applications.
Computing Project: Product Development (20 credits)
This unit will reinforce professional practice approaches to product development. You will learn advanced approaches to product development including project management essentials, time cost estimation, product architecture and testing systems.
Ethics of Computing (20 credits)
In this unit, you will be asked to consider and reflect on critical approaches to technology development, including legal, regulatory and research-led ethics. You will be encouraged to apply these techniques to your own final year projects, exploring how you have applied your knowledge of computing ethics in your own work.
Computing Project: Final Project (40 credits)
Your final project incorporates a range of methods and approaches drawn from skills acquired throughout the course. This includes HCI methods, software engineering, signal processing, interaction, machine learning and AI, security and trust, and other essential topics in the discipline.
Diploma in Professional Studies (optional year)
The Diploma in Professional Studies is an optional placement year in industry between the second and third year of the course. It is a managed year of professional experience, undertaken in the design profession in a variety of national and international locations. Successful candidates are selected on a competitive basis from academic performance and studentship, successful completion of the Diploma of Higher Education (year 2) and by portfolio and proposal.