Computer Gaming Technology with Foundation Year BSc (Hons)

Full-time undergraduate (4 years)




Improve your computer and study skills on a foundation year before moving onto our full-time Computer Gaming Technology degree. Study at our specialist Development Studio in Cambridge. Play, design and build games as you create a portfolio to launch your career as a games developer.

Full description


We work with employers to make sure you graduate with the knowledge, skills and abilities they need. They help us review what we teach and how we teach it – and they offer hands-on, practical opportunities to learn through work-based projects, internships or placements.

Find out more about our placements and work experience, or the faculty's employability support.

It can take three years to create a game, all the way from initial concept to the finished product, and one game can involve up to 200 professionals working as a team.

As a game developer, you could design the visual styling as well as how it plays. You could be involved with animating characters and objects, creating audio, programming, testing and producing.

Besides working in the leisure/entertainment sector, you could use your skills to develop ‘serious’ games. These are used in rehabilitation, education and training, defence, science, health, city planning and engineering.

You could also go into a career in marketing, teaching or general technology.

Graduation doesn’t need to be the end of your time with us. If you’d like to continue your studies we offer a wide range of full-time and part-time postgraduate courses.

Modules & assessment

Year one, core modules

  • Foundation Mathematics
    This module is designed for students entering a degree course in Computing or Technology who need to be confident in the use of mathematics with enough skills to comprehend mathematics. Fundamental topics of algebra, geometry/trigonometry and probability theory will be covered, solving problems related to science and technology. The students will learn how to solve fundamental algebraic equations, express solutions to desired accuracy, and will become familiar with classes of functions (exponential, logarithmic, and trigonometric). This module will be assessed by in-class tests and coursework.
  • Core Skills
    This module seeks to identify and develop the basic professional skills needed for effective study on a degree course in in Computing or Technology. It emphasises the need for self-motivation and goal setting in providing skills and individual drive to sustain the work of study at degree level. Whilst the basic skills of efficient reading, writing and comprehension will be developed, particular emphasis will be given to developing self-confidence in learning skills such as note-taking, word processing experimental and basic report writing. This will be facilitated by the same lecturing team, using the same facilities as will be available during the degree course. The importance of developing regular working habits for efficient and effective learning will be emphasised and encouraged and the setting of weekly exercises will be a key component in helping the student to acquire the skills, disciplines and rewards of technology undergraduate academic life. Skills in group working will be developed, leading to the appreciation of team work and planning, the importance of meeting deadlines and the ability to contribute critically but constructively in team decision making. A group project will be undertaken and the skills of logbook keeping, report writing and project presentation will be further developed. The module will be assessed by coursework.
  • Foundation Gaming Technology
    Creating video games is a complex and multi-faceted task. There are many elements which require careful planning and which are inter-dependent on each other. You will be introduced to the concepts involved in creating video games, and be provided with an opportunity to become familiar with the production process and planning required to create a successful video game. You will learn how to plan a game, identify key elements which make a game fun and engaging, and how to identify and work within technical and time constraints. You will have the opportunity to learn how to use video game creation software and apply this, as well as knowledge from the lectures, toward creating an interactive video game.
  • Fundamentals of Computing
    You will be provided with an introduction to basic computer programming using a low level programming language (e.g. C), requiring no prior programming experience. Fundamental issues like constants, variables, data types, the structure of a program and the syntax of simple statements is discussed. You will use industry-standard tools and techniques to implement, test and document simple programs. This module will enable you to understand the main components of a high-level program, laying the foundation for subsequent modules requiring structured programming ability. It will emphasise the principles of good programming practice and introduce the techniques required to develop software that is robust, usable and efficient. By the end of the module, you should have sufficient mastery of C programming language to allow you to design, implement and test simple programs. You will be assessed through two staged assignments (log books), with feedback provided at each stage, in order to support the development of sound programming skills.
  • Foundation Audio Technology
    You will be introduced to the applications of technology to audio. You will also have the opportunity to gain ‘hands on’ experience with some studio hardware and software. You will look at the historical background to audio recording and the basic physics underlying a range of audio devices is explained. You will be introduced to the construction of microphones, and will gain an understanding of the strengths and limitations of current designs. The construction of loudspeakers is also covered. You will look at audio recording technologies, starting with the development of early disk, wire and tape recorders. This leads to an evaluation and comparison of their modern-day counterparts such as vinyl, CD, DAT and ADAT and Hard Disk. You will also cover the fundamentals of digital recording, and be introduced to problems such as aliasing and quantisation error. You will also be introduced to software and hardware used in recording studios and have the opportunity to gain some basic experience. You will be assessed by an exam and one piece of coursework.

