Modulkatalog im Wahlpflichtbereich 2 (Informatik) im Sommersemester

Parallele und verteilte Simulation

(unregelmäßig, im Sommersemester)

Parallel-verteilte Methoden zur Simulation spielen in den unterschiedlichsten Bereichen eine Rolle, in denen es gilt, große Systeme effizient zu simulieren, wie z.B. um Routingprotokolle in Computernetzwerken mit Millionen von Knoten auszuwerten, online den Flugzeugverkehr zu überwachen oder die Ausbreitung von Epidemien vorherzusagen. Im Modul werden Kenntnisse über parallel-verteilte Simulationsverfahren für diskret-ereignisorientierte Modelle vermittelt.

Graphen- und Hypergraphenmodelle

(unregelmäßig, im Sommersemester)

Das Modul behandelt Graphen- und Hypergraphenmodelle in einigen ausgewählten Gebieten der Informatik wie Bioinformatik, technischer und praktischer Informatik, Datenbanken und Künstlicher Intelligenz. Dazu werden grundlegende Eigenschaften und Methoden wie Baumstruktur von Graphen und Hypergraphen, Dekompositionsmethoden und Durchschnittsgraphen wie z.B. Intervallgraphen behandelt.

Ereignisgetriebene Architekturen

(unregelmäßig, im Sommersemester)

Eine Event-Driven Architecture (EDA) ist ein Architekturmuster, das auf der Erzeugung, Verteilung, Detektion und Verarbeitung von Ereignissen (engl.: Events) basiert. EDAs ermöglichen die lose Kopplung von Komponenten, Diensten und Prozessen, durch die auch große Systeme noch beherrschbar und skalierbar bleiben. Ursprünglich zunächst im Bereich der grafischen Benutzungsoberflächen verwendet, finden EDAs aufgrund ihrer Eigenschaften zunehmende und vielfältige Anwendungen. Die Veranstaltung stellt Ereignisse als zentrales Strukturierungsmittel vor und diskutiert die grundlegenden Ideen, Prinzipien und Konzepte darauf aufbauender Softwarearchitekturen. Sie gibt einen praxisbezogenen Einblick sowohl in die technologischen Grundlagen als auch in die praktische Umsetzung und Anwendung ereignisorientierter Architekturmuster.

Web 2.0

(unregelmäßig,im Sommersemester)

Web 2.0 steht für dynamische, interaktive und kollaborative Anwendungen im Internet. Eine wichtige Ausprägung dieses "Mitmach-Gedankens" sind die sozialen Netze. Wir werden in dieser Veranstaltung viele der neueren Anwendungen im Web kennenlernen. Neben Technologien (Javascript, HTML5, kollaboratives Editieren) werden dabei auch wirtschaftliche Fragen (Business Cases) und strukturelle Aspekte (Blogs, Wikis, P2P Konzepte) im Fokus stehen.Die Vorlesung wird durch eine praktische Übung begleitet, in der im Team eine Web 2.0 Anwendung entwickelt wird.

AI5: Intelligente Umgebungen und kooperative Ensembles

(unregelmäßig,im Sommersemester)

Die Vorlesung gibt einen Überblick über die Methoden des Einsatzes von Strategien kooperierender Geräte- und Agentenensembles für die Steuerung intelligenter Umgebungen. Schwerpunkt der Vorlesung ist die Nutzung von Methoden aus der verteilten Künstlichen Intelligenz und des Semantic Web für die Steuerung intelligenter Umgebungen.

Cyber-Security

(unregelmäßig,im Sommersemester)

Sicherheit wird in allen Bereichen von IT-Anwendungen, speziell aber bei Mobilgeräten, in IoT (Internet of Things) Anwendungen und bei Gerätesteuerungen immer wichtiger. Die Vorlesung gibt einen Überblick über neuere Entwicklungen im Bereich Cyber-Sicherheit und stellt Anwendungen vor, die durch aktuelle Forschungsergebnisse der Kryptographie ermöglicht werden, darunter auch Blockchain und Crypto-Currency Technologien.

Theorie relationaler Datenbanken

(unregelmäßig,im Sommersemester)

Warum sollte man eine Vorlesung mit dem üblen Titel "Theorie von etwas ansonsten doch Praktischen" besuchen? Um Techniken für Datenbanksysteme zu entwickeln oder gar Konzepte für zukünftige Informationssysteme zu erforschen, benötigt man Grundlagenwissen zu den Datenbankmodellen und -operationen. Für Masterarbeiten, Promotionsarbeiten, Veröffentlichungen, Projekte in Universitäten, Forschungsinstituten oder Forschungsabteilungen von IT-Unternehmen müssen nicht nur neue Techniken entwickelt und aufgeschrieben werden, sondern auch gezeigt werden, dass sie besser sind als bekannte, ältere Techniken. Wie modelliert man aber Problem und Aufgabenstellung? Wie vergleicht man mit bekannten Techniken? Wie schreibt man Techniken, Algorithmen sowie erreichte Eigenschaften von Techniken und Algorithmen auf? Wie weist man nach, dass die eigene Technik besser ist? Ein möglicher Nachweis ist der formale Beweis, indem man ein formales Modell entwickelt und einen formalen Nachweis der Eigenschaften führt. Für Entwicklungs- und Forschungsfragestellungen im Datenbankbereich werden in dieser Vorlesung die grundlegenden Techniken wie Schemaeigenschaften, Formalisierung von Integritätsbedingungen sowie die Formulierung von Datenbankanfragen und -optimierungsverfahren besprochen. Die theoretischen Grundlagen werden abschließend auf aktuelle Forschungsgebiete wie Anfrageoptimierung, Datenbankintegration, Schemaevolution und Updates auf Sichten angewendet.

