MComp Computing Science


Attendance
Full Time
Award
Degree of Master of Computing



UCAS Course Code
G407
A-Level typical
AAB See All Requirements
Visit Us

Key facts

(National Student Survey, 2015)

Article

Computer Scientists have developed a new programme that will unearth the missing links in our planet’s past.

Read It

Key facts

(National Student Survey, 2015)

Video

The School of Computing Sciences is one of the largest and most experienced computing schools in the UK, expertly blending excellent teaching, research, facilities and exciting course modules to offer a dynamic programme targeted at the job market.

Watch It

Key facts

(2014 Research Excellence Framework)

Accredited by the Charted Institute for IT, this four-year programme offers advanced study of computing science, preparing you for further study or a successful career. You’ll benefit from our research-led approach to teaching and our fantastic facilities, so you’ll learn in the most up-to-date environment and graduate with great career prospects.

This course provides you with the opportunity to study core computing science subjects alongside more specialist subject areas such as embedded systems, computer vision and machine learning. You can choose a combination of modules that are suited to your interests and career plans beyond university.

We’re one of the most experienced schools of Computing Sciences in the UK, ranked in the UK top 10 for teaching, and joint 2nd for overall satisfaction (NSS 2015), with 100% of our research categorised as internationally recognised (REF 2014).

Overview

Join one of the most experienced computing schools in the UK, ranked in the top 10 for teaching and 2nd for overall satisfaction in the 2015 National Student Survey

The MComp in Computing Science prepares you for a career working with rapidly changing technology, giving you a thorough understanding of the theory and practice of computing science.

This four-year course allows significantly greater depth of study than is possible in a three-year degree. The first two years follow a similar structure to the BSc Computing Science and you will study a range of computing subjects, however you will have access to more advanced modules in your third and final years. In these final years you will undertake both individual and group projects, and study subjects at both undergraduate and Master's levels that relate to your interests and career aspirations.

As with all our degrees, flexibility is important and course modules can be chosen according to your interests, creating a personalised learning programme unique to you. Our varied choice of modules reflects the interdisciplinary nature of computing.

The fourth year of your degree allows you to explore more advanced computing subjects, strengthening your research and analysis skills, which are essential if you wished to pursue a successful technical career in industry. The degree has been accredited by the British Computer Society (BCS, The Chartered Institute for IT) which provides an external validation to ensure that the content of the degree is up to date and is organised and taught professionally.

Course Structure

This four year degree programme follows a similar structure to the BSc Computing Science course for the first two years, as you study core material through a variety of computer science modules. In the third and fourth years of the course you will be able to select from a wide range of optional modules that cover a multitude of computing science subjects. You will also undertake a major independent project in the final year of study.

Year 1

During your first year you will undertake compulsory modules which introduce you to the fundamentals of computing science. You will also undertake relevant mathematical modules.

Year 2

In the second year you will encounter state-of-the-art computing subjects, including software engineering, data structures and algorithms and theoretical computing.  You will also be able to study modules taken from a list of optional subjects so you can begin shaping your own curriculum.

Year 3

Your third year of study gives you the opportunity to study specific areas of computing science in greater depth through a substantial independent computing project. You will also select several optional modules allowing you to tailor your studies according to your own interests.

Year 4

Your final year of study is distinctive (as part of a four year course programme) because you will have the opportunity to apply all the research techniques you will have gained over the last three years in order to complete a significant independent research project. You will also have the opportunity to select advanced modules that complement your area of research.

Assessment

A variety of assessment methods are used across the modules. Your coursework will be assessed in a variety of ways, including programming assignments, essays, written discussions, class tests, problem sheets, laboratory reports, and seminar presentations.

In many modules, assessment is weighted 60% examination and 40% coursework, whilst some practical based modules are assessed entirely by coursework. In the final year, you will be assessed particularly on your understanding and how you integrate knowledge from different areas of the discipline.

Course Modules

Students must study the following modules for 100 credits:

Name Code Credits

COMPUTING PRINCIPLES

The module introduces key concepts in discrete mathematics, logic and Formal Language Theory essential for any degree in computing.

CMP-4002B

20

DATABASE SYSTEMS

This module introduces most aspects of databases, database manipulation and database management systems. The module is based on the relational model. The students will explore the tools and methods for database design and manipulation as well as the programming of database applications. Part of the practical experience gained will be acquired using a modern relational database management system. Students will also gain programming experience using SQL, and using a high level programming language to write applications that access the database.

CMP-4010B

20

PROGRAMMING 1

The purpose of this module is to give the student a solid grounding in the essential features of object-orientated programming using the Java programming language. The module is designed to meet the needs of the student who has not previously studied programming, although it is recognised that many will have done so in some measure.