Year one, optional modules

  • Game Development Essentials
    You will be introduced to basic mathematics and physics required in order to produce 2D/3D computer games. You will also gain an understanding of how maths and physics are important as theoretical background, in order to implement the mechanics of a game, optimise and debug it. This knowledge assists game developers in overcoming the difficulties and limitations of game engines associated with game mechanics. You will be taught elements of basic algebra, equations and functions in the context of game development. Graphical representation, geometry elements and aspects of motion in 2D and 3D are also covered. You will also be introduced to Principles of Mechanics, showing their relevance to computer game design. You will be assessed by course work (including in-class tests).
  • Electronic Essentials
    Our module is normally chosen if you are intending to progress to BEng Electronics, BSc Audio Music Technology or BSc Computer Science. You will be introduced to basic electrical principles and electronics, even if you have no background knowledge. You will relate what is learnt in the classroom and laboratory to what is experienced in the everyday world. You will be introduced to electricity and electronic devices and the maths that allow analysis and design. This module has a high hands-on element in the laboratory. You will build and test simple circuits, using test equipment. The module is specifically aimed at science students with a limited background in electronics. Our module will develop a broad appreciation of passive electronic components and their applications within the general perspectives of scientific instrumentation. These fundamentals are used to underpin an understanding of practical systems through laboratory assignments. Although our module is designed as a 'free standing' module for science and technology students who simply wish to broaden their understanding of electronics, our module is also designed to serve as a 'stepping stone' onto courses with a major instrumentation component and specifically leads into the Electronics Fundamentals Module where more complex analogue and digital circuits are explored. You will be assessed by coursework.
  • Analytical Essentials
    You are likely to choose this module if you are intending to progress to BEng Electronics, BSc Audio Music Technology or BSc Computer Science. Following on from ‘Foundation Mathematics’, the module will provide you with further mathematical tools to enable you to study a scientific or technological course at a higher level. You will expand your knowledge on geometry, trigonometry and algebraic expressions, and introducing them to fundamental topics in calculus. We will also introduce you to differentiation and integration rules. Your learning is assessed by a combination of coursework and formal exam.

