Other options

If you study Information and Computing Science BSc at XJTLU you can choose from these options to study at the University of Liverpool on the XJTLU 2+2 programme.

Study   ›  XJTLU courses  ›   XJTLU 2+2

Computer Science BSc (Hons) – Algorithms and Optimisation pathway: XJTLU 2+2 programme

Course overview

Computer Science is a broad area which includes designing and building hardware and software systems for a wide range of purposes and processing, structuring and managing various kinds of information.

Covering all aspects of computer science, including the underlying principles and theory, this programme will ensure that when you graduate you will know what is and isn’t possible with computers and be able to find solutions to the problems you will encounter in your professional life.

The programme covers a range of compulsory modules including: Database Development, Software Engineering, Complexity of Algorithms, a second year group software project and a final year individual project.

You then choose from a selection of modules representing the cutting-edge of computer science today. These cover topics such as Artificial Intelligence, Data Science, Cyber Security, Robotics, Computer Networks, and High-Performance Computing, amongst others.

You can choose to maintain a mixture of modules throughout your Computer Science degree or follow a specialist pathway in Artificial Intelligence, Algorithms and Optimisation, Data Science, or Cyber Security.

Many problems are highly complex and hard to solve even by a computer, requiring solutions designed to exhibit predictable behaviours in terms of their computational cost and data requirements. More precisely, we are interested designing algorithms with provably good performance, both in the terms of runtime and memory requirements. The Algorithms and Optimisation pathway is, therefore, concerned with theoretical modelling of algorithms and their properties. It looks at how complex tasks can be achieved more efficiently. Topics covered in this specialism may include Algorithms, Theory of Computation, Computational Game Theory, Optimisation, Big Data Analysis, Biocomputation, and Complex Information Networks.

Accreditations

Fees and funding

Tuition fees cover the cost of your teaching and assessment, operating facilities such as libraries, IT equipment, and access to academic and personal support.

Tuition fees

All XJTLU 2+2 students receive a partnership discount of 10% on the standard fees for international students. We also offer 50 XJTLU Excellence Scholarships providing a 25% discount on tuition fees to the students that score most highly in stage 2 at XJTLU across the different subject areas. Allocation is based on the number of applications received per programme.

The net fees (inclusive of the discounts) can be seen below.

XJTLU 2+2 fees
2025 tuition fee (full) £29,900
2025 tuition fee for XJTLU 2+2 students (inclusive of 10% discount) £26,910
2025 tuition fee for XJTLU 2+2 students qualifying for Excellence Scholarship (inclusive of 25% discount) £22,425
Fees stated are for the 2025-26 academic year.

Course content and modules

Year two

Choose at least 30 credits from the following module options:

  • COMP218: Introduction to Theory of Computation
  • COMP220: Software Development Tools
  • COMP226: Computer-Based Trading in Financial Markets
  • COMP284: Scripting Languages
  • COMP285: Computer Aided Software Development.

On the 2+2 programme, you'll study your third and fourth years at the University of Liverpool. These will be year two and year three of the University of Liverpool's programme of study.

Programme details and modules listed are illustrative only and subject to change.

Compulsory

Software Engineering I (COMP201)

Credits: 15 / Semester: semester 1

This module deals with the issues associated with the analysis, design, implementation and testing of significant computing systems (that is, systems that are too large to be designed and developed by a single person).

Database Development (COMP207)

Credits: 15 / Semester: semester 1

This module introduces students to the problems arising from databases, including concurrency in databases, information security considerations and how they are solved; the integration of heterogeneous sources of information and the use of semi-structured data; non-relational databases and the economic factors involved in their selection and to techniques for analysing large amounts of data, the security issues and commercial factors involved with them.

Complexity of Algorithms (COMP202)

Credits: 15 / Semester: semester 2

This module studies techniques, such as dynamic programming and recursion, used for the design and analysis of algorithms and data structures. Some fundamental algorithmic problems are studied, such as searching, sorting and network flows and efficient algorithms for such problems. The emphasis of this module is on problem solving using efficient algorithms together with their formal analysis and implementation, thus enhancing the students’ toolbox for efficient programming.

Group Software Project (COMP208)

Credits: 15 / Semester: semester 2

Software development skills form a fundamental part of the professional expertise of a Computer Scientist. Often the development is a team activity. The module provides the students with the unique opportunity to complete a sizeable software development project working as part of team.

Optional

Introduction to Theory of Computation (COMP218)

Credits: 15 / Semester: semester 1

This module aims to introduce formal concepts of automata, grammars and languages; to introduce ideas of computability and decidability, and to illustrate the importance of automata, formal language theory and general models of computation in Computer Science and Artificial Intelligence.

Software Development Tools (COMP220)

Credits: 15 / Semester: semester 2

This module covers the skills and knowledge required for the effective use of tools in the software development lifecycle.

Computer-Based Trading in Financial Markets (COMP226)

Credits: 15 / Semester: semester 2

The last few decades has seen a huge transformation in finance, where
human traders have been increasingly replaced by algorithms. The aims of COMP226 are to:

– Provide an understanding of financial markets at the level of individual trades;
– Provide an overview of computer-based trading applications;
– Introduce key issues with the use of market data;
– Develop a practical understanding of the development of algorithmic trading strategies.

Scripting Languages (COMP284)

Credits: 7.5 / Semester: semester 2

