Non-Sequential program execution and object oriented systems
Control flow, strategies selection, priorities, handling and avoiding deadlock
Coroutines implementation,
- Multiprocessor systems
Programming and Synchronisation of concurrent processes that interact through message passing
Remote Calling Techniques
Client-server, Peer-to-peer Networks
Parallel computing over networks
Concurrent and coordination languages
Processing on the server and on the client.
Middleware, structured communication, static and dynamic interfaces
Event-based and stream-based processing
Security of network applications
Non-functional Aspects (time, memory, quality of service)
The contents of the course Operating and Communication Systems (BKS) are a prerequisite and prior completion is strongly recommended.
References
Literatur:
Principles of Concurrent and Distributed Programming. M. Ben-Ari. Addison-Wesley.
Distributed Systems. Concepts and Design. Fifth Edition. George Coulouris, Jean Dollimore, Tim Kindberg, Gordon Blair. Pearson.
19322102: Practice seminar for Concurrent and Distributed Programming
2.0 SWS
Tentative
EBarryLinnert
Practice seminar
0086bA.1.5.2Network Programming
0086bA.2.25 ECTS
Computer Architecture
19300601: Computer Architecture
2.0 SWS
Tentative
RELarissaGroth
Lecture
0086bA.2.2.1Computer Architecture
The module Computer Architecture covers basic concepts of computer systems. Topics are von-Neuman/Harvard architecture, microarchitectures, RISC/CISC, micro programming, pipelining, caches, memory hierarchy, bus systems, assembler programming, multi processor systems, branch prediction, representation of numbers and other data types, computer arithmetic.
References
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: Practice seminar for Computer Architecture
2.0 SWS
Tentative
RELarissaGroth
PC-based Seminar
0086bA.2.2.2Computer Architecture
0086bA.3.17 ECTS
Fundamentals of Theoretical Computer Science
19301201: Foundations of Theoretical Computer Science
2.0 SWS
Edited
EWolfgangMulzer
EKatharinaKlost
Lecture
0086bA.3.1.1Fundamentals of Theoretical Computer Science
Contents:
models of computation
automata
formal languates
grammars and the Chomsky-hierarchy
Turing-machines
computabilty
introduction to the complexity of computational problems
John E. Hopcroft, Rajeev Motwani, Jeffrey D. Ullman, Einführung in die Automatentheorie, Formale Sprachen und Komplexität, Pearson Studium, 3. Auflage, 2011
Michael Sipser, Introduction to the Theory of Computation, 2nd ed., Thomson Course Technology, 2006
Wegener, Kompendium theoretische Informatik - Eine Ideensammlung, Teubner 1996
19301202: Practice seminar for Foundations of Theoretical Computer Science
2.0 SWS
Edited
EWolfgangMulzer
EKatharinaKlost
Practice seminar
0086bA.3.1.2Fundamentals of Theoretical Computer Science
0086bA.3.410 ECTS
Software Project
19319312: Implementation Project: Coding IxD
2.0 SWS
Tentative
REClaudiaMüller-Birn
Project Seminar
0086bA.3.4.1Software Project
Coding IxD: Designing Neoanalog Artefacts
In this course, we co-educate computer scientists and product designers. Beyond experiencing interdisciplinary work, we want students to envision interactive systems that are intelligent: by this, we mean an intelligence through code that is carefully using material, form, and context, while profoundly respecting both human capabilities and vulnerabilities.
We understand this course as experimental space, where different perspectives meet, exchange, and evolve. Each semester, based on small project teams of up to five members, students are challenged to examine a specific application context. Within this context, the teams envision a new application or product concept.
We guide this process through various carefully tuned methods that are used to spark their ideas. Students iterate through several rounds of ideation and refine their concept in different prototype versions. The most compelling or promising interaction concept, the one that allows grasping the quality and essence of the product concept is implemented in a working prototype.
Students are accompanied by a team of experienced designers and computer scientists but also by guest experts that provide feedback to the various design iterations. If needed, special workshops are organized to cover specific topics ranging from prototyping to project management. The whole course is evaluated continuously to enhance our methodological toolbox.
Besides the regular weekly meetings, the KHB provides complimentary workshops each Monday from 10 AM to 1 PM where participation for computer science students is optional.
References
Zimmerman, John, Jodi Forlizzi, and Shelley Evenson. "Research through design as a method for interaction design research in HCI." Proceedings of the SIGCHI conference on Human factors in computing systems. 2007.
Pierce, James, et al. "Expanding and refining design and criticality in HCI." Proceedings of the 33rd Annual ACM Conference on Human Factors in Computing Systems. 2015.
Anthony Dunne and Fiona Raby. 2013. Speculative Everything: Design, Fiction, and Social Dreaming. The MIT Press.
Additional information
Weitergehende Informationen zu den Veranstaltungsinhalten finden Sie unter:
Die Lehrveranstaltung findet in Kooperation mit der Weissensee Kunsthochschule Berlin statt. Wir treffen uns jeden Mittwoch im Labor des Exzellenzclusters „Bild Wissen Gestaltung“ an der HU Berlin.
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.
References
Wird bekannt gegeben. / To be announced.
Additional information
Zielgruppe
Studierende im Master- bzw. Bachelorstudiengang
Voraussetzungen
Gute Programmierkenntnisse, Einführung in Datenbanksysteme.
19314012: Software Project: Semantic Technologies
2.0 SWS
Edited
EAdrianPaschke
Project Seminar
0086bA.3.4.1Software Project
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 AI 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 AI 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.
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 take on the role of a software developer. In this role, they estimate and evaluate the effort of requirements and implement them in the project.
Students will be organized into teams of 7-8 people, combining product owners with 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.
The course consists of 90min lectures (participation voluntary) followed by a 90min team meeting (participation mandatory).
Attention: External course, separate registration is required, see https://amos.uni1.de
Studierende lernen zu Softwareprodukten und Softwareentwicklung in der Industrie
Studierende lernen zu agilen Methoden, insbesondere Scrum und Extreme Programming
Studierende lernen zu Open-Source-Softwareentwicklung und ihren Prinzipien
Studierende erwerben praktische Erfahrung mit Scrum und Extrem Programming
Zielgruppe
Studierende der Informatik (und verwandte Disziplinen). Für die Softwareentwickler:innen Rolle sollten Sie praktische Programmiererfahrung mitbringen. Dieser Kurs ist nicht geeignet, um Programmieren zu lernen.
Sprache
Englisch (Vorlesungen auf Englisch, Team-Meeting auf Deutsch oder Englisch nach Wahl der Studierenden)
Weiteres
SWS: 4 SWS (2 SWS VL, 2 SWS Team-Meeting)
Semester: Jedes Wintersemester
Modalität: Online, universitätsübergreifend
Tags: Scrum
0086bA.4.28 ECTS
Analysis
19301101: Analysis for Computer Science and Bioinformatics
4.0 SWS
Tentative
EKlausKriegel
REKatharinaWolter
Lecture
0086bA.4.2.1Analysis
Contents:
number systems: from natural numbers to real numbers, completeness property of the reals
polynomials: roots of polynomials, polynomial interpolation, rational functions
special functions: exponential function, logarithm, trigonometric functions
complex numbers: exponential function for complex numbers, complex roots
convergence of sequences and series, convergence of functions, continuous functions, O-notation
differential calculus: derivative of a function, interpretations and applications of the derivative
intergral calculus: primitive functions, definite integrals, fundamental theorem of calculus, applications
power series
basics of stochastics: probability spaces, discrete and continuous random variables, expected value and variance of random variables
References
Kurt Meyberg, Peter Vachenauer: Höhere Mathematik 1, Springer-Verlag, 6. Auflage 2001
Dirk Hachenberger: Mathematik für Informatiker, Pearson 2005
Peter Hartmann: Mathematik für Informatiker, Vieweg, 4. Auflage 2006
Thomas Westermann: Mathematik für Ingenieure mit Maple 1, Springer-Verlag, 4. Auflage 2005
Additional information
Freischaltung der Anmeldung zu Tutorien wird rechtzeitig bekanntgegeben.
19301102: Practice seminar for Analysis for Computer Science
2.0 SWS
Tentative
AlexanderBaumann
Practice seminar
0086bA.4.2.2Analysis
0086bA.5.124 ECTS
Specialization Module (Seminar) I
19306017: Seminar/Proseminar: Data Visualization and Mining
2.0 SWS
Edited
EAgnèsVoisard
RMuhammed-UgurKaragülle
Seminar / Undergraduate Course
0086bA.5.12.1Seminar Vertiefungsmodul I
Advanced module data visualization and data mining.
In this course, we co-educate computer scientists and product designers. Beyond experiencing interdisciplinary work, we want students to envision interactive systems that are intelligent: by this, we mean an intelligence through code that is carefully using material, form, and context, while profoundly respecting both human capabilities and vulnerabilities.
We understand this course as experimental space, where different perspectives meet, exchange, and evolve. Each semester, based on small project teams of up to five members, students are challenged to examine a specific application context. Within this context, the teams envision a new application or product concept.
We guide this process through various carefully tuned methods that are used to spark their ideas. Students iterate through several rounds of ideation and refine their concept in different prototype versions. The most compelling or promising interaction concept, the one that allows grasping the quality and essence of the product concept is implemented in a working prototype.
Students are accompanied by a team of experienced designers and computer scientists but also by guest experts that provide feedback to the various design iterations. If needed, special workshops are organized to cover specific topics ranging from prototyping to project management. The whole course is evaluated continuously to enhance our methodological toolbox.
Besides the regular weekly meetings, the KHB provides complimentary workshops each Monday from 10 AM to 1 PM where participation for computer science students is optional.
References
Zimmerman, John, Jodi Forlizzi, and Shelley Evenson. "Research through design as a method for interaction design research in HCI." Proceedings of the SIGCHI conference on Human factors in computing systems. 2007.
Pierce, James, et al. "Expanding and refining design and criticality in HCI." Proceedings of the 33rd Annual ACM Conference on Human Factors in Computing Systems. 2015.
Anthony Dunne and Fiona Raby. 2013. Speculative Everything: Design, Fiction, and Social Dreaming. The MIT Press.
Additional information
Weitergehende Informationen zu den Veranstaltungsinhalten finden Sie unter:
Die Lehrveranstaltung findet in Kooperation mit der Weissensee Kunsthochschule Berlin statt. Wir treffen uns jeden Mittwoch im Labor des Exzellenzclusters „Bild Wissen Gestaltung“ an der HU Berlin.
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.
References
Wird bekannt gegeben. / To be announced.
Additional information
Zielgruppe
Studierende im Master- bzw. Bachelorstudiengang
Voraussetzungen
Gute Programmierkenntnisse, Einführung in Datenbanksysteme.
0086bA.5.2310 ECTS
Specialisation Module (project 4 hrs/wk) I
19319312: Implementation Project: Coding IxD
2.0 SWS
Tentative
REClaudiaMüller-Birn
Project Seminar
0086bA.5.23.1Projekt Vertiefungsmodul
Coding IxD: Designing Neoanalog Artefacts
In this course, we co-educate computer scientists and product designers. Beyond experiencing interdisciplinary work, we want students to envision interactive systems that are intelligent: by this, we mean an intelligence through code that is carefully using material, form, and context, while profoundly respecting both human capabilities and vulnerabilities.
We understand this course as experimental space, where different perspectives meet, exchange, and evolve. Each semester, based on small project teams of up to five members, students are challenged to examine a specific application context. Within this context, the teams envision a new application or product concept.
We guide this process through various carefully tuned methods that are used to spark their ideas. Students iterate through several rounds of ideation and refine their concept in different prototype versions. The most compelling or promising interaction concept, the one that allows grasping the quality and essence of the product concept is implemented in a working prototype.
Students are accompanied by a team of experienced designers and computer scientists but also by guest experts that provide feedback to the various design iterations. If needed, special workshops are organized to cover specific topics ranging from prototyping to project management. The whole course is evaluated continuously to enhance our methodological toolbox.
Besides the regular weekly meetings, the KHB provides complimentary workshops each Monday from 10 AM to 1 PM where participation for computer science students is optional.
References
Zimmerman, John, Jodi Forlizzi, and Shelley Evenson. "Research through design as a method for interaction design research in HCI." Proceedings of the SIGCHI conference on Human factors in computing systems. 2007.
Pierce, James, et al. "Expanding and refining design and criticality in HCI." Proceedings of the 33rd Annual ACM Conference on Human Factors in Computing Systems. 2015.
Anthony Dunne and Fiona Raby. 2013. Speculative Everything: Design, Fiction, and Social Dreaming. The MIT Press.
Additional information
Weitergehende Informationen zu den Veranstaltungsinhalten finden Sie unter:
Die Lehrveranstaltung findet in Kooperation mit der Weissensee Kunsthochschule Berlin statt. Wir treffen uns jeden Mittwoch im Labor des Exzellenzclusters „Bild Wissen Gestaltung“ an der HU Berlin.
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.
References
Wird bekannt gegeben. / To be announced.
Additional information
Zielgruppe
Studierende im Master- bzw. Bachelorstudiengang
Voraussetzungen
Gute Programmierkenntnisse, Einführung in Datenbanksysteme.
0086bA.5.44 ECTS
Specialization Module (Seminar)
19306017: Seminar/Proseminar: Data Visualization and Mining
2.0 SWS
Edited
EAgnèsVoisard
RMuhammed-UgurKaragülle
Seminar / Undergraduate Course
0086bA.5.4.1Seminar Vertiefungsmodul
Advanced module data visualization and data mining.
References
Wird bekannt gegeben.
Additional information
Vorbesprechungstermin wird noch bekannt gegeben.
0086c_k150
2014, BSc Informatik (Mono), 150 LPs
0086cA.1.59 ECTS
Non-sequential and Distributed Programming
19322101: Concurrent, Parallel, and Distributed Programming
4.0 SWS
Tentative
EBarryLinnert
Lecture
0086cA.1.5.1Non-sequential and Distributed Programming
Non-Sequential program execution and object oriented systems
Control flow, strategies selection, priorities, handling and avoiding deadlock
Coroutines implementation,
- Multiprocessor systems
Programming and Synchronisation of concurrent processes that interact through message passing
Remote Calling Techniques
Client-server, Peer-to-peer Networks
Parallel computing over networks
Concurrent and coordination languages
Processing on the server and on the client.
Middleware, structured communication, static and dynamic interfaces
Event-based and stream-based processing
Security of network applications
Non-functional Aspects (time, memory, quality of service)
The contents of the course Operating and Communication Systems (BKS) are a prerequisite and prior completion is strongly recommended.
References
Literatur:
Principles of Concurrent and Distributed Programming. M. Ben-Ari. Addison-Wesley.
Distributed Systems. Concepts and Design. Fifth Edition. George Coulouris, Jean Dollimore, Tim Kindberg, Gordon Blair. Pearson.
19322102: Practice seminar for Concurrent and Distributed Programming
2.0 SWS
Tentative
EBarryLinnert
Practice seminar
0086cA.1.5.2Non-sequential and Distributed Programming
0086cA.2.110 ECTS
Computer Architecture, Operation and Communication Systems
19300601: Computer Architecture
2.0 SWS
Tentative
RELarissaGroth
Lecture
0086cA.2.1.1Computer Architecture, Operation and Communication Systems
The module Computer Architecture covers basic concepts of computer systems. Topics are von-Neuman/Harvard architecture, microarchitectures, RISC/CISC, micro programming, pipelining, caches, memory hierarchy, bus systems, assembler programming, multi processor systems, branch prediction, representation of numbers and other data types, computer arithmetic.
References
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: Practice seminar for Computer Architecture
2.0 SWS
Tentative
RELarissaGroth
PC-based Seminar
0086cA.2.1.2Rechnerarchitektur, Betriebs- u. Kommunikationssysteme: Seminar am PC
0086cA.3.15 ECTS
Impacts of Computer Science
19301301: Consequences of Computer Science
2.0 SWS
Edited
RELutzPrechelt
Lecture
0086cA.3.1.1Impacts of Computer Science
This course deals with the consequences of computer science. Its aim is to establish an understanding of the fact that computer systems intervene in manifold ways in our private and professional lifes and shapen them. Many of these influences bring about major risks and need a conscious and enlightened composition in which computer scientists by nature play an important role -- or should at least do so.
We will for example have a look at how computerisation influences our private sphere, economics and society as a whole, our security and working environment. A conceptual introduction will provide orientational knowledge besides basic knowledge (Verfügungswissen) and strategies how to deal with both: analyse critically and get involved in the technical development.
References
See the slides.
Additional information
Kurssprache ist Deutsch inklusive Folien und Übungsblätter.
John E. Hopcroft, Rajeev Motwani, Jeffrey D. Ullman, Einführung in die Automatentheorie, Formale Sprachen und Komplexität, Pearson Studium, 3. Auflage, 2011
Michael Sipser, Introduction to the Theory of Computation, 2nd ed., Thomson Course Technology, 2006
Wegener, Kompendium theoretische Informatik - Eine Ideensammlung, Teubner 1996
19301202: Practice seminar for Foundations of Theoretical Computer Science
2.0 SWS
Edited
EWolfgangMulzer
EKatharinaKlost
Practice seminar
0086cA.4.1.2Fundamentals of Theoretical Computer Science
0086cA.5.19 ECTS
Logic and Discrete Mathematics
19300901: Discrete Structures for Computer Science
4.0 SWS
Edited
REKatharinaKlost
Lecture
0086cA.5.1.1Logic and Discrete Mathematics
Qualifikationsziele
Die Studierenden formulieren3 Aussagen formal aussagenlogisch und prädikatenlogisch. Sie analysieren4 und vereinfachen3 die logische Struktur gegebener Aussagen und beschreiben4 die logische Struktur von Beweisen. Sie benennen Eigenschaften unterschiedlicher Mengen, Relationen und Funktionen und begründen4 diese mit Hilfe formaler Argumente. Sie können Beweise für elementare Aussagen unter Verwendung elementarer Beweistechniken entwickeln5 und die Mächtigkeit von Mengen mit Hilfe kombinatorischer Techniken sowie Wahrscheinlichkeiten von Zufallsereignissen bestimmen3. Sie sind in der Lage, Fragestellungen der (Bio-)Informatik mit Hilfe der Graphentheorie und der diskreten Wahrscheinlichkeitstheorie zu modellieren.3. Die Studierenden benennen Eigenschaften unterschiedlicher Graphen und begründen4 diese mit Hilfe formaler Argumente.
Inhalte
Studierende erlernen grundlegende Konzepte der Mengenlehre, Logik, Booleschen Algebra, Kombinatorik und Graphentheorie und üben deren Anwendung. Sie erarbeiten sich in der Mengenlehre Mengen, Relationen, Äquivalenz- und Ordnungsrelationen und Funktionen. Im Bereich der Logik und Booleschen Algebra erarbeiten sie sich Aspekte der Aussagenlogik, Prädikatenlogik, Erfüllbarkeitstests, sowie Boolesche Funktionen und Normalformen. Im Themenfeld Kombinatorik erlernen und diskutieren sie das Schubfachprinzip, Rekursion, Abzählprinzipien, Fakultät und Binomialkoeffizienten. Im Themenfeld Graphentheorie erarbeiten sie Repräsentationsformen, Wege, Kreise und Bäume. Zuletzt erarbeiten sie sich verschiedene Beweistechniken und grundlegende Aspekte Diskreter Wahrscheinlichkeitstheorie. Die meisten dieser Konzepte werden an Rechen- oder Beweisaufgaben geübt.
19300902: Practice seminar for Discrete Structures for CS
2.0 SWS
Edited
REKatharinaKlost
Practice seminar
0086cA.5.1.2Logic and Discrete Mathematics
0086cA.5.310 ECTS
Analysis for Computer Scientists
19301101: Analysis for Computer Science and Bioinformatics
4.0 SWS
Tentative
EKlausKriegel
REKatharinaWolter
Lecture
0086cA.5.3.1Analysis for Computer Scientists
Contents:
number systems: from natural numbers to real numbers, completeness property of the reals
polynomials: roots of polynomials, polynomial interpolation, rational functions
special functions: exponential function, logarithm, trigonometric functions
complex numbers: exponential function for complex numbers, complex roots
convergence of sequences and series, convergence of functions, continuous functions, O-notation
differential calculus: derivative of a function, interpretations and applications of the derivative
intergral calculus: primitive functions, definite integrals, fundamental theorem of calculus, applications
power series
basics of stochastics: probability spaces, discrete and continuous random variables, expected value and variance of random variables
References
Kurt Meyberg, Peter Vachenauer: Höhere Mathematik 1, Springer-Verlag, 6. Auflage 2001
Dirk Hachenberger: Mathematik für Informatiker, Pearson 2005
Peter Hartmann: Mathematik für Informatiker, Vieweg, 4. Auflage 2006
Thomas Westermann: Mathematik für Ingenieure mit Maple 1, Springer-Verlag, 4. Auflage 2005
Additional information
Freischaltung der Anmeldung zu Tutorien wird rechtzeitig bekanntgegeben.
19301102: Practice seminar for Analysis for Computer Science
2.0 SWS
Tentative
AlexanderBaumann
Practice seminar
0086cA.5.3.2Analysis for Computer Scientists
0086cA.6.15 ECTS
Scientific Work in Computer Science
19319701: Scientific Work/Research in Computer Science
1.0 SWS
Edited
REVolkerRoth
Lecture
0086cA.6.1.1Scientific Work in Computer Science
The lecture introduces students to scientific work. The essential forms of written and oral knowledge representation are described. It explains how to write computer science texts and how to read and examine them. Furthermore, students will be introduced to legal, ethical and philosophical problems of the sciences and in particular of computer science. Furthermore, problems of gender and diversity in computer science and in lectures will be presented and solution strategies will be discussed.
19313017: Seminar/Proseminar: Agile methods and technical practices
2.0 SWS
Edited
ELinusVervers
RLutzPrechelt
Seminar / Undergraduate Course
0086cA.6.1.2Wissenschaftliches Arbeiten in der Informatik: Proseminar
More than 20 years after the first publication of the agile manifesto (https://agilemanifesto.org/iso/en/manifesto.html), agile software development is here to stay. At the very least, many companies are tempted by the promise of agile development and flat hierarchies. In this seminar, we will look at different agile methods (Scrum, Kanban, eXtreme Programming, etc.), how they are used in practice, where and why they are deviated from and the technical practices (pair programming, continuous integration, DevOps, etc.) that support the agile way of working.
During this seminar, students are expected to conduct independent research on their chosen topic. Whether the course is booked as a seminar or proseminar has an influence on the requirements:
Seminar: Here, several good sources (5-10) are to be found and a summary of the results presented. The aim is to work out the current state of research on the basis of a selected research question, identify gaps and contradictions in the research and derive recommendations for practice.
Proseminar: A good source should be found and presented in detail. Other related works (1-3) should only be discussed in passing for comparison. In the scientific articles presented, the conclusions presented should be critically examined with regard to credibility and relevance.
References
The articles available for selection can be found in the resources folder on the KVV page.
Additional information
Webseite
https://www.mi.fu-berlin.de/w/SE/SeminarAgil2024
Dozent
Linus Ververs
Sprache
Deutsch (Vortrag kann auf Englisch gehalten werden)
Zielgruppe
Proseminar: Bachelorstudierende, die das Modul "Wissenschaftliches Arbeiten in der Informatik" besuchen / besucht haben und im Rahmen dieses Seminars das erste Mal das gelernte Wissen anwenden und wissenschaftlich arbeiten.
Seminar: Fortgeschrittene Bachelorstudierende, die das Modul im Rahmen ihres Vertiefungsbereichs besuchen oder Masterstudierende
Voraussetzungen
Das Modul Softwaretechnik bereits besucht zu haben, wird dringend empfohlen. (Falls nicht, bitte im Voraus kontakt zum Dozenten aufnehmen.)
19301710: Undergraduate Seminar: Coding Theory
2.0 SWS
Edited
REMaxWillert
Undergraduate Course
0086cA.6.1.2Wissenschaftliches Arbeiten in der Informatik: Proseminar
Contents
The proseminar delves more deeply into topics covered in the basic classes taught by the theory group. During the winter semester 2024/25, we consider the theory of coding.
Prerequisites
"Discrete Structures", "Linear Algebra" and "Algorithms and Data Structures"
References
wird mit der Ankündigung bekannt gegeben
19328217: Seminar/Proseminar: New Trends in Information Systems
2.0 SWS
Edited
REAgnèsVoisard
EMuhammed-UgurKaragülle
Seminar / Undergraduate Course
0086cA.6.1.2Wissenschaftliches Arbeiten in der Informatik: Proseminar
This seminar aims at studying recent trends in data management. Among others, we will look at two emerging topics, namely Location-Based Services (LBS) and Event-Based Services (EBS).
Event-based Systems (EBS) are part of many current applications such as business activity monitoring, stock tickers, facility management, data streaming, or security. In the past years, the topic has gained increasing attention from both the industrial and the academic community. Current research concentrates of diverse aspects that range from event capture (incoming data) to response triggering. This seminar aims at studying some of the current trends in Event-based Systems with a strong focus on models and design. Location-based services are now often part of every day's life through applications such as navigation assistants in the public or private transportation domain. The underlying technology deals with many different aspects, such as location detection, information retrieval, or privacy. More recently, aspects such as user context and preferences were considered in order to send users more personalized information.
A solid background in databases is required, typically a database course at a bachelor level.
References
Wird bekannt gegeben.
19334910: PS: Methods for the analysis of graphs and networks
2.0 SWS
Edited
RKatharinaBaum
EPaulineHiort
EPascalIversen
Undergraduate Course
0086cA.6.1.2Wissenschaftliches Arbeiten in der Informatik: Proseminar
The world is complex, and so is its data. Graphs (or networks) are key for the analysis of complex data and in the integration of data layers. They allow mapping and formal investigation of relationships between entities (nodes).
In the course of the seminar, we will explore different computational analysis methods of graphs and networks. We will learn about different types and properties of graphs and how to deal with them in general. In addition, application areas of graphs such as social or biological networks will be discussed.
Examples for specific topics are
Basic properties of graphs and nodes and how to determine them: shortest paths, centralities, degree distribution, clustering coefficients
The small-world property of social interaction networks
Clusters and communities in networks
Application: Networks for mapping molecular regulations
Random graphs and their application
Working with large networks, representative subgraphs
Modeling information and signal flow in graphs and detecting signal sources
Nodes as vectors - graph-based embedding methods
19336717: Graph-neural networks in the life sciences and beyond
2.0 SWS
Edited
REKatharinaBaum
EPaulineHiort
EPascalIversen
Seminar / Undergraduate Course
0086cA.6.1.2Wissenschaftliches Arbeiten in der Informatik: Proseminar
Complex data can often be naturally modeled as a graph. Graphs or networks describe the interaction between objects and are an effective tool to represent systems in many applications. Graph neural networks are neural networks that directly input graphs and have recently emerged as a powerful tool to analyze networks and to predict properties of nodes and connections.
This seminar offers an in-depth exploration of Graph Neural Networks (GNNs) and their applications across various domains, with a particular emphasis on the life sciences and biomedicine. We will begin by discussing the fundamental concepts and architectures of GNNs, including graph convolutional networks (GCNs) and graph attention networks (GATs). Applications that are discussed include protein-protein interaction networks, drug discovery and personalized medicine. Students will read and present research papers and participate in critical discussions.
The language of this seminar is planned to be English. The students are encouraged to present and discuss in English, but contributions in German are also possible.
19331617: Seminar/Proseminar: Information-theoretical principles of ML
2.0 SWS
Edited
REGerhardWunder
Seminar / Undergraduate Course
0086cA.6.1.2Wissenschaftliches Arbeiten in der Informatik: Proseminar
Recently, artificial intelligence and machine learning (AI/ML) has emerged as a valuable tool in the field of communication and signal processing. It is therefore natural to extend the investigations to the field of physical layer security and privacy. This field is still in its infancy with some very preliminary results on wiretap channel code design, feature extraction of wireless channels and a growing part of contributions to privacy-preserving, distributed AI/ML. This seminar will teach the latest advances and synergies between the broad fields of AI/ML and secure communications.
Keywords: ML overview, basic tools, universal approximation, deep learning, stochastic gradient, acceleration strategies, deep convolutional networks, feature extraction, classification, mutual information neural network estimation, structured sparsity in convolutional neural networks, matrix decompositions
19329617: Seminar/Proseminar: Telematics
2.0 SWS
Edited
REJochenSchiller
Seminar / Undergraduate Course
0086cA.6.1.2Wissenschaftliches Arbeiten in der Informatik: Proseminar
This seminar focuses on several aspects of technical Computer Science. At the start of the seminar you will receive a list of suggested topics that mainly deal with particular aspects of the so-called Trusted Computing and security issues in the Internet of Things. You are also very welcome to suggest your own research topic that is closely related to technical Computer Science. You can work on your topic exclusively or in a small group of 2-3 students. But then, it has to be apparent who contributed what part to the seminar paper.
It is possible to combine this seminar with the software project Telematics. Then, the theoretical foundations of the topic are dealt with in the scientific seminar paper and implemented in practice in the software project. Please note that the seminar paper is not supposed to deal with details of the implementation and that you are still obliged to write an accurate documentation of the software project in written form.
Concerning the schedule: This seminar takes place during the semester. There are only a few meetings, but these are mandatory. On the first meeting (03.11.2020), the topic list will be handed out and discussed. Please prepare a short (2-3 minutes) overview of your own topic suggestion if you would like to include it in the seminar. On the next week (10.11.2020), the topics will be assigned. After that there will be 3 presentation dates in total: the topic presentation (01.12.2021), a short interim presentation (12.01.2021) and the final presentation (23.02.2021). There will be no further meetings beyond that. This semester, all meetings will take place as video conferences with Webex.
0086cB.1.45 ECTS
Scientific Work in Applied Computer Science
A project seminar serves as preparation of a thesis (bachelor or master) in the AGDB. The focus of this project seminar lies on the analysis and visualization of medical data. Additionally, we will realize a small software project.
References
Wird bekannt gegeben.
Additional information
Voraussetzungen
ALP I
ALP II
Datenbanksysteme
19328217: Seminar/Proseminar: New Trends in Information Systems
This seminar aims at studying recent trends in data management. Among others, we will look at two emerging topics, namely Location-Based Services (LBS) and Event-Based Services (EBS).
Event-based Systems (EBS) are part of many current applications such as business activity monitoring, stock tickers, facility management, data streaming, or security. In the past years, the topic has gained increasing attention from both the industrial and the academic community. Current research concentrates of diverse aspects that range from event capture (incoming data) to response triggering. This seminar aims at studying some of the current trends in Event-based Systems with a strong focus on models and design. Location-based services are now often part of every day's life through applications such as navigation assistants in the public or private transportation domain. The underlying technology deals with many different aspects, such as location detection, information retrieval, or privacy. More recently, aspects such as user context and preferences were considered in order to send users more personalized information.
A solid background in databases is required, typically a database course at a bachelor level.
References
Wird bekannt gegeben.
19335011: Seminar: Networks, dynamic models and ML for data integration in the life sciences
Research seminar of the group Data Integration in the Life Sciences (DILiS). Also open for seminar participation in the Master's program, online participation possible. Please refer to the current schedule on the whiteboard!
The seminar offers space for the discussion of advanced and integrative data analysis techniques, in particular presentations and discussion of ongoing or planned research projects, news from conferences, review and discussion of current literature and discussion of possible future teaching formats and content, and presentations, as well as final presentations on theses or project seminars. The seminar language is mostly English. Interested students are welcome to attend and drop in without obligation or present a topic of their own choice of interest to the working group as in a usual seminar. Please note: Individual dates may be canceled or postponed. Please contact me in case of questions (katharina.baum@fu-berlin.de)!
19336717: Graph-neural networks in the life sciences and beyond
Complex data can often be naturally modeled as a graph. Graphs or networks describe the interaction between objects and are an effective tool to represent systems in many applications. Graph neural networks are neural networks that directly input graphs and have recently emerged as a powerful tool to analyze networks and to predict properties of nodes and connections.
This seminar offers an in-depth exploration of Graph Neural Networks (GNNs) and their applications across various domains, with a particular emphasis on the life sciences and biomedicine. We will begin by discussing the fundamental concepts and architectures of GNNs, including graph convolutional networks (GCNs) and graph attention networks (GATs). Applications that are discussed include protein-protein interaction networks, drug discovery and personalized medicine. Students will read and present research papers and participate in critical discussions.
The language of this seminar is planned to be English. The students are encouraged to present and discuss in English, but contributions in German are also possible.
19305811: Seminar: Contributions to Software Engineering
This is a reseach seminar: normally the presentations are supposed to advance current research projects. Thus, there are, generally speaking, three possible types of topics:
published or current research projects from one of the areas in which our software engineering group works
especially good specific research projects (or other knowledge) from other areas of software engineering or adjacent areas of computer science
basis topics from important areas of software engineering or adjacent disciplines such as psychology, sociology, pedagogics, economics as well as their methods.
There is no exact restriction of topics though; almost anything is possible.
References
Je nach Wahl des Vortragsthemas
Additional information
Zielgruppe
Studierende der Informatik (auch Nebenfach).
Bitte melden Sie sich bei Interesse mit einem Themenvorschlag oder einer Themenanfrage bei irgendeinem geeigneten Mitarbeiter der Arbeitsgruppe.
Der Einstieg ist auch während des laufenden Semesters möglich, da die Veranstaltung fortlaufend angeboten wird.
Voraussetzungen
Teilnehmen kann jede/r Student/in der Informatik, der/die die Vorlesung "Softwaretechnik" gehört hat.
Im Rahmen der Teilnahme kann es nötig werden, sich mit Teilen der Materialien zur Veranstaltung "Empirische Bewertung in der Informatik" auseinanderzusetzen.
Explainable AI is a recent and growing subfield of machine learning (ML) that aims to bring transparency into ML models without sacrificing their predictive accuracy. This seminar will explore current research on the use of Explainable AI for extracting insights from large datasets of interest. Use cases in biomedicine, chemistry and earth sciences will be covered.
Students will select a few papers from a pool of thematically relevant research papers, which they will read and present over the course of the semester.
19334717: Seminar/Proseminar: Machine Learning for Process Control
Numerous real-world processes need to be kept under control in order to ensure safety or efficiency. Machine learning models are good candidates for this. They can for example detect shifts/anomalies/decalibrations/instabilities/etc. and possibly also predict which action needs to be taken on the process. The real-time nature of such tasks brings unique challenges from a ML perspective compared to classical application of ML. This seminar will explore relevant ML methods such as online/reinforcement learning and real-time data analysis. Use cases in manufacturing and intensive care will be covered. Students will select a few papers from a pool of thematically relevant research papers, which they will read and present over the course of the semester.
19313017: Seminar/Proseminar: Agile methods and technical practices
More than 20 years after the first publication of the agile manifesto (https://agilemanifesto.org/iso/en/manifesto.html), agile software development is here to stay. At the very least, many companies are tempted by the promise of agile development and flat hierarchies. In this seminar, we will look at different agile methods (Scrum, Kanban, eXtreme Programming, etc.), how they are used in practice, where and why they are deviated from and the technical practices (pair programming, continuous integration, DevOps, etc.) that support the agile way of working.
During this seminar, students are expected to conduct independent research on their chosen topic. Whether the course is booked as a seminar or proseminar has an influence on the requirements:
Seminar: Here, several good sources (5-10) are to be found and a summary of the results presented. The aim is to work out the current state of research on the basis of a selected research question, identify gaps and contradictions in the research and derive recommendations for practice.
Proseminar: A good source should be found and presented in detail. Other related works (1-3) should only be discussed in passing for comparison. In the scientific articles presented, the conclusions presented should be critically examined with regard to credibility and relevance.
References
The articles available for selection can be found in the resources folder on the KVV page.
Additional information
Webseite
https://www.mi.fu-berlin.de/w/SE/SeminarAgil2024
Dozent
Linus Ververs
Sprache
Deutsch (Vortrag kann auf Englisch gehalten werden)
Zielgruppe
Proseminar: Bachelorstudierende, die das Modul "Wissenschaftliches Arbeiten in der Informatik" besuchen / besucht haben und im Rahmen dieses Seminars das erste Mal das gelernte Wissen anwenden und wissenschaftlich arbeiten.
Seminar: Fortgeschrittene Bachelorstudierende, die das Modul im Rahmen ihres Vertiefungsbereichs besuchen oder Masterstudierende
Voraussetzungen
Das Modul Softwaretechnik bereits besucht zu haben, wird dringend empfohlen. (Falls nicht, bitte im Voraus kontakt zum Dozenten aufnehmen.)
19306017: Seminar/Proseminar: Data Visualization and Mining
This seminar provides an exploration of large language models (LLMs), covering both foundational concepts and the latest advancements in the field. Participants will gain a comprehensive understanding of the architecture, training, and applications of LLMs, based on seminal research papers. The course will be organised as a journal club: students present individual papers, which are then discussed in the group to make sure we all get the ideas presented.
### Potential Topics
- Neural networks and deep learning basics
- Sequence modeling and RNNs (Recurrent Neural Networks)
- Vaswani et al.'s "Attention is All You Need" paper
- Self-attention mechanism
- Multi-head attention and positional encoding
- GPT-1: Radford et al.'s pioneering work
- GPT-2: Scaling and implications
- GPT-3: Architectural advancements and few-shot learning
- BERT (Bidirectional Encoder Representations from Transformers)
- T5 (Text-To-Text Transfer Transformer)
- DistilBERT and efficiency improvements
- Mamba:l and other SSMs: Design principles and performance
- Flash Attention et al: Improving efficiency and scalability
This seminar focuses on recent advances in unsupervised learning, an increasingly important field within machine learning. In unsupervised learning, we use the data itself rather than additional output labels to define a training objective, such as completing a given text sequence or filling in an image region. This way we can learn powerful representations, and stable generative paths. We will discuss new UL methods such as CLIP, DALLE, and FLAMINGO that combine language and image models in joint represenatations.
19320811: Selected Subjects of IT Security & Privacy
The seminar covers topics related to IT security and privacy. In particular, we deal with selected topics:
Usable security and privacy
Mobile security
Cache-based sidechannel attacks
One topic is worked on by one person and presented to the other participants in a presentation. At the end of the semester, a seminar paper on the respective topic must also be submitted. Details will be discussed at the first event.
The seminar is offered in German and, if necessary, in English.
References
Daniel J. Bernstein, Johannes Buchmann, Erik Dahmen (Eds.): Post-Quantum Cryptography.
0086cB.1.55 ECTS
Scientific Work in Theoretical Computer Science
19335011: Seminar: Networks, dynamic models and ML for data integration in the life sciences
Research seminar of the group Data Integration in the Life Sciences (DILiS). Also open for seminar participation in the Master's program, online participation possible. Please refer to the current schedule on the whiteboard!
The seminar offers space for the discussion of advanced and integrative data analysis techniques, in particular presentations and discussion of ongoing or planned research projects, news from conferences, review and discussion of current literature and discussion of possible future teaching formats and content, and presentations, as well as final presentations on theses or project seminars. The seminar language is mostly English. Interested students are welcome to attend and drop in without obligation or present a topic of their own choice of interest to the working group as in a usual seminar. Please note: Individual dates may be canceled or postponed. Please contact me in case of questions (katharina.baum@fu-berlin.de)!
19320811: Selected Subjects of IT Security & Privacy
The seminar covers topics related to IT security and privacy. In particular, we deal with selected topics:
Usable security and privacy
Mobile security
Cache-based sidechannel attacks
One topic is worked on by one person and presented to the other participants in a presentation. At the end of the semester, a seminar paper on the respective topic must also be submitted. Details will be discussed at the first event.
The seminar is offered in German and, if necessary, in English.
References
Daniel J. Bernstein, Johannes Buchmann, Erik Dahmen (Eds.): Post-Quantum Cryptography.
19331617: Seminar/Proseminar: Information-theoretical principles of ML
Recently, artificial intelligence and machine learning (AI/ML) has emerged as a valuable tool in the field of communication and signal processing. It is therefore natural to extend the investigations to the field of physical layer security and privacy. This field is still in its infancy with some very preliminary results on wiretap channel code design, feature extraction of wireless channels and a growing part of contributions to privacy-preserving, distributed AI/ML. This seminar will teach the latest advances and synergies between the broad fields of AI/ML and secure communications.
Keywords: ML overview, basic tools, universal approximation, deep learning, stochastic gradient, acceleration strategies, deep convolutional networks, feature extraction, classification, mutual information neural network estimation, structured sparsity in convolutional neural networks, matrix decompositions
Advanced topcis in algorithm design with a changing focus. The topic is determined newly in each semester. For example, we might consider algorithms for problems on graphs, such as connectivity, shortest paths, or network flows.
Target audience
Masters students in computer science and mathematics.
Recommended prerequisites
"Advanced algorithms" or a similar class.
References
Spezialliteratur aus Zeitschriften
0086cB.1.65 ECTS
Scientific Work in Technical Computer Science
This seminar focuses on several aspects of technical Computer Science. At the start of the seminar you will receive a list of suggested topics that mainly deal with particular aspects of the so-called Trusted Computing and security issues in the Internet of Things. You are also very welcome to suggest your own research topic that is closely related to technical Computer Science. You can work on your topic exclusively or in a small group of 2-3 students. But then, it has to be apparent who contributed what part to the seminar paper.
It is possible to combine this seminar with the software project Telematics. Then, the theoretical foundations of the topic are dealt with in the scientific seminar paper and implemented in practice in the software project. Please note that the seminar paper is not supposed to deal with details of the implementation and that you are still obliged to write an accurate documentation of the software project in written form.
Concerning the schedule: This seminar takes place during the semester. There are only a few meetings, but these are mandatory. On the first meeting (03.11.2020), the topic list will be handed out and discussed. Please prepare a short (2-3 minutes) overview of your own topic suggestion if you would like to include it in the seminar. On the next week (10.11.2020), the topics will be assigned. After that there will be 3 presentation dates in total: the topic presentation (01.12.2021), a short interim presentation (12.01.2021) and the final presentation (23.02.2021). There will be no further meetings beyond that. This semester, all meetings will take place as video conferences with Webex.
19310817: Seminar/Proseminar: Internet of Things & Security (Computer Systems & Telematics)
Seminar Technische Informatik on Internet of Things & Security
In large part, the Internet of Things (IoT) will consist of interconnecting low-end devices with very small memory capacity (a few kBytes) and limited energy consumption (1000 times less than a RaspberryPi).
The IoT promises a new world of applications, but also brings up specific challenges in terms of programmability, energy efficiency, networking and security.
After an introductory session at the start of the term, MSc students will pick a topic related to current technologies in the field of Internet of Things & Security, and write a report (IEEE LaTex template, 12 A4 pages including figures and references, single column, 1.5 spacing, 11-point font) discussing corresponding questions. At the end of the term, the participants present their results in the form a short talk (20 minutes + 10 minutes Q&A) in a meeting, which will also include cross-reviewing of student's reports. During the term, there will be deadlines for status reports, but no weekly meetings of the complete seminar group.
Tentative Schedule:
Mid April: introductory session
After 1 week: topic selection
After 4 weeks: deadline to submit tentative outline for the report
After 8 weeks: deadline to submit alpha version of the report
After 10 weeks: deadline to submit beta version of the report & assignment for cross-reviewing of reports
End of semester: - deadline to submit final version of the report - presentation session (including Q&A and oral cross-review)
References
The typical bibliography and online resources that will be in scope to survey for this seminar includes:
- reviewing academic publications, e.g. papers from IEEE, ACM conferences/journals (available on scholar.google.com);
- reviewing network protocol open standard specifications, e.g. IETF drafts and Request For Comments (RFC);
- reviewing open source implementations (e.g. available on GitHub).
0086e_k150
2023, BSc Informatik (Mono), 150 LP
0086eA.1.19 ECTS
Konzepte der Programmierung
19300001: Fundamentals of Programming
4.0 SWS
Edited
REWolfgangMulzer
Lecture
0086eA.1.1.1Konzepte der Programmierung
Qualification goals
The students can explain and compare different programming paradigms. They are able to interpret descriptions and source code related to fundamental data structures, to characterize how they work, and to implement basic algorithms and data structures in different programming paradigms, adapting them to given requirements. They can discuss the advantages and disadvantages of different solutions for algorithmic problems.
Contents
Students acquire the fundamentals of programming. We will discuss basic programming paradigms, such as imperative, functional, and object oriented. Students will learn about expressions and data types, as well as fundamental aspects of imperative programming (e.g., state, statements, control structures, input-output), and practice their application. Students will also gain an understanding of fundamental aspects of functional programming (functions, recursion, higher-order functions, currying), object-oriented concepts such as encapsulation and inheritance, polymorphism, as well as basic algorithmic tasks (e.g., searching, sorting, selection, and simple array- and pointer-based data structures), and practice their implementation.
19300002: Practice seminar for Fundamentals of Programming
2.0 SWS
Edited
REWolfgangMulzer
Practice seminar
0086eA.1.1.2Konzepte der Programmierung
0086eA.1.166 ECTS
Wissenschaftliches Arbeiten in der Informatik
19319701: Scientific Work/Research in Computer Science
1.0 SWS
Edited
REVolkerRoth
Lecture
0086eA.1.16.1Wissenschaftliches Arbeiten in der Informatik
The lecture introduces students to scientific work. The essential forms of written and oral knowledge representation are described. It explains how to write computer science texts and how to read and examine them. Furthermore, students will be introduced to legal, ethical and philosophical problems of the sciences and in particular of computer science. Furthermore, problems of gender and diversity in computer science and in lectures will be presented and solution strategies will be discussed.
19328217: Seminar/Proseminar: New Trends in Information Systems
2.0 SWS
Edited
REAgnèsVoisard
EMuhammed-UgurKaragülle
Seminar / Undergraduate Course
0086eA.1.16.2Wissenschaftliches Arbeiten in der Informatik
This seminar aims at studying recent trends in data management. Among others, we will look at two emerging topics, namely Location-Based Services (LBS) and Event-Based Services (EBS).
Event-based Systems (EBS) are part of many current applications such as business activity monitoring, stock tickers, facility management, data streaming, or security. In the past years, the topic has gained increasing attention from both the industrial and the academic community. Current research concentrates of diverse aspects that range from event capture (incoming data) to response triggering. This seminar aims at studying some of the current trends in Event-based Systems with a strong focus on models and design. Location-based services are now often part of every day's life through applications such as navigation assistants in the public or private transportation domain. The underlying technology deals with many different aspects, such as location detection, information retrieval, or privacy. More recently, aspects such as user context and preferences were considered in order to send users more personalized information.
A solid background in databases is required, typically a database course at a bachelor level.
References
Wird bekannt gegeben.
19313017: Seminar/Proseminar: Agile methods and technical practices
2.0 SWS
Edited
ELinusVervers
RLutzPrechelt
Seminar / Undergraduate Course
0086eA.1.16.2Wissenschaftliches Arbeiten in der Informatik
More than 20 years after the first publication of the agile manifesto (https://agilemanifesto.org/iso/en/manifesto.html), agile software development is here to stay. At the very least, many companies are tempted by the promise of agile development and flat hierarchies. In this seminar, we will look at different agile methods (Scrum, Kanban, eXtreme Programming, etc.), how they are used in practice, where and why they are deviated from and the technical practices (pair programming, continuous integration, DevOps, etc.) that support the agile way of working.
During this seminar, students are expected to conduct independent research on their chosen topic. Whether the course is booked as a seminar or proseminar has an influence on the requirements:
Seminar: Here, several good sources (5-10) are to be found and a summary of the results presented. The aim is to work out the current state of research on the basis of a selected research question, identify gaps and contradictions in the research and derive recommendations for practice.
Proseminar: A good source should be found and presented in detail. Other related works (1-3) should only be discussed in passing for comparison. In the scientific articles presented, the conclusions presented should be critically examined with regard to credibility and relevance.
References
The articles available for selection can be found in the resources folder on the KVV page.
Additional information
Webseite
https://www.mi.fu-berlin.de/w/SE/SeminarAgil2024
Dozent
Linus Ververs
Sprache
Deutsch (Vortrag kann auf Englisch gehalten werden)
Zielgruppe
Proseminar: Bachelorstudierende, die das Modul "Wissenschaftliches Arbeiten in der Informatik" besuchen / besucht haben und im Rahmen dieses Seminars das erste Mal das gelernte Wissen anwenden und wissenschaftlich arbeiten.
Seminar: Fortgeschrittene Bachelorstudierende, die das Modul im Rahmen ihres Vertiefungsbereichs besuchen oder Masterstudierende
Voraussetzungen
Das Modul Softwaretechnik bereits besucht zu haben, wird dringend empfohlen. (Falls nicht, bitte im Voraus kontakt zum Dozenten aufnehmen.)
19334910: PS: Methods for the analysis of graphs and networks
2.0 SWS
Edited
RKatharinaBaum
EPaulineHiort
EPascalIversen
Undergraduate Course
0086eA.1.16.2Wissenschaftliches Arbeiten in der Informatik
The world is complex, and so is its data. Graphs (or networks) are key for the analysis of complex data and in the integration of data layers. They allow mapping and formal investigation of relationships between entities (nodes).
In the course of the seminar, we will explore different computational analysis methods of graphs and networks. We will learn about different types and properties of graphs and how to deal with them in general. In addition, application areas of graphs such as social or biological networks will be discussed.
Examples for specific topics are
Basic properties of graphs and nodes and how to determine them: shortest paths, centralities, degree distribution, clustering coefficients
The small-world property of social interaction networks
Clusters and communities in networks
Application: Networks for mapping molecular regulations
Random graphs and their application
Working with large networks, representative subgraphs
Modeling information and signal flow in graphs and detecting signal sources
Nodes as vectors - graph-based embedding methods
19301710: Undergraduate Seminar: Coding Theory
2.0 SWS
Edited
REMaxWillert
Undergraduate Course
0086eA.1.16.2Wissenschaftliches Arbeiten in der Informatik
Contents
The proseminar delves more deeply into topics covered in the basic classes taught by the theory group. During the winter semester 2024/25, we consider the theory of coding.
Prerequisites
"Discrete Structures", "Linear Algebra" and "Algorithms and Data Structures"
References
wird mit der Ankündigung bekannt gegeben
19336717: Graph-neural networks in the life sciences and beyond
2.0 SWS
Edited
REKatharinaBaum
EPaulineHiort
EPascalIversen
Seminar / Undergraduate Course
0086eA.1.16.2Wissenschaftliches Arbeiten in der Informatik
Complex data can often be naturally modeled as a graph. Graphs or networks describe the interaction between objects and are an effective tool to represent systems in many applications. Graph neural networks are neural networks that directly input graphs and have recently emerged as a powerful tool to analyze networks and to predict properties of nodes and connections.
This seminar offers an in-depth exploration of Graph Neural Networks (GNNs) and their applications across various domains, with a particular emphasis on the life sciences and biomedicine. We will begin by discussing the fundamental concepts and architectures of GNNs, including graph convolutional networks (GCNs) and graph attention networks (GATs). Applications that are discussed include protein-protein interaction networks, drug discovery and personalized medicine. Students will read and present research papers and participate in critical discussions.
The language of this seminar is planned to be English. The students are encouraged to present and discuss in English, but contributions in German are also possible.
19331617: Seminar/Proseminar: Information-theoretical principles of ML
2.0 SWS
Edited
REGerhardWunder
Seminar / Undergraduate Course
0086eA.1.16.2Wissenschaftliches Arbeiten in der Informatik
Recently, artificial intelligence and machine learning (AI/ML) has emerged as a valuable tool in the field of communication and signal processing. It is therefore natural to extend the investigations to the field of physical layer security and privacy. This field is still in its infancy with some very preliminary results on wiretap channel code design, feature extraction of wireless channels and a growing part of contributions to privacy-preserving, distributed AI/ML. This seminar will teach the latest advances and synergies between the broad fields of AI/ML and secure communications.
Keywords: ML overview, basic tools, universal approximation, deep learning, stochastic gradient, acceleration strategies, deep convolutional networks, feature extraction, classification, mutual information neural network estimation, structured sparsity in convolutional neural networks, matrix decompositions
19329617: Seminar/Proseminar: Telematics
2.0 SWS
Edited
REJochenSchiller
Seminar / Undergraduate Course
0086eA.1.16.2Wissenschaftliches Arbeiten in der Informatik
This seminar focuses on several aspects of technical Computer Science. At the start of the seminar you will receive a list of suggested topics that mainly deal with particular aspects of the so-called Trusted Computing and security issues in the Internet of Things. You are also very welcome to suggest your own research topic that is closely related to technical Computer Science. You can work on your topic exclusively or in a small group of 2-3 students. But then, it has to be apparent who contributed what part to the seminar paper.
It is possible to combine this seminar with the software project Telematics. Then, the theoretical foundations of the topic are dealt with in the scientific seminar paper and implemented in practice in the software project. Please note that the seminar paper is not supposed to deal with details of the implementation and that you are still obliged to write an accurate documentation of the software project in written form.
Concerning the schedule: This seminar takes place during the semester. There are only a few meetings, but these are mandatory. On the first meeting (03.11.2020), the topic list will be handed out and discussed. Please prepare a short (2-3 minutes) overview of your own topic suggestion if you would like to include it in the seminar. On the next week (10.11.2020), the topics will be assigned. After that there will be 3 presentation dates in total: the topic presentation (01.12.2021), a short interim presentation (12.01.2021) and the final presentation (23.02.2021). There will be no further meetings beyond that. This semester, all meetings will take place as video conferences with Webex.
0086eA.1.29 ECTS
Diskrete Strukturen für Informatik
19300901: Discrete Structures for Computer Science
4.0 SWS
Edited
REKatharinaKlost
Lecture
0086eA.1.2.1Diskrete Strukturen für Informatik
Qualifikationsziele
Die Studierenden formulieren3 Aussagen formal aussagenlogisch und prädikatenlogisch. Sie analysieren4 und vereinfachen3 die logische Struktur gegebener Aussagen und beschreiben4 die logische Struktur von Beweisen. Sie benennen Eigenschaften unterschiedlicher Mengen, Relationen und Funktionen und begründen4 diese mit Hilfe formaler Argumente. Sie können Beweise für elementare Aussagen unter Verwendung elementarer Beweistechniken entwickeln5 und die Mächtigkeit von Mengen mit Hilfe kombinatorischer Techniken sowie Wahrscheinlichkeiten von Zufallsereignissen bestimmen3. Sie sind in der Lage, Fragestellungen der (Bio-)Informatik mit Hilfe der Graphentheorie und der diskreten Wahrscheinlichkeitstheorie zu modellieren.3. Die Studierenden benennen Eigenschaften unterschiedlicher Graphen und begründen4 diese mit Hilfe formaler Argumente.
Inhalte
Studierende erlernen grundlegende Konzepte der Mengenlehre, Logik, Booleschen Algebra, Kombinatorik und Graphentheorie und üben deren Anwendung. Sie erarbeiten sich in der Mengenlehre Mengen, Relationen, Äquivalenz- und Ordnungsrelationen und Funktionen. Im Bereich der Logik und Booleschen Algebra erarbeiten sie sich Aspekte der Aussagenlogik, Prädikatenlogik, Erfüllbarkeitstests, sowie Boolesche Funktionen und Normalformen. Im Themenfeld Kombinatorik erlernen und diskutieren sie das Schubfachprinzip, Rekursion, Abzählprinzipien, Fakultät und Binomialkoeffizienten. Im Themenfeld Graphentheorie erarbeiten sie Repräsentationsformen, Wege, Kreise und Bäume. Zuletzt erarbeiten sie sich verschiedene Beweistechniken und grundlegende Aspekte Diskreter Wahrscheinlichkeitstheorie. Die meisten dieser Konzepte werden an Rechen- oder Beweisaufgaben geübt.
19300902: Practice seminar for Discrete Structures for CS
2.0 SWS
Edited
REKatharinaKlost
Practice seminar
0086eA.1.2.2Diskrete Strukturen für Informatik
0086eA.1.36 ECTS
Auswirkungen der Informatik
19301301: Consequences of Computer Science
2.0 SWS
Edited
RELutzPrechelt
Lecture
0086eA.1.3.1Auswirkungen der Informatik
This course deals with the consequences of computer science. Its aim is to establish an understanding of the fact that computer systems intervene in manifold ways in our private and professional lifes and shapen them. Many of these influences bring about major risks and need a conscious and enlightened composition in which computer scientists by nature play an important role -- or should at least do so.
We will for example have a look at how computerisation influences our private sphere, economics and society as a whole, our security and working environment. A conceptual introduction will provide orientational knowledge besides basic knowledge (Verfügungswissen) and strategies how to deal with both: analyse critically and get involved in the technical development.
References
See the slides.
Additional information
Kurssprache ist Deutsch inklusive Folien und Übungsblätter.
19301302: Exercise for Consequences of Computer Science
2.0 SWS
Edited
LinusVervers
RELutzPrechelt
Practice seminar
0086eA.1.3.2Auswirkungen der Informatik
0086eA.1.66 ECTS
Rechnerarchitektur
19300601: Computer Architecture
2.0 SWS
Tentative
RELarissaGroth
Lecture
0086eA.1.6.1Rechnerarchitektur
The module Computer Architecture covers basic concepts of computer systems. Topics are von-Neuman/Harvard architecture, microarchitectures, RISC/CISC, micro programming, pipelining, caches, memory hierarchy, bus systems, assembler programming, multi processor systems, branch prediction, representation of numbers and other data types, computer arithmetic.
References
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: Practice seminar for Computer Architecture
2.0 SWS
Tentative
RELarissaGroth
PC-based Seminar
0086eA.1.6.2Rechnerarchitektur
0086eA.1.76 ECTS
Grundlagen der Theoretischen Informatik
19301201: Foundations of Theoretical Computer Science
2.0 SWS
Edited
EWolfgangMulzer
EKatharinaKlost
Lecture
0086eA.1.7.1Grundlagen der Theoretischen Informatik
Contents:
models of computation
automata
formal languates
grammars and the Chomsky-hierarchy
Turing-machines
computabilty
introduction to the complexity of computational problems
John E. Hopcroft, Rajeev Motwani, Jeffrey D. Ullman, Einführung in die Automatentheorie, Formale Sprachen und Komplexität, Pearson Studium, 3. Auflage, 2011
Non-Sequential program execution and object oriented systems
Control flow, strategies selection, priorities, handling and avoiding deadlock
Coroutines implementation,
- Multiprocessor systems
Programming and Synchronisation of concurrent processes that interact through message passing
Remote Calling Techniques
Client-server, Peer-to-peer Networks
Parallel computing over networks
Concurrent and coordination languages
Processing on the server and on the client.
Middleware, structured communication, static and dynamic interfaces
Event-based and stream-based processing
Security of network applications
Non-functional Aspects (time, memory, quality of service)
The contents of the course Operating and Communication Systems (BKS) are a prerequisite and prior completion is strongly recommended.
References
Literatur:
Principles of Concurrent and Distributed Programming. M. Ben-Ari. Addison-Wesley.
Distributed Systems. Concepts and Design. Fifth Edition. George Coulouris, Jean Dollimore, Tim Kindberg, Gordon Blair. Pearson.
19322102: Practice seminar for Concurrent and Distributed Programming
2.0 SWS
Tentative
EBarryLinnert
Practice seminar
0086eA.1.8.2Nebenläufige, parallele und verteilte Programmierung
0086eA.1.99 ECTS
Analysis für Informatik
19301101: Analysis for Computer Science and Bioinformatics
4.0 SWS
Tentative
EKlausKriegel
REKatharinaWolter
Lecture
0086eA.1.9.1Analysis für Informatik
Contents:
number systems: from natural numbers to real numbers, completeness property of the reals
polynomials: roots of polynomials, polynomial interpolation, rational functions
special functions: exponential function, logarithm, trigonometric functions
complex numbers: exponential function for complex numbers, complex roots
convergence of sequences and series, convergence of functions, continuous functions, O-notation
differential calculus: derivative of a function, interpretations and applications of the derivative
intergral calculus: primitive functions, definite integrals, fundamental theorem of calculus, applications
power series
basics of stochastics: probability spaces, discrete and continuous random variables, expected value and variance of random variables
References
Kurt Meyberg, Peter Vachenauer: Höhere Mathematik 1, Springer-Verlag, 6. Auflage 2001
Dirk Hachenberger: Mathematik für Informatiker, Pearson 2005
Peter Hartmann: Mathematik für Informatiker, Vieweg, 4. Auflage 2006
Thomas Westermann: Mathematik für Ingenieure mit Maple 1, Springer-Verlag, 4. Auflage 2005
Additional information
Freischaltung der Anmeldung zu Tutorien wird rechtzeitig bekanntgegeben.
19301102: Practice seminar for Analysis for Computer Science
2.0 SWS
Tentative
AlexanderBaumann
Practice seminar
0086eA.1.9.2Analysis für Informatik
0086eB.1.126 ECTS
Aktuelle Themen in der Informatik
19320701: Secure Software Engineering
2.0 SWS
Tentative
REJörnEichler
Lecture
0086eB.1.12.1Aktuelle Themen in der Informatik
Secure software engineering joins two important fields: Software engineering and information security. software engineering is the systematic use of principles, methods and tools to develop and deploy software. information security covers topics like confidentiality, integrity and availability of informations and data.
References
Claudia Eckert: IT-Sicherheit,11. Auflage, De Gruyter Oldenbourg, 2023
Ross Anderson: Security Engineering, 3. Auflage, Wiley, 2020.
Weitere Literaturhinweise werden zu den einzelnen Themenblöcken bereitgestellt.
Additional information
Das Ziel dieser Vorlesung ist die Vermittlung von Prinzipien, Methoden und Werkzeugen für die Entwicklung sicherer Softwareanwendungen. Dafür werden zunächst grundlegende Konzepte eingeführt. Es folgen Vorgehensmodelle zur Entwicklung sicherer Software sowie zur Bewertung der Reifegrade von Entwicklungsprozessen. Entlang der Phasen bzw. Prozessgruppen der Softwareentwicklung werden dann zentrale Prinzipien, Methoden und Werkzeuge vorgestellt und erläutert. Besondere Berücksichtigung finden dabei die Bedrohungs- und Risikoanalyse, die Erhebung von Sicherheitsanforderungen, Prinzipien und Muster für das Design sicherer Softwareanwendungen, sichere und unsichere Softwareimplementierungen, Sicherheitstests sowie die Evaluation der Sicherheitseigenschaften von Softwareanwendungen.
19320702: Practice seminar for Secure Software Engineering
2.0 SWS
Tentative
REJörnEichler
Practice seminar
0086eB.1.12.2Aktuelle Themen in der Informatik
0086eB.1.136 ECTS
Vertiefte Aspekte der Informatik
19320701: Secure Software Engineering
2.0 SWS
Tentative
REJörnEichler
Lecture
0086eB.1.13.1Vertiefte Aspekte der Informatik
Secure software engineering joins two important fields: Software engineering and information security. software engineering is the systematic use of principles, methods and tools to develop and deploy software. information security covers topics like confidentiality, integrity and availability of informations and data.
References
Claudia Eckert: IT-Sicherheit,11. Auflage, De Gruyter Oldenbourg, 2023
Ross Anderson: Security Engineering, 3. Auflage, Wiley, 2020.
Weitere Literaturhinweise werden zu den einzelnen Themenblöcken bereitgestellt.
Additional information
Das Ziel dieser Vorlesung ist die Vermittlung von Prinzipien, Methoden und Werkzeugen für die Entwicklung sicherer Softwareanwendungen. Dafür werden zunächst grundlegende Konzepte eingeführt. Es folgen Vorgehensmodelle zur Entwicklung sicherer Software sowie zur Bewertung der Reifegrade von Entwicklungsprozessen. Entlang der Phasen bzw. Prozessgruppen der Softwareentwicklung werden dann zentrale Prinzipien, Methoden und Werkzeuge vorgestellt und erläutert. Besondere Berücksichtigung finden dabei die Bedrohungs- und Risikoanalyse, die Erhebung von Sicherheitsanforderungen, Prinzipien und Muster für das Design sicherer Softwareanwendungen, sichere und unsichere Softwareimplementierungen, Sicherheitstests sowie die Evaluation der Sicherheitseigenschaften von Softwareanwendungen.
19320702: Practice seminar for Secure Software Engineering
Students learn the basic structure of microprocessor architectures for embedded systems including data formats, instruction formats, instruction sets and memory organization. They learn and practise the practical scope of interfaces and input/output systems and peripheral devices. They will learn about the properties of cyber physical systems, sensors, actuators and wireless sensor networks (WSN) and discuss their areas of application. They also learn how to connect and use field programmable gate arrays (FPGAs) and practise the application-related programming of embedded systems in C and Assembler. They also learn the basic structure of current operating systems for embedded systems, in particular real-time operating systems, real-time scheduling and real-time communication, and practise their implementation. Finally, aspects of the security of embedded systems including attack vectors, process isolation and trusted computing are discussed and evaluated.
When studying Computer Science at university you mainly focus on concepts. This approach generally makes sense as these conceps are far more persistent and applicable in a broader sense than concrete details would be. Many details, however, which are important for concrete software development, are falling by the wayside. The course is supposed to reduce this deficit.
In it we mainly focus on concepts too, but always only on those which directly have to do with software development, and make sure to apply them precisely, personally in practice -- reflecting its use jointly (something which distinguisdes this course from most other software projects).
The concepts dealt with and practiced may be assigned to three different but closeky connected spheres:
software development and structuring (object-oriented) Softwareentwurf und -strukturierung (und zwar objektorientiert)
approaches (for example in the areas prototyping, automatisation, incremental improvement)
personality development (aspects like consistency, responsibility, communicational skills)
Important: Each participant needs to have a software project of his/her own, which has been started far in advance or the course (within a company, for founding a company or as an open source project), on which he/she works on a weekly basis for the entire duration of the course (mainly in a team) and which serves as training ground for the concepts.
This is a hard prerequisite for participation.
Additional information
Zielgruppe sind Studierende, die durch intensives Üben Fertigkeiten aufbauen möchten, die gute und professionell arbeitende Softwareentwickler/innen benötigen.
Courses of Computer Science Education are part of the German teacher-training and held in German only.
Contents
In the teaching internship, basic knowledge of educational science, psychology, social science and subject-related didactics, which has been taught in the bachelor's program as well as in the preparatory seminar, is translated into practical action.
Subject-specific structuring, teaching sequences, introductions, motivation, interest, problem orientation, contextual reference, areas of competence and basic concepts of the educational standards, reflection, transfer, securing, documentation and assessment of learning development.
References
Wird bekannt gegeben. / To be announced.
Additional information
Zielgruppe
Studierende im lehramtsbezogenen Masterstudiengang mit Informatik als Kernfach oder Informatik als Zweitfach
Courses of Computer Science Education are part of the German teacher-training and held in German only.
Contents
This in-depth seminar offers the opportunity to reflect on the experiences from the teaching internship and to develop possible solutions for problematic teaching situations. Further teaching methods are being developed that enable independent, action-oriented and self-determined work. The students’ own attitudes towards school, the teaching profession and subject-specific teaching are to be critically reflected upon.
The examination includes preparing a report in which the student reflects on selected topics of the preparatory seminar, the planning, implementation and evaluation of his/her own teaching.
References
Wird bekannt gegeben. / To be announced.
Additional information
Zielgruppe
Studierende im lehramtsbezogenen Masterstudiengang mit Informatik als Kernfach oder Informatik als Zweitfach.
Voraussetzungen
Teilnahme an Vorbereitungsseminar und Unterrichtspraktikum.
0087c_k90
2014, BSc Informatik (Kombi), 90 LPs
0087cA.1.47 ECTS
Fundamentals of Theoretical Computer Science
19301201: Foundations of Theoretical Computer Science
2.0 SWS
Edited
EWolfgangMulzer
EKatharinaKlost
Lecture
0087cA.1.4.1Fundamentals of Theoretical Computer Science
Contents:
models of computation
automata
formal languates
grammars and the Chomsky-hierarchy
Turing-machines
computabilty
introduction to the complexity of computational problems
John E. Hopcroft, Rajeev Motwani, Jeffrey D. Ullman, Einführung in die Automatentheorie, Formale Sprachen und Komplexität, Pearson Studium, 3. Auflage, 2011
Michael Sipser, Introduction to the Theory of Computation, 2nd ed., Thomson Course Technology, 2006
Wegener, Kompendium theoretische Informatik - Eine Ideensammlung, Teubner 1996
19301202: Practice seminar for Foundations of Theoretical Computer Science
2.0 SWS
Edited
EWolfgangMulzer
EKatharinaKlost
Practice seminar
0087cA.1.4.2Fundamentals of Theoretical Computer Science
0087cA.3.115 ECTS
Scientific Work in Computer Science
19319701: Scientific Work/Research in Computer Science
1.0 SWS
Edited
REVolkerRoth
Lecture
0087cA.3.11.1Scientific Work in Computer Science
The lecture introduces students to scientific work. The essential forms of written and oral knowledge representation are described. It explains how to write computer science texts and how to read and examine them. Furthermore, students will be introduced to legal, ethical and philosophical problems of the sciences and in particular of computer science. Furthermore, problems of gender and diversity in computer science and in lectures will be presented and solution strategies will be discussed.
19328217: Seminar/Proseminar: New Trends in Information Systems
2.0 SWS
Edited
REAgnèsVoisard
EMuhammed-UgurKaragülle
Seminar / Undergraduate Course
0087cA.3.11.2Scientific Work in Computer Science
This seminar aims at studying recent trends in data management. Among others, we will look at two emerging topics, namely Location-Based Services (LBS) and Event-Based Services (EBS).
Event-based Systems (EBS) are part of many current applications such as business activity monitoring, stock tickers, facility management, data streaming, or security. In the past years, the topic has gained increasing attention from both the industrial and the academic community. Current research concentrates of diverse aspects that range from event capture (incoming data) to response triggering. This seminar aims at studying some of the current trends in Event-based Systems with a strong focus on models and design. Location-based services are now often part of every day's life through applications such as navigation assistants in the public or private transportation domain. The underlying technology deals with many different aspects, such as location detection, information retrieval, or privacy. More recently, aspects such as user context and preferences were considered in order to send users more personalized information.
A solid background in databases is required, typically a database course at a bachelor level.
References
Wird bekannt gegeben.
19334910: PS: Methods for the analysis of graphs and networks
2.0 SWS
Edited
RKatharinaBaum
EPaulineHiort
EPascalIversen
Undergraduate Course
0087cA.3.11.2Scientific Work in Computer Science
The world is complex, and so is its data. Graphs (or networks) are key for the analysis of complex data and in the integration of data layers. They allow mapping and formal investigation of relationships between entities (nodes).
In the course of the seminar, we will explore different computational analysis methods of graphs and networks. We will learn about different types and properties of graphs and how to deal with them in general. In addition, application areas of graphs such as social or biological networks will be discussed.
Examples for specific topics are
Basic properties of graphs and nodes and how to determine them: shortest paths, centralities, degree distribution, clustering coefficients
The small-world property of social interaction networks
Clusters and communities in networks
Application: Networks for mapping molecular regulations
Random graphs and their application
Working with large networks, representative subgraphs
Modeling information and signal flow in graphs and detecting signal sources
Nodes as vectors - graph-based embedding methods
19336717: Graph-neural networks in the life sciences and beyond
2.0 SWS
Edited
REKatharinaBaum
EPaulineHiort
EPascalIversen
Seminar / Undergraduate Course
0087cA.3.11.2Scientific Work in Computer Science
Complex data can often be naturally modeled as a graph. Graphs or networks describe the interaction between objects and are an effective tool to represent systems in many applications. Graph neural networks are neural networks that directly input graphs and have recently emerged as a powerful tool to analyze networks and to predict properties of nodes and connections.
This seminar offers an in-depth exploration of Graph Neural Networks (GNNs) and their applications across various domains, with a particular emphasis on the life sciences and biomedicine. We will begin by discussing the fundamental concepts and architectures of GNNs, including graph convolutional networks (GCNs) and graph attention networks (GATs). Applications that are discussed include protein-protein interaction networks, drug discovery and personalized medicine. Students will read and present research papers and participate in critical discussions.
The language of this seminar is planned to be English. The students are encouraged to present and discuss in English, but contributions in German are also possible.
19313017: Seminar/Proseminar: Agile methods and technical practices
2.0 SWS
Edited
ELinusVervers
RLutzPrechelt
Seminar / Undergraduate Course
0087cA.3.11.2Scientific Work in Computer Science
More than 20 years after the first publication of the agile manifesto (https://agilemanifesto.org/iso/en/manifesto.html), agile software development is here to stay. At the very least, many companies are tempted by the promise of agile development and flat hierarchies. In this seminar, we will look at different agile methods (Scrum, Kanban, eXtreme Programming, etc.), how they are used in practice, where and why they are deviated from and the technical practices (pair programming, continuous integration, DevOps, etc.) that support the agile way of working.
During this seminar, students are expected to conduct independent research on their chosen topic. Whether the course is booked as a seminar or proseminar has an influence on the requirements:
Seminar: Here, several good sources (5-10) are to be found and a summary of the results presented. The aim is to work out the current state of research on the basis of a selected research question, identify gaps and contradictions in the research and derive recommendations for practice.
Proseminar: A good source should be found and presented in detail. Other related works (1-3) should only be discussed in passing for comparison. In the scientific articles presented, the conclusions presented should be critically examined with regard to credibility and relevance.
References
The articles available for selection can be found in the resources folder on the KVV page.
Additional information
Webseite
https://www.mi.fu-berlin.de/w/SE/SeminarAgil2024
Dozent
Linus Ververs
Sprache
Deutsch (Vortrag kann auf Englisch gehalten werden)
Zielgruppe
Proseminar: Bachelorstudierende, die das Modul "Wissenschaftliches Arbeiten in der Informatik" besuchen / besucht haben und im Rahmen dieses Seminars das erste Mal das gelernte Wissen anwenden und wissenschaftlich arbeiten.
Seminar: Fortgeschrittene Bachelorstudierende, die das Modul im Rahmen ihres Vertiefungsbereichs besuchen oder Masterstudierende
Voraussetzungen
Das Modul Softwaretechnik bereits besucht zu haben, wird dringend empfohlen. (Falls nicht, bitte im Voraus kontakt zum Dozenten aufnehmen.)
19301710: Undergraduate Seminar: Coding Theory
2.0 SWS
Edited
REMaxWillert
Undergraduate Course
0087cA.3.11.2Scientific Work in Computer Science
Contents
The proseminar delves more deeply into topics covered in the basic classes taught by the theory group. During the winter semester 2024/25, we consider the theory of coding.
Prerequisites
"Discrete Structures", "Linear Algebra" and "Algorithms and Data Structures"
References
wird mit der Ankündigung bekannt gegeben
19331617: Seminar/Proseminar: Information-theoretical principles of ML
2.0 SWS
Edited
REGerhardWunder
Seminar / Undergraduate Course
0087cA.3.11.2Scientific Work in Computer Science
Recently, artificial intelligence and machine learning (AI/ML) has emerged as a valuable tool in the field of communication and signal processing. It is therefore natural to extend the investigations to the field of physical layer security and privacy. This field is still in its infancy with some very preliminary results on wiretap channel code design, feature extraction of wireless channels and a growing part of contributions to privacy-preserving, distributed AI/ML. This seminar will teach the latest advances and synergies between the broad fields of AI/ML and secure communications.
Keywords: ML overview, basic tools, universal approximation, deep learning, stochastic gradient, acceleration strategies, deep convolutional networks, feature extraction, classification, mutual information neural network estimation, structured sparsity in convolutional neural networks, matrix decompositions
19329617: Seminar/Proseminar: Telematics
2.0 SWS
Edited
REJochenSchiller
Seminar / Undergraduate Course
0087cA.3.11.2Scientific Work in Computer Science
This seminar focuses on several aspects of technical Computer Science. At the start of the seminar you will receive a list of suggested topics that mainly deal with particular aspects of the so-called Trusted Computing and security issues in the Internet of Things. You are also very welcome to suggest your own research topic that is closely related to technical Computer Science. You can work on your topic exclusively or in a small group of 2-3 students. But then, it has to be apparent who contributed what part to the seminar paper.
It is possible to combine this seminar with the software project Telematics. Then, the theoretical foundations of the topic are dealt with in the scientific seminar paper and implemented in practice in the software project. Please note that the seminar paper is not supposed to deal with details of the implementation and that you are still obliged to write an accurate documentation of the software project in written form.
Concerning the schedule: This seminar takes place during the semester. There are only a few meetings, but these are mandatory. On the first meeting (03.11.2020), the topic list will be handed out and discussed. Please prepare a short (2-3 minutes) overview of your own topic suggestion if you would like to include it in the seminar. On the next week (10.11.2020), the topics will be assigned. After that there will be 3 presentation dates in total: the topic presentation (01.12.2021), a short interim presentation (12.01.2021) and the final presentation (23.02.2021). There will be no further meetings beyond that. This semester, all meetings will take place as video conferences with Webex.
0087cA.3.310 ECTS
Software project A
19319612: Research Project: Innovative teaching and learning systems
2.0 SWS
Edited
EWolfgangMulzer
Project Seminar
0087cA.3.3.1Software project A
Content
In this software project we will develop new ideas and necessary features for the MVS and KVV systems in the form of new tools/components/modules. After a seminar-style introduction to the necessary technologies, we will specify the requirements and design solutions and then develop them. Good teamwork is required. The possibilities for improving both systems are varied and range from infrastucture to usability. There will be weekly meetings during the semester, at which teams will report on progress and discuss solutions.
19308312: Implementation Project: Applications of Algorithms
2.0 SWS
Edited
ELászlóKozma
Project Seminar
0087cA.3.3.1Software project A
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.
References
je nach Anwendungsgebiet
19319312: Implementation Project: Coding IxD
2.0 SWS
Tentative
REClaudiaMüller-Birn
Project Seminar
0087cA.3.3.1Software project A
Coding IxD: Designing Neoanalog Artefacts
In this course, we co-educate computer scientists and product designers. Beyond experiencing interdisciplinary work, we want students to envision interactive systems that are intelligent: by this, we mean an intelligence through code that is carefully using material, form, and context, while profoundly respecting both human capabilities and vulnerabilities.
We understand this course as experimental space, where different perspectives meet, exchange, and evolve. Each semester, based on small project teams of up to five members, students are challenged to examine a specific application context. Within this context, the teams envision a new application or product concept.
We guide this process through various carefully tuned methods that are used to spark their ideas. Students iterate through several rounds of ideation and refine their concept in different prototype versions. The most compelling or promising interaction concept, the one that allows grasping the quality and essence of the product concept is implemented in a working prototype.
Students are accompanied by a team of experienced designers and computer scientists but also by guest experts that provide feedback to the various design iterations. If needed, special workshops are organized to cover specific topics ranging from prototyping to project management. The whole course is evaluated continuously to enhance our methodological toolbox.
Besides the regular weekly meetings, the KHB provides complimentary workshops each Monday from 10 AM to 1 PM where participation for computer science students is optional.
References
Zimmerman, John, Jodi Forlizzi, and Shelley Evenson. "Research through design as a method for interaction design research in HCI." Proceedings of the SIGCHI conference on Human factors in computing systems. 2007.
Pierce, James, et al. "Expanding and refining design and criticality in HCI." Proceedings of the 33rd Annual ACM Conference on Human Factors in Computing Systems. 2015.
Anthony Dunne and Fiona Raby. 2013. Speculative Everything: Design, Fiction, and Social Dreaming. The MIT Press.
Additional information
Weitergehende Informationen zu den Veranstaltungsinhalten finden Sie unter:
Die Lehrveranstaltung findet in Kooperation mit der Weissensee Kunsthochschule Berlin statt. Wir treffen uns jeden Mittwoch im Labor des Exzellenzclusters „Bild Wissen Gestaltung“ an der HU Berlin.
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 AI 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 AI 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.
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 take on the role of a software developer. In this role, they estimate and evaluate the effort of requirements and implement them in the project.
Students will be organized into teams of 7-8 people, combining product owners with 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.
The course consists of 90min lectures (participation voluntary) followed by a 90min team meeting (participation mandatory).
Attention: External course, separate registration is required, see https://amos.uni1.de
Studierende lernen zu Softwareprodukten und Softwareentwicklung in der Industrie
Studierende lernen zu agilen Methoden, insbesondere Scrum und Extreme Programming
Studierende lernen zu Open-Source-Softwareentwicklung und ihren Prinzipien
Studierende erwerben praktische Erfahrung mit Scrum und Extrem Programming
Zielgruppe
Studierende der Informatik (und verwandte Disziplinen). Für die Softwareentwickler:innen Rolle sollten Sie praktische Programmiererfahrung mitbringen. Dieser Kurs ist nicht geeignet, um Programmieren zu lernen.
Sprache
Englisch (Vorlesungen auf Englisch, Team-Meeting auf Deutsch oder Englisch nach Wahl der Studierenden)
Weiteres
SWS: 4 SWS (2 SWS VL, 2 SWS Team-Meeting)
Semester: Jedes Wintersemester
Modalität: Online, universitätsübergreifend
Tags: Scrum
19308412: Software Project: Data Management
2.0 SWS
Edited
RAgnèsVoisard
EMuhammed-UgurKaragülle
Project Seminar
0087cA.3.3.1Software project A
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.
References
Wird bekannt gegeben. / To be announced.
Additional information
Zielgruppe
Studierende im Master- bzw. Bachelorstudiengang
Voraussetzungen
Gute Programmierkenntnisse, Einführung in Datenbanksysteme.
0087cA.3.410 ECTS
Software project B
19319612: Research Project: Innovative teaching and learning systems
2.0 SWS
Edited
EWolfgangMulzer
Project Seminar
0087cA.3.4.1Software project B
Content
In this software project we will develop new ideas and necessary features for the MVS and KVV systems in the form of new tools/components/modules. After a seminar-style introduction to the necessary technologies, we will specify the requirements and design solutions and then develop them. Good teamwork is required. The possibilities for improving both systems are varied and range from infrastucture to usability. There will be weekly meetings during the semester, at which teams will report on progress and discuss solutions.
19308312: Implementation Project: Applications of Algorithms
2.0 SWS
Edited
ELászlóKozma
Project Seminar
0087cA.3.4.1Software project B
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.
References
je nach Anwendungsgebiet
19319312: Implementation Project: Coding IxD
2.0 SWS
Tentative
REClaudiaMüller-Birn
Project Seminar
0087cA.3.4.1Software project B
Coding IxD: Designing Neoanalog Artefacts
In this course, we co-educate computer scientists and product designers. Beyond experiencing interdisciplinary work, we want students to envision interactive systems that are intelligent: by this, we mean an intelligence through code that is carefully using material, form, and context, while profoundly respecting both human capabilities and vulnerabilities.
We understand this course as experimental space, where different perspectives meet, exchange, and evolve. Each semester, based on small project teams of up to five members, students are challenged to examine a specific application context. Within this context, the teams envision a new application or product concept.
We guide this process through various carefully tuned methods that are used to spark their ideas. Students iterate through several rounds of ideation and refine their concept in different prototype versions. The most compelling or promising interaction concept, the one that allows grasping the quality and essence of the product concept is implemented in a working prototype.
Students are accompanied by a team of experienced designers and computer scientists but also by guest experts that provide feedback to the various design iterations. If needed, special workshops are organized to cover specific topics ranging from prototyping to project management. The whole course is evaluated continuously to enhance our methodological toolbox.
Besides the regular weekly meetings, the KHB provides complimentary workshops each Monday from 10 AM to 1 PM where participation for computer science students is optional.
References
Zimmerman, John, Jodi Forlizzi, and Shelley Evenson. "Research through design as a method for interaction design research in HCI." Proceedings of the SIGCHI conference on Human factors in computing systems. 2007.
Pierce, James, et al. "Expanding and refining design and criticality in HCI." Proceedings of the 33rd Annual ACM Conference on Human Factors in Computing Systems. 2015.
Anthony Dunne and Fiona Raby. 2013. Speculative Everything: Design, Fiction, and Social Dreaming. The MIT Press.
Additional information
Weitergehende Informationen zu den Veranstaltungsinhalten finden Sie unter:
Die Lehrveranstaltung findet in Kooperation mit der Weissensee Kunsthochschule Berlin statt. Wir treffen uns jeden Mittwoch im Labor des Exzellenzclusters „Bild Wissen Gestaltung“ an der HU Berlin.
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 AI 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 AI 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.
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 take on the role of a software developer. In this role, they estimate and evaluate the effort of requirements and implement them in the project.
Students will be organized into teams of 7-8 people, combining product owners with 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.
The course consists of 90min lectures (participation voluntary) followed by a 90min team meeting (participation mandatory).
Attention: External course, separate registration is required, see https://amos.uni1.de
Studierende lernen zu Softwareprodukten und Softwareentwicklung in der Industrie
Studierende lernen zu agilen Methoden, insbesondere Scrum und Extreme Programming
Studierende lernen zu Open-Source-Softwareentwicklung und ihren Prinzipien
Studierende erwerben praktische Erfahrung mit Scrum und Extrem Programming
Zielgruppe
Studierende der Informatik (und verwandte Disziplinen). Für die Softwareentwickler:innen Rolle sollten Sie praktische Programmiererfahrung mitbringen. Dieser Kurs ist nicht geeignet, um Programmieren zu lernen.
Sprache
Englisch (Vorlesungen auf Englisch, Team-Meeting auf Deutsch oder Englisch nach Wahl der Studierenden)
Weiteres
SWS: 4 SWS (2 SWS VL, 2 SWS Team-Meeting)
Semester: Jedes Wintersemester
Modalität: Online, universitätsübergreifend
Tags: Scrum
19308412: Software Project: Data Management
2.0 SWS
Edited
RAgnèsVoisard
EMuhammed-UgurKaragülle
Project Seminar
0087cA.3.4.1Software project B
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.
References
Wird bekannt gegeben. / To be announced.
Additional information
Zielgruppe
Studierende im Master- bzw. Bachelorstudiengang
Voraussetzungen
Gute Programmierkenntnisse, Einführung in Datenbanksysteme.
0087cA.3.510 ECTS
Non-sequential and Distributed Programming for Teaching
19322101: Concurrent, Parallel, and Distributed Programming
4.0 SWS
Tentative
EBarryLinnert
Lecture
0087cA.3.5.1Non-sequential and Distributed Programming for Teaching
Non-Sequential program execution and object oriented systems
Control flow, strategies selection, priorities, handling and avoiding deadlock
Coroutines implementation,
- Multiprocessor systems
Programming and Synchronisation of concurrent processes that interact through message passing
Remote Calling Techniques
Client-server, Peer-to-peer Networks
Parallel computing over networks
Concurrent and coordination languages
Processing on the server and on the client.
Middleware, structured communication, static and dynamic interfaces
Event-based and stream-based processing
Security of network applications
Non-functional Aspects (time, memory, quality of service)
The contents of the course Operating and Communication Systems (BKS) are a prerequisite and prior completion is strongly recommended.
References
Literatur:
Principles of Concurrent and Distributed Programming. M. Ben-Ari. Addison-Wesley.
Distributed Systems. Concepts and Design. Fifth Edition. George Coulouris, Jean Dollimore, Tim Kindberg, Gordon Blair. Pearson.
19322102: Practice seminar for Concurrent and Distributed Programming
2.0 SWS
Tentative
EBarryLinnert
Practice seminar
0087cA.3.5.2Non-sequential and Distributed Programming for Teaching
0087cA.3.65 ECTS
Impacts of Computer Science
19301301: Consequences of Computer Science
2.0 SWS
Edited
RELutzPrechelt
Lecture
0087cA.3.6.1Impacts of Computer Science
This course deals with the consequences of computer science. Its aim is to establish an understanding of the fact that computer systems intervene in manifold ways in our private and professional lifes and shapen them. Many of these influences bring about major risks and need a conscious and enlightened composition in which computer scientists by nature play an important role -- or should at least do so.
We will for example have a look at how computerisation influences our private sphere, economics and society as a whole, our security and working environment. A conceptual introduction will provide orientational knowledge besides basic knowledge (Verfügungswissen) and strategies how to deal with both: analyse critically and get involved in the technical development.
References
See the slides.
Additional information
Kurssprache ist Deutsch inklusive Folien und Übungsblätter.
19301302: Exercise for Consequences of Computer Science
2.0 SWS
Edited
LinusVervers
RELutzPrechelt
Practice seminar
0087cA.3.6.2Impacts of Computer Science
0087cA.3.85 ECTS
Computer Architecture
19300601: Computer Architecture
2.0 SWS
Tentative
RELarissaGroth
Lecture
0087cA.3.8.1Computer Architecture
The module Computer Architecture covers basic concepts of computer systems. Topics are von-Neuman/Harvard architecture, microarchitectures, RISC/CISC, micro programming, pipelining, caches, memory hierarchy, bus systems, assembler programming, multi processor systems, branch prediction, representation of numbers and other data types, computer arithmetic.
References
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: Practice seminar for Computer Architecture
2.0 SWS
Tentative
RELarissaGroth
PC-based Seminar
0087cA.3.8.2Computer Architecture
0087d_k90
2015, BSc Informatik (Kombi), 90 LPs
0087dA.1.310 ECTS
Logic and Discrete Mathematics for Teaching
19300901: Discrete Structures for Computer Science
4.0 SWS
Edited
REKatharinaKlost
Lecture
0087dA.1.3.1Logic and Discrete Mathematics for Teaching
Qualifikationsziele
Die Studierenden formulieren3 Aussagen formal aussagenlogisch und prädikatenlogisch. Sie analysieren4 und vereinfachen3 die logische Struktur gegebener Aussagen und beschreiben4 die logische Struktur von Beweisen. Sie benennen Eigenschaften unterschiedlicher Mengen, Relationen und Funktionen und begründen4 diese mit Hilfe formaler Argumente. Sie können Beweise für elementare Aussagen unter Verwendung elementarer Beweistechniken entwickeln5 und die Mächtigkeit von Mengen mit Hilfe kombinatorischer Techniken sowie Wahrscheinlichkeiten von Zufallsereignissen bestimmen3. Sie sind in der Lage, Fragestellungen der (Bio-)Informatik mit Hilfe der Graphentheorie und der diskreten Wahrscheinlichkeitstheorie zu modellieren.3. Die Studierenden benennen Eigenschaften unterschiedlicher Graphen und begründen4 diese mit Hilfe formaler Argumente.
Inhalte
Studierende erlernen grundlegende Konzepte der Mengenlehre, Logik, Booleschen Algebra, Kombinatorik und Graphentheorie und üben deren Anwendung. Sie erarbeiten sich in der Mengenlehre Mengen, Relationen, Äquivalenz- und Ordnungsrelationen und Funktionen. Im Bereich der Logik und Booleschen Algebra erarbeiten sie sich Aspekte der Aussagenlogik, Prädikatenlogik, Erfüllbarkeitstests, sowie Boolesche Funktionen und Normalformen. Im Themenfeld Kombinatorik erlernen und diskutieren sie das Schubfachprinzip, Rekursion, Abzählprinzipien, Fakultät und Binomialkoeffizienten. Im Themenfeld Graphentheorie erarbeiten sie Repräsentationsformen, Wege, Kreise und Bäume. Zuletzt erarbeiten sie sich verschiedene Beweistechniken und grundlegende Aspekte Diskreter Wahrscheinlichkeitstheorie. Die meisten dieser Konzepte werden an Rechen- oder Beweisaufgaben geübt.
19300902: Practice seminar for Discrete Structures for CS
2.0 SWS
Edited
REKatharinaKlost
Practice seminar
0087dA.1.3.2Logic and Discrete Mathematics for Teaching
0087dA.1.47 ECTS
Fundamentals of Theoretical Computer Science
19301201: Foundations of Theoretical Computer Science
2.0 SWS
Edited
EWolfgangMulzer
EKatharinaKlost
Lecture
0087dA.1.4.1Fundamentals of Theoretical Computer Science
Contents:
models of computation
automata
formal languates
grammars and the Chomsky-hierarchy
Turing-machines
computabilty
introduction to the complexity of computational problems
John E. Hopcroft, Rajeev Motwani, Jeffrey D. Ullman, Einführung in die Automatentheorie, Formale Sprachen und Komplexität, Pearson Studium, 3. Auflage, 2011
Michael Sipser, Introduction to the Theory of Computation, 2nd ed., Thomson Course Technology, 2006
Wegener, Kompendium theoretische Informatik - Eine Ideensammlung, Teubner 1996
19301202: Practice seminar for Foundations of Theoretical Computer Science
2.0 SWS
Edited
EWolfgangMulzer
EKatharinaKlost
Practice seminar
0087dA.1.4.2Fundamentals of Theoretical Computer Science
0087dA.1.85 ECTS
Computer Architecture
19300601: Computer Architecture
2.0 SWS
Tentative
RELarissaGroth
Lecture
0087dA.1.8.1Computer Architecture
The module Computer Architecture covers basic concepts of computer systems. Topics are von-Neuman/Harvard architecture, microarchitectures, RISC/CISC, micro programming, pipelining, caches, memory hierarchy, bus systems, assembler programming, multi processor systems, branch prediction, representation of numbers and other data types, computer arithmetic.
References
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: Practice seminar for Computer Architecture
2.0 SWS
Tentative
RELarissaGroth
PC-based Seminar
0087dA.1.8.2Computer Architecture
0087dA.2.105 ECTS
Scientific Work in Computer Science
19319701: Scientific Work/Research in Computer Science
1.0 SWS
Edited
REVolkerRoth
Lecture
0087dA.2.10.1Scientific Work in Computer Science
The lecture introduces students to scientific work. The essential forms of written and oral knowledge representation are described. It explains how to write computer science texts and how to read and examine them. Furthermore, students will be introduced to legal, ethical and philosophical problems of the sciences and in particular of computer science. Furthermore, problems of gender and diversity in computer science and in lectures will be presented and solution strategies will be discussed.
19329617: Seminar/Proseminar: Telematics
2.0 SWS
Edited
REJochenSchiller
Seminar / Undergraduate Course
0087dA.2.10.2Scientific Work in Computer Science
This seminar focuses on several aspects of technical Computer Science. At the start of the seminar you will receive a list of suggested topics that mainly deal with particular aspects of the so-called Trusted Computing and security issues in the Internet of Things. You are also very welcome to suggest your own research topic that is closely related to technical Computer Science. You can work on your topic exclusively or in a small group of 2-3 students. But then, it has to be apparent who contributed what part to the seminar paper.
It is possible to combine this seminar with the software project Telematics. Then, the theoretical foundations of the topic are dealt with in the scientific seminar paper and implemented in practice in the software project. Please note that the seminar paper is not supposed to deal with details of the implementation and that you are still obliged to write an accurate documentation of the software project in written form.
Concerning the schedule: This seminar takes place during the semester. There are only a few meetings, but these are mandatory. On the first meeting (03.11.2020), the topic list will be handed out and discussed. Please prepare a short (2-3 minutes) overview of your own topic suggestion if you would like to include it in the seminar. On the next week (10.11.2020), the topics will be assigned. After that there will be 3 presentation dates in total: the topic presentation (01.12.2021), a short interim presentation (12.01.2021) and the final presentation (23.02.2021). There will be no further meetings beyond that. This semester, all meetings will take place as video conferences with Webex.
19328217: Seminar/Proseminar: New Trends in Information Systems
2.0 SWS
Edited
REAgnèsVoisard
EMuhammed-UgurKaragülle
Seminar / Undergraduate Course
0087dA.2.10.2Scientific Work in Computer Science
This seminar aims at studying recent trends in data management. Among others, we will look at two emerging topics, namely Location-Based Services (LBS) and Event-Based Services (EBS).
Event-based Systems (EBS) are part of many current applications such as business activity monitoring, stock tickers, facility management, data streaming, or security. In the past years, the topic has gained increasing attention from both the industrial and the academic community. Current research concentrates of diverse aspects that range from event capture (incoming data) to response triggering. This seminar aims at studying some of the current trends in Event-based Systems with a strong focus on models and design. Location-based services are now often part of every day's life through applications such as navigation assistants in the public or private transportation domain. The underlying technology deals with many different aspects, such as location detection, information retrieval, or privacy. More recently, aspects such as user context and preferences were considered in order to send users more personalized information.
A solid background in databases is required, typically a database course at a bachelor level.
References
Wird bekannt gegeben.
19313017: Seminar/Proseminar: Agile methods and technical practices
2.0 SWS
Edited
ELinusVervers
RLutzPrechelt
Seminar / Undergraduate Course
0087dA.2.10.2Scientific Work in Computer Science
More than 20 years after the first publication of the agile manifesto (https://agilemanifesto.org/iso/en/manifesto.html), agile software development is here to stay. At the very least, many companies are tempted by the promise of agile development and flat hierarchies. In this seminar, we will look at different agile methods (Scrum, Kanban, eXtreme Programming, etc.), how they are used in practice, where and why they are deviated from and the technical practices (pair programming, continuous integration, DevOps, etc.) that support the agile way of working.
During this seminar, students are expected to conduct independent research on their chosen topic. Whether the course is booked as a seminar or proseminar has an influence on the requirements:
Seminar: Here, several good sources (5-10) are to be found and a summary of the results presented. The aim is to work out the current state of research on the basis of a selected research question, identify gaps and contradictions in the research and derive recommendations for practice.
Proseminar: A good source should be found and presented in detail. Other related works (1-3) should only be discussed in passing for comparison. In the scientific articles presented, the conclusions presented should be critically examined with regard to credibility and relevance.
References
The articles available for selection can be found in the resources folder on the KVV page.
Additional information
Webseite
https://www.mi.fu-berlin.de/w/SE/SeminarAgil2024
Dozent
Linus Ververs
Sprache
Deutsch (Vortrag kann auf Englisch gehalten werden)
Zielgruppe
Proseminar: Bachelorstudierende, die das Modul "Wissenschaftliches Arbeiten in der Informatik" besuchen / besucht haben und im Rahmen dieses Seminars das erste Mal das gelernte Wissen anwenden und wissenschaftlich arbeiten.
Seminar: Fortgeschrittene Bachelorstudierende, die das Modul im Rahmen ihres Vertiefungsbereichs besuchen oder Masterstudierende
Voraussetzungen
Das Modul Softwaretechnik bereits besucht zu haben, wird dringend empfohlen. (Falls nicht, bitte im Voraus kontakt zum Dozenten aufnehmen.)
19301710: Undergraduate Seminar: Coding Theory
2.0 SWS
Edited
REMaxWillert
Undergraduate Course
0087dA.2.10.2Scientific Work in Computer Science
Contents
The proseminar delves more deeply into topics covered in the basic classes taught by the theory group. During the winter semester 2024/25, we consider the theory of coding.
Prerequisites
"Discrete Structures", "Linear Algebra" and "Algorithms and Data Structures"
References
wird mit der Ankündigung bekannt gegeben
19336717: Graph-neural networks in the life sciences and beyond
2.0 SWS
Edited
REKatharinaBaum
EPaulineHiort
EPascalIversen
Seminar / Undergraduate Course
0087dA.2.10.2Scientific Work in Computer Science
Complex data can often be naturally modeled as a graph. Graphs or networks describe the interaction between objects and are an effective tool to represent systems in many applications. Graph neural networks are neural networks that directly input graphs and have recently emerged as a powerful tool to analyze networks and to predict properties of nodes and connections.
This seminar offers an in-depth exploration of Graph Neural Networks (GNNs) and their applications across various domains, with a particular emphasis on the life sciences and biomedicine. We will begin by discussing the fundamental concepts and architectures of GNNs, including graph convolutional networks (GCNs) and graph attention networks (GATs). Applications that are discussed include protein-protein interaction networks, drug discovery and personalized medicine. Students will read and present research papers and participate in critical discussions.
The language of this seminar is planned to be English. The students are encouraged to present and discuss in English, but contributions in German are also possible.
19331617: Seminar/Proseminar: Information-theoretical principles of ML
2.0 SWS
Edited
REGerhardWunder
Seminar / Undergraduate Course
0087dA.2.10.2Scientific Work in Computer Science
Recently, artificial intelligence and machine learning (AI/ML) has emerged as a valuable tool in the field of communication and signal processing. It is therefore natural to extend the investigations to the field of physical layer security and privacy. This field is still in its infancy with some very preliminary results on wiretap channel code design, feature extraction of wireless channels and a growing part of contributions to privacy-preserving, distributed AI/ML. This seminar will teach the latest advances and synergies between the broad fields of AI/ML and secure communications.
Keywords: ML overview, basic tools, universal approximation, deep learning, stochastic gradient, acceleration strategies, deep convolutional networks, feature extraction, classification, mutual information neural network estimation, structured sparsity in convolutional neural networks, matrix decompositions
0087dA.2.310 ECTS
Software project A
19315312: Software Project: Distributed Systems
2.0 SWS
Tentative
EJustusPurat
REKatharinaWolter
Project Seminar
0087dA.2.3.1Software project A
19334412: SWP: Szenario-Management in the Future Security Lab
2.0 SWS
Tentative
RELarissaGroth
EMarius MaxWawerek
Project Seminar
0087dA.2.3.1Software project A
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 (16.10.2024) 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 23.10.2024, 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 (November 13, 2024), a brief interim presentation (December 18, 2024), and the final presentation (Februrary 12, 2025).
Students also regularly have the opportunity to work in the Future Security Lab premises, familiarize themselves with the equipment, and conduct tests.
19319612: Research Project: Innovative teaching and learning systems
2.0 SWS
Edited
EWolfgangMulzer
Project Seminar
0087dA.2.3.1Software project A
Content
In this software project we will develop new ideas and necessary features for the MVS and KVV systems in the form of new tools/components/modules. After a seminar-style introduction to the necessary technologies, we will specify the requirements and design solutions and then develop them. Good teamwork is required. The possibilities for improving both systems are varied and range from infrastucture to usability. There will be weekly meetings during the semester, at which teams will report on progress and discuss solutions.
19308312: Implementation Project: Applications of Algorithms
2.0 SWS
Edited
ELászlóKozma
Project Seminar
0087dA.2.3.1Software project A
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.
References
je nach Anwendungsgebiet
19319312: Implementation Project: Coding IxD
2.0 SWS
Tentative
REClaudiaMüller-Birn
Project Seminar
0087dA.2.3.1Software project A
Coding IxD: Designing Neoanalog Artefacts
In this course, we co-educate computer scientists and product designers. Beyond experiencing interdisciplinary work, we want students to envision interactive systems that are intelligent: by this, we mean an intelligence through code that is carefully using material, form, and context, while profoundly respecting both human capabilities and vulnerabilities.
We understand this course as experimental space, where different perspectives meet, exchange, and evolve. Each semester, based on small project teams of up to five members, students are challenged to examine a specific application context. Within this context, the teams envision a new application or product concept.
We guide this process through various carefully tuned methods that are used to spark their ideas. Students iterate through several rounds of ideation and refine their concept in different prototype versions. The most compelling or promising interaction concept, the one that allows grasping the quality and essence of the product concept is implemented in a working prototype.
Students are accompanied by a team of experienced designers and computer scientists but also by guest experts that provide feedback to the various design iterations. If needed, special workshops are organized to cover specific topics ranging from prototyping to project management. The whole course is evaluated continuously to enhance our methodological toolbox.
Besides the regular weekly meetings, the KHB provides complimentary workshops each Monday from 10 AM to 1 PM where participation for computer science students is optional.
References
Zimmerman, John, Jodi Forlizzi, and Shelley Evenson. "Research through design as a method for interaction design research in HCI." Proceedings of the SIGCHI conference on Human factors in computing systems. 2007.
Pierce, James, et al. "Expanding and refining design and criticality in HCI." Proceedings of the 33rd Annual ACM Conference on Human Factors in Computing Systems. 2015.
Anthony Dunne and Fiona Raby. 2013. Speculative Everything: Design, Fiction, and Social Dreaming. The MIT Press.
Additional information
Weitergehende Informationen zu den Veranstaltungsinhalten finden Sie unter:
Die Lehrveranstaltung findet in Kooperation mit der Weissensee Kunsthochschule Berlin statt. Wir treffen uns jeden Mittwoch im Labor des Exzellenzclusters „Bild Wissen Gestaltung“ an der HU Berlin.
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 AI 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 AI 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.
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 take on the role of a software developer. In this role, they estimate and evaluate the effort of requirements and implement them in the project.
Students will be organized into teams of 7-8 people, combining product owners with 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.
The course consists of 90min lectures (participation voluntary) followed by a 90min team meeting (participation mandatory).
Attention: External course, separate registration is required, see https://amos.uni1.de
Studierende lernen zu Softwareprodukten und Softwareentwicklung in der Industrie
Studierende lernen zu agilen Methoden, insbesondere Scrum und Extreme Programming
Studierende lernen zu Open-Source-Softwareentwicklung und ihren Prinzipien
Studierende erwerben praktische Erfahrung mit Scrum und Extrem Programming
Zielgruppe
Studierende der Informatik (und verwandte Disziplinen). Für die Softwareentwickler:innen Rolle sollten Sie praktische Programmiererfahrung mitbringen. Dieser Kurs ist nicht geeignet, um Programmieren zu lernen.
Sprache
Englisch (Vorlesungen auf Englisch, Team-Meeting auf Deutsch oder Englisch nach Wahl der Studierenden)
Weiteres
SWS: 4 SWS (2 SWS VL, 2 SWS Team-Meeting)
Semester: Jedes Wintersemester
Modalität: Online, universitätsübergreifend
Tags: Scrum
19308412: Software Project: Data Management
2.0 SWS
Edited
RAgnèsVoisard
EMuhammed-UgurKaragülle
Project Seminar
0087dA.2.3.1Software project A
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.
References
Wird bekannt gegeben. / To be announced.
Additional information
Zielgruppe
Studierende im Master- bzw. Bachelorstudiengang
Voraussetzungen
Gute Programmierkenntnisse, Einführung in Datenbanksysteme.
0087dA.2.410 ECTS
Software project B
19315312: Software Project: Distributed Systems
2.0 SWS
Tentative
EJustusPurat
REKatharinaWolter
Project Seminar
0087dA.2.4.1Software project B
19334412: SWP: Szenario-Management in the Future Security Lab
2.0 SWS
Tentative
RELarissaGroth
EMarius MaxWawerek
Project Seminar
0087dA.2.4.1Software project B
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 (16.10.2024) 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 23.10.2024, 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 (November 13, 2024), a brief interim presentation (December 18, 2024), and the final presentation (Februrary 12, 2025).
Students also regularly have the opportunity to work in the Future Security Lab premises, familiarize themselves with the equipment, and conduct tests.
19319612: Research Project: Innovative teaching and learning systems
2.0 SWS
Edited
EWolfgangMulzer
Project Seminar
0087dA.2.4.1Software project B
Content
In this software project we will develop new ideas and necessary features for the MVS and KVV systems in the form of new tools/components/modules. After a seminar-style introduction to the necessary technologies, we will specify the requirements and design solutions and then develop them. Good teamwork is required. The possibilities for improving both systems are varied and range from infrastucture to usability. There will be weekly meetings during the semester, at which teams will report on progress and discuss solutions.
19308312: Implementation Project: Applications of Algorithms
2.0 SWS
Edited
ELászlóKozma
Project Seminar
0087dA.2.4.1Software project B
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.
References
je nach Anwendungsgebiet
19319312: Implementation Project: Coding IxD
2.0 SWS
Tentative
REClaudiaMüller-Birn
Project Seminar
0087dA.2.4.1Software project B
Coding IxD: Designing Neoanalog Artefacts
In this course, we co-educate computer scientists and product designers. Beyond experiencing interdisciplinary work, we want students to envision interactive systems that are intelligent: by this, we mean an intelligence through code that is carefully using material, form, and context, while profoundly respecting both human capabilities and vulnerabilities.
We understand this course as experimental space, where different perspectives meet, exchange, and evolve. Each semester, based on small project teams of up to five members, students are challenged to examine a specific application context. Within this context, the teams envision a new application or product concept.
We guide this process through various carefully tuned methods that are used to spark their ideas. Students iterate through several rounds of ideation and refine their concept in different prototype versions. The most compelling or promising interaction concept, the one that allows grasping the quality and essence of the product concept is implemented in a working prototype.
Students are accompanied by a team of experienced designers and computer scientists but also by guest experts that provide feedback to the various design iterations. If needed, special workshops are organized to cover specific topics ranging from prototyping to project management. The whole course is evaluated continuously to enhance our methodological toolbox.
Besides the regular weekly meetings, the KHB provides complimentary workshops each Monday from 10 AM to 1 PM where participation for computer science students is optional.
References
Zimmerman, John, Jodi Forlizzi, and Shelley Evenson. "Research through design as a method for interaction design research in HCI." Proceedings of the SIGCHI conference on Human factors in computing systems. 2007.
Pierce, James, et al. "Expanding and refining design and criticality in HCI." Proceedings of the 33rd Annual ACM Conference on Human Factors in Computing Systems. 2015.
Anthony Dunne and Fiona Raby. 2013. Speculative Everything: Design, Fiction, and Social Dreaming. The MIT Press.
Additional information
Weitergehende Informationen zu den Veranstaltungsinhalten finden Sie unter:
Die Lehrveranstaltung findet in Kooperation mit der Weissensee Kunsthochschule Berlin statt. Wir treffen uns jeden Mittwoch im Labor des Exzellenzclusters „Bild Wissen Gestaltung“ an der HU Berlin.
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 AI 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 AI 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.
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 take on the role of a software developer. In this role, they estimate and evaluate the effort of requirements and implement them in the project.
Students will be organized into teams of 7-8 people, combining product owners with 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.
The course consists of 90min lectures (participation voluntary) followed by a 90min team meeting (participation mandatory).
Attention: External course, separate registration is required, see https://amos.uni1.de
Studierende lernen zu Softwareprodukten und Softwareentwicklung in der Industrie
Studierende lernen zu agilen Methoden, insbesondere Scrum und Extreme Programming
Studierende lernen zu Open-Source-Softwareentwicklung und ihren Prinzipien
Studierende erwerben praktische Erfahrung mit Scrum und Extrem Programming
Zielgruppe
Studierende der Informatik (und verwandte Disziplinen). Für die Softwareentwickler:innen Rolle sollten Sie praktische Programmiererfahrung mitbringen. Dieser Kurs ist nicht geeignet, um Programmieren zu lernen.
Sprache
Englisch (Vorlesungen auf Englisch, Team-Meeting auf Deutsch oder Englisch nach Wahl der Studierenden)
Weiteres
SWS: 4 SWS (2 SWS VL, 2 SWS Team-Meeting)
Semester: Jedes Wintersemester
Modalität: Online, universitätsübergreifend
Tags: Scrum
19308412: Software Project: Data Management
2.0 SWS
Edited
RAgnèsVoisard
EMuhammed-UgurKaragülle
Project Seminar
0087dA.2.4.1Software project B
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.
References
Wird bekannt gegeben. / To be announced.
Additional information
Zielgruppe
Studierende im Master- bzw. Bachelorstudiengang
Voraussetzungen
Gute Programmierkenntnisse, Einführung in Datenbanksysteme.
0087dA.2.510 ECTS
Non-sequential and Distributed Programming for Teaching
19322101: Concurrent, Parallel, and Distributed Programming
4.0 SWS
Tentative
EBarryLinnert
Lecture
0087dA.2.5.1Non-sequential and Distributed Programming for Teaching
Non-Sequential program execution and object oriented systems
Control flow, strategies selection, priorities, handling and avoiding deadlock
Coroutines implementation,
- Multiprocessor systems
Programming and Synchronisation of concurrent processes that interact through message passing
Remote Calling Techniques
Client-server, Peer-to-peer Networks
Parallel computing over networks
Concurrent and coordination languages
Processing on the server and on the client.
Middleware, structured communication, static and dynamic interfaces
Event-based and stream-based processing
Security of network applications
Non-functional Aspects (time, memory, quality of service)
The contents of the course Operating and Communication Systems (BKS) are a prerequisite and prior completion is strongly recommended.
References
Literatur:
Principles of Concurrent and Distributed Programming. M. Ben-Ari. Addison-Wesley.
Distributed Systems. Concepts and Design. Fifth Edition. George Coulouris, Jean Dollimore, Tim Kindberg, Gordon Blair. Pearson.
19322102: Practice seminar for Concurrent and Distributed Programming
2.0 SWS
Tentative
EBarryLinnert
Practice seminar
0087dA.2.5.2Non-sequential and Distributed Programming for Teaching
0087dA.2.65 ECTS
Impacts of Computer Science
19301301: Consequences of Computer Science
2.0 SWS
Edited
RELutzPrechelt
Lecture
0087dA.2.6.1Impacts of Computer Science
This course deals with the consequences of computer science. Its aim is to establish an understanding of the fact that computer systems intervene in manifold ways in our private and professional lifes and shapen them. Many of these influences bring about major risks and need a conscious and enlightened composition in which computer scientists by nature play an important role -- or should at least do so.
We will for example have a look at how computerisation influences our private sphere, economics and society as a whole, our security and working environment. A conceptual introduction will provide orientational knowledge besides basic knowledge (Verfügungswissen) and strategies how to deal with both: analyse critically and get involved in the technical development.
References
See the slides.
Additional information
Kurssprache ist Deutsch inklusive Folien und Übungsblätter.
19301302: Exercise for Consequences of Computer Science
2.0 SWS
Edited
LinusVervers
RELutzPrechelt
Practice seminar
0087dA.2.6.2Impacts of Computer Science
0087e_k90
2024, BSc Informatik (Lehramt), 90 LP
0087eA.1.110 ECTS
Konzepte der Programmierung, LB
19300001: Fundamentals of Programming
4.0 SWS
Edited
REWolfgangMulzer
Lecture
0087eA.1.1.1Konzepte der Programmierung, LB
Qualification goals
The students can explain and compare different programming paradigms. They are able to interpret descriptions and source code related to fundamental data structures, to characterize how they work, and to implement basic algorithms and data structures in different programming paradigms, adapting them to given requirements. They can discuss the advantages and disadvantages of different solutions for algorithmic problems.
Contents
Students acquire the fundamentals of programming. We will discuss basic programming paradigms, such as imperative, functional, and object oriented. Students will learn about expressions and data types, as well as fundamental aspects of imperative programming (e.g., state, statements, control structures, input-output), and practice their application. Students will also gain an understanding of fundamental aspects of functional programming (functions, recursion, higher-order functions, currying), object-oriented concepts such as encapsulation and inheritance, polymorphism, as well as basic algorithmic tasks (e.g., searching, sorting, selection, and simple array- and pointer-based data structures), and practice their implementation.
19300002: Practice seminar for Fundamentals of Programming
2.0 SWS
Edited
REWolfgangMulzer
Practice seminar
0087eA.1.1.2Konzepte der Programmierung, LB
0087eA.1.25 ECTS
Mathematik für Informatik, LB
19337001: Mathematics for Computer Science Teachers
2.0 SWS
Edited
REMaxWillert
Lecture
0087eA.1.2.1Mathematik für Informatik, LB
Qualification objectives: Students formulate3 statements formally using propositional and predicate logic. They analyze4 and simplify3 the logical structure of given statements and describe4 the logical structure of proofs. They name properties of different sets, relations and functions and justify4 these with the help of formal arguments. They can develop proofs for elementary statements using elementary proof techniques5 and determine the cardinality of sets using combinatorial techniques as well as probabilities of random events3.
Contents: Students learn basic concepts of set theory, logic and combinatorics and practise their application. They work on sets, relations and functions in set theory. In the field of logic and Boolean algebra, they learn aspects of propositional logic and predicate logic. In the field of combinatorics, they learn about factorials and binomial coefficients. They also learn elementary proof techniques and basic aspects of discrete probability theory. Finally, formal languages are used as examples for modeling. Most of these concepts are practiced on calculation or proof problems.
References
Kenneth H. Rosen. Discrete Mathematics and its Applications, McGaw-Hill Education, 8. Auflage, 2018.
Gerald Teschl und Susanne Teschl. Mathematik für Informatiker - Band 1: Diskrete Mathematik und Lineare Algebra, Springer Vieweg, 4. Auflage, Berlin Heidelberg 2013.
19337002: Mathematics for Computer Science Teachers (Exercises)
2.0 SWS
Edited
REMaxWillert
Practice seminar
0087eA.1.2.2Mathematik für Informatik, LB
0087eA.1.35 ECTS
Auswirkungen der Informatik, LB
19301301: Consequences of Computer Science
2.0 SWS
Edited
RELutzPrechelt
Lecture
0087eA.1.3.1Auswirkungen der Informatik, LB
This course deals with the consequences of computer science. Its aim is to establish an understanding of the fact that computer systems intervene in manifold ways in our private and professional lifes and shapen them. Many of these influences bring about major risks and need a conscious and enlightened composition in which computer scientists by nature play an important role -- or should at least do so.
We will for example have a look at how computerisation influences our private sphere, economics and society as a whole, our security and working environment. A conceptual introduction will provide orientational knowledge besides basic knowledge (Verfügungswissen) and strategies how to deal with both: analyse critically and get involved in the technical development.
References
See the slides.
Additional information
Kurssprache ist Deutsch inklusive Folien und Übungsblätter.
John E. Hopcroft, Rajeev Motwani, Jeffrey D. Ullman, Einführung in die Automatentheorie, Formale Sprachen und Komplexität, Pearson Studium, 3. Auflage, 2011
Non-Sequential program execution and object oriented systems
Control flow, strategies selection, priorities, handling and avoiding deadlock
Coroutines implementation,
- Multiprocessor systems
Programming and Synchronisation of concurrent processes that interact through message passing
Remote Calling Techniques
Client-server, Peer-to-peer Networks
Parallel computing over networks
Concurrent and coordination languages
Processing on the server and on the client.
Middleware, structured communication, static and dynamic interfaces
Event-based and stream-based processing
Security of network applications
Non-functional Aspects (time, memory, quality of service)
The contents of the course Operating and Communication Systems (BKS) are a prerequisite and prior completion is strongly recommended.
References
Literatur:
Principles of Concurrent and Distributed Programming. M. Ben-Ari. Addison-Wesley.
Distributed Systems. Concepts and Design. Fifth Edition. George Coulouris, Jean Dollimore, Tim Kindberg, Gordon Blair. Pearson.
19322102: Practice seminar for Concurrent and Distributed Programming
2.0 SWS
Tentative
EBarryLinnert
Practice seminar
0087eA.1.6.2Nebenläufige, parallele und verteilte Programmierung, LB
0087eA.2.15 ECTS
Rechnerarchitektur, LB
19300601: Computer Architecture
2.0 SWS
Tentative
RELarissaGroth
Lecture
0087eA.2.1.1Rechnerarchitektur, LB
The module Computer Architecture covers basic concepts of computer systems. Topics are von-Neuman/Harvard architecture, microarchitectures, RISC/CISC, micro programming, pipelining, caches, memory hierarchy, bus systems, assembler programming, multi processor systems, branch prediction, representation of numbers and other data types, computer arithmetic.
References
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: Practice seminar for Computer Architecture
Students learn the basic structure of microprocessor architectures for embedded systems including data formats, instruction formats, instruction sets and memory organization. They learn and practise the practical scope of interfaces and input/output systems and peripheral devices. They will learn about the properties of cyber physical systems, sensors, actuators and wireless sensor networks (WSN) and discuss their areas of application. They also learn how to connect and use field programmable gate arrays (FPGAs) and practise the application-related programming of embedded systems in C and Assembler. They also learn the basic structure of current operating systems for embedded systems, in particular real-time operating systems, real-time scheduling and real-time communication, and practise their implementation. Finally, aspects of the security of embedded systems including attack vectors, process isolation and trusted computing are discussed and evaluated.
When studying Computer Science at university you mainly focus on concepts. This approach generally makes sense as these conceps are far more persistent and applicable in a broader sense than concrete details would be. Many details, however, which are important for concrete software development, are falling by the wayside. The course is supposed to reduce this deficit.
In it we mainly focus on concepts too, but always only on those which directly have to do with software development, and make sure to apply them precisely, personally in practice -- reflecting its use jointly (something which distinguisdes this course from most other software projects).
The concepts dealt with and practiced may be assigned to three different but closeky connected spheres:
software development and structuring (object-oriented) Softwareentwurf und -strukturierung (und zwar objektorientiert)
approaches (for example in the areas prototyping, automatisation, incremental improvement)
personality development (aspects like consistency, responsibility, communicational skills)
Important: Each participant needs to have a software project of his/her own, which has been started far in advance or the course (within a company, for founding a company or as an open source project), on which he/she works on a weekly basis for the entire duration of the course (mainly in a team) and which serves as training ground for the concepts.
This is a hard prerequisite for participation.
Additional information
Zielgruppe sind Studierende, die durch intensives Üben Fertigkeiten aufbauen möchten, die gute und professionell arbeitende Softwareentwickler/innen benötigen.
0088cA.1.210 ECTS
Logic and Discrete Mathematics for Teaching
19300901: Discrete Structures for Computer Science
4.0 SWS
Edited
REKatharinaKlost
Lecture
0088cA.1.2.1Logic and Discrete Mathematics for Teaching
Qualifikationsziele
Die Studierenden formulieren3 Aussagen formal aussagenlogisch und prädikatenlogisch. Sie analysieren4 und vereinfachen3 die logische Struktur gegebener Aussagen und beschreiben4 die logische Struktur von Beweisen. Sie benennen Eigenschaften unterschiedlicher Mengen, Relationen und Funktionen und begründen4 diese mit Hilfe formaler Argumente. Sie können Beweise für elementare Aussagen unter Verwendung elementarer Beweistechniken entwickeln5 und die Mächtigkeit von Mengen mit Hilfe kombinatorischer Techniken sowie Wahrscheinlichkeiten von Zufallsereignissen bestimmen3. Sie sind in der Lage, Fragestellungen der (Bio-)Informatik mit Hilfe der Graphentheorie und der diskreten Wahrscheinlichkeitstheorie zu modellieren.3. Die Studierenden benennen Eigenschaften unterschiedlicher Graphen und begründen4 diese mit Hilfe formaler Argumente.
Inhalte
Studierende erlernen grundlegende Konzepte der Mengenlehre, Logik, Booleschen Algebra, Kombinatorik und Graphentheorie und üben deren Anwendung. Sie erarbeiten sich in der Mengenlehre Mengen, Relationen, Äquivalenz- und Ordnungsrelationen und Funktionen. Im Bereich der Logik und Booleschen Algebra erarbeiten sie sich Aspekte der Aussagenlogik, Prädikatenlogik, Erfüllbarkeitstests, sowie Boolesche Funktionen und Normalformen. Im Themenfeld Kombinatorik erlernen und diskutieren sie das Schubfachprinzip, Rekursion, Abzählprinzipien, Fakultät und Binomialkoeffizienten. Im Themenfeld Graphentheorie erarbeiten sie Repräsentationsformen, Wege, Kreise und Bäume. Zuletzt erarbeiten sie sich verschiedene Beweistechniken und grundlegende Aspekte Diskreter Wahrscheinlichkeitstheorie. Die meisten dieser Konzepte werden an Rechen- oder Beweisaufgaben geübt.
19300902: Practice seminar for Discrete Structures for CS
2.0 SWS
Edited
REKatharinaKlost
Practice seminar
0088cA.1.2.2Logic and Discrete Mathematics for Teaching
0088cA.1.47 ECTS
Fundamentals of Theoretical Computer Science
19301201: Foundations of Theoretical Computer Science
2.0 SWS
Edited
EWolfgangMulzer
EKatharinaKlost
Lecture
0088cA.1.4.1Fundamentals of Theoretical Computer Science
Contents:
models of computation
automata
formal languates
grammars and the Chomsky-hierarchy
Turing-machines
computabilty
introduction to the complexity of computational problems
John E. Hopcroft, Rajeev Motwani, Jeffrey D. Ullman, Einführung in die Automatentheorie, Formale Sprachen und Komplexität, Pearson Studium, 3. Auflage, 2011
Michael Sipser, Introduction to the Theory of Computation, 2nd ed., Thomson Course Technology, 2006
Wegener, Kompendium theoretische Informatik - Eine Ideensammlung, Teubner 1996
19301202: Practice seminar for Foundations of Theoretical Computer Science
2.0 SWS
Edited
EWolfgangMulzer
EKatharinaKlost
Practice seminar
0088cA.1.4.2Fundamentals of Theoretical Computer Science
0088cA.3.115 ECTS
Scientific Work in Computer Science
19319701: Scientific Work/Research in Computer Science
1.0 SWS
Edited
REVolkerRoth
Lecture
0088cA.3.11.1Scientific Work in Computer Science
The lecture introduces students to scientific work. The essential forms of written and oral knowledge representation are described. It explains how to write computer science texts and how to read and examine them. Furthermore, students will be introduced to legal, ethical and philosophical problems of the sciences and in particular of computer science. Furthermore, problems of gender and diversity in computer science and in lectures will be presented and solution strategies will be discussed.
19328217: Seminar/Proseminar: New Trends in Information Systems
2.0 SWS
Edited
REAgnèsVoisard
EMuhammed-UgurKaragülle
Seminar / Undergraduate Course
0088cA.3.11.2Scientific Work in Computer Science
This seminar aims at studying recent trends in data management. Among others, we will look at two emerging topics, namely Location-Based Services (LBS) and Event-Based Services (EBS).
Event-based Systems (EBS) are part of many current applications such as business activity monitoring, stock tickers, facility management, data streaming, or security. In the past years, the topic has gained increasing attention from both the industrial and the academic community. Current research concentrates of diverse aspects that range from event capture (incoming data) to response triggering. This seminar aims at studying some of the current trends in Event-based Systems with a strong focus on models and design. Location-based services are now often part of every day's life through applications such as navigation assistants in the public or private transportation domain. The underlying technology deals with many different aspects, such as location detection, information retrieval, or privacy. More recently, aspects such as user context and preferences were considered in order to send users more personalized information.
A solid background in databases is required, typically a database course at a bachelor level.
References
Wird bekannt gegeben.
19334910: PS: Methods for the analysis of graphs and networks
2.0 SWS
Edited
RKatharinaBaum
EPaulineHiort
EPascalIversen
Undergraduate Course
0088cA.3.11.2Scientific Work in Computer Science
The world is complex, and so is its data. Graphs (or networks) are key for the analysis of complex data and in the integration of data layers. They allow mapping and formal investigation of relationships between entities (nodes).
In the course of the seminar, we will explore different computational analysis methods of graphs and networks. We will learn about different types and properties of graphs and how to deal with them in general. In addition, application areas of graphs such as social or biological networks will be discussed.
Examples for specific topics are
Basic properties of graphs and nodes and how to determine them: shortest paths, centralities, degree distribution, clustering coefficients
The small-world property of social interaction networks
Clusters and communities in networks
Application: Networks for mapping molecular regulations
Random graphs and their application
Working with large networks, representative subgraphs
Modeling information and signal flow in graphs and detecting signal sources
Nodes as vectors - graph-based embedding methods
19336717: Graph-neural networks in the life sciences and beyond
2.0 SWS
Edited
REKatharinaBaum
EPaulineHiort
EPascalIversen
Seminar / Undergraduate Course
0088cA.3.11.2Scientific Work in Computer Science
Complex data can often be naturally modeled as a graph. Graphs or networks describe the interaction between objects and are an effective tool to represent systems in many applications. Graph neural networks are neural networks that directly input graphs and have recently emerged as a powerful tool to analyze networks and to predict properties of nodes and connections.
This seminar offers an in-depth exploration of Graph Neural Networks (GNNs) and their applications across various domains, with a particular emphasis on the life sciences and biomedicine. We will begin by discussing the fundamental concepts and architectures of GNNs, including graph convolutional networks (GCNs) and graph attention networks (GATs). Applications that are discussed include protein-protein interaction networks, drug discovery and personalized medicine. Students will read and present research papers and participate in critical discussions.
The language of this seminar is planned to be English. The students are encouraged to present and discuss in English, but contributions in German are also possible.
19313017: Seminar/Proseminar: Agile methods and technical practices
2.0 SWS
Edited
ELinusVervers
RLutzPrechelt
Seminar / Undergraduate Course
0088cA.3.11.2Scientific Work in Computer Science
More than 20 years after the first publication of the agile manifesto (https://agilemanifesto.org/iso/en/manifesto.html), agile software development is here to stay. At the very least, many companies are tempted by the promise of agile development and flat hierarchies. In this seminar, we will look at different agile methods (Scrum, Kanban, eXtreme Programming, etc.), how they are used in practice, where and why they are deviated from and the technical practices (pair programming, continuous integration, DevOps, etc.) that support the agile way of working.
During this seminar, students are expected to conduct independent research on their chosen topic. Whether the course is booked as a seminar or proseminar has an influence on the requirements:
Seminar: Here, several good sources (5-10) are to be found and a summary of the results presented. The aim is to work out the current state of research on the basis of a selected research question, identify gaps and contradictions in the research and derive recommendations for practice.
Proseminar: A good source should be found and presented in detail. Other related works (1-3) should only be discussed in passing for comparison. In the scientific articles presented, the conclusions presented should be critically examined with regard to credibility and relevance.
References
The articles available for selection can be found in the resources folder on the KVV page.
Additional information
Webseite
https://www.mi.fu-berlin.de/w/SE/SeminarAgil2024
Dozent
Linus Ververs
Sprache
Deutsch (Vortrag kann auf Englisch gehalten werden)
Zielgruppe
Proseminar: Bachelorstudierende, die das Modul "Wissenschaftliches Arbeiten in der Informatik" besuchen / besucht haben und im Rahmen dieses Seminars das erste Mal das gelernte Wissen anwenden und wissenschaftlich arbeiten.
Seminar: Fortgeschrittene Bachelorstudierende, die das Modul im Rahmen ihres Vertiefungsbereichs besuchen oder Masterstudierende
Voraussetzungen
Das Modul Softwaretechnik bereits besucht zu haben, wird dringend empfohlen. (Falls nicht, bitte im Voraus kontakt zum Dozenten aufnehmen.)
19301710: Undergraduate Seminar: Coding Theory
2.0 SWS
Edited
REMaxWillert
Undergraduate Course
0088cA.3.11.2Scientific Work in Computer Science
Contents
The proseminar delves more deeply into topics covered in the basic classes taught by the theory group. During the winter semester 2024/25, we consider the theory of coding.
Prerequisites
"Discrete Structures", "Linear Algebra" and "Algorithms and Data Structures"
References
wird mit der Ankündigung bekannt gegeben
19331617: Seminar/Proseminar: Information-theoretical principles of ML
2.0 SWS
Edited
REGerhardWunder
Seminar / Undergraduate Course
0088cA.3.11.2Scientific Work in Computer Science
Recently, artificial intelligence and machine learning (AI/ML) has emerged as a valuable tool in the field of communication and signal processing. It is therefore natural to extend the investigations to the field of physical layer security and privacy. This field is still in its infancy with some very preliminary results on wiretap channel code design, feature extraction of wireless channels and a growing part of contributions to privacy-preserving, distributed AI/ML. This seminar will teach the latest advances and synergies between the broad fields of AI/ML and secure communications.
Keywords: ML overview, basic tools, universal approximation, deep learning, stochastic gradient, acceleration strategies, deep convolutional networks, feature extraction, classification, mutual information neural network estimation, structured sparsity in convolutional neural networks, matrix decompositions
19329617: Seminar/Proseminar: Telematics
2.0 SWS
Edited
REJochenSchiller
Seminar / Undergraduate Course
0088cA.3.11.2Scientific Work in Computer Science
This seminar focuses on several aspects of technical Computer Science. At the start of the seminar you will receive a list of suggested topics that mainly deal with particular aspects of the so-called Trusted Computing and security issues in the Internet of Things. You are also very welcome to suggest your own research topic that is closely related to technical Computer Science. You can work on your topic exclusively or in a small group of 2-3 students. But then, it has to be apparent who contributed what part to the seminar paper.
It is possible to combine this seminar with the software project Telematics. Then, the theoretical foundations of the topic are dealt with in the scientific seminar paper and implemented in practice in the software project. Please note that the seminar paper is not supposed to deal with details of the implementation and that you are still obliged to write an accurate documentation of the software project in written form.
Concerning the schedule: This seminar takes place during the semester. There are only a few meetings, but these are mandatory. On the first meeting (03.11.2020), the topic list will be handed out and discussed. Please prepare a short (2-3 minutes) overview of your own topic suggestion if you would like to include it in the seminar. On the next week (10.11.2020), the topics will be assigned. After that there will be 3 presentation dates in total: the topic presentation (01.12.2021), a short interim presentation (12.01.2021) and the final presentation (23.02.2021). There will be no further meetings beyond that. This semester, all meetings will take place as video conferences with Webex.
0088cA.3.510 ECTS
Non-sequential and Distributed Programming for Teaching
19322101: Concurrent, Parallel, and Distributed Programming
4.0 SWS
Tentative
EBarryLinnert
Lecture
0088cA.3.5.1Non-sequential and Distributed Programming for Teaching
Non-Sequential program execution and object oriented systems
Control flow, strategies selection, priorities, handling and avoiding deadlock
Coroutines implementation,
- Multiprocessor systems
Programming and Synchronisation of concurrent processes that interact through message passing
Remote Calling Techniques
Client-server, Peer-to-peer Networks
Parallel computing over networks
Concurrent and coordination languages
Processing on the server and on the client.
Middleware, structured communication, static and dynamic interfaces
Event-based and stream-based processing
Security of network applications
Non-functional Aspects (time, memory, quality of service)
The contents of the course Operating and Communication Systems (BKS) are a prerequisite and prior completion is strongly recommended.
References
Literatur:
Principles of Concurrent and Distributed Programming. M. Ben-Ari. Addison-Wesley.
Distributed Systems. Concepts and Design. Fifth Edition. George Coulouris, Jean Dollimore, Tim Kindberg, Gordon Blair. Pearson.
19322102: Practice seminar for Concurrent and Distributed Programming
2.0 SWS
Tentative
EBarryLinnert
Practice seminar
0088cA.3.5.2Non-sequential and Distributed Programming for Teaching
0088cA.3.65 ECTS
Impacts of Computer Science (5 CP, not graded)
19301301: Consequences of Computer Science
2.0 SWS
Edited
RELutzPrechelt
Lecture
0088cA.3.6.1Auswirkungen der Informatik
This course deals with the consequences of computer science. Its aim is to establish an understanding of the fact that computer systems intervene in manifold ways in our private and professional lifes and shapen them. Many of these influences bring about major risks and need a conscious and enlightened composition in which computer scientists by nature play an important role -- or should at least do so.
We will for example have a look at how computerisation influences our private sphere, economics and society as a whole, our security and working environment. A conceptual introduction will provide orientational knowledge besides basic knowledge (Verfügungswissen) and strategies how to deal with both: analyse critically and get involved in the technical development.
References
See the slides.
Additional information
Kurssprache ist Deutsch inklusive Folien und Übungsblätter.
19301302: Exercise for Consequences of Computer Science
2.0 SWS
Edited
LinusVervers
RELutzPrechelt
Practice seminar
0088cA.3.6.2Auswirkungen der Informatik
0088cA.3.85 ECTS
Computer Architecture
19300601: Computer Architecture
2.0 SWS
Tentative
RELarissaGroth
Lecture
0088cA.3.8.1Computer Architecture
The module Computer Architecture covers basic concepts of computer systems. Topics are von-Neuman/Harvard architecture, microarchitectures, RISC/CISC, micro programming, pipelining, caches, memory hierarchy, bus systems, assembler programming, multi processor systems, branch prediction, representation of numbers and other data types, computer arithmetic.
References
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: Practice seminar for Computer Architecture
0089bA.1.136 ECTS
Project Seminar Data Management Systems
19303811: Project Seminar: Data Management
2.0 SWS
Edited
EAgnèsVoisard
RMuhammed-UgurKaragülle
Seminar
0089bA.1.13.1Project Seminar Data Management Systems
Content
A project seminar serves as preparation of a thesis (bachelor or master) in the AGDB. The focus of this project seminar lies on the analysis and visualization of medical data. Additionally, we will realize a small software project.
References
Wird bekannt gegeben.
Additional information
Voraussetzungen
ALP I
ALP II
Datenbanksysteme
0089bA.1.174 ECTS
Seminar Contributions to Software Engineering
19305811: Seminar: Contributions to Software Engineering
2.0 SWS
Edited
ELutzPrechelt
Seminar
0089bA.1.17.1Seminar Contributions to Software Engineering
Content
This is a reseach seminar: normally the presentations are supposed to advance current research projects. Thus, there are, generally speaking, three possible types of topics:
published or current research projects from one of the areas in which our software engineering group works
especially good specific research projects (or other knowledge) from other areas of software engineering or adjacent areas of computer science
basis topics from important areas of software engineering or adjacent disciplines such as psychology, sociology, pedagogics, economics as well as their methods.
There is no exact restriction of topics though; almost anything is possible.
References
Je nach Wahl des Vortragsthemas
Additional information
Zielgruppe
Studierende der Informatik (auch Nebenfach).
Bitte melden Sie sich bei Interesse mit einem Themenvorschlag oder einer Themenanfrage bei irgendeinem geeigneten Mitarbeiter der Arbeitsgruppe.
Der Einstieg ist auch während des laufenden Semesters möglich, da die Veranstaltung fortlaufend angeboten wird.
Voraussetzungen
Teilnehmen kann jede/r Student/in der Informatik, der/die die Vorlesung "Softwaretechnik" gehört hat.
Im Rahmen der Teilnahme kann es nötig werden, sich mit Teilen der Materialien zur Veranstaltung "Empirische Bewertung in der Informatik" auseinanderzusetzen.
19306017: Seminar/Proseminar: Data Visualization and Mining
2.0 SWS
Edited
EAgnèsVoisard
RMuhammed-UgurKaragülle
Seminar / Undergraduate Course
0089bA.1.18.1Seminar: Data Management
Advanced module data visualization and data mining.
References
Wird bekannt gegeben.
Additional information
Vorbesprechungstermin wird noch bekannt gegeben.
0089bA.1.2110 ECTS
Software Project: Data Management
19308412: Software Project: Data Management
2.0 SWS
Edited
RAgnèsVoisard
EMuhammed-UgurKaragülle
Project Seminar
0089bA.1.21.1Software Project: Data Management
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.
References
Wird bekannt gegeben. / To be announced.
Additional information
Zielgruppe
Studierende im Master- bzw. Bachelorstudiengang
Voraussetzungen
Gute Programmierkenntnisse, Einführung in Datenbanksysteme.
0089bA.1.2410 ECTS
Software Project Web Technologies
19319312: Implementation Project: Coding IxD
2.0 SWS
Tentative
REClaudiaMüller-Birn
Project Seminar
0089bA.1.24.1Software Project Web Technologies
Coding IxD: Designing Neoanalog Artefacts
In this course, we co-educate computer scientists and product designers. Beyond experiencing interdisciplinary work, we want students to envision interactive systems that are intelligent: by this, we mean an intelligence through code that is carefully using material, form, and context, while profoundly respecting both human capabilities and vulnerabilities.
We understand this course as experimental space, where different perspectives meet, exchange, and evolve. Each semester, based on small project teams of up to five members, students are challenged to examine a specific application context. Within this context, the teams envision a new application or product concept.
We guide this process through various carefully tuned methods that are used to spark their ideas. Students iterate through several rounds of ideation and refine their concept in different prototype versions. The most compelling or promising interaction concept, the one that allows grasping the quality and essence of the product concept is implemented in a working prototype.
Students are accompanied by a team of experienced designers and computer scientists but also by guest experts that provide feedback to the various design iterations. If needed, special workshops are organized to cover specific topics ranging from prototyping to project management. The whole course is evaluated continuously to enhance our methodological toolbox.
Besides the regular weekly meetings, the KHB provides complimentary workshops each Monday from 10 AM to 1 PM where participation for computer science students is optional.
References
Zimmerman, John, Jodi Forlizzi, and Shelley Evenson. "Research through design as a method for interaction design research in HCI." Proceedings of the SIGCHI conference on Human factors in computing systems. 2007.
Pierce, James, et al. "Expanding and refining design and criticality in HCI." Proceedings of the 33rd Annual ACM Conference on Human Factors in Computing Systems. 2015.
Anthony Dunne and Fiona Raby. 2013. Speculative Everything: Design, Fiction, and Social Dreaming. The MIT Press.
Additional information
Weitergehende Informationen zu den Veranstaltungsinhalten finden Sie unter:
Die Lehrveranstaltung findet in Kooperation mit der Weissensee Kunsthochschule Berlin statt. Wir treffen uns jeden Mittwoch im Labor des Exzellenzclusters „Bild Wissen Gestaltung“ an der HU Berlin.
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 AI 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 AI 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.
0089bA.1.265 ECTS
Advanced Topics in Data Management
19304801: Geospatial Databases
2.0 SWS
Edited
EAgnèsVoisard
RMuhammed-UgurKaragülle
Lecture
0089bA.1.26.1Advanced Topics in Data Management
The goal of this course is to acquire the background of spatial databases, the kernel of Geographic Systems. The major aspects that will be handled are: modeling and querying geospatial information, spatial access methods (SAMs), data representation, basic operations (mostly from computational geometry), and optimization. Insights into current applications such as location-based services (e.g., navigation systems) will also be given. Knowledge in databases is necessary. This course encompasses: formal lectures, exercises, as well as a practical project with PostGIS.
References
Handouts are enough to understand the course.
The following book will be mostly used: P. Rigaux, M. Scholl, A. Voisard.Spatial Databases - With Application to GIS. Morgan Kaufmann, May 2001. 432 p. (copies in the main library)
Additional information
Zielgruppe:
Studierende im Masterstudiengang Voraussetzungen: Datenbanksysteme
19304802: Practice seminar for Geospatial Databases
2.0 SWS
Edited
EAgnèsVoisard
RMuhammed-UgurKaragülle
Practice seminar
0089bA.1.26.2Advanced Topics in Data Management
0089bA.1.334 ECTS
Seminar Database Systems
19306017: Seminar/Proseminar: Data Visualization and Mining
2.0 SWS
Edited
EAgnèsVoisard
RMuhammed-UgurKaragülle
Seminar / Undergraduate Course
0089bA.1.33.1Seminar Database Systems
Advanced module data visualization and data mining.
References
Wird bekannt gegeben.
Additional information
Vorbesprechungstermin wird noch bekannt gegeben.
0089bA.1.3510 ECTS
Software Engineering Project
19323612: The AMOS Project
4.0 SWS
Edited
RLutzPrechelt
EDirkRiehle
Project Seminar
0089bA.1.35.1Software Engineering Project
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 take on the role of a software developer. In this role, they estimate and evaluate the effort of requirements and implement them in the project.
Students will be organized into teams of 7-8 people, combining product owners with 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.
The course consists of 90min lectures (participation voluntary) followed by a 90min team meeting (participation mandatory).
Attention: External course, separate registration is required, see https://amos.uni1.de
Studierende lernen zu Softwareprodukten und Softwareentwicklung in der Industrie
Studierende lernen zu agilen Methoden, insbesondere Scrum und Extreme Programming
Studierende lernen zu Open-Source-Softwareentwicklung und ihren Prinzipien
Studierende erwerben praktische Erfahrung mit Scrum und Extrem Programming
Zielgruppe
Studierende der Informatik (und verwandte Disziplinen). Für die Softwareentwickler:innen Rolle sollten Sie praktische Programmiererfahrung mitbringen. Dieser Kurs ist nicht geeignet, um Programmieren zu lernen.
Sprache
Englisch (Vorlesungen auf Englisch, Team-Meeting auf Deutsch oder Englisch nach Wahl der Studierenden)
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 AI 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 AI 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.
The most frequent tasks in Computer Vision are object (or event) detection and object tracking. In contrast to the field of image processing we often work on a sequence of images (a.k.a. video). In the lecture we will review a number of essential landmark publications and learn about cutting edge technologies of today.
19315502: Practice seminar for Computer Vision
2.0 SWS
Edited
ManuelHeurich
RETimLandgraf
Practice seminar
0089bA.1.4.2Computer Vision
0089bA.1.494 ECTS
Seminar IT Security
19320811: Selected Subjects of IT Security & Privacy
2.0 SWS
Edited
EMarianMargraf
Seminar
0089bA.1.49.1Seminar IT Security
The seminar covers topics related to IT security and privacy. In particular, we deal with selected topics:
Usable security and privacy
Mobile security
Cache-based sidechannel attacks
One topic is worked on by one person and presented to the other participants in a presentation. At the end of the semester, a seminar paper on the respective topic must also be submitted. Details will be discussed at the first event.
The seminar is offered in German and, if necessary, in English.
References
Daniel J. Bernstein, Johannes Buchmann, Erik Dahmen (Eds.): Post-Quantum Cryptography.
0089bA.2.15 ECTS
Current Research Topics in Algorithmics
19320501: Quantum Cryptanalysis
2.0 SWS
Edited
EMarianMargraf
Lecture
0089bA.2.1.1Current Research Topics in Algorithmics
The lecture aims at a deeper understanding of cryptographic algorithms, especially which design criteria have to be considered for the development of secure encryption algorithms. For that purpose we will get to know and evaluate different cryptanalytic methods for symmetrical and asymmetrical encryption techniques – e.g. linear and differential cryptanalysis on block ciphers, correlation attacks on stream ciphers and algorithms to solve the factorization problem and the discrete logarithm problem. Weaknesses in the implementation, e.g. to exploit side-channel attacks, will be discussed only peripherally.
19320502: Practice seminar for Cryptanalysis
2.0 SWS
Edited
EMarianMargraf
Practice seminar
0089bA.2.1.2Current Research Topics in Algorithmics
The lecture aims at a deeper understanding of cryptographic algorithms, especially which design criteria have to be considered for the development of secure encryption algorithms. For that purpose we will get to know and evaluate different cryptanalytic methods for symmetrical and asymmetrical encryption techniques – e.g. linear and differential cryptanalysis on block ciphers, correlation attacks on stream ciphers and algorithms to solve the factorization problem and the discrete logarithm problem. Weaknesses in the implementation, e.g. to exploit side-channel attacks, will be discussed only peripherally.
19310817: Seminar/Proseminar: Internet of Things & Security (Computer Systems & Telematics)
2.0 SWS
Tentative
EEmmanuelBaccelli
Seminar / Undergraduate Course
0089bA.3.14.1Module (seminar 2 hrs/wk) 5
Seminar Technische Informatik on Internet of Things & Security
In large part, the Internet of Things (IoT) will consist of interconnecting low-end devices with very small memory capacity (a few kBytes) and limited energy consumption (1000 times less than a RaspberryPi).
The IoT promises a new world of applications, but also brings up specific challenges in terms of programmability, energy efficiency, networking and security.
After an introductory session at the start of the term, MSc students will pick a topic related to current technologies in the field of Internet of Things & Security, and write a report (IEEE LaTex template, 12 A4 pages including figures and references, single column, 1.5 spacing, 11-point font) discussing corresponding questions. At the end of the term, the participants present their results in the form a short talk (20 minutes + 10 minutes Q&A) in a meeting, which will also include cross-reviewing of student's reports. During the term, there will be deadlines for status reports, but no weekly meetings of the complete seminar group.
Tentative Schedule:
Mid April: introductory session
After 1 week: topic selection
After 4 weeks: deadline to submit tentative outline for the report
After 8 weeks: deadline to submit alpha version of the report
After 10 weeks: deadline to submit beta version of the report & assignment for cross-reviewing of reports
End of semester: - deadline to submit final version of the report - presentation session (including Q&A and oral cross-review)
References
The typical bibliography and online resources that will be in scope to survey for this seminar includes:
- reviewing academic publications, e.g. papers from IEEE, ACM conferences/journals (available on scholar.google.com);
- reviewing network protocol open standard specifications, e.g. IETF drafts and Request For Comments (RFC);
- reviewing open source implementations (e.g. available on GitHub).
0089bA.3.64 ECTS
Seminar Computer Systems
19310817: Seminar/Proseminar: Internet of Things & Security (Computer Systems & Telematics)
2.0 SWS
Tentative
EEmmanuelBaccelli
Seminar / Undergraduate Course
0089bA.3.6.1Seminar Computer Systems
Seminar Technische Informatik on Internet of Things & Security
In large part, the Internet of Things (IoT) will consist of interconnecting low-end devices with very small memory capacity (a few kBytes) and limited energy consumption (1000 times less than a RaspberryPi).
The IoT promises a new world of applications, but also brings up specific challenges in terms of programmability, energy efficiency, networking and security.
After an introductory session at the start of the term, MSc students will pick a topic related to current technologies in the field of Internet of Things & Security, and write a report (IEEE LaTex template, 12 A4 pages including figures and references, single column, 1.5 spacing, 11-point font) discussing corresponding questions. At the end of the term, the participants present their results in the form a short talk (20 minutes + 10 minutes Q&A) in a meeting, which will also include cross-reviewing of student's reports. During the term, there will be deadlines for status reports, but no weekly meetings of the complete seminar group.
Tentative Schedule:
Mid April: introductory session
After 1 week: topic selection
After 4 weeks: deadline to submit tentative outline for the report
After 8 weeks: deadline to submit alpha version of the report
After 10 weeks: deadline to submit beta version of the report & assignment for cross-reviewing of reports
End of semester: - deadline to submit final version of the report - presentation session (including Q&A and oral cross-review)
References
The typical bibliography and online resources that will be in scope to survey for this seminar includes:
- reviewing academic publications, e.g. papers from IEEE, ACM conferences/journals (available on scholar.google.com);
- reviewing network protocol open standard specifications, e.g. IETF drafts and Request For Comments (RFC);
- reviewing open source implementations (e.g. available on GitHub).
0089c_MA120
2014, MSc Informatik (Mono), 120 LPs
0089cA.1.125 ECTS
Pattern Recognition
19315501: Computer Vision
2.0 SWS
Edited
RETimLandgraf
Lecture
0089cA.1.12.1Pattern Recognition
Contents:
The most frequent tasks in Computer Vision are object (or event) detection and object tracking. In contrast to the field of image processing we often work on a sequence of images (a.k.a. video). In the lecture we will review a number of essential landmark publications and learn about cutting edge technologies of today.
19315502: Practice seminar for Computer Vision
2.0 SWS
Edited
ManuelHeurich
RETimLandgraf
Practice seminar
0089cA.1.12.2Pattern Recognition
0089cA.1.225 ECTS
Practices in Professional Software Development
19311824: Practices of Professional Software Development
When studying Computer Science at university you mainly focus on concepts. This approach generally makes sense as these conceps are far more persistent and applicable in a broader sense than concrete details would be. Many details, however, which are important for concrete software development, are falling by the wayside. The course is supposed to reduce this deficit.
In it we mainly focus on concepts too, but always only on those which directly have to do with software development, and make sure to apply them precisely, personally in practice -- reflecting its use jointly (something which distinguisdes this course from most other software projects).
The concepts dealt with and practiced may be assigned to three different but closeky connected spheres:
software development and structuring (object-oriented) Softwareentwurf und -strukturierung (und zwar objektorientiert)
approaches (for example in the areas prototyping, automatisation, incremental improvement)
personality development (aspects like consistency, responsibility, communicational skills)
Important: Each participant needs to have a software project of his/her own, which has been started far in advance or the course (within a company, for founding a company or as an open source project), on which he/she works on a weekly basis for the entire duration of the course (mainly in a team) and which serves as training ground for the concepts.
This is a hard prerequisite for participation.
Additional information
Zielgruppe sind Studierende, die durch intensives Üben Fertigkeiten aufbauen möchten, die gute und professionell arbeitende Softwareentwickler/innen benötigen.
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 (16.10.2024) 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 23.10.2024, 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 (November 13, 2024), a brief interim presentation (December 18, 2024), and the final presentation (Februrary 12, 2025).
Students also regularly have the opportunity to work in the Future Security Lab premises, familiarize themselves with the equipment, and conduct tests.
19319612: Research Project: Innovative teaching and learning systems
In this software project we will develop new ideas and necessary features for the MVS and KVV systems in the form of new tools/components/modules. After a seminar-style introduction to the necessary technologies, we will specify the requirements and design solutions and then develop them. Good teamwork is required. The possibilities for improving both systems are varied and range from infrastucture to usability. There will be weekly meetings during the semester, at which teams will report on progress and discuss solutions.
In this course, we co-educate computer scientists and product designers. Beyond experiencing interdisciplinary work, we want students to envision interactive systems that are intelligent: by this, we mean an intelligence through code that is carefully using material, form, and context, while profoundly respecting both human capabilities and vulnerabilities.
We understand this course as experimental space, where different perspectives meet, exchange, and evolve. Each semester, based on small project teams of up to five members, students are challenged to examine a specific application context. Within this context, the teams envision a new application or product concept.
We guide this process through various carefully tuned methods that are used to spark their ideas. Students iterate through several rounds of ideation and refine their concept in different prototype versions. The most compelling or promising interaction concept, the one that allows grasping the quality and essence of the product concept is implemented in a working prototype.
Students are accompanied by a team of experienced designers and computer scientists but also by guest experts that provide feedback to the various design iterations. If needed, special workshops are organized to cover specific topics ranging from prototyping to project management. The whole course is evaluated continuously to enhance our methodological toolbox.
Besides the regular weekly meetings, the KHB provides complimentary workshops each Monday from 10 AM to 1 PM where participation for computer science students is optional.
References
Zimmerman, John, Jodi Forlizzi, and Shelley Evenson. "Research through design as a method for interaction design research in HCI." Proceedings of the SIGCHI conference on Human factors in computing systems. 2007.
Pierce, James, et al. "Expanding and refining design and criticality in HCI." Proceedings of the 33rd Annual ACM Conference on Human Factors in Computing Systems. 2015.
Anthony Dunne and Fiona Raby. 2013. Speculative Everything: Design, Fiction, and Social Dreaming. The MIT Press.
Additional information
Weitergehende Informationen zu den Veranstaltungsinhalten finden Sie unter:
Die Lehrveranstaltung findet in Kooperation mit der Weissensee Kunsthochschule Berlin statt. Wir treffen uns jeden Mittwoch im Labor des Exzellenzclusters „Bild Wissen Gestaltung“ an der HU Berlin.
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.
References
Wird bekannt gegeben. / To be announced.
Additional information
Zielgruppe
Studierende im Master- bzw. Bachelorstudiengang
Voraussetzungen
Gute Programmierkenntnisse, Einführung in Datenbanksysteme.
19334212: Softwareproject: Machine Learning with Graphs for Improved (Cancer) Treatment
In the software project, we will implement, train, and evaluate various machine learning (ML) methods. The focus of the project is on graph neural networks (GNNs) that use graphs as input features for learning. We will compare the GNNs with various baseline methods, such as neural networks and regression models. The different ML methods will be applied and evaluated on a specific dataset, such as predicting drug combinations for cancer treatment. We will prepare the dataset and analyze it using the implemented methods. The programming language is Python, and we plan to use modern Python modules for ML like scikit-learn, TensorFlow, or 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.
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 AI 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 AI 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.
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 take on the role of a software developer. In this role, they estimate and evaluate the effort of requirements and implement them in the project.
Students will be organized into teams of 7-8 people, combining product owners with 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.
The course consists of 90min lectures (participation voluntary) followed by a 90min team meeting (participation mandatory).
Attention: External course, separate registration is required, see https://amos.uni1.de
Studierende lernen zu Softwareprodukten und Softwareentwicklung in der Industrie
Studierende lernen zu agilen Methoden, insbesondere Scrum und Extreme Programming
Studierende lernen zu Open-Source-Softwareentwicklung und ihren Prinzipien
Studierende erwerben praktische Erfahrung mit Scrum und Extrem Programming
Zielgruppe
Studierende der Informatik (und verwandte Disziplinen). Für die Softwareentwickler:innen Rolle sollten Sie praktische Programmiererfahrung mitbringen. Dieser Kurs ist nicht geeignet, um Programmieren zu lernen.
Sprache
Englisch (Vorlesungen auf Englisch, Team-Meeting auf Deutsch oder Englisch nach Wahl der Studierenden)
Weiteres
SWS: 4 SWS (2 SWS VL, 2 SWS Team-Meeting)
Semester: Jedes Wintersemester
Modalität: Online, universitätsübergreifend
Tags: Scrum
0089cA.1.2410 ECTS
Software project Applied Computer Science B
19334412: SWP: Szenario-Management in the Future Security Lab
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 (16.10.2024) 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 23.10.2024, 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 (November 13, 2024), a brief interim presentation (December 18, 2024), and the final presentation (Februrary 12, 2025).
Students also regularly have the opportunity to work in the Future Security Lab premises, familiarize themselves with the equipment, and conduct tests.
19319612: Research Project: Innovative teaching and learning systems
In this software project we will develop new ideas and necessary features for the MVS and KVV systems in the form of new tools/components/modules. After a seminar-style introduction to the necessary technologies, we will specify the requirements and design solutions and then develop them. Good teamwork is required. The possibilities for improving both systems are varied and range from infrastucture to usability. There will be weekly meetings during the semester, at which teams will report on progress and discuss solutions.
In this course, we co-educate computer scientists and product designers. Beyond experiencing interdisciplinary work, we want students to envision interactive systems that are intelligent: by this, we mean an intelligence through code that is carefully using material, form, and context, while profoundly respecting both human capabilities and vulnerabilities.
We understand this course as experimental space, where different perspectives meet, exchange, and evolve. Each semester, based on small project teams of up to five members, students are challenged to examine a specific application context. Within this context, the teams envision a new application or product concept.
We guide this process through various carefully tuned methods that are used to spark their ideas. Students iterate through several rounds of ideation and refine their concept in different prototype versions. The most compelling or promising interaction concept, the one that allows grasping the quality and essence of the product concept is implemented in a working prototype.
Students are accompanied by a team of experienced designers and computer scientists but also by guest experts that provide feedback to the various design iterations. If needed, special workshops are organized to cover specific topics ranging from prototyping to project management. The whole course is evaluated continuously to enhance our methodological toolbox.
Besides the regular weekly meetings, the KHB provides complimentary workshops each Monday from 10 AM to 1 PM where participation for computer science students is optional.
References
Zimmerman, John, Jodi Forlizzi, and Shelley Evenson. "Research through design as a method for interaction design research in HCI." Proceedings of the SIGCHI conference on Human factors in computing systems. 2007.
Pierce, James, et al. "Expanding and refining design and criticality in HCI." Proceedings of the 33rd Annual ACM Conference on Human Factors in Computing Systems. 2015.
Anthony Dunne and Fiona Raby. 2013. Speculative Everything: Design, Fiction, and Social Dreaming. The MIT Press.
Additional information
Weitergehende Informationen zu den Veranstaltungsinhalten finden Sie unter:
Die Lehrveranstaltung findet in Kooperation mit der Weissensee Kunsthochschule Berlin statt. Wir treffen uns jeden Mittwoch im Labor des Exzellenzclusters „Bild Wissen Gestaltung“ an der HU Berlin.
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.
References
Wird bekannt gegeben. / To be announced.
Additional information
Zielgruppe
Studierende im Master- bzw. Bachelorstudiengang
Voraussetzungen
Gute Programmierkenntnisse, Einführung in Datenbanksysteme.
19334212: Softwareproject: Machine Learning with Graphs for Improved (Cancer) Treatment
In the software project, we will implement, train, and evaluate various machine learning (ML) methods. The focus of the project is on graph neural networks (GNNs) that use graphs as input features for learning. We will compare the GNNs with various baseline methods, such as neural networks and regression models. The different ML methods will be applied and evaluated on a specific dataset, such as predicting drug combinations for cancer treatment. We will prepare the dataset and analyze it using the implemented methods. The programming language is Python, and we plan to use modern Python modules for ML like scikit-learn, TensorFlow, or 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.
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 AI 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 AI 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.
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 take on the role of a software developer. In this role, they estimate and evaluate the effort of requirements and implement them in the project.
Students will be organized into teams of 7-8 people, combining product owners with 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.
The course consists of 90min lectures (participation voluntary) followed by a 90min team meeting (participation mandatory).
Attention: External course, separate registration is required, see https://amos.uni1.de
Studierende lernen zu Softwareprodukten und Softwareentwicklung in der Industrie
Studierende lernen zu agilen Methoden, insbesondere Scrum und Extreme Programming
Studierende lernen zu Open-Source-Softwareentwicklung und ihren Prinzipien
Studierende erwerben praktische Erfahrung mit Scrum und Extrem Programming
Zielgruppe
Studierende der Informatik (und verwandte Disziplinen). Für die Softwareentwickler:innen Rolle sollten Sie praktische Programmiererfahrung mitbringen. Dieser Kurs ist nicht geeignet, um Programmieren zu lernen.
Sprache
Englisch (Vorlesungen auf Englisch, Team-Meeting auf Deutsch oder Englisch nach Wahl der Studierenden)
Weiteres
SWS: 4 SWS (2 SWS VL, 2 SWS Team-Meeting)
Semester: Jedes Wintersemester
Modalität: Online, universitätsübergreifend
Tags: Scrum
0089cA.1.255 ECTS
Scientific Work in Applied Computer Science A
A project seminar serves as preparation of a thesis (bachelor or master) in the AGDB. The focus of this project seminar lies on the analysis and visualization of medical data. Additionally, we will realize a small software project.
References
Wird bekannt gegeben.
Additional information
Voraussetzungen
ALP I
ALP II
Datenbanksysteme
19328217: Seminar/Proseminar: New Trends in Information Systems
This seminar aims at studying recent trends in data management. Among others, we will look at two emerging topics, namely Location-Based Services (LBS) and Event-Based Services (EBS).
Event-based Systems (EBS) are part of many current applications such as business activity monitoring, stock tickers, facility management, data streaming, or security. In the past years, the topic has gained increasing attention from both the industrial and the academic community. Current research concentrates of diverse aspects that range from event capture (incoming data) to response triggering. This seminar aims at studying some of the current trends in Event-based Systems with a strong focus on models and design. Location-based services are now often part of every day's life through applications such as navigation assistants in the public or private transportation domain. The underlying technology deals with many different aspects, such as location detection, information retrieval, or privacy. More recently, aspects such as user context and preferences were considered in order to send users more personalized information.
A solid background in databases is required, typically a database course at a bachelor level.
References
Wird bekannt gegeben.
19335011: Seminar: Networks, dynamic models and ML for data integration in the life sciences
Research seminar of the group Data Integration in the Life Sciences (DILiS). Also open for seminar participation in the Master's program, online participation possible. Please refer to the current schedule on the whiteboard!
The seminar offers space for the discussion of advanced and integrative data analysis techniques, in particular presentations and discussion of ongoing or planned research projects, news from conferences, review and discussion of current literature and discussion of possible future teaching formats and content, and presentations, as well as final presentations on theses or project seminars. The seminar language is mostly English. Interested students are welcome to attend and drop in without obligation or present a topic of their own choice of interest to the working group as in a usual seminar. Please note: Individual dates may be canceled or postponed. Please contact me in case of questions (katharina.baum@fu-berlin.de)!
19336717: Graph-neural networks in the life sciences and beyond
Complex data can often be naturally modeled as a graph. Graphs or networks describe the interaction between objects and are an effective tool to represent systems in many applications. Graph neural networks are neural networks that directly input graphs and have recently emerged as a powerful tool to analyze networks and to predict properties of nodes and connections.
This seminar offers an in-depth exploration of Graph Neural Networks (GNNs) and their applications across various domains, with a particular emphasis on the life sciences and biomedicine. We will begin by discussing the fundamental concepts and architectures of GNNs, including graph convolutional networks (GCNs) and graph attention networks (GATs). Applications that are discussed include protein-protein interaction networks, drug discovery and personalized medicine. Students will read and present research papers and participate in critical discussions.
The language of this seminar is planned to be English. The students are encouraged to present and discuss in English, but contributions in German are also possible.
19305811: Seminar: Contributions to Software Engineering
This is a reseach seminar: normally the presentations are supposed to advance current research projects. Thus, there are, generally speaking, three possible types of topics:
published or current research projects from one of the areas in which our software engineering group works
especially good specific research projects (or other knowledge) from other areas of software engineering or adjacent areas of computer science
basis topics from important areas of software engineering or adjacent disciplines such as psychology, sociology, pedagogics, economics as well as their methods.
There is no exact restriction of topics though; almost anything is possible.
References
Je nach Wahl des Vortragsthemas
Additional information
Zielgruppe
Studierende der Informatik (auch Nebenfach).
Bitte melden Sie sich bei Interesse mit einem Themenvorschlag oder einer Themenanfrage bei irgendeinem geeigneten Mitarbeiter der Arbeitsgruppe.
Der Einstieg ist auch während des laufenden Semesters möglich, da die Veranstaltung fortlaufend angeboten wird.
Voraussetzungen
Teilnehmen kann jede/r Student/in der Informatik, der/die die Vorlesung "Softwaretechnik" gehört hat.
Im Rahmen der Teilnahme kann es nötig werden, sich mit Teilen der Materialien zur Veranstaltung "Empirische Bewertung in der Informatik" auseinanderzusetzen.
Explainable AI is a recent and growing subfield of machine learning (ML) that aims to bring transparency into ML models without sacrificing their predictive accuracy. This seminar will explore current research on the use of Explainable AI for extracting insights from large datasets of interest. Use cases in biomedicine, chemistry and earth sciences will be covered.
Students will select a few papers from a pool of thematically relevant research papers, which they will read and present over the course of the semester.
19334717: Seminar/Proseminar: Machine Learning for Process Control
Numerous real-world processes need to be kept under control in order to ensure safety or efficiency. Machine learning models are good candidates for this. They can for example detect shifts/anomalies/decalibrations/instabilities/etc. and possibly also predict which action needs to be taken on the process. The real-time nature of such tasks brings unique challenges from a ML perspective compared to classical application of ML. This seminar will explore relevant ML methods such as online/reinforcement learning and real-time data analysis. Use cases in manufacturing and intensive care will be covered. Students will select a few papers from a pool of thematically relevant research papers, which they will read and present over the course of the semester.
19313017: Seminar/Proseminar: Agile methods and technical practices
More than 20 years after the first publication of the agile manifesto (https://agilemanifesto.org/iso/en/manifesto.html), agile software development is here to stay. At the very least, many companies are tempted by the promise of agile development and flat hierarchies. In this seminar, we will look at different agile methods (Scrum, Kanban, eXtreme Programming, etc.), how they are used in practice, where and why they are deviated from and the technical practices (pair programming, continuous integration, DevOps, etc.) that support the agile way of working.
During this seminar, students are expected to conduct independent research on their chosen topic. Whether the course is booked as a seminar or proseminar has an influence on the requirements:
Seminar: Here, several good sources (5-10) are to be found and a summary of the results presented. The aim is to work out the current state of research on the basis of a selected research question, identify gaps and contradictions in the research and derive recommendations for practice.
Proseminar: A good source should be found and presented in detail. Other related works (1-3) should only be discussed in passing for comparison. In the scientific articles presented, the conclusions presented should be critically examined with regard to credibility and relevance.
References
The articles available for selection can be found in the resources folder on the KVV page.
Additional information
Webseite
https://www.mi.fu-berlin.de/w/SE/SeminarAgil2024
Dozent
Linus Ververs
Sprache
Deutsch (Vortrag kann auf Englisch gehalten werden)
Zielgruppe
Proseminar: Bachelorstudierende, die das Modul "Wissenschaftliches Arbeiten in der Informatik" besuchen / besucht haben und im Rahmen dieses Seminars das erste Mal das gelernte Wissen anwenden und wissenschaftlich arbeiten.
Seminar: Fortgeschrittene Bachelorstudierende, die das Modul im Rahmen ihres Vertiefungsbereichs besuchen oder Masterstudierende
Voraussetzungen
Das Modul Softwaretechnik bereits besucht zu haben, wird dringend empfohlen. (Falls nicht, bitte im Voraus kontakt zum Dozenten aufnehmen.)
19306017: Seminar/Proseminar: Data Visualization and Mining
This seminar provides an exploration of large language models (LLMs), covering both foundational concepts and the latest advancements in the field. Participants will gain a comprehensive understanding of the architecture, training, and applications of LLMs, based on seminal research papers. The course will be organised as a journal club: students present individual papers, which are then discussed in the group to make sure we all get the ideas presented.
### Potential Topics
- Neural networks and deep learning basics
- Sequence modeling and RNNs (Recurrent Neural Networks)
- Vaswani et al.'s "Attention is All You Need" paper
- Self-attention mechanism
- Multi-head attention and positional encoding
- GPT-1: Radford et al.'s pioneering work
- GPT-2: Scaling and implications
- GPT-3: Architectural advancements and few-shot learning
- BERT (Bidirectional Encoder Representations from Transformers)
- T5 (Text-To-Text Transfer Transformer)
- DistilBERT and efficiency improvements
- Mamba:l and other SSMs: Design principles and performance
- Flash Attention et al: Improving efficiency and scalability
This seminar focuses on recent advances in unsupervised learning, an increasingly important field within machine learning. In unsupervised learning, we use the data itself rather than additional output labels to define a training objective, such as completing a given text sequence or filling in an image region. This way we can learn powerful representations, and stable generative paths. We will discuss new UL methods such as CLIP, DALLE, and FLAMINGO that combine language and image models in joint represenatations.
19320811: Selected Subjects of IT Security & Privacy
The seminar covers topics related to IT security and privacy. In particular, we deal with selected topics:
Usable security and privacy
Mobile security
Cache-based sidechannel attacks
One topic is worked on by one person and presented to the other participants in a presentation. At the end of the semester, a seminar paper on the respective topic must also be submitted. Details will be discussed at the first event.
The seminar is offered in German and, if necessary, in English.
References
Daniel J. Bernstein, Johannes Buchmann, Erik Dahmen (Eds.): Post-Quantum Cryptography.
0089cA.1.265 ECTS
Scientific Work in Applied Computer Science B
A project seminar serves as preparation of a thesis (bachelor or master) in the AGDB. The focus of this project seminar lies on the analysis and visualization of medical data. Additionally, we will realize a small software project.
References
Wird bekannt gegeben.
Additional information
Voraussetzungen
ALP I
ALP II
Datenbanksysteme
19328217: Seminar/Proseminar: New Trends in Information Systems
This seminar aims at studying recent trends in data management. Among others, we will look at two emerging topics, namely Location-Based Services (LBS) and Event-Based Services (EBS).
Event-based Systems (EBS) are part of many current applications such as business activity monitoring, stock tickers, facility management, data streaming, or security. In the past years, the topic has gained increasing attention from both the industrial and the academic community. Current research concentrates of diverse aspects that range from event capture (incoming data) to response triggering. This seminar aims at studying some of the current trends in Event-based Systems with a strong focus on models and design. Location-based services are now often part of every day's life through applications such as navigation assistants in the public or private transportation domain. The underlying technology deals with many different aspects, such as location detection, information retrieval, or privacy. More recently, aspects such as user context and preferences were considered in order to send users more personalized information.
A solid background in databases is required, typically a database course at a bachelor level.
References
Wird bekannt gegeben.
19335011: Seminar: Networks, dynamic models and ML for data integration in the life sciences
Research seminar of the group Data Integration in the Life Sciences (DILiS). Also open for seminar participation in the Master's program, online participation possible. Please refer to the current schedule on the whiteboard!
The seminar offers space for the discussion of advanced and integrative data analysis techniques, in particular presentations and discussion of ongoing or planned research projects, news from conferences, review and discussion of current literature and discussion of possible future teaching formats and content, and presentations, as well as final presentations on theses or project seminars. The seminar language is mostly English. Interested students are welcome to attend and drop in without obligation or present a topic of their own choice of interest to the working group as in a usual seminar. Please note: Individual dates may be canceled or postponed. Please contact me in case of questions (katharina.baum@fu-berlin.de)!
19336717: Graph-neural networks in the life sciences and beyond
Complex data can often be naturally modeled as a graph. Graphs or networks describe the interaction between objects and are an effective tool to represent systems in many applications. Graph neural networks are neural networks that directly input graphs and have recently emerged as a powerful tool to analyze networks and to predict properties of nodes and connections.
This seminar offers an in-depth exploration of Graph Neural Networks (GNNs) and their applications across various domains, with a particular emphasis on the life sciences and biomedicine. We will begin by discussing the fundamental concepts and architectures of GNNs, including graph convolutional networks (GCNs) and graph attention networks (GATs). Applications that are discussed include protein-protein interaction networks, drug discovery and personalized medicine. Students will read and present research papers and participate in critical discussions.
The language of this seminar is planned to be English. The students are encouraged to present and discuss in English, but contributions in German are also possible.
19305811: Seminar: Contributions to Software Engineering
This is a reseach seminar: normally the presentations are supposed to advance current research projects. Thus, there are, generally speaking, three possible types of topics:
published or current research projects from one of the areas in which our software engineering group works
especially good specific research projects (or other knowledge) from other areas of software engineering or adjacent areas of computer science
basis topics from important areas of software engineering or adjacent disciplines such as psychology, sociology, pedagogics, economics as well as their methods.
There is no exact restriction of topics though; almost anything is possible.
References
Je nach Wahl des Vortragsthemas
Additional information
Zielgruppe
Studierende der Informatik (auch Nebenfach).
Bitte melden Sie sich bei Interesse mit einem Themenvorschlag oder einer Themenanfrage bei irgendeinem geeigneten Mitarbeiter der Arbeitsgruppe.
Der Einstieg ist auch während des laufenden Semesters möglich, da die Veranstaltung fortlaufend angeboten wird.
Voraussetzungen
Teilnehmen kann jede/r Student/in der Informatik, der/die die Vorlesung "Softwaretechnik" gehört hat.
Im Rahmen der Teilnahme kann es nötig werden, sich mit Teilen der Materialien zur Veranstaltung "Empirische Bewertung in der Informatik" auseinanderzusetzen.
Explainable AI is a recent and growing subfield of machine learning (ML) that aims to bring transparency into ML models without sacrificing their predictive accuracy. This seminar will explore current research on the use of Explainable AI for extracting insights from large datasets of interest. Use cases in biomedicine, chemistry and earth sciences will be covered.
Students will select a few papers from a pool of thematically relevant research papers, which they will read and present over the course of the semester.
19334717: Seminar/Proseminar: Machine Learning for Process Control
Numerous real-world processes need to be kept under control in order to ensure safety or efficiency. Machine learning models are good candidates for this. They can for example detect shifts/anomalies/decalibrations/instabilities/etc. and possibly also predict which action needs to be taken on the process. The real-time nature of such tasks brings unique challenges from a ML perspective compared to classical application of ML. This seminar will explore relevant ML methods such as online/reinforcement learning and real-time data analysis. Use cases in manufacturing and intensive care will be covered. Students will select a few papers from a pool of thematically relevant research papers, which they will read and present over the course of the semester.
19313017: Seminar/Proseminar: Agile methods and technical practices
More than 20 years after the first publication of the agile manifesto (https://agilemanifesto.org/iso/en/manifesto.html), agile software development is here to stay. At the very least, many companies are tempted by the promise of agile development and flat hierarchies. In this seminar, we will look at different agile methods (Scrum, Kanban, eXtreme Programming, etc.), how they are used in practice, where and why they are deviated from and the technical practices (pair programming, continuous integration, DevOps, etc.) that support the agile way of working.
During this seminar, students are expected to conduct independent research on their chosen topic. Whether the course is booked as a seminar or proseminar has an influence on the requirements:
Seminar: Here, several good sources (5-10) are to be found and a summary of the results presented. The aim is to work out the current state of research on the basis of a selected research question, identify gaps and contradictions in the research and derive recommendations for practice.
Proseminar: A good source should be found and presented in detail. Other related works (1-3) should only be discussed in passing for comparison. In the scientific articles presented, the conclusions presented should be critically examined with regard to credibility and relevance.
References
The articles available for selection can be found in the resources folder on the KVV page.
Additional information
Webseite
https://www.mi.fu-berlin.de/w/SE/SeminarAgil2024
Dozent
Linus Ververs
Sprache
Deutsch (Vortrag kann auf Englisch gehalten werden)
Zielgruppe
Proseminar: Bachelorstudierende, die das Modul "Wissenschaftliches Arbeiten in der Informatik" besuchen / besucht haben und im Rahmen dieses Seminars das erste Mal das gelernte Wissen anwenden und wissenschaftlich arbeiten.
Seminar: Fortgeschrittene Bachelorstudierende, die das Modul im Rahmen ihres Vertiefungsbereichs besuchen oder Masterstudierende
Voraussetzungen
Das Modul Softwaretechnik bereits besucht zu haben, wird dringend empfohlen. (Falls nicht, bitte im Voraus kontakt zum Dozenten aufnehmen.)
19306017: Seminar/Proseminar: Data Visualization and Mining
This seminar provides an exploration of large language models (LLMs), covering both foundational concepts and the latest advancements in the field. Participants will gain a comprehensive understanding of the architecture, training, and applications of LLMs, based on seminal research papers. The course will be organised as a journal club: students present individual papers, which are then discussed in the group to make sure we all get the ideas presented.
### Potential Topics
- Neural networks and deep learning basics
- Sequence modeling and RNNs (Recurrent Neural Networks)
- Vaswani et al.'s "Attention is All You Need" paper
- Self-attention mechanism
- Multi-head attention and positional encoding
- GPT-1: Radford et al.'s pioneering work
- GPT-2: Scaling and implications
- GPT-3: Architectural advancements and few-shot learning
- BERT (Bidirectional Encoder Representations from Transformers)
- T5 (Text-To-Text Transfer Transformer)
- DistilBERT and efficiency improvements
- Mamba:l and other SSMs: Design principles and performance
- Flash Attention et al: Improving efficiency and scalability
This seminar focuses on recent advances in unsupervised learning, an increasingly important field within machine learning. In unsupervised learning, we use the data itself rather than additional output labels to define a training objective, such as completing a given text sequence or filling in an image region. This way we can learn powerful representations, and stable generative paths. We will discuss new UL methods such as CLIP, DALLE, and FLAMINGO that combine language and image models in joint represenatations.
19320811: Selected Subjects of IT Security & Privacy
The seminar covers topics related to IT security and privacy. In particular, we deal with selected topics:
Usable security and privacy
Mobile security
Cache-based sidechannel attacks
One topic is worked on by one person and presented to the other participants in a presentation. At the end of the semester, a seminar paper on the respective topic must also be submitted. Details will be discussed at the first event.
The seminar is offered in German and, if necessary, in English.
References
Daniel J. Bernstein, Johannes Buchmann, Erik Dahmen (Eds.): Post-Quantum Cryptography.
0089cA.1.275 ECTS
Current research topics in Applied Computer Science
19327201: Data compression
2.0 SWS
Edited
REHeikoSchwarz
Lecture
0089cA.1.27.1Current research topics in Applied Computer Science
Data compression is a technology, which only enables a variety of applications in our information age. Even though the underlying technology is often hidden from the end user, we use data compression every day when we hear music, watch images and videos, or use applications on our smartphone.
In this course, the fundamental and most often used approaches for data compression are introduced. We discuss theoretical foundationsas well as methods used in practice.
The first part of the course deals with lossless compression, in which the original data can be reconstructed exactly. This part includes the following topics:
Unique decodability and prefix codes
Entropy and entropy rate as theoretical limits of lossless compression
Optimal codes, Huffman codes
Arithmetic coding
Lempel-Ziv coding
Linear prediction
Examples from text, image and audio compression
In the second part of the course, we consider lossy compression, by which only an approximation of the original data can be reconstructed. This type of compression enables much higher compression rates and is the dominant form of compression for audio, image and video data. The second part of the course includes the following topics:
Scalar quantization, optimal scalar quantization
Theoretical limits of lossy compression: Rate distortion functions
Vector quantization
Predictive quantization
Transform coding
Examples from audio, image, and video compression
References
Sayood, K. (2018), “Introduction to Data Compression,” Morgan Kaufmann, Cambridge, MA.
Cover, T. M. and Thomas, J. A. (2006), “Elements of Information Theory,” John Wiley & Sons, New York.
Gersho, A. and Gray, R. M. (1992), “Vector Quantization and Signal Compression,” Kluwer Academic Publishers, Boston, Dordrecht, London.
Jayant, N. S. and Noll, P. (1994), “Digital Coding of Waveforms,” Prentice-Hall, Englewood Cliffs, NJ, USA.
Wiegand, T. and Schwarz, H. (2010), “Source Coding: Part I of Fundamentals of Source and Video Coding,” Foundations and Trends in Signal Processing, vol. 4, no. 1-2.
19328601: Cryptocurrencies and Blockchain
2.0 SWS
Tentative
EJustusPurat
REKatharinaWolter
Lecture
0089cA.1.27.1Current research topics in Applied Computer Science
We will study the history, technology and applications of cryptocurrencies and blockchain.
19333001: Cybersecurity and AI I: Privacy, Biometry, Certification
2.0 SWS
Edited
REGerhardWunder
Lecture
0089cA.1.27.1Current research topics in Applied Computer Science
19336801: Integrative analysis and including prior knowledge for data in the life sciences
2.0 SWS
Edited
REKatharinaBaum
EPaulineHiort
EPascalIversen
Lecture
0089cA.1.27.1Current research topics in Applied Computer Science
Especially in the life sciences, data of different origins are often available for a question, and researchers already have prior knowledge, for example on dynamic aspects, or on spatial or regulatory relationships between entities. This course deals with analysis methods that can combine different data and prior knowledge. For example, we discuss how to link continuous and categorical data in mixed models, but also network integration, or multi-factorial matrix multiplication. A focus topic will deal with various approaches to informed machine learning such as graph-neural networks, transfer learning or current research methods such as simulation-based pre-training. The focus here is explicitly not on the processing of images, but on tabular or other data types. This course will be offered in English.
19320701: Secure Software Engineering
2.0 SWS
Tentative
REJörnEichler
Lecture
0089cA.1.27.1Current research topics in Applied Computer Science
Secure software engineering joins two important fields: Software engineering and information security. software engineering is the systematic use of principles, methods and tools to develop and deploy software. information security covers topics like confidentiality, integrity and availability of informations and data.
References
Claudia Eckert: IT-Sicherheit,11. Auflage, De Gruyter Oldenbourg, 2023
Ross Anderson: Security Engineering, 3. Auflage, Wiley, 2020.
Weitere Literaturhinweise werden zu den einzelnen Themenblöcken bereitgestellt.
Additional information
Das Ziel dieser Vorlesung ist die Vermittlung von Prinzipien, Methoden und Werkzeugen für die Entwicklung sicherer Softwareanwendungen. Dafür werden zunächst grundlegende Konzepte eingeführt. Es folgen Vorgehensmodelle zur Entwicklung sicherer Software sowie zur Bewertung der Reifegrade von Entwicklungsprozessen. Entlang der Phasen bzw. Prozessgruppen der Softwareentwicklung werden dann zentrale Prinzipien, Methoden und Werkzeuge vorgestellt und erläutert. Besondere Berücksichtigung finden dabei die Bedrohungs- und Risikoanalyse, die Erhebung von Sicherheitsanforderungen, Prinzipien und Muster für das Design sicherer Softwareanwendungen, sichere und unsichere Softwareimplementierungen, Sicherheitstests sowie die Evaluation der Sicherheitseigenschaften von Softwareanwendungen.
19327202: Practice seminar for Data Compression
2.0 SWS
Edited
REHeikoSchwarz
Practice seminar
0089cA.1.27.2Current research topics in Applied Computer Science
19336802: Integrative analysis of biomedical data tutorials
2.0 SWS
Edited
REKatharinaBaum
EPaulineHiort
Practice seminar
0089cA.1.27.2Current research topics in Applied Computer Science
19328602: Practice Session on Cryptocurrencies
2.0 SWS
Tentative
EJustusPurat
REKatharinaWolter
Practice seminar
0089cA.1.27.2Current research topics in Applied Computer Science
19333002: Practice seminar for Cybersecurity and AI I
2.0 SWS
Edited
REGerhardWunder
Practice seminar
0089cA.1.27.2Current research topics in Applied Computer Science
19320702: Practice seminar for Secure Software Engineering
2.0 SWS
Tentative
REJörnEichler
Practice seminar
0089cA.1.27.2Current research topics in Applied Computer Science
0089cA.1.285 ECTS
Special Aspects of Applied Computer Science
19327201: Data compression
2.0 SWS
Edited
REHeikoSchwarz
Lecture
0089cA.1.28.1Special Aspects of Applied Computer Science
Data compression is a technology, which only enables a variety of applications in our information age. Even though the underlying technology is often hidden from the end user, we use data compression every day when we hear music, watch images and videos, or use applications on our smartphone.
In this course, the fundamental and most often used approaches for data compression are introduced. We discuss theoretical foundationsas well as methods used in practice.
The first part of the course deals with lossless compression, in which the original data can be reconstructed exactly. This part includes the following topics:
Unique decodability and prefix codes
Entropy and entropy rate as theoretical limits of lossless compression
Optimal codes, Huffman codes
Arithmetic coding
Lempel-Ziv coding
Linear prediction
Examples from text, image and audio compression
In the second part of the course, we consider lossy compression, by which only an approximation of the original data can be reconstructed. This type of compression enables much higher compression rates and is the dominant form of compression for audio, image and video data. The second part of the course includes the following topics:
Scalar quantization, optimal scalar quantization
Theoretical limits of lossy compression: Rate distortion functions
Vector quantization
Predictive quantization
Transform coding
Examples from audio, image, and video compression
References
Sayood, K. (2018), “Introduction to Data Compression,” Morgan Kaufmann, Cambridge, MA.
Cover, T. M. and Thomas, J. A. (2006), “Elements of Information Theory,” John Wiley & Sons, New York.
Gersho, A. and Gray, R. M. (1992), “Vector Quantization and Signal Compression,” Kluwer Academic Publishers, Boston, Dordrecht, London.
Jayant, N. S. and Noll, P. (1994), “Digital Coding of Waveforms,” Prentice-Hall, Englewood Cliffs, NJ, USA.
Wiegand, T. and Schwarz, H. (2010), “Source Coding: Part I of Fundamentals of Source and Video Coding,” Foundations and Trends in Signal Processing, vol. 4, no. 1-2.
19328601: Cryptocurrencies and Blockchain
2.0 SWS
Tentative
EJustusPurat
REKatharinaWolter
Lecture
0089cA.1.28.1Special Aspects of Applied Computer Science
We will study the history, technology and applications of cryptocurrencies and blockchain.