Year two, core modules

  • Analytical Techniques for Games Developers
    Game developers regularly face unique challenges in implementing their chosen game mechanics. Many of these challenges cannot be met using existing capabilities within a game engine and must be implemented from first principles. These game mechanics can range from 2D or 3D spatial operations, solving complicated combat or logical equations, and calculating trajectories as examples. Without the knowledge of fundamental mathematical concepts, game developers will be limited in the type of mechanics they can implement and the complexity of their games. In this module you will assess your existing analytical and mathematical skills and develop your knowledge and core mathematical skills needed for successful study. We will introduce you to the key mathematical techniques that help game developers analyse and solve practical challenges in game development. We will assess your learning through in-class tests.
  • Introduction to Game-Engine Technology
    Across the worldwide games industry, there are many development environments within which games and interactive experiences can be developed. These environments, or 'engines' can be complex environments, and act as the core stage in a long and potentially, complex production pipeline. A working knowledge of a game engine is vital in order to be able to implement even the simplest digital video game. Every game engine has its strengths and weaknesses. Some game engines are particularly strong at displaying large continuous open worlds; others may be optimised for the current generation of games consoles, while others are of particular interest when creating multi-platform games at minimal cost. This module provides you with an understanding of the common and transferable concepts within game engines and how such engines integrate into the production pipeline within a commercial games studio. You will develop this understanding to a level where you will be able to understand the features of a commercial game engine and match these to the requirements of a specific project and in the process, select the most appropriate engine. You will also gain a working knowledge of a commercial game engine and learn through first-hand experience, the typical tools and techniques for working effectively within a commercial game engine. These core skills are transferable across a range of technologies and will serve as a strong foundation for future technical studies on the pathway. Assessment will involve the implementation of a specified design within a commercial game engine.
  • Introduction to Computer Gaming
    You will be introduced to the study of gaming and development of computer games. We use standard computer platforms suitably equipped with 2D and 3D games development environments in which you will implement a range of simple games. Teaching and learning covers two separate, but mutually-dependent strands of study and activity. A theoretically-based strand of study looks at the fundamentals of game analysis, design, the requirements of interaction and an outline of game theory with its ideas of states, goals and strategies. These ideas are foundational for both the analysis and design of games and will recur throughout subsequent modules. Alongside this analysis of game genre, forms, their historical and cultural significance provides an informed understanding of the user response to games. The practical strand of activity introduces you to implementing a game using current specialist game development technologies. This practical strand helps (in concert with other modules not specific to gaming) to develop the fundamental skills of computer games development. These strands come together in the assignment, a working game which you will design and built. Require you to apply knowledge gained from the theoretical aspects of the module to survey and analyse existing games, to produce a theoretically well-founded games design, to plan the practical implementation of the game in a suitable technology, to carry out that implementation and to test and evaluate the result. The final game implementation will also include a design document and report outlining the process of game development and process.
  • Quality Assurance in Game Development
    Creating video games is a complex task requiring the co-operation of gameplay programmers, graphics programmers, AI programmers, artists, modellers, animators, and many other professions. Integrating assets from all these inter-dependent fields into an environment in which players can interact in unpredictable ways, and creates a situation where errors or design flaws are discovered. The first task many players undertake when they first purchase a game is not to play it, but to download a patch to fix all the errors which were discovered in between sending the game to the publishers and for that game to reach the high street shelves. The games industry has, partly due to these challenges, gained a reputation for releasing commercial products which still contain many unresolved or undiscovered errors. Mistakes can also be costly during the development process. Errors or design flaws introduced early on in development can prove extremely expensive to rectify when they are finally discovered later in development. All major game developers and publishers have specialised Quality Assurance (QA) teams who spend many hours checking all aspects of the game to discover as many errors as possible prior to release. QA itself is often undervalued and less well recognised, but is in fact a vital part of the development process to ensure players have an enjoyable experience. This module seeks to introduce students to the importance of Quality Assurance within the development process of games. Here, you will learn how to test games effectively and learn how to communicate issues clearly and in a way that those errors can be reproduced by other developers. You will also learn the how to use common bug tracking software and the common terminology used within QA departments. Your assessment will see you developing and implementing a test strategy, for a video game.

