The study information here is based on the Examination Regulations 2022 (PO 2022).

All those who started their studies before WS 22/23 have the opportunity to switch to the new PO. The PO 2018 will remain valid until 30.09.2026. The study information on the structure and procedure of the old examination regulations (PO 2018) can be found here .

The current PO 2022 and the older PO 2018 can be found on the POs and module handbooks page of the Study Center.

Program Structure

The bachelor's degree is the first professional qualification and qualifies students for a subsequent master's degree. Therefore, it has both the goal to prepare for a profession as a computer scientist and to pave the way to a master's degree.

Computer science is diverse and constantly evolving - we cannot prepare for specific professions because we do not know what professions will exist in five years. Therefore, the bachelor's program in computer science at RWTH aims to provide broad fundamentals in computer science (and mathematics) that you will need later in most professions. This includes basic programming skills - prior knowledge of programming languages is therefore not mandatory for the computer science program. However, a solid knowledge of English is essential and can be demonstrated, for example, by passing the Abitur examination.

In addition, skills in abstraction, model building, problem analysis and transferability are taught in order to be able to apply the knowledge acquired to new problems in the profession later on.

Also, some specialization subjects can be taken according to one's own interests. Computer science is interdisciplinary - since professions for computer scientists are usually connected to a specific application domain, the specialization area is designed to be interdisciplinary so that you can see how computer science is applied in other fields while you are still studying. To facilitate entry into a later master's program, most specialization subjects have a strong research orientation.

Soft skills play an essential role both in a later profession and in a master's degree or academic career. Therefore, teamwork as well as scientific writing and presentation are also trained in the bachelor's program.

All these knowledge or skills are taught within the framework of so-called modules. A module is a self-contained teaching unit and can be a combination of lecture, exercise, question time and small group exercises, but also an internship or a seminar. Most modules are concluded by an examination - usually a written exam.

Passing a module gives so-called credits. The ECTS (European Credit Transfer System or in short Credit Points CP) point system describes the average workload of a student: one CP corresponds to an average workload of 30 hours. Thus, for a module of 3 CPs, one can expect an approximate workload of 90 hours. A bachelor's degree program comprises a total of 180 CP and is made up of the individual modules with the corresponding CPs that must be taken and passed for successful completion. 

The academic year is divided into the winter semester (WiSe), which begins in October, and the summer semester (SoSe), which begins in April. Each semester consists of an approximately 4-month lecture period, in which the events such as lectures, seminars, etc. take place, and the subsequent lecture-free period, in which, as a rule, the exams on the previously taken modules are taken.

Study plan

The following course of study is a good example of how the individual courses can be taken. The schedule is not binding, but a recommendation. However, as many modules build on the knowledge of other modules or are mandatory prerequisites, it is advisable to follow the recommended schedule, especially in the first semesters. However, it may also be advisable to take some modules in a different semester, as places are limited, for example. More information on the individual modules and their prerequisites can be found in the following section. This applies in particular to semester-independent modules.

Note

  • Some courses can only be taken if previous work has already been done.
  • For some courses, such as the practical course in system programming, places are limited. It is sometimes advisable to take the course in a different semester.
1st Semester (WS)
  • Introduction to Programming
  • Technical Computer Science
  • Discrete Structures
  • Analysis für Informatiker
  • Mentoring
2. Semester (SS)
  • Data Structures and Algorithms
  • Operating Systems and System Software
  • Formale Systeme, Automaten, Prozesse
  • Lineare Algebra für Informatiker
  • Proseminar
  • Mentoring (falls nicht im 1. Semester belegt)
3. Semester (WS)
  • Introduction to Software Engineering
  • Data Communication
  • Berechenbarkeit und Komplexität
  • Praktikum Systemprogrammierung (PSP)
  • Modul(e) aus dem Wahlpflicht-/Anwendungsbereich
  • Proseminar (falls nicht im 2. Semester belegt)
4. Semester (SS)
  • Databases and Information Systems
  • Mathematical Logic
  • Introduction to Applied Stochastics
  • Modul(e) aus dem Wahlpflicht-/Anwendungsbereich
  • Software Project lab
  • Praktikum Systemprogrammierung (PSP, falls nicht im 3. Semester belegt)
5. Semester
  • Elements of ML/DS
  • IT-Sicherheit
  • Seminar
  • Modul(e) aus dem Wahlpflicht-/Anwendungsbereich
  • Software-Projektpraktikum (falls nicht im 4. Semester belegt)
6. Semester (SS)
  • Bachelor thesis
  • Modul(e) aus dem Wahlpflicht-/Anwendungsbereich
  • Seminar (falls nicht im 5. Semester belegt)