CMP-4008Y

20

SYSTEMS DEVELOPMENT

The complexity of Computer Based Systems, appropriate development approaches, and their inherent activities will be discussed using case studies and guest speakers where appropriate. Emphasis will be placed on the processes involved with systems requirements, creative designs, and careful development, in a professional manner, ensuring that issues such as project management, safety, security and data protection are taken into account. The module will include a number of modelling techniques to support the systems development process. These will be put into practise during the group exercise that will run throughout the semester. There are also opportunities for students to hone their transferable skills through literature searching, report writing, seminar discussions and presentations.

CMP-4013A

20

WEB-BASED PROGRAMMING

The Internet and the World Wide Web are ubiquitous in much of the world. This module introduces some of the tools used for web development. Students will then build a substantial dynamic web site using HTML, CSS and Python. An understanding of the underlying mechanisms of the technologies used in the Internet and World Wide Web is essential for any computing science student. The latter part of the module explains these technologies and takes a practical approach to exploring them. Issues of information systems security are considered at all stages but also in dedicated sessions. The final element of the module considers multi-media issues in web based systems.

CMP-4011A

20

Students will select 20 credits from the following modules:

Students will be advised as to which of CMP-4004Y and CMP-4005Y is most appropriate for their course of study.

Name Code Credits

MATHEMATICS FOR COMPUTING A

The module is designed to provide students who have not studied A level Mathematics with sufficient understanding of basic algebra to give them confidence to embark on the study of computing fundamentals. Various topics in discrete and continuous mathematics which are fundamental to Computer Science will be introduced.

CMP-4004Y

20

MATHEMATICS FOR COMPUTING B

This module is designed for students with an A level (or equivalent) in Mathematics. For these students it provides an introduction to the mathematics of counting and arrangements, a further development of the theory and practice of calculus, an introduction to linear algebra and its computing applications and a further development of the principles and computing applications of probability theory. In addition 3D Vectors are introduced and complex numbers are studied.

CMP-4005Y

20

Students must study the following modules for 80 credits:

Name Code Credits

ARCHITECTURES AND OPERATING SYSTEMS

This module studies the organisation of both the system software and the underlying hardware architecture in modern computer systems. The role of concurrent operation of both hardware and software components is emphasised throughout, and the central concepts of the module are reinforced by practical work in the laboratory. The architectures portion of the module focuses on the components of a processor, including the registers and data path, and MIPS is used to demonstrate concepts such as instruction fetch cycles, and instruction decoding, and memory addressing modes. The operating systems component of the module focuses on how the system software manages the competing demands for the system hardware, including memory management, disc and processing scheduling, and so on.

CMP-5013A

20

DATA STRUCTURES AND ALGORITHMS

The purpose of this module is to give the student a solid grounding in the design, analysis and implementation of algorithms, and in the efficient implementation of a wide range of important data structures.

CMP-5014Y

20

PROGRAMMING 2

This is a compulsory module for all computing students and is a continuation of CMP-4008Y. It contains greater breadth and depth and provides students with the range of skills needed for many of their subsequent modules. We recap Java and deepen your understanding of the language by teaching topics such as nested classes, enumeration, generics, reflection, collections and threaded programming. We then introduce C in order to improve your low level understanding of how programming works, before moving on to C++ in semester 2. We conclude by introducing C# to highlight the similarities and differences between languages.

CMP-5015Y

20

SOFTWARE ENGINEERING 1

Software Engineering is one of the most essential skills for work in the software development industry. Students will gain an understanding of the issues involved in designing and creating software systems from an industry perspective. They will be taught state of the art in phased software development methodology, with a special focus on the activities required to go from initial class model design to actual running software systems. These activities are complemented with an introduction into software project management and development facilitation.

CMP-5012B

20

Students will select 20 credits from the following modules:

Students may not select FURTHER MATHEMATICS if they have taken MATHEMATICS FOR COMPUTING B in year 1.

Name Code Credits

ANALOGUE AND DIGITAL ELECTRONICS

This module provides a practical introduction to electronics. Topics include a review of basic components and fundamental laws; introduction to semiconductors; operational amplifiers; combinational logic; sequential logic; and state machines. Much of the time is spent on practical work. Students learn how to build prototypes, make measurements and produce PCBs.

CMP-5027A

20

FURTHER MATHEMATICS

This module is for those students who have passed CMP-4004Y or equivalent, in their first year and would like to study further theory that is a pre-requisite for several other 2nd and 3rd level modules in CMP. For such students it provides an introduction to the mathematics of counting and arrangements, a further development of the theory and practice of calculus, an introduction to linear algebra and its computing applications and a further development of the principles and computing applications of probability theory. 3D Vectors and complex numbers are also studied.

