Curriculum

The programme of Computing Science (120 EC) usually takes two years to complete and consists of four parts:

Mandatory courses

8.5 EC

Primary electives

37.5 EC

Secondary electives

30 EC

Research part

44 EC


Mandatory courses

You will take one 7.5 EC course and two 0.5 EC courses. See the drop-down below for an overview.


Primary electives

In addition to a common basis (mandatory courses), you select one of three tracks and at least five 7.5 EC courses. 

Four of these courses must be selected from the list that is specific to your chosen track. This selection must include the core course of the track. The fifth course may be chosen from your track or from the list of courses of the other tracks. 

See the overview below to find an explanation of the track and the courses you can choose:

Algorithm design and analysis

To automate life, we build software to solve problems such as how to reach one place from another and how to schedule busses and trains. In essence, a piece of software is an algorithm to solve a problem. This track focuses on the design and analysis of advanced and scalable algorithms to solve complex problems.

If you follow the Algorithm Design and Analysis track, you must select its core course, Algorithms for decision support (INFOMADS).

Operations Research

Operations Research (OR) deals with the application of advanced analytical methods to help make better decisions. Applications occur in e.g. (public) transportation, logistics, energy networks, healthcare, computer networks and education. Being prescriptive analysis it is part of data science. In this track you learn advanced algorithms as well as data mining and machine learning techniques to solve real-life decision and optimization problems.

If you follow the Operations Research track, you must select its core course, Algorithms for decision support (INFOMADS).

Programming technology

Programming languages that we use have direct consequence on our productivity as well as the reliability of the software we produce. The provided abstraction matters a lot as well as the degree of the correctness control that a language imposes. This track focuses on advanced techniques related to programming languages, transformation and analysis of programs, and the verification of their correctness.

If you follow the Programming Technology track, you must select its core course, Concepts of programming language design  (INFOMCPD).

The track prepares you for a master's thesis in the research field related to the track.


Secondary electives

The secondary electives are meant to broaden your interests and skills. You can gain work experience in industry by performing an internship on a specific research theme, or, with a profile direct your career towards education, communication or management or simply take extra courses that match your interest.

What can you choose?

Extra courses

You can choose four 7.5 EC courses to give your programme a personal profile. For example:

  • The fifth or sixth course in your track
  • Any course from another track in the Computing Science programme
  • Any course from the Game and Media Technology primary electives
  • Any course from the Data Science primary electives
  • MSc courses from the Artificial Intelligence, Business Informatics, or Human Computer Interaction programme can be followed after approval of the programme coordinator. If the number of these courses exceeds 15 ECTS, they need to form a coherent set in the sense that they form a set of related courses from a specified area, for example a set of AI courses about Agent technology.
  • Relevant courses taken from the Mastermath programme, such as: Continuous optimization, Queueing theory, Parallel algorithms, Quantum Algorithms, Algorithms Beyond the Worst Case, Category Theory or Homotopy type theory. Other courses may also be possible, subject to approval
  • Any individual Experimentation project, or Capita Selecta
  • A course from another programme in the Faculty of Science (at most one, upon approval)
  • A course from another programme in Utrecht University (at most one more, upon approval)
  • Deficiency courses: courses from the bachelor's programme (in Dutch) which may be needed if you have non-standard background knowledge (at most two, upon approval)
  • Courses taken offered by the TU Eindhoven as part of the eduXchange, more specifically the courses:
    - Process Algebra, Automatic Theorem Proving, and Proving with Computer Assistance (for students in the Programming Technology track)
    - Algorithms for Geographic Data, Massively Parallel Algorithms, and Topological Data Analysis (for students in the Algorithm design and analysis track)
Profile

Instead of the 30 EC secondary electives part as outlined above, you can choose a profile.


Research part

In the Research part of the programme, you will combine the theoretical knowledge you obtained during courses with practical experimental skills leading to the Master’s thesis.

All info about Research Project

At the start of your study, you are required to compose a study plan from above components, specifying the courses you plan to take, and when. The plan has to be approved by the programme coordinator. Therefore you have to send the plan to the programme coordinator (coordinator.cosc@uu.nl) within one month after your enrolment in the programme.


Extra opportunities


Visual overview curriculum

COSC

Period 1Period 2Period 3Period 4
Year 1 (60,5 EC)- GSNS-INTRO (0,5 EC)
- Elective (7,5 EC)
- Elective (7,5 EC)
- Elective (7,5 EC)
- Elective (7,5 EC)
- F1-MHPSDL1 (0 EC) 
(prep for FI-MHPSDL2)
- INFOMSMC (7,5 EC)
- Elective (7,5 EC)
- F1-MHPSDL1 (0 EC) 
(prep for FI-MHPSDL2)
- Elective (7,5 EC)
- Elective (7,5 EC)
 
Year 2 (59,5 EC)- INFOMCCS4
- FI-MHPSDL2 (0,5 EC) 
(follow-up to F1-MHPSDL1)
- Elective (7,5 EC)
- Elective (7,5 EC)
- INFOMCCS4
- FI-MHPSDL2 (0,5 EC) 
(follow-up to F1-MHPSDL1)
- INFOMAI1 project proposal (14 EC)
- FI-MHPSDL2 (0,5 EC) 
(follow-up to F1-MHPSDL1)
- INFOMCOSC2
- INFOMAI2 Thesis (30 EC)
- FI-MHPSDL2 (0,5 EC) 
(follow-up to F1-MHPSDL1)
- INFOMCOSC2 Thesis (30 EC)

If you start the programme in February, your curriculum will be as follows:

COSC

Period 3Period 4Period 1Period 2
Year 1 (60,5 EC)- GSNS-INTRO (0,5 EC)
- INFOMSMC (7,5 EC)
- Elective (7,5 EC)
- Elective (7,5 EC)
- Elective (7,5 EC)
- F1-MHPSDL1 (0 EC) 
(prep for FI-MHPSDL2)
- Elective (7,5 EC)
- Elective (7,5 EC)
- F1-MHPSDL1 (0 EC) 
(prep for FI-MHPSDL2)
- Elective (7,5 EC)
- Elective (7,5 EC)
 
Year 2 (59,5 EC)- INFOMCCS4
- FI-MHPSDL2 (0,5 EC) 
(follow-up to F1-MHPSDL1)
- Elective (7,5 EC)
- Elective (7,5 EC)
- INFOMCCS4
- FI-MHPSDL2 (0,5 EC) 
(follow-up to F1-MHPSDL1)
- INFOMAI1 project proposal (14 EC)
- FI-MHPSDL2 (0,5 EC) 
(follow-up to F1-MHPSDL1)
- INFOMCOSC2
- INFOMAI2 Thesis (30 EC)
- FI-MHPSDL2 (0,5 EC) 
(follow-up to F1-MHPSDL1)
- INFOMCOSC2 Thesis (30 EC)