Below you will find an overview of all the modules available for the Bachelor's degree, broken down by subject area, where you can find information on the credits, the content of the module and the requirements.

Note

Semester-independent modules (“Other courses” as well as Praktikum Systemprogrammierung (PSP)) can be taken during both the summer and the winter semester. So if there are too many applications for the PSP in the winter semester, you can also take the module in the summer and alternatively complete other modules in the winter semester.

Practical Computer Science

 

Lecture + Exercise
  • Content: Die Vorlesung vermittelt grundlegende und fortgeschrittene Konzepte der imperativen, objektorientierten, funktionalen und logischen Programmierung. Studierende lernen wesentliche Programmiertechniken, Speicherverwaltung, Datenstrukturen und verschiedene Semantiken von Variablen, Referenzen und Parametern. Zudem werden Programmierparadigmen wie Modularisierung, Polymorphie und Rekursion behandelt. Abgerundet wird die Vorlesung durch das Erlernen von Methoden zur Programmverifikation und dem Entwickeln sowie Testen kleinerer Programme in verschiedenen Programmiersprachen.
  • Voraussetzungen: Keine.
  • Empfohlenes Semester: 1. Semester (WS)

Link to RWTHonline

Lecture + Exercise
  • Content: Das Modul vermittelt grundlegende Entwurfsmethoden und Techniken zur Analyse von Algorithmen, einschließlich der Untersuchung der Laufzeit- und Speicherkomplexität. Studierende lernen, Algorithmen für Standardprobleme zu entwickeln, deren Effizienz zu bewerten und geeignete Datenstrukturen auszuwählen. Im Detail werden Entwurfsmethoden wie Greedy-Algorithmen, Divide-and-Conquer, dynamische Programmierung und heuristische Ansätze behandelt. Zudem werden fortgeschrittene Algorithmen für Sortierprobleme, Mengenoperationen und Graphen, sowie grundlegende Konzepte der algorithmischen Geometrie eingeführt.
  • Voraussetzungen (empfohlen): Programmierung.
  • Empfohlenes Semester: 2. Semester (SS)

Link to RWTHonline

Lecture + Exercise
  • Content: Das Modul vermittelt grundlegende Konzepte der Softwareentwicklung, einschließlich verschiedener Vorgehensmodelle, Anforderungsanalyse, Architekturdesign und Qualitätssicherung. Studierende lernen, Softwareentwicklungsprozesse zu charakterisieren, Projekte zu strukturieren und geeignete Werkzeuge wie UML und MontiWeb anzuwenden. Schwerpunkte sind agile Methoden, Softwarearchitekturen, Entwurfsmuster sowie Techniken zur Qualitätssicherung und Tests. Das Modul befähigt Studierende, in Teams systematisch Software für kleinere bis mittlere Projekte zu entwickeln und komplexere Aufgaben unter Berücksichtigung von Qualitätskriterien zu strukturieren.
  • Voraussetzungen (empfohlen): Programmierung, Einführung in die Technische Informatik, Datenstrukturen und Algorithmen.
  • Empfohlenes Semester: 3. Semester (WS)

Link to RWTHonline

Lecture + Exercise
  • Content: Das Modul vermittelt grundlegende Konzepte des Entwurfs und der Implementierung betrieblicher Informationssysteme, mit einem Schwerpunkt auf relationalen Datenbanken und deren Anfragesprachen (SQL). Studierende lernen, relationale Datenbanken zu entwerfen, von der konzeptuellen Modellierung über die Normalisierung bis hin zur Implementierung und Verwaltung von Datenbanken, einschließlich Transaktionsmanagement und Anfrageverarbeitung. Darüber hinaus werden auch alternative Datenmodelle wie XML und RDF behandelt sowie grundlegende Prinzipien des Data Engineering eingeführt. Praktische Übungen ergänzen das Wissen durch Anwendungen in SQL, XML und ERP-Systemen.
  • Voraussetzungen: Bestehen des Moduls Mentoring. Außerdem empfohlen: Grundlegende Kenntnisse zu Datenstrukturen, Algorithmen und Grundlagen der Logik.
  • Empfohlenes Semester: 4. Semester (SS)

Link to RWTHonline

