If it is possible or even necessary to directly combine lectures with the practical application of the acquired knowledge, this offers the opportunity to organise courses flexibly. This constellation also enables the transfer of theoretical knowledge into application skills.
The concept is that at the beginning of the basic course, short lecture phases are followed by exercises. This allows the complexity to be gradually increased in comparatively small steps without overtaxing the students. It is precisely through practical comprehension and trial and error that students recognise possible stumbling blocks, understand the logic of programming and encounter questions that they would not have been able to ask on the basis of theoretical knowledge.
Parallel to the lecture/exercise, after the first exercises (approx. 7 weeks), topics are provided and made available for selection, which serve as the starting point for a final paper or examination. This marks the beginning of a phase of project-orientated learning in which the topic is to be worked on in self-study. The work is done individually.
The advanced course follows a similar concept of combining theory and practical application. However, after half a semester, the realisation of the task completely replaces the theory/exercise combination. Appointments are then available for consultation and interim presentations. These are used to compare requirements with those of the lecturer and to exchange ideas with students.
Work is carried out in small groups of two to three students. The advanced course requires the development of executable and demonstratable software.
After completion of the software development, the projects are presented in the last two sessions of the course. In addition to the software, this presentation and written documentation form the basis of the assessment.