WiSe 25/26  
Mathematik und ...  
Modulangebot In...  
Lehrveranstaltung

Lehramt für Informatik

Modulangebot Informatik (30 LP, Studienordnung 2025)

0132d_m30
  • Konzepte der Programmierung

    0132dA1.1
    • 19300001 Vorlesung
      Konzepte der Programmierung (Kristin Knorr)
      Zeit: Mo 14:00-16:00, Mi 12:00-14:00, zusätzliche Termine siehe LV-Details (Erster Termin: 13.10.2025)
      Ort: Gr. Hörsaal (Raum B.001) (Arnimallee 22)

      Kommentar

      Qualifikationsziele

      Die Studierenden erklärenverschiedene Programmierparadigmen und stellen diese gegenüber4. Sie interpretieren2 Beschreibungen und Quelltexte zu elementaren Datenstrukturen und charakterisieren4 deren Funktionsweise und implementieren3 elementare Algorithmen und Datenstrukturen in verschiedenen Programmierparadigmen und passen diese an unterschiedliche Anforderungen an5. Sie diskutieren6 Vor- und Nachteile verschiedener Lösungen von algorithmischen Problemen.

      Inhalte

      Studierende erlernen die Grundlagen des Programmierens und grundlegende Programmierparadigmen wie Imperativ und Funktional. Sie erarbeiten sich Ausdrücke und Datentypen und grundlegende Aspekte Imperativer Programmierung (Zustand, Anweisungen Kontrollstrukturen, Ein-Ausgabe) und üben deren Anwendung. Die Studierenden erarbeiten sich grundlegende Aspekte der Funktionalen Programmierung (Funktionen, Rekursion, Funktionen höherer Ordnung, Currying), und Objektorientierte Konzepte wie Kapselung und Vererbung, Polymorphie, sowie Grundlegende Algorithmische Fragestellungen (z. B. Suchen, Sortieren, Auswählen und einfache Feld- und Zeigerbasierte Datenstrukturen) und üben deren Implementierung.

    • 19300002 Übung
      Übung zu Konzepte der Programmierung (Kristin Knorr)
      Zeit: Mi 14:00-16:00, Mi 16:00-18:00, Do 08:00-10:00, Do 12:00-14:00, Do 16:00-18:00, Fr 08:00-10:00, Fr 10:00-12:00, Fr 12:00-14:00, Fr 14:00-16:00 (Erster Termin: 15.10.2025)
      Ort: T9/049 Seminarraum (Takustr. 9)

      Kommentar

      Tutorien finden erst ab der 2. Vorlesungswoche statt

  • Datenbanksysteme

    0086eA1.11
    • 19301501 Vorlesung
      Datenbanksysteme (Katharina Baum)
      Zeit: Di 10:00-12:00, Di 12:00-13:00, Di 14:00-16:00, Do 10:00-12:00, zusätzliche Termine siehe LV-Details (Erster Termin: 14.10.2025)
      Ort: T9/SR 005 Übungsraum (Takustr. 9)

      Zusätzl. Angaben / Voraussetzungen

      Zielgruppe

      • Pflichtmodul im Bachelorstudiengang Informatik
      • Pflichtmodul im lehramtsbezogenen Bachelorstudiengang mit Kernfach Informatik und Ziel: Großer Master
      • Studierende im lehramtsbezogenen Masterstudiengang (Großer Master mit Zeitfach Informatik) können dieses Modul zusammen mit dem "Praktikum DBS" absolvieren
      • Wahlpflichtmodul im Nebenfach Informatik

      Voraussetzungen

      • ALP 1 - Funktionale Programmierung
      • ALP 2 - Objektorientierte Programmierung
      • ALP 3 - Datenstrukturen und Datenabstraktion
      • ODER Informatik B

      Kommentar

      Inhalt

      Datenbankentwurf mit ERM/ERDD. Theoretische Grundlagen relationaler Datenbanksysteme: Relationale Algebra, Funktionale Abhängigkeiten, Normalformen. Relationale Datenbankentwicklung: SQL Datendefinition, Fremdschlüssel und andere Integritätsbedingungen. SQL als applikative Sprache: wesentliche Sprachelemente, Einbettung in Programmiersprachen, Anwendungsprogrammierung; objekt-relationale Abbildung. Transaktionsbegriff, transaktionale Garantien, Synchronisation des Mehrbenutzerbetriebs, Fehlertoleranzeigenschaften. Anwendungen und neue Entwicklungen: Data Warehousing, Data Mining, OLAP.

      Projekt: im begleitenden Projekt werden die Themen praktisch vertieft.

      Literaturhinweise

      • Alfons Kemper, Andre Eickler: Datenbanksysteme - Eine Einführung, 5. Auflage, Oldenbourg 2004
      • R. Elmasri, S. Navathe: Grundlagen von Datenbanksystemen, Pearson Studium, 2005

    • 19301502 Übung
      Übung zu Datenbanksysteme (Pascal Iversen)
      Zeit: Mi 12:00-14:00 (Erster Termin: 15.10.2025)
      Ort: T9/049 Seminarraum (Takustr. 9)
  • Auswirkungen der Informatik

    0086eA1.3
    • 19301301 Vorlesung
      Auswirkungen der Informatik (Lutz Prechelt)
      Zeit: Mo 12:00-14:00 (Erster Termin: 13.10.2025)
      Ort: T9/Gr. Hörsaal (Takustr. 9)

      Zusätzl. Angaben / Voraussetzungen

      Sprache:
      Kurssprache ist Deutsch inklusive Folien und Übungsblätter.

      Homepage:
      www.mi.fu-berlin.de/w/SE/TeachingHome 

       

      Kommentar

      Diese Veranstaltung behandelt Auswirkungen der Informatik. Sie will ein Verständnis dafür zu wecken, dass und wie Informatiksysteme in vielfältiger Weise in unser privates und professionelles Leben eingreifen und es erheblich prägen. Viele dieser Wirkungen bergen erhebliche Risiken und benötigen eine bewusste, aufgeklärte Gestaltung, bei der Informatiker/innen naturgemäß eine besondere Rolle spielen -- oder jedenfalls spielen sollten.

      Als Themenbereiche werden wir beispielsweise betrachten, wie die Computerisierung unsere Privatsphäre beeinflusst, Wirtschaft und Gesellschaft im Ganzen, unsere Sicherheit und unser Arbeitsumfeld. Davor steht eine konzeptionelle Einführung, was es bedeutet Orientierungswissen zusätzlich zu Verfügungswissen zu erlangen und wie man damit umgehen sollte: kritisch mitdenken und sich in die Gestaltung der Technik einmischen.

      Literaturhinweise

      See the slides.

    • 19301302 Übung
      Übung zu Auswirkungen der Informatik (Linus Ververs)
      Zeit: Mo 10:00-12:00, Di 10:00-12:00, Di 12:00-14:00, Di 16:00-18:00, Mi 08:00-10:00, Mi 10:00-12:00, Mi 14:00-16:00, Mi 16:00-18:00, Do 16:00-18:00 (Erster Termin: 13.10.2025)
      Ort: T9/051 Seminarraum (Takustr. 9)

      Kommentar

      siehe Vorlesung; Informationen zu den Zeiten und Orten der täglichen Übungen sind zu finden auf der Veranstaltungswebseite

  • Rechnerarchitektur

    0086eA1.6
    • 19300601 Vorlesung
      Rechnerarchitektur (Larissa Groth)
      Zeit: Di 12:00-14:00, zusätzliche Termine siehe LV-Details (Erster Termin: 14.10.2025)
      Ort: , Hs 1a Hörsaal, T9/Gr. Hörsaal

      Kommentar

      Inhalt

      Das Modul Rechnerarchitektur behandelt grundlegende Konzepte und Architekturen von Rechnersystemen. Themenbereiche sind hier insbesondere Von-Neumann-Rechner, Harvard-Architektur, Mikroarchitektur RISC/CISC, Mikroprogrammierung, Pipelining, Cache, Speicherhierarchie, Bussysteme, Assemblerprogrammierung, Multiprozessorsysteme, VLIW, Sprungvorhersage. Ebenso werden interne Zahlendarstellungen, Rechnerarithmetik und die Repräsentation weiterer Datentypen im Rechner behandelt.

      Literaturhinweise

      • Andrew S. Tannenbaum: Computerarchitektur, 5.Auflage, Pearson Studium, 2006
      • English: Andrew S. Tanenbaum (with contributions from James R. Goodman):
      • Structured Computer Organization, 4th Ed., Prentice Hall International, 2005.

    • 19300604 Seminar am PC
      Seminar am PC zu Rechnerarchitektur (Larissa Groth, Marius Max Wawerek)
      Zeit: Mo 12:00-14:00, Mo 14:00-16:00, Mi 12:00-14:00, Mi 14:00-16:00, Do 14:00-16:00, Do 16:00-18:00, Fr 12:00-14:00, Fr 14:00-16:00 (Erster Termin: 13.10.2025)
      Ort: T9/K38 Rechnerpoolraum (Takustr. 9)
  • Grundlagen der Theoretischen Informatik

    0086eA1.7
    • 19301201 Vorlesung
      Grundlagen der theoretischen Informatik (Günther Rothe)
      Zeit: Mo 10:00-12:00, zusätzliche Termine siehe LV-Details (Erster Termin: 20.10.2025)
      Ort: T9/Gr. Hörsaal (Takustr. 9)

      Kommentar

      Inhalt:

      • Theoretische Rechnermodelle
        • Automaten
        • formale Sprachen
        • Grammatiken und die Chomsky-Hierarchie
        • Turing-Maschinen
        • Berechenbarkeit
      • Einführung in die Komplexität von Problemen

      Literaturhinweise

      • Uwe Schöning, Theoretische Informatik kurzgefasst, 5. Auflage, Spektrum Akademischer Verlag, 2008
      • John E. Hopcroft, Rajeev Motwani, Jeffrey D. Ullman, Einführung in die Automatentheorie, Formale Sprachen und Komplexität, Pearson Studium, 3. Auflage, 2011
      • Ingo Wegener: Theoretische Informatik - Eine algorithmenorientierte Einführung, 2. Auflage, Teubner, 1999
      • Michael Sipser, Introduction to the Theory of Computation, 2nd ed., Thomson Course Technology, 2006
      • Wegener, Kompendium theoretische Informatik - Eine Ideensammlung, Teubner 1996

    • 19301202 Übung
      Practice seminar for Foundations of Theoretical Computer Science (Günther Rothe)
      Zeit: Mo 12:00-14:00, Di 16:00-18:00, Mi 08:00-10:00, Mi 14:00-16:00, Mi 16:00-18:00, Fr 14:00-16:00, zusätzliche Termine siehe LV-Details (Erster Termin: 13.10.2025)
      Ort: A7/SR 031 (Arnimallee 7)
  • Aktuelle Themen in der Informatik

    0086eB1.12
  • Architektur eingebetteter Systeme

    0086eB1.2
    • 19335901 Vorlesung
      Architektur eingebetteter Systeme (Larissa Groth)
      Zeit: Fr 14:00-16:00 (Erster Termin: 24.10.2025)
      Ort: T9/SR 005 Übungsraum (Takustr. 9)

      Zusätzl. Angaben / Voraussetzungen

      Wichtige Information zum Ablauf:
      Architektur eingebetteter Systeme wird ausnahmsweise in diesem Wintersemester mit folgenden Terminen angeboten:

      • Vorlesung Freitags, 14-16 Uhr, Takustraße 9, Raum K40
      • Übungsgruppe A, Dienstags, 14-16 Uhr Takustraße 9, Raum K63
      • Übungsgruppe B, Mittwochs, 12-14 Uhr Takustraße 9, Raum K63

      Von diesen Übungs-Terminen ist einer auszusuchen.

      Kommentar

      Studierende erarbeiten sich den grundlegenden Aufbau von Mikroprozessor-Architekturen für eingebettete Sys- teme einschl. Datenformate, Befehlsformate, Befehlssätze und Speicherorganisation. Sie erlernen und üben den praktischen Umfang mit Schnittstellen und Ein-/Ausgabe-Systemen und Peripherie-Geräten. Sie erlernen Eigenschaften von Cyber Physical Systems, Sensoren, Aktuatoren und Sensornetzen (WSN) und diskutieren deren Anwendungsgebiete. Darüber hinaus erlernen sie die Anbindung und den Einsatz von Field Programmable Gate Arrays (FPGAs) und üben die Anwendungsbezogene Programmierung eingebetteter Systeme in C und Assembler. Zudem erarbeiten sie sich den grundlegenden Aufbau aktueller Betriebssysteme für eingebettete Systeme, insbes. Realtime Operating Systems, Realtime Scheduling, Realtime Communication und üben dessen Implementierung. Zuletzt werden Aspekte der Sicherheit eingebetteter Systeme einschl. Angriffsvektoren, Prozessisolation, Trusted Computing diskutiert und bewertet.

    • 19335902 Übung
      Übung zu Architektur eingebetteter Systeme (Larissa Groth)
      Zeit: Termine siehe LV-Details (Erster Termin: 07.11.2025)
      Ort: T9/K38 Rechnerpoolraum (Takustr. 9)
  • Datenvisualisierung

    0086eB1.3
    • 19328301 Vorlesung
      Datenvisualisierung (Claudia Müller-Birn)
      Zeit: Di 12:00-14:00, zusätzliche Termine siehe LV-Details (Erster Termin: 14.10.2025)
      Ort: T9/SR 005 Übungsraum (Takustr. 9)

      Zusätzl. Angaben / Voraussetzungen

      Link zum Kurs auf der HCC-Webseite: https://www.mi.fu-berlin.de/en/inf/groups/hcc/teaching/winter_term_2025_26/course_data_visualization.html

      Kommentar

      Die rasante technologische Entwicklung erfordert die Verarbeitung großer Mengen von Daten unterschiedlichster Art, um diese durch den Menschen nutzbar zu machen. Diese Herausforderung betrifft heutzutage sehr viele Bereiche des Lebens, wie der Forschung, Wirtschaft und Politik. Datenvisualisierungen werden hier dazu eingesetzt, Informationen und Zusammenhänge durch grafische Darstellung von Daten zu erklären, diese durch visuelle Analyse zu erkunden, um damit die Entscheidungsfindungen zu unterstützen. Ziel dieser Veranstaltung ist es, Studierende mit den Prinzipien, Techniken und Algorithmen der Datenvisualisierung vertraut zu machen und praktische Fertigkeiten für die Gestaltung und Implementierung von Datenvisualisierungen zu vermitteln.

      Dieser Kurs soll Studierenden eine fundierte Einführung in die Grundlagen der Datenvisualisierung mit aktuellen Inhalten aus Forschung und Praxis geben. Am Ende der Veranstaltung werden die Studierenden

      1. ausgehend von einer Problemstellung Methoden zur Konzipierung von Visualisierungen auswählen und anwenden können,
      2. wesentliche theoretische Grundlagen der Visualisierung zur grafischen Wahrnehmung und Kognition kennen,
      3. Visualisierungsansätze und deren Vor- und Nachteile kennen und auswählen können,
      4. Visualisierungslösungen kritisch bewerten können, und
      5. praktische Fertigkeiten für die Implementierung von Visualisierungen besitzen.

      Diese Veranstaltung richtet sich sowohl an Studierende, die daran interessiert sind, Datenvisualisierung in ihrer Arbeit einzusetzen, als auch an Studierende, die Visualisierungs-software entwickeln wollen. Grundkenntnisse in der Programmierung (HTML, CSS, Javascript, Python) und Datenanalyse (z.B. R) sind hilfreich.

      Neben der Teilnahme an den Diskussionen in der Veranstaltung absolvieren die Studierenden mehrere Programmier- und Datenanalyseaufgaben sowie ein Abschlussprojekt, in welchem Sie eine gegebene Problemstellung lösen sollen. Von den Studierenden wird erwartet, dass sie die Ergebnisse der Aufgaben und des Projekts im Sinne der Reproduzierbarkeit dokumentieren und präsentieren.

      Bitte beachten Sie, dass die Veranstaltung sich darauf konzentriert, wie Daten visuell kodiert und für die Analyse präsentiert werden, nachdem die Struktur der Daten und deren Inhalt bekannt ist. Explorative Analysemethoden zur Entdeckung von Erkenntnissen in Daten sind nicht der Schwerpunkt der Veranstaltung.

      Literaturhinweise

      Textbook

      Munzner, Tamara. Visualization analysis and design. AK Peters/CRC Press, 2014.

      Additional Literature

      Kirk, Andy: Data visualisation: A handbook for data driven design. Sage. 2016.

      Yau, Nathan: Visualize This: The FlowingData Guide to Design, Visualization, and Statistics. Wiley Publishing, Inc. 2011.

      Spence, Robert: Information Visualization: Design for Interaction. Pearson. 2007.

    • 19328302 Übung
      Übung zu Data Visualization (Malte Heiser)
      Zeit: Do 08:00-10:00, Do 10:00-12:00 (Erster Termin: 16.10.2025)
      Ort: T9/SR 005 Übungsraum (Takustr. 9)
  • Maschinelles Lernen

    0086eB1.7
    • 19336201 Vorlesung
      Maschinelles Lernen (Gerhard Wunder)
      Zeit: Mi 12:00-14:00 (Erster Termin: 15.10.2025)
      Ort: T9/SR 006 Seminarraum (Takustr. 9)

      Kommentar

      Qualifikationsziele: Die Studierenden lernen Formen der Datenrepräsentation und deren Visualisierung, können Abhängigkeiten aufzeigen und wenden Verfahren für Dimensionsreduktion und Datenvorverarbeitung an. Sie lernen die Grundbegriffe und Prinzipien des maschinellen Lernens, können Zielkriterien formulieren, benennen Eigenschaften von Optimierungsproblemen und können algorithmische Ansätze zur Lösung umsetzen. Sie können unterschiedlichste Lernverfahren zur Regression, Klassifikation und Entscheidungsfindung einordnen und umsetzen. Sie lernen die Grundstrukturen und Architekturen von neuronalen Netzen und deren vielfältige Einsatzgebiete. Sie können algorithmisch Lösungen für eine gegebene Problemstellung umsetzen und evaluieren.

      Inhalte: Die Studierenden erlernen die Grundlagen des maschinellen Lernens, der Lerntheorie, der Generalisierung und PAC. Sie erarbeiten ebenfalls die Grundlagen der konvexen Optimierung (z. B. Subgradient Methode), des Stochastischen Gradientenabstieg, der Regularisierung und Konvergenz. Sie üben Verfahren des Supervised Learning (z. B. Linear Regression, SVM, Kernel-Trick), des Unsupervised Learning (z. B. Clustering, Decision Trees, Matrix Decomposition, wie PCA) und des Dictionary Learning. Des Weiteren erlernen Studierende die Grundlagen der Künstliche Neuronale Netze (KNN), indem mögliche Architekturen und das Konzept der Backpropagation erarbeitet werden. Darüber hinaus setzen sich Studierende mit den Aspekten der Evaluierung (Crossvalidation, Hyper-Parameter-Tuning usw.) auseinande

    • 19336202 Übung
      Übung zu Maschinelles Lernen (Gerhard Wunder)
      Zeit: Mo 14:00-16:00 (Erster Termin: 20.10.2025)
      Ort: , T9/SR 006 Seminarraum
  • Programmierpraktikum A

    0132dB1.16
    • 19335804 Seminar am PC
      Programmierpraktikum (Lutz Prechelt)
      Zeit: Mo 16:00-18:00, Di 16:00-18:00, Mi 16:00-18:00, Do 16:00-18:00, Fr 16:00-18:00, zusätzliche Termine siehe LV-Details (Erster Termin: 13.10.2025)
      Ort: T9/K48 Rechnerpoolraum (Takustr. 9)

      Zusätzl. Angaben / Voraussetzungen

      https://www.mi.fu-berlin.de/w/SE/TeachingHome

      Kommentar

      Die Studierenden lösen weitgehend selbstständig und mit vielen Freiheitsgraden bei Auswahl und inhaltlicher Ausgestaltung zahlreiche kleine und praktische Lernaufgaben. Die Aufgaben liegen z. B. in den Bereichen

      • Fortgeschrittene Konstrukte der Programmiersprache,
      • Auswahl und Einsatz von Bibliotheken,
      • Datenbanken und SQL,
      • automatisierte Tests,
      • Debugging,
      • Arbeiten mit Bestandscode,
      • Webentwicklung,
      • Umgang mit Werkzeugen wie Versionsverwaltung, Paketmanager, IDEs, Testwerkzeuge.

      Dabei erarbeiten sie sich einige komplexe Konzepte (z. B. zu Team-Workflows), erlernen zahlreiche Einzelheiten und diskutieren das Gelernte durch Reflexion der Ergebnisse.
      Das hier Gelernte ist für eine erfolgreiche berufliche Tätigkeit überragend relevant.

      Die Bearbeitung erfolgt überwiegend bevorzugt zu zweit (Paararbeit), die Zeiteinteilung ist völlig frei, nur für die Einreichung erledigter Aufgaben sind die Anwesenheitszeiten einer Dozent_in oder Tutor_in zu beachten.

      All dies wird in der ersten Veranstaltungswoche auf einer Startveranstaltung erläutert, die man keinesfalls verpassen darf.

  • Großes Programmierpraktikum

    0132dB1.17
    • 19335804 Seminar am PC
      Programmierpraktikum (Lutz Prechelt)
      Zeit: Mo 16:00-18:00, Di 16:00-18:00, Mi 16:00-18:00, Do 16:00-18:00, Fr 16:00-18:00, zusätzliche Termine siehe LV-Details (Erster Termin: 13.10.2025)
      Ort: T9/K48 Rechnerpoolraum (Takustr. 9)

      Zusätzl. Angaben / Voraussetzungen

      https://www.mi.fu-berlin.de/w/SE/TeachingHome

      Kommentar

      Die Studierenden lösen weitgehend selbstständig und mit vielen Freiheitsgraden bei Auswahl und inhaltlicher Ausgestaltung zahlreiche kleine und praktische Lernaufgaben. Die Aufgaben liegen z. B. in den Bereichen

      • Fortgeschrittene Konstrukte der Programmiersprache,
      • Auswahl und Einsatz von Bibliotheken,
      • Datenbanken und SQL,
      • automatisierte Tests,
      • Debugging,
      • Arbeiten mit Bestandscode,
      • Webentwicklung,
      • Umgang mit Werkzeugen wie Versionsverwaltung, Paketmanager, IDEs, Testwerkzeuge.

      Dabei erarbeiten sie sich einige komplexe Konzepte (z. B. zu Team-Workflows), erlernen zahlreiche Einzelheiten und diskutieren das Gelernte durch Reflexion der Ergebnisse.
      Das hier Gelernte ist für eine erfolgreiche berufliche Tätigkeit überragend relevant.

      Die Bearbeitung erfolgt überwiegend bevorzugt zu zweit (Paararbeit), die Zeiteinteilung ist völlig frei, nur für die Einreichung erledigter Aufgaben sind die Anwesenheitszeiten einer Dozent_in oder Tutor_in zu beachten.

      All dies wird in der ersten Veranstaltungswoche auf einer Startveranstaltung erläutert, die man keinesfalls verpassen darf.

    • Betriebs- und Kommunikationssysteme 0086eA1.10
    • Statistik für Informatik 0086eA1.13
    • Informationssicherheit 0086eA1.14
    • Angewandte Biometrie 0086eB1.1
    • Grundlagen des Datenschutzrechts 0086eB1.10
    • Vertiefung Theoretische Informatik 0086eB1.11
    • Vertiefte Aspekte der Informatik 0086eB1.13
    • Funktionale Programmierung 0086eB1.5
    • Informationstheorie 0086eB1.6
    • Mensch-Computer Interaktion 0086eB1.8
    • Praktiken professioneller Softwareentwicklung 0086eB1.9
    • Spezielle Aspekte der Informatik 0132dB1.19