Big Data Processing

(unregelmäßig,im Sommersemester)

Big Data Processing will focus on the following topics:

  • Distributed and parallel databases: Data that was previously stored centrally is distributed horizontally and vertically to various computer nodes. The effects on design principles, transaction procedures, lock protocols and query optimization are explained.
  • Parallel analysis of large amounts of data: Processing principles for the parallel analysis of distributed data are discussed, such as map/reduce and frameworks for data flow programming. Furthermore, it will be discussed how such analyses can be processed in a data-efficient and thus privacy-aware manner by means of vertical distribution of the algorithms.
  • Data stream processing: When processing sensor data on the Internet of Things or in large-scale scientific experiments, new data is generated every second that has to be processed. Conventional database technologies are not suitable in such an environment. The lecture discusses concepts of streaming data management, which can filter, compress andanalyze data streams.
Netzwerkprotokolle und Dienste im Internet

(unregelmäßig, im Sommersemester)

In dieser Veranstaltung greifen wir wechselnde Themen im Bereich netzbasierter Anwendungen auf. Die aktuell verfolgte Fragestellung beschäftigt sich mit Sicherheitsfragen, mit der Absicherung von Netzwerken und der Wiederherstellung der Betriebsbereitschaft nach Zwischenfällen sowie mit Aspekten der Computer-Forensik.

Empirische Evaluation

(unregelmäßig,im Sommersemester)

Empirische Forschung und Evaluation sind Themen, über die viel gesprochen wird - oft allerdings ohne besondere Detailkenntnisse. Die wissenschaftlichen Methoden der empirischen Forschung und der Evaluation, die in den Human- und Sozialwissenschaften zu den Basismethoden der wissenschaftlichen Arbeit gehören, haben in der Informatik lange Zeit kaum eine Rolle gespielt.

In der Veranstaltung wird in die Grundlagen der empirischen Forschung aus der Perspektive der Informatik und am Beispiel von Softwaresystemen eingeführt. Betrachtet werden dabei der Methodenkatalog möglicher Untersuchung, die wissenschaftliche Hypothesenbildung, die Bedeutung und Auswahl von Stichproben oder Populationen, Verfahren wie statistische Hypothesenprüfung sowie quantitative und qualitative Methoden der Datenerhebung und die Datenauswertung.

Anforderungsanalyse

(unregelmäßig, im Sommersemester)

Requirements Engineering (RE) “is often treated as a time-consuming, bureaucratic and contractual process.
This attitude is changing as RE is increasingly recognized as a critically important activity in any systems engineering process” (Nuseibeh & Easterbrook, 2000)

Hardware/Software Co-Design

(im Sommersemester)

Embedded systems are optimized with respect to multiple and often conflicting design goals while simultaneously underlying stringent constraints, e.g., area, costs, performance, and energy consumption. The design of such complex systems results in several new problems. In particular,

  1. the selection of processors, memories, and communication resources;
  2. the hardware/software partitioning of the specification;
  3. 3) the automatic synthesis of interfaces and communication resources;
  4. 4) the verification.

In this module the following topics are covered:

  • Overview and comparison of architectures for MPSoCs (Multi-Processor System on Chip) and NoCs (Network on Chip)
  • Methodologies for the design of multi-processor systems: Hardware/software partitioning / task distribution, Quality estimation methods, Performance analysis-Communication synthesis: Types of communication, Synchronization, Synthesis, Design space exploration-Verification and virtual prototyping
Verteilte eingebettete Systeme

(im Sommersemester)

Diese Vorlesung vermittelt Kenntnisse über grundlegende Konzepte, Algorithmen und Architekturen verteilter eingebetteter Systeme und Sensornetzwerke. Betrachtet werden Programmierungskonzepte verteilter eingebetteter Systeme, der Entwurf von verteilten eingebetteten Systemen, die insbesondere durch einen geringen Energieverbrauch charakterisiert sind und in der Regel mit einem drahtlosen Interface ausgestattet sind. In den zugehörigen Übungen wird der Aufbau von verteilten Systemen vertieft und eine komplexe Applikation entworfen und realisiert.

Themen:

  • Eingebettete Prozessoren
  • Aufbau von Mikrocontrollern, Komponenten von Mikrocontrollern, Programmierung von Mikrocontroller
  • Drahtlose Netzwerke (802.15.4, 6LoWPAN, ZigBee)
  • Sensornetzwerkplattformen
  • Entwicklungssysteme, Architektur, Basisstationen, Gateways und Knoten
  • Ausgewählte Probleme in Sensornetzwerken
  • Lokalisierung und Routing in Ad-Hoc und Sensornetzwerken
  • Algorithmen, Klassifikationen
  • Software für Sensornetzwerke
  • Betriebssysteme, Hardware Abstraktionsebene, Middleware und service-orientierte Architektur
  • Anwendungen von Sensornetzwerken
  • Internet der Dinge