CMP-5006A

20

INFORMATION RETRIEVAL

Nowadays, millions of people worldwide make use of IR systems every day via search engines, and the exponential increase in the number of websites and documents available means that these systems have been developed to be highly efficient. In this module, we will cover the essential theoretical ideas that underpin modern information retrieval (e.g. the vector-space model, probabilistic approaches, relevance feedback etc.) and examine how they are practically implemented in current systems. Lecture material is re-enforced by a set of laboratory exercises and an assessment that enable you to implement some of these ideas practically. We also examine natural language processing techniques that are increasingly used in IR, and the emerging technologies of audio and video retrieval.

CMP-5036A

20

SYSTEMS ANALYSIS

This module considers, at a high level, various activities associated with the development of all types of computer based information systems including project management, feasibility, investigation, analysis, logical and physical design, and the links to design and implementation. Its main focus, however, is on the early stages, in particular requirements investigation and specification including the use of UML. It makes use of a number of analysis and design tools and techniques in order to produce readable system specifications. Students are introduced to a number of development methods including object orientated, soft systems, structured, participative, iterative and rapid approaches.

CMP-5003A

20

Students will select 20 credits from the following modules:

Name Code Credits

APPLIED STATISTICS A

ACTUARIAL SCIENCE AND BUSINESS STATISTICS STUDENTS SHOULD TAKE CMP-5019B, APPLIED STATISTICS B, DUE TO THE DIFFERENT REQUIREMENTS OF THEIR COURSE. This is a module designed to give students the opportunity to apply statistical methods in realistic situations. While no advanced knowledge of probability and statistics is required, we expect students to have some background in probability and statistics before taking this module. The aim is to introduce students to R statistical language and to cover Regression, Analysis of Variance and Survival analysis. Other topics from a list including: Extremes and quartiles, Bootstrap methods and their application, Sample surveys, Simulations, Subjective statistics, Forecasting and Clustering methods, may be offered to cover the interests of those in the class.

CMP-5017B

20

GRAPHICS 1

Graphics 1 provides an introduction to the fundamentals of computer graphics for all computing students. It aims to provide a strong foundation for students wishing to study graphics, focusing on 2D graphics, algorithms and interaction. The module requires a good background in programming. OpenGL is utilised as the graphics API with examples provided in the lectures and supported in the laboratory classes. Other topics covered include transformations, texture mapping, collision detection, graphics hardware, fonts, algorithms for line drawing, polygon filling, clipping and colour.

CMP-5010B

20

NETWORKS

This module examines networks and how they are designed and implemented to provide reliable data transmission. A layered approach is taken in the study of networks with emphasis given to the functionality of the traditional OSI 7 layer reference model and the TCP/IP model. Week-by-week the module examines the functionality provided by each layer and how this contributes to the overall reliable data transmission that the network provides. Underlying theory behind each layer is studied and then examples given as to how this is used in practice - for example within voice over IP (VoIP). An emphasis is placed on practical issues associated with networking such as real-time delivery of multimedia information and network security. The coursework tends to be highly practical and underpins the theory learnt in lectures.

CMP-5037B

20

Students must study the following modules for 40 credits:

Name Code Credits

COMPUTING PROJECT

This module will give you experience of independent project work through the development of research and application involving a significant amount of computing science knowledge and skills, for example, in design/implementation of algorithms, software, or hardware systems. It will also provide, via the lecture programme, a primer on the law, ethical and professional behaviour, project management, reporting and other aspects of being a computer scientist. You will be allocated a supervisor and will be expected to work closely with him or her on a mutually agreed project. The project choice will normally take place in the summer preceding the module and will be based around a list of approved computer science projects provided by members of Faculty and, occasionally, external customers. If you want to work on your own project then this may be possible but you should discuss this with the module organiser at an early stage. You will have to undertake a number of formative assessments: a project proposal and a progress report to demonstrate your ability to plan and manage a substantial individual project, a literature review to start your research and an ethics quiz to demonstrate your understanding of ethical issues. Your summative assessments will take the form of a final report and a formal presentation that will enable you to demonstrate your overall achievement.

CMP-6013Y

40

Students will select 20 - 40 credits from the following modules:

Students will select 40 credits from the following modules in Option Range A, or 20 credits from Option Range A and 20 credits from Option Range C. Students selecting from Option Range C cannot also select from Option Range D.

Name Code Credits

ADVANCED STATISTICS

