Structure of the Bachelor's program

The Bachelor's program in Computer Science has a standard period of study of six semesters and is divided into two years of basic studies and one year of specialized studies.

The basic study period serves to impart the fundamental knowledge and techniques required for the subject and to familiarize students with the tools. In order to ensure that all students have a uniform basic knowledge at the end of the basic studies, this part of the course consists mainly of compulsory modules.

The specialized studies, on the other hand, deepen this knowledge, prepare students for the final bachelor's thesis and qualify them for subsequent professional activities or for further master's studies. In the specialized studies - which are characterized by a high degree of flexibility - students expand their basic knowledge and specialize in an area of computer science that particularly corresponds to their inclinations and interests and prepares them for later professional employment. At the same time, a necessary breadth of course content is ensured. Potential supervisors for the final Bachelor thesis are happy to help students select relevant modules from the wide range on offer. Independent work, such as literature research, writing scientific texts and implementing software projects is practiced in internships and seminars.

Topics in the Bachelor's program are:

  • Fundamentals of computer science: programming skills in small programs and larger software systems, concepts of operating systems with integrated prototype development, replacement systems, simple algorithms and data structures.
  • Fundamentals of Mathematics: concepts and proofs in analysis, algebra, analytic geometry, logic and combinatorics.
  • Theoretical computer science: decidability of problems, solvability and difficulty of problems, compiler construction, programming language concepts, efficient algorithms.
  • Practical computer science: working techniques, design of databases and their internal workings, computer graphics, communication protocols and standards for web applications and networks, modeling of large software, verification and data analysis.
  • Applied computer science: communication between software components, processor architecture, circuit design, internal concepts for operating systems, distributed and parallel systems, wireless and mobile communication systems
  • Practical courses (programming, digital and software internship) as well as proseminars are used to practice the acquired knowledge and to train soft skills such as teamwork and communication skills as well as presentation techniques.

Application subject: Through training in an application subject, the student becomes acquainted with basic tasks and procedures of an application area of computer science. The goal is to study the possibilities of computer science to solve scientific problems of other fields. He also learns how to cooperate with representatives of other disciplines and deepens his understanding of other fields of knowledge.Possible application subjects are mathematics, physics, mechanical/electrical engineering, economics and civil engineering.