Computer Science BSc (Hons) degree Course overview
Our accredited bachelor of Computer Science degree provides a comprehensive overview of all areas of computing. This allows you to keep your career options open and explore a wide range of in-demand topics.
Elective modules in your third year let you tailor your BSc Computer Science bachelors degree to your developing interests, such as computer vision, AI and advanced game technology.
- Develop systematic knowledge of computer science, with a focus on how software and programming can be used to solve real-world problems
- Learn to evaluate solutions to computer science problems
- Develop commercially valuable skills for your future career
- Work with City’s internationally renowned research groups to develop knowledge at the forefront of computing science
- Acquire state-of-the-art approaches to a wide variety of technologies
- Learn to code creatively and use programming languages accurately
- Study in City’s computing labs, which include the latest hardware and software, such as state-of-art NVidia GPUs
- Boost your expertise and employability with an optional one-year work placement
- Gain three years of professional experience with our innovative Professional Pathway Scheme, combining paid employment and study.
Accredited by BCS, The Chartered Institute for IT for the purposes of fully meeting the academic requirement for registration as a Chartered IT Professional and on behalf of the Engineering Council for the purposes of partially meeting the academic requirement for a Chartered Engineer.
During your three years of study on this Computer Science BSc, you will work individually and in teams to solve real-world computing problems, developing communication and collaboration skills.
Study our common first year for all our computer science students, learning six core topics including operating systems, web development and Java.
Introduction to Algorithms (15 Credits)
This module will introduce you to some common problems in Computer Science and how you might go about selecting efficient solutions. Both iterative and recursive algorithms will be considered
Mathematics for Computing (15 Credits)
To provide students of differing mathematical backgrounds with the foundational mathematics to equip them for further studies in Informatics.
Systems Architecture (15 Credits)
This module will introduce you to the fundamentals of computer systems; understand the layers that make up a system, the interfaces and abstractions provided to different levels and how they interrelate.
Programming in Java (30 Credits)
This module aims to provide you with generally applicable (that is, applicable not only to Java but also to other languages) introductory object-oriented programming skills and concepts.
Databases (15 Credits)
This module introduces you to databases and database driven systems (back-end development) and to the practical and theoretical aspects of dynamic web applications (front-end development),
Operating Systems (15 Credits)
An introduction to the key principles and functions of operating systems and enhance a practical understanding of them by providing an introduction to command-line interfaces, key system tools and shell scripting.
Computer Science, Ethics & Society (15 credits)
This module will prepare you for your studies and professional career in computing, exploring the impact of new computing algorithms, technologies and applications on individuals and society.
Deepen your knowledge of computer science with core modules such as C++ and data structures. Boost your professional skills with a team project or a work-based project.
Data Structures and Algorithms (15 Credits)
Learn how information can be structured and processed in computer systems, with an abstract view of the way systems handle information, which is essential for effectively implementing and understanding computer systems.
Language Processors (15 Credits)
This module will give you an understanding of programming language structure and implementation that will complement programming skills and aid the learning of new programming languages.
Object-Oriented Analysis and Design (15 Credits)
This module will provide you with a thorough understanding of object-oriented analysis and design with UML and enable the adoption of software engineering practices.
Professional Development in IT (15 Credits)
You will be provided with the tools to plan your professional development, relating to academic and career goals, to understand your strengths and to identify areas of development.
Team Project (15 Credits)
The aim of the module is to allow you to get practical experience of working in a team on building a software product of industrial strength to meet a set of customer requirements.
Programming in C++ (15 Credits)
The module focuses on introducing some basic aspects of the C++ language in a gradual manner so as to allow students to use it with confidence in follow-up modules and in their professional career.
Work Based Project (15 Credits)
Get practical experience of working to design and build a software product to meet a set of customer requirements. Prerequisite for this module: you MUST be registered on the Professional Pathway.
Continuing Professional Development in IT (15 Credits)
Develop a research and evidenced based view on the changing nature of the IT sector, the direction of developments in the industry and how to prepare and plan for it.
Computer Networks (15 Credits)
This module aims to provide students with a solid understanding of the key organisational principles of computer networks and their key protocols.
Cloud Technology for Business Transformation (15 credits)
This employability module will be focused on equipping you with the skills required to leverage cloud technologies in a business context, with the overarching objective of developing a deeper understanding of the skills required to transition from university to work.
Research and develop systems in an area of specialist interest to you with a large individual project. Tailor your degree to your interests with a broad range of elective modules to suit your career aspirations.
Individual Project (45 Credits)
Apply what you have learned in the other modules on a major piece of individual, computing-related work. This is an opportunity to demonstrate your knowledge, skills and your capacity for self-directed learning.
Theory of Computation (15 Credits)
Understand some of the standard abstract models of computation, how they may be shown to be equivalent, and what their limitations are.
Functional Programming (15 Credits)
This module will introduce you to functional programming, and the styles of programming and program structuring it makes possible.
Games Technology (15 Credits)
The module will introduce aspects of both game and game engine design, including an overview of the structure of a typical game development company.
Advanced Databases (15 Credits)
This module will enable you to gain advanced knowledge on, and develop skills for, different ways of representing, managing, and manipulating data
Computer Graphics (15 Credits)
In this module, you will learn the theory and practice of real-time 3D computer graphics based on the Open Graphics Library (OpenGL).
Advanced Games Technology (15 Credits)
The module will cover advanced game engine design in a practical format. A fully featured game engine will be developed from first principles.
Professional Experience (Placement) Placement Reports (30 Credits)
Focus your learning and development whilst on work placement; analyse and assess your learning at university and apply this in an appropriate and intelligent manner to your placement role.
Data Visualization (15 Credits)
This module is designed to equip you with the technical and design skills to create and use data visualization applications for the workplace and research environments.
Digital Signal Processing and Audio Programming (15 Credits)
This module ensures that you will be able to master tasks of developing and applying digital signal processing; including one-dimensional signals and some 2-dimensional signal processing for images.
Advanced Programming – Concurrency (15 Credits)
The module aims to provide you with the practical knowledge of the problems involved in programming and how to resolve these problems and the implementation mechanisms used for obtaining correct concurrent systems.
Cloud Computing (15 Credits)
This module aims to introduce you to the fundamental concept of computing-on-demand leading to Cloud computing. It follows a practical approach to building and running a test-bed cloud.
Information Security Fundamentals (15 Credits)
This module presents the fundamentals for information security from a strategic perspective, giving you the appropriate knowledge and skills to discuss, communicate within organisations.
Computer Vision (15 Credits)
In this module, you will learn the theory and practice of computer vision, which enables computers to perceive, and reason, about the world using images.
Introduction to Artificial Intelligence (15 Credits)
The main aim and focus of the module is to provide you with a broad introduction in theory and practice to the main areas of nature-inspired, adaptive Artificial Intelligence.
Programming and Mathematics for AI (15 Credits)
The main purpose of the module is for you to gain fundamental programming and mathematical skills for studying specialist Artificial Intelligence topics.
Agents and Multi Agents Systems (15 Credits)
This module allows you to learn agent architectures that perform differently according to the characteristics of the task environment
User Centred Systems Design (15 Credits)
Introduction to the importance of usability in interactive systems. You will learn techniques for the design and evaluation of interactive systems.
Semantic Web Technologies and Knowledge Graphs (15 credits)
In this module you will learn the semantic technologies to meet today’s demands from industry, where data scientists must semantically orchestrate diverse types of data sources. This module gives a practical combination of web and data management technologies, knowledge representation and artificial intelligence.
Natural Language Processing (15 credits)
This module will cover theoretical and computational foundations of language and linguistic phenomena. We will focus on the aspects, of automatic processing of language, that make it challenging and, in many ways, unique: the inherent structured property of language (such as sequential, tree and graph structures), its statistical properties, and the ubiquitous ambiguity.
Project Management (15 credits)
This module deals with the concepts, methods and software involved in the management of projects. It covers the roles and skills needed at each stage of the project development process, the decisions to be made, and their consequences.
Students have the opportunity to follow two placement routes: a one year placement or the Professional Pathway scheme. The one year placement can be undertaken following successful completion of year 2.
Students can join the Professional Pathway scheme after successful completion of year 1 (early entry) or after successful completion of year 2 or a one year placement (late entry).
Download course specification:
Teaching and assessment
During the BSc (Hons) Computer Science degree you will learn through a combination of lectures, case studies, seminars and laboratory sessions.
Project and group work aim to develop creativity and problem-solving and play a major part in the course. Learning is also supported by City's online e-learning system.
Assessment on this BSc Computer Science course is by examination and coursework, although some components, such as the team project, are assessed by coursework alone.
Percentage of the course assessed by coursework
The balance of assessment by examination, practical examination and assessment by coursework will to some extent depend on the optional modules you choose.
The approximate percentage of the course assessment, based on 2019/20 entry is as follows:
Contact hours will take the form of taught modules delivered through a series of 20 lectures and 10 hours of tutorials/laboratory sessions. Each lecture and tutorial/laboratory session lasts 1 or 2 hours.
The programme is delivered and assessed via a coordinated combination of: lectures (including programmed student activity); supervised tutorials; supervised laboratory work; independent coursework; group project work; and individual project work and dissertation.
Approximate study time based on 2019/20 entry is as follows:
Fees and funding
Fees for year 2024/25
The tuition fees indicated are for the 2024/25 academic year only. Fees for future years may be subject to an inflationary increase in the region of 5%.
- Fee waivers are available for this course.
- Means tested support is available for 2024/25 entry.
Some of our degrees may involve additional expenses which are not covered by your tuition fees. Find out more about additional expenses.
Software and programming are growth areas where qualified graduates are in demand. This broad-ranging BSc Computer Science degree keeps your career options open and could lead to roles such as:
- Software Engineer
- Mobile Application Developer
- Systems Architect.
Our recent Computer Science graduates have joined employers such as:
- Metro Bank
- TATA Consultancy
- Expedia Group.
City's Computer Science degree is accredited by the Chartered Institute for IT (BCS), exempting you from their professional examinations and offering a pathway to chartered status.
In recent years students from our computer science courses have been able to obtain placements at leading companies within their chosen field such as IBM, PlayStation, Disney, Microsoft and Goldman Sachs.
The School has its own dedicated placements team that provides on-hand placement and internship support and guidance for students throughout their studies.
Our dedicated team of placement specialists, the Corporate Relations & Employability Unit, has extensive experience in helping students to secure placement employment across a range of industries.
The team also has longstanding relationships with an impressive and diverse range of companies spanning both large and small organisations including start-ups in Tech City.
Placements are highly encouraged at City. Students that complete a placement year benefit from gaining professional experience working on real-life projects and are also more likely to achieve higher grades, secure a graduate-level job and earn a higher salary.
How to apply
Applications for degree courses must be made through the Universities and Colleges Admissions Service (UCAS).
You can apply through your school or college using the Apply system, which enables you to submit your application directly to the UCAS website.
You can apply to up to five universities or institutions on the form. The UCAS code for City, University of London is C60.
Please take care to enter the correct course code when applying, particularly for subjects with a Foundation year or with BEng (Hons) and MEng (Hons) or BSc (Hons) and MSci (Hons) options.
UCAS has implemented an 'invisibility of choices' policy so that, on the initial application and while you are receiving decisions, each institution can see only their entry and not those of other institutions you have chosen. This ensures that your application for a course at City is considered solely on your academic and personal qualities.
You should submit your completed application form to UCAS with a £27.50 application fee.
For enquiries about the admissions process at City, please contact our Admissions Office
Complete the Admissions enquiry form
Call: +44 (0)20 7040 8716.
Telephone lines are currently open between 10am - 3pm.
When to apply
Your application for entry in September 2024 should arrive at UCAS between September 2023 and 31 January 2024. Applications that arrive after the UCAS deadline in January will be considered only at City's discretion.
Address: Universities and Colleges Admissions Service (UCAS), Rosehill, New Barn Lane, Cheltenham, Gloucestershire, GL52 3LZ
- from inside the UK 0871 468 0468
- from outside the UK +44 (0)871 468 0468
For callers with hearing difficulties:
- from inside the UK use the Text Relay service on 18001 0871 468 0468
- from outside the UK dial +44 151 494 1260 (text phone) and then ask the operator to dial 0871 468 0468.
Your introduction to coding at City
Ask a student
Want to find out more about student life? Chat with our student ambassadors and ask any question you have
Your studies are supported by a team of committed and enthusiastic teachers and researchers, experts in their chosen field. On occasion we also work with external professionals to enhance your learning and appreciation of the wider subject.