This module covers three topics in statistical theory. For this year they are Regression and Linear Model, Generalised Models and Non-parametric Methods. The first two topics consider both the theory and practice of statistical model fitting and students will be expected to analyse real data. The third topic is chosen to be a contrasting one. Non-parametric methods are a vital part of the statisticians armoury and cheap computing makes such techniques very powerful. We look at the traditional permutation based methods as well as the empirical distribution function.

CMP-6004A

20

ARTIFICIAL INTELLIGENCE

This module introduces the students to core techniques in Artificial Intelligence Topics covered include introduction to Prolog programming, state space representation and search algorithms, knowledge representation, and expert systems.

CMP-6040A

20

AUDIOVISUAL PROCESSING

This module continues the exploration of computer processing of sound and image signals begun in Sound and Image I. The two aspects of the module are brought together using a common application: speech recognition - a technology that is becoming ubiquitous and found in almost all modern day mobile phones. In the sound component, the focus is on understanding acoustic feature extraction and acoustic modelling for recognition, and noise compensation techniques to overcome the effects of the environment. The imaging component builds on the idea of speech recognition to consider the choice of visual feature for computer lip-reading and the integration of acoustic and visual information for more robust recognition. The theoretical material covered in the lectures is reinforced with practical laboratory sessions and coursework, where full acoustic, visual-only and audiovisual speech recognisers are built. This includes data capture, pre-processing, feature extraction, modelling and recognition.

CMP-6026A

20

GRAPHICS 2

This module introduces the fundamentals of 3D geometric transformations and viewing using OpenGL. It teaches the theory and implementation of fundamental visibility determination algorithms and techniques for lighting, shading and anti-aliasing. Issues involved with modern high performance graphics processor are also considered. It also studies 3D curves and fundamental geometric data structures.

CMP-6006A

20

SOFTWARE ENGINEERING 2

Industrial software development is seldom started from scratch, companies generally have large systems of legacy software that need to be maintained, improved and extended. This module focuses on advanced software engineering topics, such as reverse engineering to understand legacy software, refactoring and design patterns to improve the design of software systems and developing new software projects using third-party software components. Assessment will be done by a group project which consists of a design and analysis task, and the group implementation task of a software project. Confidence in Java programming language skills as well as software engineering practice (phased development with agile methods, Unified Modeling Language, test-driven developement) are pre-requisites. Software Engineering I is required for this module.

CMP-6010A

20

Students will select 20 - 40 credits from the following modules:

Students will select 40 credits from the following modules in Option Range B, or 20 credits from Option Range B and 20 credits from Option Range D. Students selecting from Option Range D cannot also select from Option Range C.

Name Code Credits

ALGORITHMS FOR BIOINFORMATICS

Bioinformatics is one of the great growth areas in computing sciences due to the development of powerful new technologies that are able to churn out vast amounts of biological data. This data is often in the form of DNA or protein sequence data and the challenge that computer scientists' face involves developing efficient algorithms to process and understand the resulting complex data sets. Although the algorithms (such as dynamic programming and heuristics) and computer science techniques (such as graph theory and algorithm analysis) are introduced in a bioinformatics context, they are applicable to computer science problems in general. A brief introduction to the basics of molecular biology will be given, and so no background in biology is required. Topics will include sequence analysis, structural genomics and protein modelling, genome assembly and phylogenetics. Lecturers will highlight the relevance of the material to cutting-edge research and in applications such as understanding human diseases, developing new drugs, improving crop plants, and uncovering the origins of species.

CMP-6034B

20

COMPUTER VISION

Computer Vision is about "teaching machines how to see". It includes methods for acquiring, analysing and understanding images. The unit comprises lectures and laboratories. Practical exercises and projects, undertaken in the laboratory support the underpinning theory and enable students to implement contemporary computer vision algorithms.

CMP-6035B

20

EMBEDDED SYSTEMS

Embedded processors are at the core of a huge range of products e.g. mobile telephones, cameras, passenger cars, washing machines, DVD players, medical equipment, etc. The embedded market is currently estimated to be worth around 100x the 'desktop' market and is projected to grow exponentially over the next decade. This module builds on the material delivered in CMP-5013A to consider the design and development of real-time embedded system applications for commercial off the shelf (COTS) processors running real-time operating systems (RTOS) such as eLinux.

CMP-6024B

20

MACHINE LEARNING

This module covers the core topics that dominate machine learning research: classification, clustering and reinforcement learning. We describe a variety of classification algorithms (e.g. Neural Networks, Decision Trees and Learning Classifier Systems) and clustering algorithms (e.g. k-NN and PAM) and discuss the practical implications of their application to real world problems. We then introduce reinforcement learning and the Q-learning problem and describe its application to control problems such as maze solving.