Lecture + Exercise
  • Content: Das Modul bietet eine Einführung in die Künstliche Intelligenz und behandelt zentrale Themen aus den Bereichen Data Science und Machine Learning, einschließlich der mathematischen Grundlagen. Studierende lernen, Standardverfahren wie lineare und nichtlineare Modelle (z. B. Regression, Support Vector Machines), unüberwachtes Lernen (z. B. Clustering, PCA) sowie grundlegende Konzepte neuronaler Netze und deren Training kennen. Neben den Algorithmen werden auch die mathematischen Grundlagen wie Wahrscheinlichkeitsrechnung, Statistik und Optimierung behandelt. Das Modul befähigt die Studierenden, Machine-Learning-Probleme zu abstrahieren, geeignete Modelle auszuwählen und deren Qualität zu bewerten.
  • Voraussetzungen: None.
  • Empfohlenes Semester: 5. Semester (WS)

Link to RWTHonline

Technical Computer Science
Lecture + Exercise
  • Content: Das Modul vermittelt grundlegende Kenntnisse über die physikalischen Prinzipien und Technologien, die der Funktionsweise von elektronischen Rechnern zugrunde liegen. Studierende lernen den Aufbau und die Funktionsweise von Digitalrechnern, einschließlich der mathematischen Grundlagen für ihre Beschreibung und den Entwurf. Wichtige Themen umfassen Halbleiterbauelemente, programmierbare Logik (FPGA), Hardwareentwurf mit VHDL, analoge Schaltungen und Mikrocontroller. Die Studierenden erwerben Fähigkeiten im Umgang mit elektronischen Bauelementen und Schaltungen sowie in der Anwendung von Hardwareentwurfsfähigkeiten. Sie sind zudem in der Lage, mit Ingenieuren über technische Konzepte zu kommunizieren.
  • Voraussetzungen: None.
  • Empfohlenes Semester: 1. Semester (WS) – Bitte beachte, dass das Bestehen dieser Veranstaltung verpflichtend für die Teilnahme am Praktikum Systemprogrammierung ist.

Link to RWTHonline

Lecture + Exercise
  • Content: Das Modul vermittelt grundlegende Konzepte des Aufbaus und der Funktionsweise von Betriebssystemen, insbesondere des Zusammenspiels von Hardware und Software. Studierende lernen, mit Shell-Utilities zu arbeiten, Betriebssystemfunktionen zu nutzen und diese in der Programmiersprache C zu implementieren. Wichtige Themen sind Prozessverwaltung, Speicherverwaltung, Synchronisation, CPU-Scheduling sowie die Verwaltung von Dateisystemen und I/O-Systemen. Zudem wird die Einführung in verteilte Systeme und Socket-Programmierung behandelt, um die Studierenden für die praktische Anwendung und Verwaltung von Betriebssystemen im beruflichen Umfeld zu befähigen.
  • Voraussetzungen (empfohlen): Einführung in die Technische Informatik.
  • Empfohlenes Semester: 2. Semester (SS)

Link to RWTHonline

Hands-on Lab
  • Content: Das Praktikum Systemprogrammierung vermittelt zentrale Themen der hardwarenahen Systemprogrammierung. Im Verlauf dieses Praktikums implementieren die Studierenden ein Betriebssystem in der Programmiersprache C für einen Mikrocontroller. Außerdem werden elektronische Grundlagen vermittelt, in die elementare Signalverarbeitung eingeführt, sowie auf typische Fragestellungen der hardwarenahen Programmerstellung wie Interrupts, limitierte Hardware oder integrierte Funktionalität des Mikrocontrollers eingegangen.
  • Voraussetzungen (verpflichtend): Bestehen des Moduls Einführung in die Technische Informatik.
  • Empfohlenes Semester: 3. oder 4. Semester (WS/SS). Bitte beachte, dass das PSP in beiden Semestern angeboten wird, nicht nur im Wintersemester!

Link to RWTHonline

Lecture + Exercise
  • Content: Das Modul vermittelt grundlegende Kenntnisse über den Aufbau und die Funktionsweise von Kommunikationsprotokollen, insbesondere in lokalen Netzwerken und dem Internet. Studierende lernen die gängigen Internet-Protokolle wie IP, TCP/UDP und Routing sowie Sicherheitsaspekte wie Angriffe und Datenschutzprobleme. Weitere Themen umfassen Client/Server- und Peer-to-Peer-Systeme, Netzkomponenten wie Firewalls, sowie die Grundlagen der Kryptographie und sichere Internet-Protokolle. Studierende erwerben die Fähigkeit, lokale Netzwerke zu entwerfen, Internet-Protokolle effektiv zu nutzen und einfache Anwendungen zu implementieren, die über diese Protokolle kommunizieren. Sie sind außerdem in der Lage, Sicherheitsprobleme im Netzwerk zu erkennen und einzuschätzen.
  • Voraussetzungen (empfohlen): Betriebssysteme und Systemsoftware.
  • Empfohlenes Semester: 3. Semester (WS)

Link to RWTHonline

