SoSe 25  
Centre for Teac...  
Fachwissenschaf...  
Course

Lehramt an Integrierten Sekundarschulen und Gymnasien – Quereinstieg (ab WiSe 2019)

Fachwissenschaft und Fachdidaktik Informatik 2 (SPO ab WiSe 19/20)

0511b_m72
  • Vertiefung Fachdidaktik Informatik im Profil Quereinstieg

    0502bA1.2
    • 19323311 Seminar
      Selected Topics of Computer Science Education (Ralf Romeike)
      Schedule: Di 09:00-12:00 (Class starts on: 2025-04-15)
      Location: keine Angabe

      Comments

      Various key aspects will be offered, such as:

      • particular problems of computer science teaching and learning according to the type of school (schulartbezogenes Lehren und Lernen von Informatik)
      • particular experimental learning environments und experimental access to selected topics
      • education for sustainable development (Bildung für Nachhaltige Entwicklung (BNE))
      • design and analysis of tasks which are beneficial for learning
      • differentiation and handling of heterogeneity
      • computer science learning in out-of-school learning environments and in pupils' labs
      • multidisciplinary teaching
      • practical teaching experiences in complexity-reduced teaching-learning situations in the teaching-learning lab/pupils' lab
      • gender and diversity in computer science classes

  • Student Teaching Lab: Computer Science (Subject 2)

    0557aA1.3
  • Student Teaching Lab: Computer Science (Subject 2)

    0557bA1.3
  • Robotics

    0089cA3.4
    • 19304701 Lecture
      Robotics (Daniel Göhring)
      Schedule: Mi 12:00-14:00 (Class starts on: 2025-04-16)
      Location: T9/Gr. Hörsaal (Takustr. 9)

      Additional information / Pre-requisites

      Students interested in robotics with application to autonomous vehicles. Voraussetzungen: As a prerequisite, student should have basic knowledge of maths, in particular linear algebra and a bit of optimization. Students will work with a real model car in the robotics lab.

      Comments

      Content

      This class will give an introduction to robotics. It will be structured into the following parts:

      • Generating motion and and dynamic control: This chapter will cover coordinate frames, non-holonomic constraints, Ackermann-drive (in analogy to street cars), PID.
      • Planning: Planning around obstacles, path finding, Dijkstra, A*, configuration space obstacles, RRTs, lattice planners, gradient methods, potential fields, splines.
      • Localization and mapping: state estimation problem, Bayesian filter, Odometry, Particle & Kalman filter, Extended and Unscented Kalman-Filter, simultaneous localization and mapping (SLAM).
      • Vision and perception: SIFT, HOG-features, Deformable parts models, hough transform, lane detection, 3d-point clouds, RANSAC .

      After these lectures, students will be able to design basic algorithms for motion, control and state estimation for robotics.

      The lecture will be in German, accompanying materials in English.

      Suggested reading

      Literatur:


      John J Craig: Introduction to Robotics: Mechanics and Control; Steven LaValle: Planning Algorithms; Sebastian Thrun, Wolfram Burgard, Dieter Fox: Probabilistic Robotics

       

    • 19304702 Practice seminar
      Practice seminar for Robotics (Daniel Göhring)
      Schedule: Do 12:00-14:00 (Class starts on: 2025-04-17)
      Location: T9/049 Seminarraum (Takustr. 9)
  • Database Systems

    0086cA3.2
    • 19301501 Lecture
      Database Systems (Agnès Voisard)
      Schedule: Di 14:00-16:00, Do 14:00-16:00, zusätzliche Termine siehe LV-Details (Class starts on: 2025-04-15)
      Location: T9/Gr. Hörsaal (Takustr. 9)

      Additional information / Pre-requisites

      Requirements

      • ALP 1 - Functional Programming
      • ALP 2 - Object-oriented Programming
      • ALP 3 - Data structures and data abstractions
      • OR Informatik B

      Comments

      Content

      Database design with ERM/ERDD. Theoretical foundations of relational database systems: relational algebra, functional dependencies, normal forms. Relational database development: SQL data definitions, foreign keys and other integrity constraints, SQL as applicable language: essential language elements, embedding in programming language. Application programming; object-relational mapping. Security and protection concepts. Transaction subject, transactional guaranties, synchronization of multi user operations, fault tolerance features. Application and new developments: data warehousing, data mining, OLAP.

      Project: the topics are deepened in an implementation project for student groups.

      Suggested reading

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

    • 19301502 Practice seminar
      Practice seminar for Database systems (Muhammed-Ugur Karagülle)
      Schedule: Mo 12:00-14:00, Mo 14:00-16:00, Mo 16:00-18:00, Di 08:00-10:00, Di 10:00-12:00, Di 12:00-14:00, Mi 10:00-12:00, Mi 12:00-14:00, Mi 14:00-16:00, Do 08:00-10:00, Do 10:00-12:00, Do 12:00-14:00, Do 16:00-18:00, Fr 10:00-12:00, Fr 14:00-16:00, Fr 16:00-18:00 (Class starts on: 2025-04-14)
      Location: T9/SR 006 Seminarraum (Takustr. 9)
  • Software Technology

    0086cA3.3
    • 19301401 Lecture
      Software Engineering (Lutz Prechelt)
      Schedule: Mo 10:00-12:00, Do 12:00-14:00, zusätzliche Termine siehe LV-Details (Class starts on: 2025-04-14)
      Location: T9/Gr. Hörsaal (Takustr. 9)

      Additional information / Pre-requisites

      Target group

      • compulsory module in BSc of Computer Science
      • elective module in Computer Science Minor
      • MSc school teacher students (Großer Master mit Zweitfach Informatik) may chose this module together with  "Praktikum SWT (19516c)", thereby replacing modules "Net programming" and "Embedded Internet"

      Requirements

      ALP III or Informatik B

      Language

      The course language is German, including all slides and practice sheets. A minority of slides is in English.

      The exam is formulated in German, but answers may be given in English, too.

      Homepage

      http://www.inf.fu-berlin.de/w/SE/VorlesungSoftwaretechnik

      Comments

      Content

      Software Engineering is the science of software construction on a grand scale, that is the basic course of systems engineering.

      Software Engineering aims at giving answers to the following questions:

      • How to find out which characterstics a software should have (requirements engineering)
      • How to describe these characteristics (specifcation)
      • How to structure software so that it may be built easily and changed flexibly (design)
      • How to change software which does not have such a structure or whose structure you do not understand (anymore) (reengineering)
      • How to disguise defects in software (quality assurance, test)
      • How to organise the tasks in a software company or department to regularly achieve cost-efficient and high-quality results (process management)
      • Which (largely common) problems underlie all of these questions and which (mostly common) general approaches underlie the methods and techniques that are used

      ...and many similar ones.

      This lecture gives an overview of the methods and provides essential basic knowledge for any computer scientist working as an engineer.

      More detailed information may be found on the homepage http://www.inf.fu-berlin.de/w/SE/VorlesungSoftwaretechnik

      Suggested reading

      Bernd Brügge, Allen Dutoit: Objektorientierte Softwaretechnik mit UML, Entwurfsmustern und Java, Pearson 2004.

    • 19301402 Practice seminar
      Practice seminar for Software Engineering (Lutz Prechelt)
      Schedule: Mo 16:00-18:00, Di 08:00-10:00, Di 10:00-12:00, Di 16:00-18:00, Mi 08:00-10:00, Mi 10:00-12:00, Mi 14:00-16:00, Do 10:00-12:00, Do 14:00-16:00, Fr 10:00-12:00 (Class starts on: 2025-04-14)
      Location: T9/046 Seminarraum (Takustr. 9)
  • Operating and Communication Systems

    0087dA1.9
    • 19300701 Lecture
      Operating and Communication Systems (Larissa Groth)
      Schedule: Mo 12:00-14:00, zusätzliche Termine siehe LV-Details (Class starts on: 2025-04-14)
      Location: T9/Gr. Hörsaal (Takustr. 9)

      Comments

      The module operating and communication systems closes the gap between the hardware of a computer and the applications.

      We will cover the following topics::

      • I/O systems
      • DMA/PIO
      • Interrupt handling
      • Buffers
      • Processes/threads
      • Virtual memory
      • UNIX and Windows
      • Shells
      • Utilities
      • Peripherals and networking
      • Networks
      • Media
      • Media access
      • Protocols
      • Reference models
      • TCP/IP
      • The Internet

      Suggested reading

      • Andrew S. Tanenbaum: 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.

    • 19300704 PC-based Seminar
      Practice seminar for Operating and Communication Systems (Larissa Groth)
      Schedule: Mo 10:00-12:00, Mo 14:00-16:00, Di 10:00-12:00, Di 12:00-14:00, Mi 08:00-10:00, Mi 12:00-14:00, Mi 14:00-16:00, Do 10:00-12:00, Do 12:00-14:00, Do 16:00-18:00, Fr 14:00-16:00 (Class starts on: 2025-04-14)
      Location: T9/K38 Rechnerpoolraum (Takustr. 9)

      Comments

      Begleitveranstaltung zur Vorlesung 19300701

  • Software project A

    0159cA1.1
    • 19308312 Project Seminar
      Implementation Project: Applications of Algorithms (Mahmoud Elashmawi)
      Schedule: Do 08:30-10:00 (Class starts on: 2025-04-10)
      Location: T9/053 Seminarraum (Takustr. 9)

      Comments

      Contents

      We choose a typical application area of algorithms, usually for geometric problems, and develop software solutions for it, e.g., computer graphics (representation of objects in a computer, projections, hidden edge and surface removal, lighting, raytracing), computer vision (image processing, filtering, projections, camera calibration, stereo-vision) or pattern recognition (classification, searching).

      Prerequsitions

      Basic knowledge in design and anaylsis of algorithms.

      Suggested reading

      je nach Anwendungsgebiet

    • 19308412 Project Seminar
      Software Project: Data Management (Agnès Voisard)
      Schedule: Mo 12:00-14:00, zusätzliche Termine siehe LV-Details (Class starts on: 2025-02-05)
      Location: T9/137 Konferenzraum (Takustr. 9)

      Additional information / Pre-requisites

      Target group

      Students in the Master's or Bachelor's programme

       

      Prerequisites

      Good programming skills, introduction to database systems.

      Comments

      Subject of the project: either development of software together with a company (in this case: 4­ weeks fulltime August/September) or we build a so called NoSQL system. Decision in March. Further information are published in the KVV.

      Suggested reading

      Wird bekannt gegeben. / To be announced.

    • 19314012 Project Seminar
      Software Project: Semantic Technologies (Adrian Paschke)
      Schedule: Mi 14:00-16:00 (Class starts on: 2025-04-16)
      Location: A7/SR 031 (Arnimallee 7)

      Additional information / Pre-requisites

      Corporate Semantic Web

      Further information can be found on the course website

      Comments

      Mixed groups of master and bachelor students will either implement an independent project or are part of a larger project in the area of semantic technologies. They will gain in-depth programming knowledge about applications of semantic technologies and artificial intelligence techniques in the Corporate Semantic Web. They will practice teamwork and best practices in software development of large distributed systems and Semantic Web applications. The software project can be done in collaboration with an external partner from industry or standardization. It is possible to continue the project as bachelor or master thesis.

      Suggested reading

      Corporate Semantic Web

    • 19315312 Project Seminar
      Software Project: Distributed Systems (Justus Purat)
      Schedule: Mi 12:00-14:00 (Class starts on: 2025-04-16)
      Location: T9/K63 Hardwarepraktikum (Takustr. 9)
    • 19323612 Project Seminar
      The AMOS Project (Lutz Prechelt)
      Schedule: -
      Location: keine Angabe

      Additional information / Pre-requisites

      Educational objectives and competencies

      • Students learn about software products and software development in an industry context
      • Students learn about agile methods, in particular Scrum and Extreme Programming
      • Students learn about open source software development and its underlying principles
      • Students gain practical hands-on experience with a Scrum process and XP technical practices

      Target group

      Students of computer science (and related fields). If you want to play the software developer role, you should have had practical programming experience. This is not a course to learn programming.

      Language

      English (lectures in English, team meeting German or English by choice of student team)

      Grading

      • Software developer
        • 10% of grade: 5 class quizzes, each consisting of 5 questions at 2 points each
        • 90% of grade: Weekly project work

      Other

      • SWS: 4 SWS (2 SWS lecture, 2 SWS team meeting)
      • Semester: Every semester
      • Modality: Online, across multiple universities
      • Tags: Scrum

       

      Comments

      This course teaches agile methods (Scrum and XP) and open source tools using a single semester-long project. It takes place online and across multiple universities. Topics covered are:

      • Agile methods and related software development processes
      • Scrum roles, process practices, including product and engineering management
      • Technical practices like refactoring, continuous integration, and test-driven development
      • Principles and best practices of open source software development

      The project is a software development project in which each student team works with an industry partner who provides the idea for the project. This is a practical hands-on experience.

      Students play the role of a software developer. In this role, students estimate the effort for requirements and implement them. Students must have prior software development experience.

      Students will be organized into teams of 7-9 people, combining one Scrum master with two product owners with six software developers.

      An industry partner will provide requirements to be worked out in detail by the product owners and to be realized by the software developers. The available projects will be presented in the run-up to the course.

      Class consists of a 90 min. lecture followed by a 90 min. team meeting. Rooms and times for team meetings are assigned at the beginning of the semester. You must be able to regularly participate in the team meetings. If you can't, do not sign up for this course.

      Attention: this course is organized externally and additional sign-up steps are required. Sign-up and further course information are available through a Google spreadsheet at https://amos.uni1.de – please declare your interest by filling out the course interest declaration survey as soon as it opens.

      Suggested reading

      http://goo.gl/5Wqnr7

    • 19329912 Project Seminar
      Software Project: Secure Identity (Volker Roth)
      Schedule: Mi 10:00-12:00 (Class starts on: 2025-04-16)
      Location: A7/SR 031 (Arnimallee 7)

      Comments

      Die Aufgabe wird die Entwicklung einer Software sein. Es wird um sichere Softwareentwicklung gehen. Die Aufgabe wird in Gruppenarbeit gelöst.

    • 19334212 Project Seminar
      Softwareproject: Machine Learning and Explainability for Improved (Cancer) Treatment (Pauline Hiort)
      Schedule: Di 15:00-17:00, zusätzliche Termine siehe LV-Details (Class starts on: 2025-02-26)
      Location: T9/K40 Multimediaraum (Takustr. 9)

      Comments

      In the software project, we will implement, train, and evaluate various machine learning (ML) methods. The focus of the project is on neural networks (NN) and their explainability. We will compare the methods with different baseline models, such as regression models. The various ML methods will be applied to a specific dataset, e.g., for predicting drug combinations for cancer treatment, and evaluated accordingly. The dataset will be prepared by us and analyzed using the implemented methods. Additionally, we will focus on explainability to ensure that the predictions of the ML models are understandable and interpretable. For this purpose, we will integrate appropriate explainability techniques to better understand and visualize the decision-making processes of the models.

      The programming language is Python, and we plan to use modern Python modules for ML like scikit-learn, and PyTorch. Good Python skills are required. The goal is to create a Python package that provides reusable code for preprocessing, training ML models, and evaluating results with documentation (e.g., using Sphinx) for the specific use case. The software project takes place throughout the semester and can also be conducted in English.

    • 19334412 Project Seminar
      SWP: Szenario-Management in the Future Security Lab (Larissa Groth)
      Schedule: Mi 23.04. 14:00-16:00 (Class starts on: 2025-04-23)
      Location: T9/K63 Hardwarepraktikum (Takustr. 9)

      Comments

      The BeLIFE project, part of the working group Telematics & Computer Systems, focuses on improving knowledge transfer and communication in civil security research. A central component of the project is the Future Security Lab, located at the Einstein Center Digital Future (ECDF) in Mitte. The lab welcomes politicians from federal and state levels, as well as representatives from authorities and organizations with security responsibilities.

      Within the software project, students develop concepts to optimize and creatively enhance the existing technical infrastructure of the space. The goal is to increase the usability of the space for scientists and improve the user experience for visitors. To achieve this, the software project consists of several sub-areas, either arising from a specific problem to be solved or requiring creative approaches and ingenuity. Tasks include system administration, interface development, as well as light/sound installation and orchestration. Examples of challenges include the parallel startup of all computers in a network via WakeOn LAN from a web app or optimizing the existing web app for scenario presentation.

      The tasks are exclusively addressed in small groups (3-5 students). Collaboration and code availability are facilitated through the department's own GitLab or a public GitHub. Results should be well-documented, for example, through README files in Git and a well-structured wiki. Modularity and expandability of the developed code, along with thorough documentation, are crucial for the success of this software project!

      Regarding the process, this software project takes place throughout the semester. There are a few mandatory large group meetings with all participants. In addition, there are short weekly meetings where at least one group member reports on the current status. The first date (23.04.25, 14h, K63) will take place at Takustraße 9. At this event, the solutions already implemented will be presented in theory and the problems addressed. A live demo will then take place one week later, on 30.04.2025, in Berlin Mitte at the Future Security Lab, Wilhelmstr. 67, 10117 Berlin. Afterwards, there are a total of three presentation dates: the presentation of an initial approach to problem-solving (14.04.2025), a brief interim presentation (11.06.2025), and the final presentation (16.07.2025).

      Students also regularly have the opportunity to work in the Future Security Lab premises, familiarize themselves with the equipment, and conduct tests.

  • Software project B

    0159cA1.2
    • 19308312 Project Seminar
      Implementation Project: Applications of Algorithms (Mahmoud Elashmawi)
      Schedule: Do 08:30-10:00 (Class starts on: 2025-04-10)
      Location: T9/053 Seminarraum (Takustr. 9)

      Comments

      Contents

      We choose a typical application area of algorithms, usually for geometric problems, and develop software solutions for it, e.g., computer graphics (representation of objects in a computer, projections, hidden edge and surface removal, lighting, raytracing), computer vision (image processing, filtering, projections, camera calibration, stereo-vision) or pattern recognition (classification, searching).

      Prerequsitions

      Basic knowledge in design and anaylsis of algorithms.

      Suggested reading

      je nach Anwendungsgebiet

    • 19308412 Project Seminar
      Software Project: Data Management (Agnès Voisard)
      Schedule: Mo 12:00-14:00, zusätzliche Termine siehe LV-Details (Class starts on: 2025-02-05)
      Location: T9/137 Konferenzraum (Takustr. 9)

      Additional information / Pre-requisites

      Target group

      Students in the Master's or Bachelor's programme

       

      Prerequisites

      Good programming skills, introduction to database systems.

      Comments

      Subject of the project: either development of software together with a company (in this case: 4­ weeks fulltime August/September) or we build a so called NoSQL system. Decision in March. Further information are published in the KVV.

      Suggested reading

      Wird bekannt gegeben. / To be announced.

    • 19314012 Project Seminar
      Software Project: Semantic Technologies (Adrian Paschke)
      Schedule: Mi 14:00-16:00 (Class starts on: 2025-04-16)
      Location: A7/SR 031 (Arnimallee 7)

      Additional information / Pre-requisites

      Corporate Semantic Web

      Further information can be found on the course website

      Comments

      Mixed groups of master and bachelor students will either implement an independent project or are part of a larger project in the area of semantic technologies. They will gain in-depth programming knowledge about applications of semantic technologies and artificial intelligence techniques in the Corporate Semantic Web. They will practice teamwork and best practices in software development of large distributed systems and Semantic Web applications. The software project can be done in collaboration with an external partner from industry or standardization. It is possible to continue the project as bachelor or master thesis.

      Suggested reading

      Corporate Semantic Web

    • 19315312 Project Seminar
      Software Project: Distributed Systems (Justus Purat)
      Schedule: Mi 12:00-14:00 (Class starts on: 2025-04-16)
      Location: T9/K63 Hardwarepraktikum (Takustr. 9)
    • 19323612 Project Seminar
      The AMOS Project (Lutz Prechelt)
      Schedule: -
      Location: keine Angabe

      Additional information / Pre-requisites

      Educational objectives and competencies

      • Students learn about software products and software development in an industry context
      • Students learn about agile methods, in particular Scrum and Extreme Programming
      • Students learn about open source software development and its underlying principles
      • Students gain practical hands-on experience with a Scrum process and XP technical practices

      Target group

      Students of computer science (and related fields). If you want to play the software developer role, you should have had practical programming experience. This is not a course to learn programming.

      Language

      English (lectures in English, team meeting German or English by choice of student team)

      Grading

      • Software developer
        • 10% of grade: 5 class quizzes, each consisting of 5 questions at 2 points each
        • 90% of grade: Weekly project work

      Other

      • SWS: 4 SWS (2 SWS lecture, 2 SWS team meeting)
      • Semester: Every semester
      • Modality: Online, across multiple universities
      • Tags: Scrum

       

      Comments

      This course teaches agile methods (Scrum and XP) and open source tools using a single semester-long project. It takes place online and across multiple universities. Topics covered are:

      • Agile methods and related software development processes
      • Scrum roles, process practices, including product and engineering management
      • Technical practices like refactoring, continuous integration, and test-driven development
      • Principles and best practices of open source software development

      The project is a software development project in which each student team works with an industry partner who provides the idea for the project. This is a practical hands-on experience.

      Students play the role of a software developer. In this role, students estimate the effort for requirements and implement them. Students must have prior software development experience.

      Students will be organized into teams of 7-9 people, combining one Scrum master with two product owners with six software developers.

      An industry partner will provide requirements to be worked out in detail by the product owners and to be realized by the software developers. The available projects will be presented in the run-up to the course.

      Class consists of a 90 min. lecture followed by a 90 min. team meeting. Rooms and times for team meetings are assigned at the beginning of the semester. You must be able to regularly participate in the team meetings. If you can't, do not sign up for this course.

      Attention: this course is organized externally and additional sign-up steps are required. Sign-up and further course information are available through a Google spreadsheet at https://amos.uni1.de – please declare your interest by filling out the course interest declaration survey as soon as it opens.

      Suggested reading

      http://goo.gl/5Wqnr7

    • 19329912 Project Seminar
      Software Project: Secure Identity (Volker Roth)
      Schedule: Mi 10:00-12:00 (Class starts on: 2025-04-16)
      Location: A7/SR 031 (Arnimallee 7)

      Comments

      Die Aufgabe wird die Entwicklung einer Software sein. Es wird um sichere Softwareentwicklung gehen. Die Aufgabe wird in Gruppenarbeit gelöst.

    • 19334212 Project Seminar
      Softwareproject: Machine Learning and Explainability for Improved (Cancer) Treatment (Pauline Hiort)
      Schedule: Di 15:00-17:00, zusätzliche Termine siehe LV-Details (Class starts on: 2025-02-26)
      Location: T9/K40 Multimediaraum (Takustr. 9)

      Comments

      In the software project, we will implement, train, and evaluate various machine learning (ML) methods. The focus of the project is on neural networks (NN) and their explainability. We will compare the methods with different baseline models, such as regression models. The various ML methods will be applied to a specific dataset, e.g., for predicting drug combinations for cancer treatment, and evaluated accordingly. The dataset will be prepared by us and analyzed using the implemented methods. Additionally, we will focus on explainability to ensure that the predictions of the ML models are understandable and interpretable. For this purpose, we will integrate appropriate explainability techniques to better understand and visualize the decision-making processes of the models.

      The programming language is Python, and we plan to use modern Python modules for ML like scikit-learn, and PyTorch. Good Python skills are required. The goal is to create a Python package that provides reusable code for preprocessing, training ML models, and evaluating results with documentation (e.g., using Sphinx) for the specific use case. The software project takes place throughout the semester and can also be conducted in English.

    • 19334412 Project Seminar
      SWP: Szenario-Management in the Future Security Lab (Larissa Groth)
      Schedule: Mi 23.04. 14:00-16:00 (Class starts on: 2025-04-23)
      Location: T9/K63 Hardwarepraktikum (Takustr. 9)

      Comments

      The BeLIFE project, part of the working group Telematics & Computer Systems, focuses on improving knowledge transfer and communication in civil security research. A central component of the project is the Future Security Lab, located at the Einstein Center Digital Future (ECDF) in Mitte. The lab welcomes politicians from federal and state levels, as well as representatives from authorities and organizations with security responsibilities.

      Within the software project, students develop concepts to optimize and creatively enhance the existing technical infrastructure of the space. The goal is to increase the usability of the space for scientists and improve the user experience for visitors. To achieve this, the software project consists of several sub-areas, either arising from a specific problem to be solved or requiring creative approaches and ingenuity. Tasks include system administration, interface development, as well as light/sound installation and orchestration. Examples of challenges include the parallel startup of all computers in a network via WakeOn LAN from a web app or optimizing the existing web app for scenario presentation.

      The tasks are exclusively addressed in small groups (3-5 students). Collaboration and code availability are facilitated through the department's own GitLab or a public GitHub. Results should be well-documented, for example, through README files in Git and a well-structured wiki. Modularity and expandability of the developed code, along with thorough documentation, are crucial for the success of this software project!

      Regarding the process, this software project takes place throughout the semester. There are a few mandatory large group meetings with all participants. In addition, there are short weekly meetings where at least one group member reports on the current status. The first date (23.04.25, 14h, K63) will take place at Takustraße 9. At this event, the solutions already implemented will be presented in theory and the problems addressed. A live demo will then take place one week later, on 30.04.2025, in Berlin Mitte at the Future Security Lab, Wilhelmstr. 67, 10117 Berlin. Afterwards, there are a total of three presentation dates: the presentation of an initial approach to problem-solving (14.04.2025), a brief interim presentation (11.06.2025), and the final presentation (16.07.2025).

      Students also regularly have the opportunity to work in the Future Security Lab premises, familiarize themselves with the equipment, and conduct tests.

  • Algorithms, data structures and data abstraction A

    0511bA3.13
    • 19300101 Lecture
      Algorithms and Data Structures (Wolfgang Mulzer)
      Schedule: Di 16:00-18:00, Fr 12:00-14:00, zusätzliche Termine siehe LV-Details (Class starts on: 2025-04-15)
      Location: Gr. Hörsaal (Raum B.001) (Arnimallee 22)

      Comments

      Qualification goals

      The students can analyze algorithms and data structures and their implementations with respect to running time, space requirements, and correctness. The students can describe different algorithms and data structures for typical applications and know how to use them in concrete settings. They can choose appropriate algorithms and data structures for a given task and are able to adapt them accordingly. Students can explain, identify and use different paradigms for designing new algorithms.

      Contents

      • abstract machine models
      • running time, correctness and space requirements
      • worst-case analysis
      • algorithms and randomness
      • algorithmic paradigms: divide and conquer, greedy, dynamic programming, exhaustive search
      • priority queues
      • ordered and unordered dictionaries (e.g., search trees, hash tables, skiplists)
      • algorithms for strings (string searching and radix trees)
      • graph algorithms 

      Suggested reading

      • P. Morin: Open Data Structures, an open content textboox.
      • T. H. Cormen, C. Leiserson, R. Rivest, C. Stein: Introduction to Algorithms, MIT Press, 2022.
      • R. Sedgewick, K. Wayne: Algorithms, Addison-Wesley, 2011.
      • M. Dietzfelbinger, K. Mehlhorn, P. Sanders. Algorithmen und Datenstrukturen: Die Grundwerkzeuge, Springer, 2014.
      • J. Erickson. Algorithms, 2019
      • T. Roughgarden. Algorithms Illuminated. Cambridge University Press, 2022.

    • 19300102 Practice seminar
      Practice seminar for Algorithms and Data Structures (Wolfgang Mulzer)
      Schedule: Mo 14:00-16:00, Mo 16:00-18:00, Di 12:00-14:00, Mi 12:00-14:00, Mi 14:00-16:00, Mi 16:00-18:00, Do 16:00-18:00, Fr 14:00-16:00, Fr 16:00-18:00 (Class starts on: 2025-04-14)
      Location: T9/051 Seminarraum (Takustr. 9)
    • Grundlagen und Vertiefung Fachdidaktik Informatik im Profil Quereinstieg 0502bA1.1
    • Image Processing 0089cA1.1
    • Medical Image Processing 0089cA1.10
    • Model-driven Software Development 0089cA1.11
    • Network-Based Information Systems 0089cA1.13
    • Computer Security 0089cA1.16
    • Compiler Construction 0089cA1.19
    • Computer Graphics 0089cA1.2
    • XML Technology 0089cA1.21
    • Practices in Professional Software Development 0089cA1.22
    • Computer Vision 0089cA1.3
    • Database Technology 0089cA1.4
    • Fundamentals of Software Testing 0089cA1.7
    • Artificial Intelligence 0089cA1.9
    • Semantics of Programming Languages 0089cA2.9
    • Operating Systems 0089cA3.1
    • Object-Oriented Programming for Students with Programming Skills 0086cA1.2
    • Object-Oriented Programming for Students with No Programming Skills 0086cA1.3
    • Impacts of Computer Science 0086cA3.1
    • Fundamentals of Theoretical Computer Science 0086cA4.1
    • Fundamentals of Computer Systems 0086cB1.1
    • Computer Architecture 0087dA1.8
    • Social Aspects of Computer Science 0159cA2.3