INFORMATION FOR STUDENTS OF COMPUTER SCIENCE, SECOND-CYCLE PROGRAMME
Introduction
You need to indicate your preferred choice of diploma seminars when recruiting for a second-cycle degree programme in the system of Internet Recruitment of Candidates (IRK). Assignment to the seminar is based on ranking lists.
From the academic year 2025/26, we offer a Master's degree in computer science in one of 6 specializations. You will find detailed information about them in the course schedule. The choice of specialization depends on the assignment to the Master seminar.
You will need to take the following courses in all specializations:
- obligatory courses: Professional Skills in Computer Science and Research Project,
- elective courses for Computer Science (36 ECTS in total)
and
- general university courses (6 ECTS in total).
In addition, the following courses are required for each specialization:
- 2 obligatory courses for your specialization (to be completed in the first year of study)
- a course from the group of fundamental/basic system courses for 9 ECTS (specializations: Algorithmics, Cryptography, Automata, logic and complexity and Algorithmic economics) or a course from the group of fundamental/basic theoretical courses for 6 ECTS (specializations: Information Systems and Programming Languages),
- elective courses for your specialization (18 ECTS).
Obligatory and elective courses assigned to a given specialization are available to other specializations as ordinary/standard elective courses.
This is how it looks in USOSWeb:
Since fundamental system courses, fundamental theoretical courses and obligatory courses for one specialization may at the same time be elective courses for other specializations, the USOS ECTS credit requirements for elective courses (1000-INF-OBIER ECTS credits) are, in the first year of studies, the sum of the credits for 3 standard elective courses of 6 ECTS each, 2 obligatory courses for the specialization and the required fundamental course (‘system or theoretical’ depending on the specialization taken).
Registration for classes
You will be registered for obligatory courses of the winter semester of your first year of study by the Student office. You can choose your course class/lab group during the RDG round (direct registration for groups), the groups exchange system or by contacting the course coordinator. When group allocation is announced and if you are not satisfied with it, you can take part in the Group Exchange or you can ask the course coordinator for a change of group (during the Coordinated Groups Exchange round). The deadlines for the respective registration rounds can be found in our faculty's USOSweb
You will need to register for all courses on your own from the second semester of study onwards. The general section of the student guide contains detailed registration information and course group descriptions.
Elective courses
For students who started their studies in 2024/25 or earlier:
The course schedule for second-cycle studies in computer science requires completing elective courses for a total of 54 ECTS, which most often corresponds to 9 courses of 6 ECTS each: and 4 of these need to be completed in the first year and 5 in the second year of study (IMPORTANT: some courses offered by the faculty, however, may have a different number of ECTS credits).
In addition, at least one elective course from concurrent and distributed programming group needs to be completed in the first year of study (therefore a total of 60 ECTS credits are required for elective courses in the USOSWeb).
Due to a change in the programme of study for the Bachelor of Science in Computer Science, some of the previously obligatory courses will, starting from the academic year 2024/25, become elective courses with new codes: Numerical Methods (1000-2M24MNU), Program Semantics and Verification (1000-2M24SWP), Security of computer systems (now with a new name: Introduction to Cybersecurity and Cryptography - 1000-2M24WCK) and Functional Programming (1000-2M24PFU - which is the equivalent of the former stream in Introduction to fucnctional programming). Students who have taken these courses as obligatory courses during their first cycle studies are asked to choose other elective courses.
From the academic year 2025/26:
According to the course schedule, you need to collect 18 ECTS for elective courses for your specialization (in the second year of study) and 18 ECTS for ordinary/standard elective courses in the first and 18 ECTS in the second year of study (for a total of 36 ECTS).
Information for all academic years:
In order to make the choice of courses easier, Lectures on Lectures are organised at the end of the academic year, giving a brief introduction to the courses offered in the coming year.
You may also obtain credits for elective courses, by completing the courses offered for ML, by completing up to 2 courses from the list of courses for mathematics ('obligatory', facultative or 'monographic courses') except:
- Courses for 1st year Mathematics,
- Mathematical analysis II.1(1000-113bAM3a)
- Mathematical analysis II.2 (1000-114bAM4a)
- Computational Mathematics (1000-114bMOBa)
- Discrete Mathematics (1000-134MAD)
- Databases (1000-134BAD)
- Object-oriented programming and C++ (1000-135POC)
Diploma examination process
In order to complete the first year of the master seminar, you need to have your master thesis topic approved. In order to complete the 2nd year of the seminar, you need to submit your thesis to the APD (you do not need to print it). You can only take the diploma examination once you have ended studies (i.e. you have completed all the courses required by your study plan). However, you may start arranging the examination date even before you have completed all your credits in Usos.
The master diploma examination is oral. The exam consists of a presentation of the master thesis (up to 15 minutes) and answers to 3 questions directly related to the master thesis topic.