Lecture + Exercise
  • Content: Das Modul vermittelt grundlegende Konzepte und Methoden zur IT-Sicherheit, insbesondere zum Schutz der Vertraulichkeit, Integrität und Verfügbarkeit von Daten und Systemen. Studierende lernen die Ursachen und Arten von Sicherheitsproblemen in modernen vernetzten Systemen sowie praxisrelevante kryptographische Verfahren wie symmetrische und asymmetrische Verschlüsselung, Integritätsschutz und digitale Signaturen. Weitere Themen umfassen Authentifizierungsprotokolle, Netzwerksicherheit mit Firewalls, Angriffe auf die Verfügbarkeit und Systeme sowie Schutzmaßnahmen gegen Schadsoftware. Die Studierenden erwerben die Fähigkeit, Schutzmechanismen auf algorithmischer und Protokollebene zu verstehen und auf neue Sicherheitsprobleme anzuwenden.
  • Voraussetzungen (empfohlen): Diskrete Strukturen, Datenkommunikation, Betriebssysteme und Systemsoftware.
  • Empfohlenes Semester: 5. Semester (WS)

Link to RWTHonline

Theoretical Computer Science
Lecture + Exercise
  • Content: Das Modul vermittelt grundlegende Konzepte der formalen Sprachen und Automaten, einschließlich endlicher Automaten, regulärer Ausdrücke, kontextfreier Grammatiken und Kellerautomaten. Studierende lernen, fundamentale Algorithmen auf diese Modelle anzuwenden, die Komplexität zu bestimmen und verschiedene Werkzeuge zur Untersuchung formaler Sprachen zu nutzen. Weitere Themen sind die Modellierung von nebenläufigen Systemen mit Techniken wie Petrinetzen und kommunizierenden sequentiellen Prozessen (CSP). Das Modul befähigt die Studierenden, formale Modelle auf Anwendungsgebiete wie Compilerbau und Verifikation zu übertragen und mathematisch fundiert in der Informatik zu arbeiten.
  • Voraussetzungen: None.
  • Empfohlenes Semester: 1. Semester (WS)

Link to RWTHonline

Lecture + Exercise
  • Content: Das Modul vermittelt grundlegende Konzepte der Berechenbarkeit und Komplexitätstheorie, einschließlich der Turingmaschine und des RAM-Modells. Studierende lernen, die Entscheidbarkeit von Problemen zu beurteilen und zwischen berechenbaren und unentscheidbaren Problemen zu unterscheiden. Weitere Themen umfassen Unentscheidbarkeit, Turing-Mächtigkeit, primitiv rekursive Funktionen, sowie zentrale Komplexitätsklassen und die Theorie der NP-Vollständigkeit. Die Studierenden erwerben Fähigkeiten in der Analyse von Problemen hinsichtlich ihrer Berechenbarkeit und Komplexität, dem Erstellen von polynomiellen Reduktionen und der Einordnung von Problemen in Komplexitätsklassen. Das Modul befähigt sie, die Komplexität von algorithmischen Problemen zu bestimmen und in der Informatik anwendungsübergreifend zu nutzen.
  • Voraussetzungen (empfohlen): Diskrete Strukturen, Formale Systeme, Automaten und Prozesse.
  • Empfohlenes Semester: 3. Semester (WS)

Link to RWTHonline

 

Lecture + Exercise
  • Content: Das Modul vermittelt grundlegende Begriffe und Methoden der mathematischen Logik, einschließlich der Aussagenlogik und der Prädikatenlogik erster Stufe. Studierende lernen, wie man logische Systeme formal modelliert und analysiert, und beschäftigen sich mit fundamentalen Ergebnissen wie dem Endlichkeits- und Vollständigkeitssatz. Sie erwerben Fähigkeiten, algorithmische Fragen zu formalen Systemen zu erkennen und zu bearbeiten, und können die Ausdrucksstärke sowie die Grenzen logischer Systeme beurteilen. Das Modul bereitet die Studierenden darauf vor, logische Modelle zu entwerfen und mathematische Techniken für die Analyse formaler Systeme anzuwenden.
  • VoraussetzungenBestehen des Moduls Mentoring. Außerdem empfohlen: Mathematische Grundlagen den Bereichen Lineare Algebra, Analysis und diskrete Mathematik (beispielsweise die Vorlesungen “Lineare Algebra 1” oder “Lineare Algebra für Informatiker”, “Analysis 1” oder “Analysis für Informatiker”, “Diskrete Strukturen”); Grundlagen der theoretischen Informatik (beispielsweise die Vorlesungen “Formale Systeme, Automaten und Prozesse” und “Berechenbarkeit und Komplexität”).
  • Empfohlenes Semester: 4. Semester (SS)