Year two, optional modules

  • Simulation in Games
    Video games rely on realistic simulations in many elements of gameplay, for example, the ability to move objects in a realistic manner, detecting collisions, and creating moving vehicles. Understanding the techniques to add realistic simulation into games enables a richer gaming experience and consequently reduces development cost. One of the game developer's challenges is the complexity of simulations in a game which results in great number of interactions that reduces the computation efficiency and takes an immense amount of processing time and power. Real-world motions are based on the rules of physics which can make simulated game worlds appear more natural. Objects will not fall realistically without accurate simulation of gravity, and without the knowledge of momentum, explosions and collisions will not be realistic. An understanding of Newton’s laws of motion provides a great deal of knowledge on which to model the behaviour of moving objects, including collision detection. Collision detection mechanisms relies on a branch of physics that underpins Einstein’s special theory of relativity. While game engines often provide limited capabilities in physics simulation within the engine itself, game developers cannot always be guaranteed to be using an engine in which such capabilities are already provided. It is often the case that even when such basic simulation capabilities are provided, it is necessary to extend or adapt them to the specific requirements of the game. This module will provide students with the ability to examine and differentiate knowledge in the discipline of physics. Students will be able to apply this knowledge in the context of game development to understand, extend basic simulation techniques for themselves, without relying on pre-built functionality within game engines, in order to make their games more dynamic. For students to assess their existing analytical, mechanical and physical skills and build up the skills necessary for successful completion of this course (BSc (Hons) Computer Gaming Technology). This module justifies the practical physics techniques that are required to examine, distinguish, and analyse realistic challenges in game development. The module will be assessed by two elements, Assignment and Final Exam.
  • Acoustics, Sound and Music
    Using demonstrations and experiments, this module will introduce you to the basic properties of waves, with a special emphasis on sound waves in the air. You will study simple models of musical instruments such as stretched strings, as well as analysing the acoustic characteristics of other instruments. We will also introduce Sabine’s Formula to calculate reverberation times which impact on architectural acoustics, and how issues with this can be overcome using active or passive techniques such as Helmholtz resonators. Your learning will be assessed through coursework and an examination.

Year three, core modules

  • 3D Modelling and Animation
    This module will give you the skills you will need to work in a variety of professional model creating situations. You will use industry-standard 3D modelling and animation packages to develop an animated 3D product or model for a specific purpose. This could be a virtual realisation of an existing project or an entirely new concept based on a design brief. You will specify, design and develop the product, working to benchmarks agreed with your tutor. Your class time will be spent learning advanced techniques, and your time outside of the classroom will be spent devising and testing visualisation experiments to increase your knowledge and skills, including animated surface and image mapping, creating textures, video, lighting techniques, NURBS and inverse kinematics. Your final product will be assessed against your design goals. Choosing 3D Character Animation as an optional module would build on your learning to give you the skills to work on the design of computer games or in 3D animation for films or advertisements.
  • Software Design and Implementation
    Software design and engineering applies the principles of computer science to achieve cost-effective solutions to software problems. The number, size, and application domains of computer applications have grown and most people depend on the effectiveness of the software development. Therefore software products have to be efficient, of very good quality and to help us to be more efficient and productive. Get real-world experience in software engineering and gain the intellectual tools to be able to design, implement and test software systems. You will get to grips with the concepts of a software life cycle, system theory, design methodologies and relational data modelling and apply a design methodology to a case study producing diagrammatic representations of the data and functionality of a system. You will understand database design and implementation and use CASE tools to study topics including analysis and design in UML and managing the OO software development process. Finally, you will work in team on a specific project to create an application from a case study that showcases a whole software lifecycle.
  • Object Oriented C++
    C++ (and its language precursor, C) is arguably the most common programming language in industry, and graduates who are good C/C++ programmers are often much sought after in the IT sector (systems programming, embedded software, graphics and games programming). The reason for the popularity of C++ is partly historical, partly because the programmer can produce fast, memory-efficient programs, and partly because of its flexibility to support different programming styles. This module provides an introduction to C++ for those already with some programming experience in another language such as Java or C#. Following procedural introduction you will be using an object oriented style of programming including the necessary design considerations. Code will be written using an appropriate development environment (such as Visual C++, Dev C++, or C++ Builder) and be mainly confined to ANSI/ISO C++ and use of the standard library so as to promote source code portability to other platforms. You will learn how explicit types of memory allocation can be used to manipulate data and how this can influence computer resources, gaining an understanding of the underlying architecture behind how other high level programming languages manage their data.
  • Games Design and Development
    You will learn about the design of computer games, and be provided with an understanding of the development and delivery technologies which underpin modern high performance games. Theory within this module involves the development and management processes required to create a modern computer game. You will also gain an understanding of how to represent games in formal, game-theoretic terms, and also the computational models and architectures which underpin modern games. Mathematical aspects include core concepts for implementing interactions within a game environment. These are introduced through the practical needs of simple interactive games which provide a rationale for trigonometry, vector manipulation, algebra and problem-solving with algorithms. An understanding of the architecture and function of modern game engines is a key theory of the module. This knowledge is applied in the practical aspects, you will be required to develop a game from a specified genre, utilise a carefully managed production cycle, and become familiar with the range of tools which underpin games production: level editors, game engines and scripting languages. This approach is central to the skill set of contemporary professional games developers. You will be assessed through the production of a working game, with an emphasis on the development of a clear underlying game model, the disciplined development of the game from this model, and the production of high-quality documentation. The game will be developed as part of a group project, simulating conditions in the games industry. Our module uses a wide range of resources, since it is important for you to be exposed to a number of different development tools and game engines, as these typically have restricted and specialised functionality. In addition to a proprietary game development environment, extensive use is made of open source development tools.