CMP-6002B

20

SYSTEMS ENGINEERING

This module draws together a wide range of material and considers it in the context of developing modern large-scale computer systems. Topics such as Outsourcing, Process Improvement, System Failure, Project Management, Configuration Management, Maintainability, Legacy Systems and Re-engineering, Acceptance and Performance Testing, Metrics and Human Factors are covered in this module. The module is supported by a series of industrial case studies and includes speakers from industry.

CMP-6003B

20

Students will select 0 - 20 credits from the following modules:

Students MAY select up to 20 credits from either Option Range C or Option Range D. Students should contact the appropriate module organiser to check prerequisites if they wish to choose a module outside of CMP.

Name Code Credits

ANALOGUE AND DIGITAL ELECTRONICS

This module provides a practical introduction to electronics. Topics include a review of basic components and fundamental laws; introduction to semiconductors; operational amplifiers; combinational logic; sequential logic; and state machines. Much of the time is spent on practical work. Students learn how to build prototypes, make measurements and produce PCBs.

CMP-5027A

20

INFORMATION RETRIEVAL

Nowadays, millions of people worldwide make use of IR systems every day via search engines, and the exponential increase in the number of websites and documents available means that these systems have been developed to be highly efficient. In this module, we will cover the essential theoretical ideas that underpin modern information retrieval (e.g. the vector-space model, probabilistic approaches, relevance feedback etc.) and examine how they are practically implemented in current systems. Lecture material is re-enforced by a set of laboratory exercises and an assessment that enable you to implement some of these ideas practically. We also examine natural language processing techniques that are increasingly used in IR, and the emerging technologies of audio and video retrieval.

CMP-5036A

20

INTERNET LAW

Internet law is a cross-cutting area of law for today's multinational and innovative environment, particularly relevant in industries like electronic commerce, information technology, and the media. Topics covered in this module include data protection and privacy, cybercrime, telecoms, contracts, domain names, the control of content and the resolution of disputes. Students will explore the application of law across traditional categories and are encouraged to reflect on the role of a national legal system in an interconnected world. Teaching will include some online elements as well as lectures and seminars, and the module is assessed by 100% coursework.

LAW-6001A

20

MATHEMATICS FOR SCIENTISTS B

This module is the second in a series of three mathematical modules for students across the Faculty of Science. It covers vector calculus (used in the study of vector fields in subjects such as fluid dynamics and electromagnetism), time series and spectral analysis (a highly adaptable and useful mathematical technique in many science fields, including data analysis), and fluid dynamics (which has applications to the circulation of the atmosphere, ocean, interior of the Earth, chemical engineering, and biology). There is a continuing emphasis on applied examples.

ENV-5006A

20

SYSTEMS ANALYSIS

This module considers, at a high level, various activities associated with the development of all types of computer based information systems including project management, feasibility, investigation, analysis, logical and physical design, and the links to design and implementation. Its main focus, however, is on the early stages, in particular requirements investigation and specification including the use of UML. It makes use of a number of analysis and design tools and techniques in order to produce readable system specifications. Students are introduced to a number of development methods including object orientated, soft systems, structured, participative, iterative and rapid approaches.

CMP-5003A

20

Students will select 0 - 20 credits from the following modules:

Students MAY select up to 20 credits from either Option Range C or Option Range D. Students should contact the appropriate module organiser to check prerequisites if they wish to choose a module outside of CMP.

Name Code Credits

APPLIED STATISTICS A

ACTUARIAL SCIENCE AND BUSINESS STATISTICS STUDENTS SHOULD TAKE CMP-5019B, APPLIED STATISTICS B, DUE TO THE DIFFERENT REQUIREMENTS OF THEIR COURSE. This is a module designed to give students the opportunity to apply statistical methods in realistic situations. While no advanced knowledge of probability and statistics is required, we expect students to have some background in probability and statistics before taking this module. The aim is to introduce students to R statistical language and to cover Regression, Analysis of Variance and Survival analysis. Other topics from a list including: Extremes and quartiles, Bootstrap methods and their application, Sample surveys, Simulations, Subjective statistics, Forecasting and Clustering methods, may be offered to cover the interests of those in the class.

CMP-5017B

20

ELECTRICITY GENERATION AND DISTRIBUTION

In the final semester of third year this module will build on your established understanding of electricity by studying the technical aspects of the electrical industry. Analysing transformer designs will help consolidate your knowledge of generation before developing an advanced understanding of the constraints of cabling for offshore wind turbines. You will evaluate the efficiency of the national grid by comparing the practical design aspects to the costs involved. A detailed consideration of the current shortfall in meeting demand for electricity will lead to the study of novel methods of distribution, including pumped-storage schemes and super-capacitors.