COMP284 `Scripting Languages’ is one of several technical skills/employability skills modules offered in the second semester of the second year of study. It addresses both the demand by employers and the desire of students that students should encounter a range of programming languages during their studies and should be able to use these programming languages productively. Scripting languages have gained enormously in their popularity with the expansion and development of the world wide wide and world wide web technologies as they are now the predominant languages used in the development of web applications. The module will cover two scripting languages, namely, JavaScript and PHP. At the end of the module students should be able to develop applications, both web-based and computer-based, in them.

Computer Aided Software Development (COMP285)

Credits: 7.5 / Semester: semester 2

This module covers the theory and practice of the application of tools to the software development lifecyle

Programming Language Paradigms (COMP105)

Credits: 15 / Semester: semester 1

This module is for students that already have some programming skills. Students will learn about the two main programming paradigms: imperative programming and functional programming. Since most introductory programming courses teach imperative programming, this module will focus on the functional paradigm. Students will learn how to program in Haskell, a popular functional programming language. They will learn how to formulate programs in a functional way, and the common techniques and idioms that are used to solve problems in functional programming.

Computer Networks (COMP211)

Credits: 15 / Semester: semester 1

This module provides an introduction to current computer networks and communications technologies. We will use the architecture and protocols of the Internet as a primary vehicle for studying fundamental computer networking concepts. This will include an in-depth study of the key protocols that enable communications accross the Internet. You will become familiar with the various network devices and network addressing schemes. We will identify critical network security issues and study approaches towards addressing these issues.

Advanced Artificial Intelligence (COMP219)

Credits: 15 / Semester: semester 1

This module will provide students with an introduction to the machine learning. It will contain traditional machine learning algorithms, deep learning algorithms, and probabilistic graphical models. Both theoretical knowledge and practical skills will be offered.

Planning Your Career (COMP221)

Credits: 7.5 / Semester: semester 1

​This module aims to provide a more in depth experience of crucial employability skills needed to secure either a placement or a graduate job.

App Development (COMP228)

Credits: 15 / Semester: semester 1

​App Development is an exploration of the design and programming of application programs on mobile devices. It covers topics such as how to design for small displays and non-traditional input devices; what the expectations of mobile users are; how to use publicallly accessible data sources to develop innovative solutions.

Introduction to Data Science (COMP229)

Credits: 15 / Semester: semester 1

This module provides a thorough introduction to the new subject of Data Science starting from the fundamental mathematical methods and developing real-life applications in several areas including Pattern Recognition, Materials Science, Computer Vision, Climate Analysis. The basic concepts from Linear Algebra and Metric Geometry will be gradually introduced without assuming any prior knowledge. The methods and algorithms from Graph Theory and Computational Geometry will be illustrated by worked examples and short programs/scripts.

Distributed Systems (COMP212)

Credits: 15 / Semester: semester 2

This module covers the concepts of distributed systems and the underlying principles of distributed computing and discusses the issues and various solutions proposed in the distributed computing community. Specifically, communication and broadcast, election algorithms, synchronization and concurrency, fault-tolerance and security related issues will be discussed in the lectures. Where applicable practical implementations of the concepts will be introduced.

Principles of Computer Games Design and Implementation (COMP222)

Credits: 15 / Semester: semester 2

This module introduces topics commonly present in the modern computer games from software architecture principles to advanced artificial intelligence techniques to the creation of 3D content. As part of the continuous assessment, students create a simple 3D video game using an existing game engine and an AI control procedure for a multiuser framework.

Cyber Security (COMP232)

Credits: 15 / Semester: semester 2

The module provides a thorough introduction to the area of Cyber Security, including cryptographic algorithms and protocols, systems vulnerabilities and attacks, computer networks and web security.  The main basic concepts and theoretical foundations are presented in the lectures, while extensive practical sessions support the development of skills in practical cybersecurity.

Becoming Entrepreneurial (ULMS254)

Credits: 15 / Semester: semester 2

This is a cross-disciplinary module focusing on the challenges of identifying, exploring, and implementing entrepreneurial opportunities that create and capture value. The module’s broad spectrum provides students with a foundation in entrepreneurial thinking, allowing them to develop the skills and attributes needed whether to build their own start up from the ground up or add value within existing companies through entrepreneurial and innovation applications. Students will develop an entrepreneurial mindset through experiential learning and embeddedness in the entrepreneurship ecosystem through start-ups and industries engagement as well as the Brett Centre for Entrepreneurship Venture Creation Programme, in which every part of the business journey is covered from ideation to pitching to a panel of industry experts.

Principles of C and Memory Management (COMP281)

Credits: 7.5 / Semester: semester 2

When dealing with computationally intensive tasks, such as in scientific computing, it is important to make the most out of the available computational resources. In order to accomplish this, one can use low-level programming languages, such as assembly, but the downside is that these are difficult to write, port and maintain. Alternatively, one can pick a high-level language with a small computational overhead. This module will teach how to program in one such a language: the C programming language.

The C++ Programming Language (COMP282)

Credits: 7.5 / Semester: semester 2

This module looks at the ways in which the C programming language can be extended to incorporate object oriented principles, by looking at C++. The module also examines the ways in which object orientation offers a natural means of developing graphical, event-driven applications within a powerful IDE.

Your experience

Supporting your learning

From arrival to alumni, we’re with you all the way:

An exciting place to study Computer Science

  • You will be taught by some of the best researchers in the field. In the most recent Research Excellence Framework, the research output of our department was ranked 5th in the UK. This research expertise shows through in our teaching
  • We teach in state-of-the-art PC and Mac laboratories running a variety of different operating systems, as well as iOS and Android tablets to encourage creativity and innovation within a stimulating environment in which to work and study
  • Our programmes are continually updated to reflect new technologies and trends.

What students say...

There are many excellent professors who can mentor you. In addition, there will be a team work in the second semester of the second year of computer science in Liverpool, In which we can design an app freely,which can better cultivate my teamwork spirit.

, BSc (Hons) Computer Science