Year three, optional modules

  • Interaction and Usability
    Developing effective human-computer interfaces is a vital yet poorly understood area. As such it is necessary to have some understanding of a variety of fields including cognitive psychology and usability theory which has recently become a major issue in web design / effective e-commerce implementation. The user experience (beyond traditional usability) is a key design issue, where the importance of the perceptions and experience of the user is considered. This module seeks to develop understanding of interaction design through the delivery of core theory which is then applied to the analysis, design, implementation and evaluation of a limited functionality horizontal prototype. The student will be introduced to the notion of user mental models (following the approach of Donald Norman) and the extent to which they can be utilized in the design of conceptual models underlying the designed interface. Students will then examine the range of discovery methods used to harvest user, task and environmental data to support user needs analysis comprising user characterisation (including the notion of user personae), task analysis (hierarchical task analysis / action and object taxonomies) and environmental analysis. Following a discussion of visual style / aesthetics, the preceding analysis will then progress to documented design rationale supporting by logical storyboards showing information, action and navigation screen components. The design is then prototyped in an appropriate high level interface prototyping tool and subjected to critical introspective and user evaluation. Note that ideally students will be expected to possess some scripting experience prior to starting the module. Students will document all the above to produce the final assignment. The module would be of considerable benefit to those who intend to design interfaces (including web design), become usability / testing consultants or work within user training / user support roles. Specialist resources required for this module are prototyping and access to the safari online text (Badre A (2002) Shaping Web Usability - Interaction Design in Context Addison-Wesley).
  • Audio for Games
    Game audio is an often misunderstood element of game production, requiring appropriate sound engineering skills and knowledge of the relevant tools and technology. A good audio engineer working in the game industry must also be creative and imaginative, as they are often asked to create unique sounds for often unrealistic and other worldly environments and scenarios. Creating the soundtrack for a game includes writing music, creating unique sound effects and ambient effects, as well as recording character voices and spoken instructions. To be part of this growing industry, one must be able to produce non-linear, interactive experiences, not just one off sound effects or music loops. That means one must be able to implement the audio into the game, rather than simply create it and pass it on to a programmer for incorporation into the game. This module uses the Unreal Development Kit (UDK) to teach the implementation of audio into a real game environment that has been previously constructed by the makers of UDK software. This module will also introduce the use of a popular middleware software package, designed to integrate specialised audio production tools with the game development engine. Assessment for the module will be for each student to implement audio into the working game environment provided, over the course of the semester.
  • Advanced Acoustics and Psychoacoustics
    The understanding of sound mechanisms in the field of audio technology is of great importance. Since there are several sound producing processes which are used in audio technology it is vital that the student has a working knowledge and an appreciation of the limitations of the technologies used. This module reviews the mechanisms of sound production and transmission. Binaural localisation of single sources is examined, and the implications for stereophonic recording and reproduction are explained. This leads to a discussion of quadraphonic and other surround-sound systems. Next, the design and construction of loudspeakers is examined, with consideration of the roles of the driver and enclosure. Newer designs such as distributed-mode (flat-panel) loudspeakers are explored. The module also examines psychoacoustics, It outlines the physiology of the ear and explains the perception of psychophysical attributes of sound. The relationships between these and the measurable physical parameters of the sound are examined in detail. Current theories of pitch perception are examined, such as place theory, periodicity theory and volley theory. Auditory grouping processes are explored using the principles of Gestalt theory. The perception of loudness is explored by considering the derivation of the Fletcher-Munson equal-loudness curves. Musical timbre is examined by looking at how evaluation of perceptual timbral similarity leads to the concept of a multi- dimensional timbre space. Finally, several categories of auditory illusion are presented, such as Shepard/Risset tones and the McGurk effect. The module is assessed by a combination of exam and coursework.