ENG-6001B

20

GRAPHICS 1

Graphics 1 provides an introduction to the fundamentals of computer graphics for all computing students. It aims to provide a strong foundation for students wishing to study graphics, focusing on 2D graphics, algorithms and interaction. The module requires a good background in programming. OpenGL is utilised as the graphics API with examples provided in the lectures and supported in the laboratory classes. Other topics covered include transformations, texture mapping, collision detection, graphics hardware, fonts, algorithms for line drawing, polygon filling, clipping and colour.

CMP-5010B

20

MATHEMATICS FOR SCIENTISTS C

This module is the third in a series of three mathematical units for students across the Faculty of Science. It covers matrix algebra and numerical methods (with applications to many multi-variable problems in science), second order partial differential equations (which govern the behaviour of diffusive, advective and wave-like systems), and solid mechanics (applications in geophysics, glaciology, and material science). There is a continuing emphasis on applied examples, and the use of numerical computing software (Matlab) is extended with a dedicated programming component. This module is taught by mathematicians with considerable expertise in the use of mathematics in the natural/environmental sciences and is largely designed to equip students with the tools necessary for advanced second and third level modules, particularly those in the physical sciences. Emphasis is placed on problem solving and there are three lectures a week accompanied by one seminar which focuses on the discussion of relevant problem sheets.

ENV-5007B

20

NETWORKS

This module examines networks and how they are designed and implemented to provide reliable data transmission. A layered approach is taken in the study of networks with emphasis given to the functionality of the traditional OSI 7 layer reference model and the TCP/IP model. Week-by-week the module examines the functionality provided by each layer and how this contributes to the overall reliable data transmission that the network provides. Underlying theory behind each layer is studied and then examples given as to how this is used in practice - for example within voice over IP (VoIP). An emphasis is placed on practical issues associated with networking such as real-time delivery of multimedia information and network security. The coursework tends to be highly practical and underpins the theory learnt in lectures.

CMP-5037B

20

Students must study the following modules for 100 credits:

Name Code Credits

ADVANCED PROGRAMMING CONCEPTS AND TECHNIQUES