Link to RWTHonline

Mathematics
Lecture + Exercise
  • Content: Das Modul vermittelt grundlegende mathematische Konzepte, die für die Informatik von zentraler Bedeutung sind, darunter Mengen, Abbildungen und Relationen sowie algebraische Strukturen wie Gruppen, Ringe und Körper. Studierende lernen Methoden der elementaren Kombinatorik, wie Binomialkoeffizienten und Stirling-Zahlen, und erwerben Kenntnisse in der Graphentheorie sowie bei der Anwendung von Graphenalgorithmen. Weitere Themen sind die Matrizenrechnung und das systematische Lösen linearer Gleichungssysteme. Das Modul fördert das logische Schließen, das Führen einfacher mathematischer Beweise und die Fähigkeit, mathematische Texte selbstständig zu lesen und zu verstehen.
  • Voraussetzungen: None.
  • Empfohlenes Semester: 1. Semester (WS)

Link to RWTHonline

Lecture + Exercise
  • Content: Das Modul vermittelt grundlegende Konzepte der Analysis, wie Grenzwerte, Stetigkeit, Differentiation und Integration. Studierende lernen die Entwicklung zentraler Begriffe der Analysis, zum Beispiel Iterationsverfahren zur Lösung nichtlinearer Gleichungen, und erwerben ein tiefes Verständnis für die mathematische Denkweise. Der Kurs legt den Fokus auf die Beherrschung der grundlegenden Techniken der Analysis und bereitet die Studierenden auf die Anwendung dieses Wissens im weiteren Studium vor. Zu den behandelten Themen gehören reelle Zahlen, Folgen und Reihen reeller Zahlen, das Riemannsche Integral sowie die Differentiation und Integration von Funktionen mehrerer Veränderlicher.
  • Voraussetzungen: None.
  • Empfohlenes Semester: 1. Semester (WS)

Link to RWTHonline

Lecture + Exercise
  • Content: Das Modul vermittelt grundlegende Konzepte der linearen Algebra, wie das Lösen von linearen Gleichungssystemen, die Berechnung von Determinanten sowie Eigenwerten und Eigenvektoren. Es umfasst Techniken wie die LU-Zerlegung, Diagonalisierung, das Gram-Schmidt-Verfahren und die Singulärwertzerlegung. Studierende entwickeln ein Verständnis für geometrische Zusammenhänge und lernen, diese auf numerische Verfahren anzuwenden. Zudem wird die diskrete Fouriertransformation als praktisches Werkzeug zur Signalverarbeitung eingeführt.
  • Voraussetzungen: None.
  • Empfohlenes Semester: 2. Semester (SS)

Link to RWTHonline

Lecture + Exercise
  • Content: Das Modul vermittelt grundlegende Kenntnisse der Wahrscheinlichkeitsrechnung und Statistik mit einem Fokus auf Anwendungen in der Informatik. Studierende lernen die zentralen Konzepte der Wahrscheinlichkeitsrechnung, wie Wahrscheinlichkeitsräume, Zufallsvariablen und wichtige Verteilungen (z.B. Binomial-, Poisson- und Normalverteilung), sowie die Grundlagen der Statistik, einschließlich beschreibender Statistik, Regressionsanalyse und Schätzverfahren. Besondere Schwerpunkte liegen auf der Berechnung von Erwartungswerten, Varianzen, der Maximum-Likelihood-Schätzung und dem Zentralen Grenzwertsatz. Das Modul fördert die Intuition für statistisches Denken und bereitet die Studierenden darauf vor, diese Konzepte auf informatische Problemstellungen anzuwenden.
  • Voraussetzungen (verpflichtend)Bestehen des Moduls Mentoring.
  • Empfohlenes Semester: 4. Semester (SS)

Link to RWTHonline

Other courses
Group Meetings
  • Content: Das Mentoringprogramm im Bereich Informatik unterstützt Studierende dabei, sich in den organisatorischen und hochschulpolitischen Strukturen des Studiums zurechtzufinden und eigene Lernstrategien zu entwickeln. Zudem erhalten sie Einblicke in den Beruf des Informatikers sowie aktuelle und zukünftige Forschungsfelder, um fundierte Entscheidungen über ihren Studienverlauf und ihre spätere Berufswahl zu treffen.
  • Voraussetzungen: None.
  • Empfohlenes Semester: 1. Semester (SS)

Link to RWTHonline

