The BSc (Hons) in Computer Science is a four-year course offered by the School of Computer Science. The course is designed to ground you in both the theory and practice of computer science. You will learn to think and solve problems logically, understand the fundamental principles of how computing systems work, and be exposed to significant new technologies as well as teamwork.
In the first two years, you will learn the basic concepts behind computer science and several different programming languages.
Alongside computer science in the first year of your studies, you will be required to study at least one additional subject. In the second year, you can continue with this other subject or focus entirely on computer science. Find out more about how academic years are organised.
In third year, you will be introduced to the foundations of logic that are relevant to computer science, with an emphasis on automatic reasoning and decidability, and to theories of computation and complexity, including exploring Turing machines and pushdown automata.
You will apply software engineering concepts and practices to a substantial software engineering project as part of a team. This project runs through both semesters in third year and will prepare you for the workplace, where collaboration with others is essential.
In your final year, you will undertake a substantial software engineering project. You will design, specify and construct a medium-sized software system, or undertake a formal development and proof of such a system, under the guidance of a member of staff.
In addition to the compulsory modules, you will choose from a wide variety of advanced options. Examples of Honours topics can be found in the modules information below.
The University of St Andrews operates on a flexible modular degree system by which degrees are obtained through the accumulation of credits. Why study this course?
The BSc (Hons) in Computer Science is designed to ground you in both the theory and practice of computer science. You will learn how to program computers and how systems are organised, designed and implemented. During your studies, you will both explore the theoretical basis of computer science and develop practical skills in software engineering.
You will be able to build a degree programme around your interests and study specialist areas such as artificial intelligence, human-computer interaction, computer security, video games, data encoding, databases, and operating systems. A degree in computer science will allow you to enter into technical, academic, financial or commercial posts. Most companies and organisations are heavily invested in computer systems, and this has created a demand for many different specialisations in computer technology.
Graduates from computer science go on to find careers as:
- business analysts - systems architects and analysts - software developers - testers and verifiers - technical writers - IT trainers and user advisers - project managers
Many computer science graduates undertake further study, here or elsewhere. The University offers a range of options including MSc, EngD and PhD-level degrees.
Modality
ON-CAMPUS:
UCAS entry grades
AAA
UCAS Tariff points
144 points
Tuition fee
£9,790
Entry requirements
All applicants must have attained the following qualifications, or equivalent, in addition to the specific entry requirements for individual programmes.
SQA qualifications
SQA National 5 (B) in English and one SQA National 5 (B) from the following:
A degree in computer science will allow you to enter into technical, academic, financial or commercial posts. Most companies and organisations are heavily invested in computer systems, and this has created a demand for many different specialisations in computer technology.
Graduates from computer science go on to find careers as:
- business analysts - systems architects and analysts - software developers - testers and verifiers - technical writers - IT trainers and user advisers - project managers
Many computer science graduates undertake further study, here or elsewhere. The University offers a range of options including MSc, EngD and PhD-level degrees.
SYLLABUS
First year
Students will take the following compulsory first-year modules:
- Object-Oriented Programming: provides an introduction to object-oriented modelling and programming using Java. - Programming with Data: explores various aspects of data storage, processing and analysis.
Second year
Students will take the following compulsory second-year modules:
- Foundations of Computation: introduces fundamental algorithms, data structures and ideas about formal languages at the heart of modern software. - Computer Systems: develops skills in programming in C, systems programming, digital logic and low-level computer organisation.
b>Honours - compulsory
In third year, computer science students must take the following three compulsory modules:
- Logic and Reasoning: covers the foundations of logic that are relevant to computer scientists, with an emphasis on automatic reasoning and decidability. Topics include propositional and predicate calculus, various proof techniques, and Goedel's incompleteness theorem. - Computational Complexity: introduces Turing machines, non-determinism and pushdown automata, followed by study of decidability, simulation and the Halting Problem. - Software Engineering Team Project: gives a broad overview of software engineering, presenting the fundamental aspects as a collaborative professional activity including its concerns and approaches. Students apply these concepts and practices to a substantial software engineering project as part of a team.
In fourth year, you must take the following compulsory module:
- Major Software Project: allows students to undertake a substantial software engineering project using professional development techniques. Each student designs, specifies and constructs a medium-sized software system, or undertakes a formal development and proof of such a system, under the guidance of a member of staff.
b>Honours - optional
In addition to the compulsory modules in your Honours years, you will choose from a wide variety of advanced options, including modules in topics such as cyber security, video games and computer graphics.
In your final Honours year, you will also have the option to choose from a variety of modules at Masters level, providing advanced training in computer science in topics such as machine learning, data ethics and information visualisation.
Here is a sample of Honours modules that have been offered in previous years:
- Advanced Communication Networks and Systems - Artificial Intelligence - Component Technology - Computer Architecture - Computer Graphics - Computer Security - Concurrency and Multi-Core Architectures - Constraint Programming - Data Communications and Networks - Data Encoding - Databases - Distributed Systems - Human Computer Interaction - Logic and Software Verification - Operating Systems - Programming Language Design and Implementation - Signal Processing: Sound, Image, Video - Video Games
Continue exploring
Related postgraduate programmes
Compare similar courses and find the programme that best fits your goals.
The innovators of the 21st century will think across arts, science, engineering, humanities and enterprise to deliver innovative products, services and ways of living. They will be team players with a breadth of skills and qualities that enable them to work across specialisms and cultures. This cou...
Around the world, city governments are realising the growing importance of harnessing the power of urban big data. Our Masters in Urban Analytics will provide you with the knowledge and skills to design and conduct appropriate analyses, gaining experience of working with cutting-edge datasets and ex...
This course provides you with a foundational knowledge of the principles of AI, as well as proficiency in programming languages and software tools for AI development. You will also gain an understanding of the legal, ethical, social and professional implications of AI. The practical knowledge and sk...
Computer science is about understanding, designing, implementing and using computing systems. These systems can range in scale, and complexity, from the tiny components of a single processor to the globe-spanning internet. The core concepts of computing come from mathematics, logic and engineering,...
The Masters in Computational Geoscience explores how we model the natural world and the environment around us (and the processes that create them). You will develop applied data science and modelling skills which you can use to address complex real-world challenges and support decision-making in geo...
Become an expert in Artificial Intelligence and Data Engineering with this one-year MSc. You'll gain advanced skills in software engineering, machine learning, and data engineering, preparing you to design, build, deploy, and manage AI systems in real-world environments....