This module starts off with state of the art software engineering concepts including the Unified Process (UP) as part of Iterative and Incremental Development (IID), Agile Programming methods (e.g. extreme programming, scrum, etc.), and Design Patterns. This is followed by covering advanced features of three of the currently most popular General Purpose Languages (GPL's): C++, Java and C#. Different IDE's are covered in depth (such as Visual Studio, netbeans and Eclipse). Other advanced programming concepts include dynamic link libraries (DLL's), GPU based API's (Application Programming Interfaces) such as CUDA and OpenCL, exception handling, memory management and multithreading.

CMP-7009A

20

DISTRIBUTED COMPUTING

Single computer systems have limited processing power and are vulnerable to failure. Using distributed computing, processing speeds exceeding the limits of any single computer, and systems that continue to be available when individual computers fail can be realised. Achieving these features requires use of adequate algorithms, software architectures and networking techniques. This is the subject of this module.

CMP-7010B

20

MCOMP PROJECT

This module is motivated by the need to simulate real project work. You will work in a group on a problem that is either taken from an active research group within the University or from a real problem in industry in commerce. In the first stage of the project, the project definition (PD) phase, you will define the objectives of the project and, most importantly, the workplan and the allocation of work to team members. Subsequently you will be supervised by a member of Faculty within either a research group or within an industry context. Group members will be expected to report and present their work to typical group meetings. There will be assessment of these meetings (the seminar assessment) and the project culminates with a group and individual report.

CMP-7020Y

60

Students will select 20 credits from the following modules:

Name Code Credits

ARTIFICIAL INTELLIGENCE

This module introduces the students to core techniques in Artificial Intelligence and some topics in algorithmics. Topics covered include First-Order logic and resolution proofs, introduction to Prolog programming, state space representation and search algorithms, knowledge representation, and expert systems, Bayesian and neural networks.

CMP-7028A

20

AUDIO AND VISUAL PROCESSING

CMP-7016A

20

COMPUTER GAMES LABORATORY

The module is seminar- and lab-based and draws on previous knowledge of 3D computer graphics programming (for example CMP-7013A/CMP-6006A). It aims to make the student familiar with more advanced computer graphics and games methodologies and technologies. This includes Virtual Reality (VR), Augmented Reality (AR), Motion Capture, Haptic and Force Feedback and Stereoscopy. Seminars also cover advanced topics such as physics simulation, physics engines, games Artificial Intelligence (AI), mobile games development, character animation, procedural content generation (PCG) and serious games (medical and other applications).

CMP-7014B

20

COMPUTER GRAPHICS

This module covers the fundamentals in 3D graphics including transformations, lighting, shading, texture mapping and anti-aliasing techniques. The module also provides an introduction to programming 3D graphics using OpenGL and the OpenGL Shading Language (GLSL). Ability to program in a high level language such as C++ or Java is required. This module should not be taken if you have previously taken CMP-6006A.

CMP-7013A

20

COMPUTER VISION

Computer Vision is about "teaching machines how to see". It includes methods for acquiring, analysing and understanding images. The unit comprises lectures and laboratories. Practical exercises and projects, undertaken in the laboratory support the underpinning theory and enable students to implement contemporary computer vision algorithms.

CMP-7026B

20

DATA MINING

This module is designed for postgraduate students studying on MSc courses. The module explores the methodologies of Knowledge Discovery and Data Mining (KDD). It aims to cover each stage of the KDD process, including preliminary data exploration, data cleansing, pre-processing and the various data analysis tasks that fall under the heading of data mining. Through this module, students should gain knowledge of algorithms and methods for data analysis, as well as practical experience using leading KDD software packages.

CMP-7023B

20

SYSTEMS ENGINEERING ISSUES

This module draws together a wide range of material and considers it in the context of developing modern large-scale computer systems. Topics such as Outsourcing, Process Improvement, System Failure, Project Management, Configuration Management, Maintainability, Legacy Systems and Re-engineering, Acceptance and Performance Testing, Metrics and Human Factors are covered in this module. The module is supported by a series of industrial case studies and includes speakers from industry.

CMP-7004B

20

Disclaimer

Whilst the University will make every effort to offer the modules listed, changes may sometimes be made arising from the annual monitoring, review and update of modules and regular (five-yearly) review of course programmes. Where this activity leads to significant (but not minor) changes to programmes and their constituent modules, there will normally be prior consultation of students and others. It is also possible that the University may not be able to offer a module for reasons outside of its control, such as the illness of a member of staff or sabbatical leave. Where this is the case, the University will endeavour to inform students.

Further Reading

Entry Requirements

  • A Level AAB or ABBB including a science based subject from the list below. Science A Levels must include a Pass in the practical element.
  • International Baccalaureate 33 points including one HL subject from preferred list at 6 and one other HL subject at 6
  • Scottish Advanced Highers AAB including a science based subject from the list below
  • Irish Leaving Certificate AAAABB including a science based subject from the list below
  • Access Course Pass the Access to HE Diploma with Distinction in 36 credits at Level 3 and Merit in 9 credits at Level including 12 Level 3 credits in either Mathematics, Science or Economics related subjects
  • BTEC DDD in an IT or science related subject
  • European Baccalaureate 80% overall including Maths

Entry Requirement

One A level or equivalent is required in the following subjects: Mathematics, Computing, Physics, Electronics and Economics.

General Studies and Critical Thinking are not accepted.

You are required to have English Language at a minimum of Grade C or Grade 4 or above and Mathematics at Grade B or Grade 5 or above at GCSE Level.

 

Students for whom English is a Foreign language

We welcome applications from students from all academic backgrounds. We require evidence of proficiency in English (including writing, speaking, listening and reading):

  • IELTS: 6.5 overall (minimum 6.0 in any component)

We also accept a number of other English language tests. Please click here to see our full list.

INTO University of East Anglia 

If you do not meet the academic and or English requirements for direct entry our partner, INTO University of East Anglia offers guaranteed progression on to this undergraduate degree upon successful completion of a preparation programme. Depending on your interests, and your qualifications you can take a variety of routes to this degree:

International Foundation in General Science FS1

International Foundation in Physical Sciences and Mathematics FS3

International Foundation in Mathematics with Actuarial Science FMA 

Interviews

The majority of candidates will not be called for an interview and a decision will be made via UCAS Track. However, for some students an interview will be requested. You may be called for an interview to help the School of Study, and you, understand if the course is the right choice for you.  The interview will cover topics such as your current studies, reasons for choosing the course and your personal interests and extra-curricular activities.  Where an interview is required the Admissions Service will contact you directly to arrange a convenient time.

Gap Year

We welcome applications from students who have already taken or intend to take a gap year.  We believe that a year between school and university can be of substantial benefit. You are advised to indicate your reason for wishing to defer entry and to contact admissions@uea.ac.uk directly to discuss this further.

Special Entry Requirements


 

Intakes

The School's annual intake is in September of each year.

  • A Level AAB or ABBB including a science based subject from the list below
  • International Baccalaureate 33 points including two HL subjects at 6, including one science based subject from the list below
  • Scottish Highers AAABB including a science based subject from the list below
  • Scottish Advanced Highers AAB including a science based subject from the list below
  • Irish Leaving Certificate AAAABB including a science based subject from the list below
  • Access Course Pass the Access to HE Diploma with Distinction in 36 credits at Level 3 and Merit in 9 credits at Level 3, including 12 Level 3 credits in either Mathematics, Science or Economics
  • BTEC DDD in an IT or science related subject
  • European Baccalaureate Overall 80% including 70% in a science based subject from the list below

Entry Requirement

 

Students for whom English is a Foreign language

We welcome applications from students from all academic backgrounds. We require evidence of proficiency in English (including writing, speaking, listening and reading):

  • IELTS (SELT): 6.0 overall (minimum 5.5 in any component)

We also accept a number of other English language tests. Please click here to see our full list.

INTO University of East Anglia 

If you do not meet the academic and or English requirements for direct entry our partner, INTO University of East Anglia offers guaranteed progression on to this undergraduate degree upon successful completion of a preparation programme. Depending on your interests, and your qualifications you can take a variety of routes to this degree:

International Foundation in General Science FS1

International Foundation in Physical Sciences and Mathematics FS3

International Foundation in Mathematics with Actuarial Science FMA 

Interviews

The majority of candidates will not be called for an interview. However, for some students an interview will be requested. These are normally quite informal and generally cover topics such as your current studies, reasons for choosing the course and your personal interests and extra-curricular activities.

Gap Year

We welcome applications from students who have already taken or intend to take a gap year, believing that a year between school and university can be of substantial benefit. You are advised to indicate your reason for wishing to defer entry and may wish to contact the appropriate Admissions Office directly to discuss this further.

Special Entry Requirements

At least one A level (or equivalent) from Mathematics, Physics, Computing, Electronics or Economics.

General Studies and Critical Thinking are not accepted.

Alternative Qualifications

We encourage you to apply if you have alternative qualifications equivalent to our stated entry requirement. Please contact us for further information.

GCSE Offer

Students are required to have GCSE Mathematics at grade B and English Language at grade C or above.

Fees and Funding

Undergraduate University Fees and Financial Support: Home and EU Students

Tuition Fees

Please see our webpage for further information on the current amount of tuition fees payable for Home and EU students and for details of the support available.

Scholarships and Bursaries

We are committed to ensuring that costs do not act as a barrier to those aspiring to come to a world leading university and have developed a funding package to reward those with excellent qualifications and assist those from lower income backgrounds. 

Home/EU - The University of East Anglia offers a range of Bursaries and Scholarships.  To check if you are eligible please visit 

______________________________________________________________________

Undergraduate University Fees and Financial Support: International Students

Tuition Fees

Please see our webpage for further information on the current amount of tuition fees payable for International Students.

Scholarships

We offer a range of Scholarships for International Students – please see our website for further information.

 

How to Apply

How to Apply

Applications need to be made via the Universities Colleges and Admissions Services (UCAS), using the UCAS Apply option.

UCAS Apply is a secure online application system that allows you to apply for full-time Undergraduate courses at universities and colleges in the United Kingdom. It is made up of different sections that you need to complete. Your application does not have to be completed all at once. The system allows you to leave a section partially completed so you can return to it later and add to or edit any information you have entered. Once your application is complete, it must be sent to UCAS so that they can process it and send it to your chosen universities and colleges.

The UCAS code name and number for the University of East Anglia is EANGL E14.

Further Information

If you would like to discuss your individual circumstances with the Admissions Office prior to applying please do contact us:

Undergraduate Admissions Office

Tel: +44 (0)1603 591515
Email: admissions@uea.ac.uk

Sign up for myUEA to...

  • request a copy of our latest prospectus and subject brochures
  • get access to exclusive information personalised to your interests
  • keep up to date with news and events at UEA.

International candidates are also actively encouraged to access the University's International webpages.

    Next Steps

    We already know that your university experience will be life-changing, wherever you decide to go. At UEA, we also want to make that experience brilliant, in every way. Explore these pages to see exactly how we do this…

    We can’t wait to hear from you. Just pop any questions about this course into the form below and our enquiries team will answer as soon as they can.

    Admissions enquiries:
    admissions@uea.ac.uk or
    telephone +44 (0)1603 591515

    This field is mandatory.
    This field is mandatory.
    This field is mandatory.
    This field is mandatory.
    This field is mandatory.