Lectures, language courses or tutorials
  • Content: Nach dem Studienplan ist ein nicht-technisches Wahlfach zu belegen. Dieses umfasst insgesamt 4 Credits, die wahlweise auch auf mehrere Veranstaltungen verteilt werden können. Typische NTWs sind Sprachkurse, Mentoring als NTW oder Projekt Leonardo. Mehr Informationen sind auch weiter unten im Abschnitt Non-Technical Elective (NTW) .
  • Voraussetzungen: None.
  • Empfohlenes Semester: Ab dem 3. Semester.

(see list below)

Proseminar
  • Content: Das Proseminar soll einen ersten Einblick in das wissenschaftliche Arbeiten bieten. Du erlernst Kenntnisse und Fähigkeiten zur Literaturrecherche in wissenschaftlichen Bibliotheken, sowohl physisch als auch elektronisch, sowie zur selbstständigen Einarbeitung in ein Thema der Informatik. Studierende lernen, relevante Literatur auszuwählen, korrekt zu zitieren und das Thema schriftlich und mündlich unter Verwendung geeigneter Formalismen und Medien zu präsentieren. Zudem erwerben sie die Fähigkeit, aktiv an Diskussionen teilzunehmen und, wenn erforderlich, Themen in Gruppenarbeit in Teilthemen zu unterteilen. Hierbei wird zu einem Thema in einem ausgewählten Themenbereich eine (kurze) wissenschaftliche Arbeit verfasst und am Ende im Rahmen eines Kolloqiums die Ergebnisse vorgestellt. Mehr Informationen sind weiter unten im Abschnitt Proseminars, seminars and lab courses .
  • Voraussetzungen: None.
  • Empfohlenes Semester: Ab dem 2. Semester.

Link to RWTHonline

Seminar
  • Content: In diesem Modul erarbeiten sich Studierende vertiefte Kenntnisse in fortgeschrittenen Informatikthemen und Präsentationstechniken. Sie lernen, ein komplexes Thema eigenständig anhand wissenschaftlicher Literatur zu bearbeiten, kritisch zu bewerten und sowohl schriftlich als auch mündlich anschaulich darzustellen. Die aktive Teilnahme an Diskussionen fördert die Fähigkeit, wissenschaftliche Konzepte und Ergebnisse präzise zu präsentieren und zu diskutieren. Auch hier wird in einem gewählten Themenbereich eine Arbeit verfasst, die am Ende in einem Kolloqium präsentiert werden soll. Mehr Informationen sind weiter unten im Abschnitt Proseminars, seminars and lab courses .
  • Voraussetzungen (verpflichtend): Bestehen des Moduls Proseminar (Einfürung in das wissenschaftliche Arbeiten).
  • Empfohlenes Semester: Ab dem 3. Semester.

Link to RWTHonline

Hands-on Lab
  • Content: In diesem Modul erwerben Studierende fundierte Kenntnisse in der Software-Entwicklung, einschließlich der Anwendung einer Programmiersprache und moderner Entwicklungswerkzeuge. Sie lernen, ein komplexes Programmsystem zu entwickeln, das aus mehreren Komponenten besteht, und erarbeiten eine strukturierte Dokumentation sowie Präsentationen der Ergebnisse. Dabei werden gruppendynamische Effekte bei der arbeitsteiligen Bearbeitung sowie die systematische Prüfung und Inspektion der Software durch Tests thematisiert, um die Teamarbeit und Präsentationsfähigkeiten zu fördern. Mehr Informationen sind weiter unten im Abschnitt Proseminars, seminars and lab courses .
  • Voraussetzungen (empfohlen): Kenntnisse in Programmierung, Softwaretechnik, Datenstrukturen, Algorithmen und Systemprogrammierung.
  • Empfohlenes Semester: Ab dem 3. Semester.

Link to RWTHonline

Thesis + presentation
  • Content: Die Bachelorarbeit ist eine eigenständige, wissenschaftliche Arbeit, die in der Regel am Ende des Studiums erfolgt. In dem Zeitraum von vier setzt man sich intensiv mit einem wissenschaftsnahen Thema der Informatik auseinander. Mehr Informationen sind weiter unten im Abschnitt Bachelor theses .
  • Voraussetzungen: 120 CP und bestehen der folgenden Module: Diskrete Strukturen, Programmierung, Einführung in die Technische Informatik, Mentoring Informatik, Analysis für Informatik, Formale Systeme, Automaten, Prozesse, Datenstrukturen und Algorithmen, Einführung in das wissenschaftliche Arbeiten (Proseminar Informatik), Lineare Algebra und Betriebssysteme und Systemsoftware.
  • Empfohlenes Semester: Ab dem 6. Semester.

Link to RWTHonline

