Rules & Regulations
This module is a compulsory elective module in the bachelor's programme of computer science and various other subjects at Saarland University. The only requirement is the successful completion of the module Programming 1.
Good to Know
In the following, you will learn about
- the rules for passing this module and the rules determining your final grade,
- essential information on the structure and organization of the module, and
- various other useful information.
Tutorials and Concurrency Café
Continual support will be provided by our team of tutors. They will assist you in consolidating the relevant topics during tutorials and Concurrency Café (see main page). In addition, there is the option to ask questions online in the forum. We offer tutorial sheets and exercises to allow you to deepen your skills.Making use of these offers is entirely voluntary. Tutorials and Concurrency Café will take place as in-person events.
The module consists of three module elements:
- The module element 𝓣 (Theory) comprises the first half of our materials and the related tutorials. It covers the theoretical aspects.
- The module element 𝓐 (Application) comprises the second half of our materials and the related tutorials. It covers the application of the theoretical aspects.
- The module element 𝓟 (Project) covers the practical aspects, the colloquia, as well as the final practical project.
The module elements 𝓣 and 𝓐 each consist of four units (Module element 𝓣: A, B, C, D, Module element 𝓐: E, F, G, H).
Structure of Module Elements 𝓣 and 𝓐
The module elements 𝓣 and 𝓐 will each be concluded by an in-person examination in the form of a written exam. The exams will take 60 min each. The date for exam 𝓣 is 22.05.2023 between 14:00 and 16:00. The exam 𝓐 will be on 01.08.2023 between 10:00 and 12:00. For registered participants, there is no further admission requirement for these two examinations. Registration in LSF is needed, however.
For each module element, we offer an in-person re-examination in early fall 2023. Re-examinations for modules 𝓣 and 𝓐 might be scheduled on the same day. If you participate in two examinations for module element 𝓣 or two examinations for module element 𝓐, they are counted as two attempts in accordance with the examination regulations.
Structure of Module Element 𝓟
The practical activities of the module element 𝓟 span the entire module. They are concluded by the successful completion of a practical programming project towards the end of the term. Admission to this project comes with the admission requirement of successfully passing at least 7 of the 8 colloquia.
There will be a total of 8 colloquia spread over the teaching term.
For these colloquia, you will be assigned to a group of approximately 3-4 students. For every colloquium, you will receive an exercise sheet with explicitly-marked assignments and additional training exercises. In general, you are expected to prepare for the colloquium (in your group) by doing all assignments and bringing your solutions and notes to the colloquium. The assignments may come with additional rules, including, but not limited to, the requirement to work on them individually and to hand in the solution in writing prior to the colloquium. Those additional rules will be clearly stated as part of the respective assignment. In addition, you are expected to prepare for questions relating to the materials presented in the corresponding lectures, e.g., by working on the training exercises.
There are two necessary and together sufficient criteria for passing a colloquium:
- You need to demonstrate your individual, practical ability to reflect on the contents at hand, as spelled out in the preceding lectures, and through the specific assignments communicated to you beforehand.
- You need to fulfill the formal requirements stated on the individual assignments. Note that these may include the requirement to achieve a certain number of points on specific exercises to be submitted in writing.
Practical Programming Project
At the end of module element 𝓟, you will be divided into teams for the purpose of exercising the implementation of a programming problem. For the actual programming, you will have about three weeks. The programming project can be graded with either „passed“ or „not passed“. For passing the project, your solution will need to satisfy a set of requirements spelled out in the project description. This means in particular that the project passes a set of public, but also a set of secret tests, and, importantly, that it is free of concurrency bugs. If your solution has the quality to be graded with „passed“, you will have to defend and explain it in a face-to-face defense. Further details follow with the kick-off of the project.
Passing the Module
To pass the module in the summer term 2023, all module elements have to be passed in the summer term 2023.
- The module element 𝓣 is passed if you passed the exam T or the respective re-exam.
- The module element 𝓐 is passed if you passed the exam A or the respective re-exam.
- The module element 𝓟 is passed if you pass the defense of the programming project.
Please note that all module elements must be successfully completed within the summer term 2023. It is not possible to take into account work performed in previous editions of this module.
You will receive a bonus (in the order of one step in the grade scheme) on your final grade if you submit an excellent project. Details will be announced with the publication of the project.
Furthermore, we may offer a few bonus assignments throughout the term. They each come with a deadline. Handing in solutions is entirely voluntary. Solutions will be marked with a point score. These points will be added to the examination results prior to computing the final grade, and as such serve as a bonus for the committed students.
Your final grade will be determined based on the accumulated point results of the two passed exams plus potential bonus points.
Plagiarism will be punished by exclusion from the lecture and reporting to the examination board. We employ automated plagiarism checking.