Computer Science modules available to students from other UCL Departments

The information on this page applies to UCL students studying undergraduate programmes outside the Computer Science department, including non-Computer Science affiliate students.

A selection of our modules are offered to students from outside the CS department as optional modules or electives. Modules available to students on various programmes are as follows:

IEP Engineering students on the Intelligent Systems minor select the following modules as electives:


IEP Engineering students on the Programming minor select the following modules as electives:
MEng Electrical Engineering with Computer Science students are permitted to select the following modules as options as per their programme diet:
BASc Arts and Sciences students are permitted to select the following modules as options:
Students from other departments (including affiliate students based in other UCL departments):

Module Selection

The modules that make up a programme are either core, optional or elective, which reflects whether they must be taken or can optionally be taken. The programme’s curriculum (also called a programme diet) will prescribe in what combinations modules can be taken, any restrictions on doing so, and how much credit can and must be taken.

Core/compulsory modules are fundamental to the programme’s curriculum and students must take these. You will be automatically allocated a place on any core modules for your programme and will not need to select these during the module selection process. There will be no timetable clashes between your programme’s core modules.

Optional modules are strongly related to the programme and students can choose which of these they wish to take, usually from within specific groups (for example, a student may be asked to choose two optional modules from one group and three from another, etc.) Places of optional modules are strictly limited (due to spatial, resource and timetable constraints) and will be allocated on a first come first serve basis. Some optional modules have pre-requisites which students will need to meet in order to be eligible for a place.

Elective modules are not programme specific, but allow students the opportunity to explore their interests more widely. Students are usually restricted to taking one or two elective modules. There is no guarantee of being accepted onto an elective module. These modules are core or optional on other programme diets, consequently students on these programmes will be given priority. Any remaining places will then be allocated on a first come first served basis. Some elective modules have pre-requisites which students will need to meet in order to be eligible for a place.

Please note: timetable clashes between optional and elective modules from different specialisations are inevitable and this can result in limiting the available choices. It is the student’s responsibility to select modules that do not clash in order to meet UCLs minimum attendance requirements. Please speak to your Programme Director and/ or Programme Administrator if you have any queries.

Non-Computer Science students should note that priority on COMP* modules will always be given to Computer Science students in the first instance.