Computer Science MSc

An overview of the degree and advice on selecting your courses.

Overview of the degree

Edinburgh's expertise in core computer science spans the range from computer architecture through theoretical computer science. This MSc offers you the opportunity to obtain specialist knowledge in the design, analysis, implementation, and use of computer systems. You can also pursue a more theoretical direction by choosing courses in areas such as algorithms, programming languages, cryptography, or quantum computation.

Full-time students on this degree must be registered for exactly 180 credit points at all times.  Part-time students have the same course requirements, but spread out over two or three years.

Compulsory courses

The following courses are compulsory:

  • Informatics Research Review (IRR) — 10 credits of coursework in Semester 1.
  • Informatics Project Proposal (IPP) — 10 credits of coursework in Semester 2.
  • MSc Dissertation — 60 credits in the Summer.

Information about IRR, IPP, and Dissertation

Optional courses

In addition, you must register for another 100 credits of optional taught courses, usually split evenly across two semesters, with at least 60 credits chosen from courses in Computer Science Foundations, Systems, and Software. The rest may be chosen from other Informatics and outside courses.

This degree offers considerable flexibility in your taught course choices. Specific course options and requirements are listed in your Degree Programme Table, and are built into the Path programme builder, which you can use to help you put together a set of courses that works for you.

Degree Programme Tables 

Path programme builder

Course topics and advice on choosing courses

Course topics are groups of related courses to help you navigate our course options. The topics most relevant to this degree are described below.

Programming courses

Before finalizing your other courses, please check the advice on the Programming Courses topic page to see whether you would benefit from taking one of these courses to improve your programming skills.

Programming Courses

Computer Science Foundations, Systems and Software course topics

We recommend that you pick at least 60 credits of your courses from one or two of the topics listed below, which all relate to CS Foundations, Systems and Software. This will allow you to get some depth in at least one topic, as well as some breadth. If you focus on just one topic from this list, it's still a good idea to use your remaining credits to take a course or two from another topic outside these core CS areas. This will give you some flexibility when it comes to project selection time, since sometimes projects in one particular topic may be oversubscribed. Your Student Adviser/Cohort Lead can also help advise you about your selection of courses if you're unsure.

Please consider the prerequisites for each course before signing up. Not all students will be prepared for all available courses, but you should be able to find a selection that works for you. Courses in some topics tend to require more mathematics, while others may require more programming or other skills. The individual topic pages often provide some general guidance about this, but check the course descriptors if you're unsure.

For more information about the courses in each topic, follow the links below.

Computer Systems & High-Performance Computing

Cyber Security & Privacy

Databases and Data Management

Quantum Informatics

Software Engineering

Theoretical Computer Science

 

Other topics

You may also choose from other courses in Informatics or other Schools. Most courses taken by our students (including some popular outside courses) are listed in the Topic pages. The complete list of courses offered by the School is in the Sortable Course List.

Full list of Course Topics ( information about most MSc courses, according to topic)

Informatics Sortable Course List ( a compact list of all courses offered this year, sortable by semester, level, credits, etc.)