Year four, core modules

  • Artificial Intelligence
    Artificial Intelligence (AI) covers a broad range of disciplines ranging from cognitive science and philosophy to more pragmatic engineering subjects. It takes its inspiration from human and other biological behaviour that exhibit intelligence, such as problem solving, planning, decision making and optimization, and seeks to create systems that can perform similar intelligent tasks. The module covers all the main areas of AI such as behaviour, genetic algorithms, neural networks, fuzzy logic and other topics. The course is intended to be quite practical with an emphasis on interactivity in terms of code development and within a wider context of game development. This reflects that whilst a mainstream approach to the subject is taken the module will also have a gaming emphasis. The module assumes a basic level of mathematical ability and physics background (e.g. equations, trigonometry, vectors, and equations of force) and whilst no expertise in any particular language is presumed some familiarity in one common high-level programming language is expected (such as C#, C++ or Java). The assessment will require students to develop an AI solution to a given problem providing suitable documentation for the development process. Additionally students will write a separate critical review on one aspect of AI to include recent research in the area. The practical sessions will involve code development and exploration of basic AI principles. In addition, a weekly seminar/laboratory session may involve more specific tools supporting interactive game development dealing with issues such as controlling non-player character behaviour, route finding and other areas where interactive simulation requires advanced problem-solving techniques.
  • Professional Issues: Video Games and Society
    Focus on social, professional, legal and ethical issues within the video games industry and engage in coherent and objective debates on current and future issues to develop a professional attitude towards the video games industry. You will cover relevant and current topics within the video games industry such as, Computer Law (e.g. Data Protection; Intellectual Property; Hacking), age restricted content, socially sensitive content, culturally sensitive content and the wider public image of the video games industry. The skills you will develop are a key part of professional development for game developers seeking to embody professional values and approaches within the video games industry. You will choose topics and lead time-constrained seminars on a selected topic area, which will form part of your assessment, as well as producing a detailed report.
  • Emergent Gaming Technologies
    The games industry exploits a wide range of interactive hardware within games. These range from the XBOX Kinect, Occulus Rift virtual reality headset, haptic joysticks and accelerometer based devices such as the Wii remote. This module aims to develop knowledge and understanding of the recent developments of Gaming-related hardware, game input and visualisation technology. It is designed to enhance the skillset of students with adding value by extending their ability to use a variety of hardware that relates to gaming and apply techniques and processes to develop games that go beyond the conventional input (e.g. keyboard, mouse) and output (e.g. flat screens) methods or interaction with the player. The topics of this module are by its own nature cutting-edge of Emergent Technologies and, as such, the content will vary, but will include two key areas: • Game Input Techniques e.g. Motion Capture using Inertia Measurement Unit Sensors (IMUs), Infrared Cameras (IR), Pressure / Touch sensors. • Visualisation Techniques e.g. Field-of-View displays, Augmented and Virtual Reality. The purpose of this module is to bring the students to the fore-front of developing for, and with, game input and visualisation hardware and thus, is adapted to the advances and the state-of-the-art of the field. Students will have the opportunity to develop Human Computer Interfaces and tangible, haptic User Interfaces for games and the result will enhance their portfolios in yet another aspect of Game Development.
  • Final Project
    You will work on a substantial piece of individual research and/or product development work, focused on a topic relevant to your specific discipline. Your topic may be drawn from a variety of sources including: Anglia Ruskin research groups, previous/current work experience, the company in which you are currently employed, an Anglia Ruskin lecturer suggested topic or a professional subject of your specific interest (if suitable supervision is available). Your project topic will be assessed for suitability to ensure sufficient academic challenge and satisfactory supervision by an academic member of staff. Your chosen topic will require the you to identify/formulate problems and issues, conduct literature reviews, evaluate information, investigate and adopt suitable development methodologies, determine solutions, develop hardware, software and/or media artefacts as appropriate, process data, critically appraise and present your findings using a variety of media. Regular meetings with your project supervisor should take place, so that the project is closely monitored and steered in the right direction. Your project developed in this module is the most substantial piece of work that you will produce during your undergraduate studies. Therefore, your choice of project topic and the quality of your work is likely to bear a great influence on your career/employability. The module also includes aspects of Personal Development Plan and CV preparation. You will be strongly advised to allocate appropriate attention, time and effort to this module. The successful completion of the module will increase your employability, as you will acquire skills directly applicable to real world projects. The assessment will normally include an Interim Report, a Poster, and a substantial Final Report.
  • Professional and Entrepreneurial Portfolio
    During your development of a substantial piece of work, you will use your skills in research, specification, design, documentation, development and evaluation. You will continually use real world market and commercial requirements to guide the development process from initial idea to the final deliverable. You could even undertake work for third party clients and practitioners of the industry. Based on the idea of creating a creative arts show reel, you will create a professional quality artefact to demonstrate attainment in technical, professional and market knowledge. You will take the opportunity to develop new skills or take existing knowledge further within a supportive framework. This might include the creation of a website, desktop application or complete game, either individually or as part of a small team. You will be measured by three deliverables the initial research/feasibility plan; an account of the project process, specification, design, implementation, skills development and professional issues; the finished artefact and presentation.

Year four, optional modules

  • Data Structures and Algorithms
    You will become aware of efficient programming practice by critically appraising some of the common data structures and algorithms available to the computer scientist. You will use a range of analysis techniques to carefully evaluate the performance of these data structures and algorithms in order that you may make prudent choices in the assembly of software artefacts with specific performance targets or constraints. The concept of the algorithm is a central pillar of computer science, and is closely related to the concept of the data structure: the storage mechanism that algorithms are used to manipulate. In this module, a variety of crucially important data structures and associated algorithms are explored, with frequent examples from real world applications. The concept of the abstract data type (ADT) is presented as an encapsulation of common data structures and algorithms that incorporates a simple interface, promotes a high-level of information hiding, and permits changes to underlying implementation without affecting the larger application. In comparison to earlier programming modules, the focus of Data Structures & Algorithms is firmly theoretical, setting a foundation for understanding concepts and techniques that are of vital importance to any computer scientist required to construct elegant and efficient software artefacts in any high-level programming language, including scripting languages. You will be assessed by an exam and a practical assignment with associated documentation.
  • Mobile Technology
    This module investigates the technology of mobile devices from mobile phones to tablet devices. The material covers the two aspects of mobile technology: the design issues, standards and tools available for developing web pages and Internet services for access from mobile devices; and the design issues, programming and tools for developing hybrid mobile applications hosted on the mobile device. The core technologies that we will cover are HTML, CSS and JavaScript for mobile adapted web sites and browser based applications. In the laboratories, we will use both desktop and browser based development tools for web applications. We will also be exploring how the apps we develop can be transformed into hybrid mobile apps capable of running on Android, iOS, Windows, etc. using only one codebase. Students will be encouraged to develop their own ideas within the area of mobile technology and create content of whatever form to be rendered and tested on mobile devices and emulators. This material may be for entertainment, games, e-learning/training, conferencing, or applications of existing services: e-mail, instant messaging, news etc. These techniques will be assessed via the coursework for the module. The main development will be through software simulation of mobile devices, but students are encouraged to utilise and test their work with their own hosting and devices where possible.
  • Audio Programming
    This module builds on previous learning in the area of computer programming to produce useful audio algorithms for game and/or virtual reality environments. As well as utilising algorithm development software (such as MATLAB) and C/C++ IDEs, the learning materials will explore the combination of game design software and audio production middleware. The theory and implementation of audio effects (e.g. reverberation, pitch-shifting, filtering, delay, distortion) and physical modelling of acoustic systems (e.g. oscillators, strings, and membranes) will be examined such that they can be incorporated into the production of a simple game. Issues such as code optimisation and algorithm stability will be discussed alongside potential (optional) enhancements to improve the feasibility/impact/realism of the audio excerpts and components designed. Module material will be delivered through a series of weekly lectures and related guided tutorials. Exposition of the theory of the choice audio algorithms will be delivered during lectures alongside insights on development methodology. Tutorial sessions will focus on applying the lecture material to the implementation of a series of audio algorithms and, later in the module, their incorporation into a gaming environment. The assessed element of this module takes the form of a series of set tutorial tasks and a final open-ended game production project.


For a full breakdown of module options and credits, please view the module structure (pdf).

Throughout the course, we will use a range of assessment methods to help you and your tutors measure your progress. You will demonstrate your learning though the games you produce, but there will also be a mix of exams, personal learning plans and projects.

Where you'll study

Your faculty

In the Faculty of Arts, Humanities and Social Sciences, we use our expertise and connections in Cambridge and beyond to nurture creativity through experimentation and risk-taking, and encourage critical thinking, in order to educate, entertain, inspire and understand, as well as to improve people’s lives.

Where can I study?

Lord Ashcroft Building on our Cambridge campus

Our campus is close to the centre of Cambridge, often described as the perfect student city.

Explore our Cambridge campus

Fees & funding

Course fees

UK & EU students starting 2019/20 (per year)


International students starting 2019/20 (per year)


Fee information

For more information about tuition fees, including the UK Government's commitment to EU students, please see our UK/EU funding pages

How do I pay my fees?

You can pay your fees in the following ways.

Tuition fee loan

You can take out a tuition fee loan, which you won’t need to start repaying until after your graduate. Or alternatively, there's the option to pay your fees upfront.

Loans and fee payments


We offer a fantastic range of ARU scholarships, which provide extra financial support while you’re at university. Some of these cover all or part of your tuition fees.

Explore ARU scholarships

Funding for UK & EU students

Most new undergraduate students can apply for government funding to support their studies and university life. This includes Tuition Fee Loans and Maintenance Loans. There are additional grants available for specific groups of students, such as those with disabilities or dependants.

We also offer a fantastic range of ARU scholarships, which provide extra financial support while you’re at university. Find out more about eligibility and how to apply.

Entry requirements

Loading... Entry requirements are not currently available, please try again later.

Important additional notes

Our published entry requirements are a guide only and our decision will be based on your overall suitability for the course as well as whether you meet the minimum entry requirements. Other equivalent qualifications may be accepted for entry to this course, please email for further information.

All tariff points must come from A levels. Points from AS levels cannot be counted towards the total tariff points required for entry to this course.

Similar courses that may interest you

Computer Games Art BA (Hons)

Full-time undergraduate (3 years, 4 year extended)



Computer Science BEng (Hons)

Full-time, full-time with placement year undergraduate (3 years, 4 year extended, 4 years with placement)


January, September

Computer Networks BSc (Hons)

Full-time, full-time with placement year undergraduate (3 years, 4 year extended, 4 years with placement)



Apply now

UK and EU students

UCAScode: I610

Apply through Clearing

UK and EU students

Call our Clearing line

01245 687830

International students

Applicants from outside the UK and EU, apply to ARU

Apply direct

2020 UK and EU students

Apply through UCAS

Apply via UCAS

Get more information

UK & EU applicants

01245 68 68 68

Enquire online