Module aus dem Wahlpflicht-/Anwendungsbereich
Lectures + exercises
  • Content: Ab dem dritten Fachsemester sind im Bachelor-Studiengang Informatik 3 – 4 (18 – 24 CP) Module aus Wahlpflichtbereich Informatik zu belegen. Abgesehen von der Einschränkung, dass mindestens eines dieser Wahlpflichtmodule aus dem Bereich Theoretische Informatik gewählt werden muss, gibt es bei der Wahl der Wahlpflichtmodule keine weiteren Einschränkungen. Mehr Informationen sind weiter unten im Abschnitt Compulsory elective modules .
  • Voraussetzungen: None.
  • Empfohlenes Semester: Ab dem 3. Semester.

Note: It is highly recommended when deciding on an elective area to follow the prerequisites from the module descriptions.

(see list below)

Proseminars, seminars and lab courses

More than 1700 practical courses, proseminars and seminars are offered by the Department of Computer Science every semester. The variety and breadth extends across the entire range of subjects that we offer in Aachen. You can choose from this large catalog. As places in (pro) seminars and software project internships are limited, they are allocated through a separate allocation procedure. This ensures that there are no double bookings.

To take part in a course in the coming semester, you must register and make your choice via SuPra in the current semester. The timing of the process is determined individually for each semester and is aligned with the lecture-free period (Christmas, Whitsun, end of lectures), among other things. The exact dates will be communicated by email in good time before the start of the process. However, you can expect this to be the case in the second half of the lecture period.

Offers can be prioritized so that the distribution always tries to assign the highest priority if possible. In addition, courses can be marked to which an allocation should be made if the prioritized courses are full. The greater the flexibility, the more likely it is to get a place. Details of the process can be found in SuPra.

Note: System Programming Lab (PSP) is not offered through SuPra.

Non-Technical Elective (NTW)

According to the curriculum, one non-technical elective must be taken. This comprises a total of 4 credits, which can optionally be distributed over several courses.

Typical NTWs include language courses, mentoring as an NTW, or Project Leonardo.

The corresponding achievements are provided via participation certificates, which are either transferred to the ZPA by the lecturers or handed out to the students in paper form. If a participation certificate is issued in paper form, it must be presented to the ZPA so that it can be entered in the corresponding overviews of achievements.

With regard to language courses, it should be noted that the registration periods may be at the beginning of the semester or even in the weeks prior to the beginning of the semester. It should also be noted that for advanced offerings of the Language Center, participation in appropriate placement tests is required. The number of ECTS credits for a passed language course is equal to the number of SWS, unless otherwise stated.

Further information on recognition of a language course and registration in RWTHonline as well as placement tests can be found on the pages of the Language Center.

If there is interest in a non-technical subject that is not currently in the NTW catalog for the Bachelor of Computer Science, the following must be done:

  • First, the conditions for issuing a certificate of attendance must be clarified with the lecturers.
  • An application for approval of the desired course must be sent informally by e-mail to the Study Advisory Bachelor Computer Science, stating the course number (LV-Nr.). A confirmation will follow.

Compulsory elective modules

From the third semester onwards, 3 - 4 (18 - 24 CP) modules from the elective area of computer science must be taken in the bachelor's degree program in computer science. Apart from the restriction that at least one of these elective modules must be chosen from the field of Theoretical Computer Science, there are no further restrictions on the choice of elective modules. At the beginning of each semester, there is a listing presenting the elective courses offered in the current semester.
 
A (semester-independent) overview of the entire elective course offerings in the bachelor's program in computer science can be found in the Module Handbook.

Application area

From the third semester onwards, modules in the scope of 12 - 18 CP from the application area must be taken in the bachelor's degree program in computer science.
 
Any number of modules from different subject areas can be combined and presented in this video .
 
The respective module handbooks provide detailed information on the individual subjects, and if specific questions arise, the departmental student advisor can help.
 
  • Bookkeeping and Managerial Accounting
  • Decision Theory
  • Operations Research
  • Principles of Management

The video gives a good overview of this application subject.
Simon Völker is available as a study advisor for further questions.

Biologie für Studierende der Informatik und Mathematik.

The video gives a good overview of this application subject.
Simon Völker is available as a study advisor for further questions.

  • Inorganic Chemistry
  • Organic Chemistry
  • Computational Chemistry
  • Theory of Chemical Bonds

The video gives a good overview of this application subject.
Simon Völker is available as a study advisor for further questions.

  • Fundamentals of Electrical Engineering 3 - Signals and Systems
  • Power Systems
  • Fundamentals of Integrated Circuits and Systems
  • Communications Engineering
  • High and Medium Voltage Switchgears
  • Manufacturing Processes for Silicon Based Microsystems
  • Information Transmission
  • Introduction to Acoustics
  • Fundamentals of Electrical Engineering 2 - Modeling and Analysis of Electrical Components and Circuits
  • Special-Purpose Operating Systems

