Personal tools

Courses and Specialist Areas

The MSc programmes offer a large number of courses, covering all aspects of Informatics. This page describes the format of courses, and regulations for choosing them. You also need to choose a Specialist Area, which will help you to choose a cohesive group of courses.

Specialist Areas

The 2014/15 specialist areas are listed below. The "DPT" rules for your programme of study (degree title) ultimately determine what course choices are allowed. We aim to ensure that course choices from each of the specialisms marked X in the table all work for your degree. It is often possible to adopt a specialism that isn't officially supported, but you would need to check your particular course choice against the DPT.

Degree Programme Title
Specialism AI CogSci CompSci Informatics
Analytical & Scientific Databases     X X
Bioinformatics, Systems & Synthetic Biology       X
Cognitive Science     X   X
Computer Systems, Software Engineering & High-Performance Computing     X X
Intelligent Robotics X     X
Knowledge Management, Representation & Reasoning X     X
Learning from Data X     X
Natural Language Processing X X   X
Neural Computation & Neuroinformatics   X   X
Theoretical Computer Science     X X

Some of the specialist areas have introductory videos to help you make your selection. All of them have their own page with a brief description and course recommendations. If you are unsure about which specialist area or courses to pick, you can discuss your selection with your Personal Tutor prior to completing the course registration form.


A standard lecture course normally consists of up to twenty one-hour lectures (two per week for one semester) together with associated coursework and background reading. A few courses may also have tutorials, labs, or a different structure. Most courses have associated assignments, mainly assessed during the course — you will be given assignments to complete by deadlines set by the course lecturer. The relative weightings of the assignments and examination in the final mark for each course are given in the detailed course descriptions. Most of the marks for a course are usually from exams, which may ask questions related to any aspect of that course.

Each course is assigned a level, MSc courses are all level 11. In the timetable you will be able to choose from a restricted list of level 9 and level 10 undergraduate courses. These are specifically designed for third year and fourth year undergraduates but may be of interest and value as part of an MSc programme. You are limited to a maximum of 30 credit points worth of these courses. If you want to take a level 9 course that is not listed anywhere in this document you should request permission from the Year Organiser. You do not have to take any level 9 or 10 courses.

The Informatics lecture courses are worth either 10 or 20 credit points (nominally equivalent to 100 or 200 hours' student effort). Most courses in Informatics are 10 credit points but some 20 point courses are available to MSc students. You can take a maximum of two 20 point courses, again you do not have to take any.

Choosing courses

Students are required to be registered for exactly 180 credit points at all times (no more and no less), divided as follows:

The IRR and IRP courses introduce you to the research activity specific to your specialist area. Informatics Research Review gives you an opportunity to survey literature on a particular topic within your specialist area. Informatics Research Proposal allows you to build towards your summer research project. These courses have a simple PASS/FAIL grade only.

The graded course requirement translates to eight standard 10-point lecture courses, usually four each Semester. You might take fewer than eight subjects if you take some 'double' 20-point courses. The main sources of guidance for selecting the graded courses are the specialist area groupings. You are strongly recommended to select at least 50 points of courses from your specialist area. Furthermore, all students must satisfy the programming requirement (see below).  Once these constraints are satisfied, you are free to add further courses of your choice. You might take external level 9/10/11 courses (depending on your other choices and the rules described above) from other Schools, as long as the organiser of that course is happy to accept you on their course.

If your interests span specialist areas, please talk to your Personal Tutor to ensure that your course selection makes sense. Your choices will usually be approved if they satisfy the "DPT" regulations for your degree, and go well enough together to prepare you for a project and your future career. If your choices do not satisfy the DPT, you might consider changing MSc programme.

It can be useful to consider the maths and programming required for each course, and any background requirements listed on the webpages for a specialism's core courses. Contact the relevant lecturer if you have course-specific questions.

Students are responsible for making sure that their course selection is compatible with the published course timetable, many of the School's level 11 courses are scheduled together, meaning you can't fully participate in two courses that occupy the same timetable slot. We can do very little to avoid these clashes, but have made every effort to keep courses from the same specialist area apart.  Please let us know if this turns out not to be the case, helping us avoid problematic clashes for future years.

Finally, course survey results and introductory videos may help you make your choices.

 Deadlines and changes

You may change course choices after the initial selection but there are deadlines. These are:

  • Semester 1 courses - initial selection by week 1, final choices (i.e. no changes) by Friday of week 2, Semester 1.
  • Semester 2 courses - initial selection by week 1, final choices by Friday of week 2, Semester 2.
Please note, this final deadline in Semester 2 cannot be moved. All course choices after that date are final.

Entrepreneurship Course

The Innovation-driven Entrepreneurship course run by the Business School is relevant to all MSc Specialist Areas, and has been developed with Informatics students in mind. The course is particularly relevant for students who wish to start their own business or have a general interest in entrepreneurship and business. Unusually this course is being delivered online. Full information will be available in a University system called Learn after signing up. Prospective students can find out more from an external page.

Programming Requirement

All MSc students should be able to program by the time they leave the School of Informatics. This requirement will be normally fulfilled by taking Introduction to Java Programming in Semester 1, which covers Java, unless you are exempt from it (see exemptions below). Several specialisms have additional or different programming requirements:
  • Students taking the Natural Language Processing specialist area are required to register for the PPLS Computer Programming for Speech and Language Processing course (Java, though recommended, is not required).
  • Students taking the Knowledge Management, Representation & Reasoning specialist area should be able to program in Prolog (Java, though recommended, is not required).
  • Those registered for the MSc in Cognitive Science may substitute Prolog for Java if they wish (i.e., either Prolog OR Java is sufficient).

For those students required to (or wishing to) learn Prolog, this is taught in Logic Programing which is also taught in Semester 1.

Beyond these basic requirements, your choice of programming course(s) will depend on your prior experience, the other courses you wish to take (e.g. Prolog is required for some other courses, particularly in the areas of language, cognitive modelling and reasoning), and the type of project you expect to do in the second half of the course (some will require a specific language).

Exemptions: Students who already satisfy the above requirements (at least to the extent that they would have no problem doing their MSc project in the relevant language) may be excused from taking one or more programming courses. Some students may enter the MSc already familiar with what we will consider as Java-equivalent (other object-oriented languages such as C++) or Prolog-equivalent (other AI-specific languages such as Lisp) and these can also be grounds for exemption from one or both language requirements. 

If you wish to claim exemption from the programming requirement, obtain approval from your Personal Tutor. You should describe your past experience which you believe qualifies you for an exemption.