Das Video gibt eine gute Übersicht zu diesem Anwendungsfach.
Thomas Noll steht für weitere Fragen als Studienberater bereit. 

  • Introduction to Mechanical Engineering
  • Simulation Methods in Mechanical Engineering
  • Communication and Organisation Development
  • Business Engineering
  • Energy Economy
  • NC-Programming of Machine Tools
  • Aircraft Systems
  • Medical Software Engineering
  • Systemergonomie
  • Rapid Control Prototyping
  • Automatic Control
  • Computer Assisted Surgical Technology
  • Electromechanic Motion Technology
  • Medical Engineering I
  • Factory Design
  • Engineering Mechanics
  • Medical Engineering II
  • Machine Design I
  • Bascis of Electrical Engineering for Mechatronic Systems
  • Automated Driving
  • Automated and Connected Driving Challenges – Course
  • Automated and Connected Driving Challenges – Research Project

The video gives a good overview of this application subject.
Thomas Noll is available as a study advisor for further questions.

  • Practical Course in Mathematics
  • Computeralgebra
  • Complex Analysis I
  • Numerical Analysis I
  • Numerical Analysis II

The video gives a good overview of this application subject.
Simon Völker is available as a study advisor for further questions.

Modules from the application area Medicine have to be a href="https://pa.informatik.rwth-aachen.de/" target="_self"> applied for separately at the examination board Computer Science.

 

The video gives a good overview of this application subject.
Thomas Noll is available as a study advisor for further questions.

  • Basic Module Philosophical Propaedeutics
  • Optional Courses of Philosophy

The video gives a good overview of this application subject.
Thomas Noll is available as a study advisor for further questions.

  • Physics I for Students of Natural Sciences, Mathematics, Computer Science and Engineering
  • Physics II for Students of Natural Sciences, Mathematics, Computer Science and Engineering
  • Physics Lab

The video gives a good overview of this application subject.
Simon Völker is available as a study advisor for further questions.

  • Statistics
  • Communication Psychology
  • Cognitive Psychology
  • Media Psychology
  • Social Psychology

The video gives a good overview of this application subject.


Simon Völker is available as a study advisor for further questions.

Bachelor theses

The bachelor thesis is an independent, scientific work, which is usually done at the end of the study. In the period of four, one deals intensively with a science-related topic of computer science. This work usually takes place at the teaching units of the Computer Science Department and is evaluated by two expert opinions. The concrete task of the work depends on which teaching unit is in charge of the supervision. The topic can be theoretically or practically oriented. Examples are: Translated with www.DeepL.com/Translator (free version)

  • A literature review and evaluation of existing approaches to a current scientific topic area.
  • An in-depth evaluation and analytical or empirical comparison of selected solution concepts.
  • The implementation, further development and evaluation of existing procedures and concepts of computer science for scientific analysis (evaluation prototype) or for didactic use (demonstration prototype).
  • Evaluating the performance of systems with respect to specific tasks and workloads.

The individual steps are summarized in detail here.

Exams and exam registration

In order to successfully complete a module, the associated examination must be passed in most cases. This is usually an exam that takes place during the lecture-free period following the course. Examinations for courses from the winter semester take place in February and March, examinations for courses from the summer semester take place in July to September.
 
Two exam dates are offered for each module, but only one exam must be passed. The first exam date tends to be at the beginning of the lecture-free period, the second at the end of the lecture-free period. Concrete exam dates can be found in RWTHOnline from the beginning of each semester.
 
Students can register for either exam date via RWTHOnline. The registration period for the first examination date usually ends two weeks before the end of the semester and for the second examination date one week before the respective examination date. We recommend that you register for the first exam date; if you do not pass, this gives you the opportunity to still register for the second exam date.
 
In some modules, you must first be admitted to the written exam in order to be allowed to take it. This is usually the achievement of a certain number of points in the exercises that are to be completed during the semester. The module handbook specifies the modules for which an admission requirement for the exam must be achieved. The exact nature of this admission requirement is determined by the lecturer of the respective module at the beginning of the semester.

Exclusion of Grades

If the degree program is completed within the standard period of study, it is possible to exclude certain module grades from the overall grade calculation. These are then entered as “passed” in the degree certificate and the grade values are shown in a separate area for information purposes. To calculate possible deletions, the grade deletion tool can be used, which is kindly provided by a student. Translated with DeepL.com (free version)

Transition to the Master of Computer Science at the RWTH

If you have any questions about the transition to the Master's in Computer Science at RWTH, you can find more information here.