Multimedia- und Internetsysteme im Eigenbau (Projektseminar) - MITIE
Diese Veranstaltung wurde im Sommersemester 2018 zum letzten Mal angeboten. Stattdessen bieten wir ab Wintersemester 2018/2019 die Projektmodule Verteilte Anwendungen, Plattformen und Systeme I und II an.
Titel: | Multimedia- und Internetsysteme im Eigenbau |
Englischer Titel: | Multimedia and Internet Systems (Hands-on Project) |
Typ: | Projektseminar |
Kürzel / Nr.: | MITIE / CS7000.001 |
SWS / LP: | 3Pj / 12LP |
Dozent: | Prof. Dr.-Ing. Franz J. Hauck |
Betreuer: | Prof. Dr.-Ing. Franz J. Hauck, Eugen Frasch, Gerhard Habiger, Muntazir Mehdi, David Mödinger |
Themenvergabe: | Infoveranstaltung zu Projekten und Abschlussarbeiten: Dienstag, 17.04.2018, 12.15 Uhr - 13.45 Uhr, Raum O27-123 oder vorherige Absprache mit dem Betreuer |
Termine: | Abschlussvorträge vorheriges Semester: Mittwoch, 25.04.2018, 16.15 Uhr - 17.00 Uhr, Raum O27-341 sowie anschließendes Streiflicht Zielvereinbarungsvorträge: Mittwoch, 02.05.2018, 16.15 Uhr - 17.45 Uhr, Raum O27-341 |
Lernplattform: | Kursmaterialien finden Sie im Moodle-Kurs Seminare Verteilte Systeme. Sie werden dem Kurs nach der Themenvergabe hinzugefügt. |
Hinweis: Die Themen für den Modulstart im Sommersemester 2018 werden noch ergänzt. Die Liste ist daher noch vorläufig.
Themen | |
PriPlus: Userfriendly Privacy Betreuer: David Mödinger | Projektanteil: PriCloud ist ein Projekt mit dem Ziel einen Privatsphäre erhaltenden Cloudspeicher zu erhalten. Hierfür wird im Insitut an einem Prototypen in Python gearbeitet. Dieser bietet jedoch nur Konsolenzugriff auf die Subsysteme des Prototypen. Ziel des Projektes ist es ein fundiertes und geeignetes User Interface zu entwerfen und dieses praktisch zu erstellen. Das Thema kann nur mit 8 LP bearbeitet werden. |
NetVision: Simple Visualization of Distributed Algorithms Betreuer: David Mödinger | Projektanteil: In der Lehre steht man häufig vor der Herausforderung ein Problem geeignet zu visualisieren. Findet man eine geeignete Darstellung ist diese jedoch meist statisch, auf eine einzige Probleminstanz beschränkt und nicht interaktiv für die Studierenden. Ziel dieser Arbeit ist es ein Werkzeug zu erstellen um verteilte Algorithmen interaktiv zu visualisieren und so Studierenden die Möglichkeit zu geben damit zu experimentieren. Als erster Schritt muss hierfür ein Konzept erstellt werden (bestimmung geeigneter Einschränkungen für eine einfache Darstellung und Interaktion) sowie eine grafische Interaktion für die Modellierung des Algorithmus und des zu visualisierenden Netzes. Zuletzt gilt es diese Erkenntnisse in einer Java oder Web Applikation umzusetzen. Der genaue Umfang des Projekts richtet sich nach den gewählten Leistungspunkten und im Konzept ermittelten Herausforderungen und Einschränkungen. Das Thema kann mit 8 oder 16 LP bearbeitet werden. |
Vergleich von Entwicklungsumgebungen für AngularJS Betreuer: Franz J. Hauck | Projektanteil: Angular JS/2/4 ist ein populäres Framework zur Erstellung von Single-Page-Web-Applications. Aufgabe dieser Projektarbeit ist es verschiedene Entwicklungswerkzeuge zu recherchieren und vergleichend auszuprobieren, um Angular Anwendungen auf der Client-Seite zu entwickeln. Dies soll anhand eines selbst gestallten oder vorhandenen Beispielprojekts erfolgen. Wichtig ist die Integration in das Versionskontrollsystem Git. Für ein 16 LP Projekt sollte auch die Serverseite in Form eines REST-basierten Backends untersucht werden. Vorteilhaft sind Kenntnisse in Javascript und evtl. NodeJS und/oder Angular. Bei einem 16 LP Projekt könnte ein entsprechender Anteil Einarbeitung in diese Technologien in Form eines geeigneten Seminarthemas erfolgen. |
weitere Themen zum Projekt in.Crease Betreuer: Franz J. Hauck | in.Crease ist ein Informationssystem für Studierende, das sich als Lehrprojekt im Aufbau befindet. Es werden noch ein/zwei/drei Themen dazu angeboten, die jedoch erst Anfang April genauer formuliert werden. Das Projekt arbeitet mit Angular 4, TypeScript, NodeJS, nginx und PostgreSQL. |
Enabling Snapshotting in Multithreaded BFT-SMaRt Betreuer: Gerhard Habiger | BFT-SMaRt ist eine Java Library für die einfache Entwicklung von Anwendungen die durch State Machine Replication ausfallsicher und sogar robust gegenüber byzantinischen Fehlern laufen können. Ziel unserer Forschung ist die Beschleunigung von State Machine Replication, wozu wir in den letzten Monaten BFT-SMaRt um Multithreading-Komponenten erweitert haben. Ein Problem hierbei ist, dass das für die Fehlertoleranz zwingend notwendige Snapshotting erheblich erschwert wird und zur Zeit für unsere Optimierungen ausgeschaltet bleiben muss. Dieses Thema kann mit 8 oder 16 LP bearbeitet werden. (This project can also be completed in english. Please contact me for further details). |
Parallelizing a Java implementation of etcd Betreuer: Gerhard Habiger | Ein kürzliches Studierendenprojekt reimplementierte den verteilten key-value store etcd in Java. Um diese Implementierung für zukünftige Forschung an fehlertoleranten Systemen weiter zu verwenden, soll dieses Projekt die Java-Implementierung parallelisieren. Durch intelligentes Locking soll ein möglichst hoher Grad an Parallelität erreicht werden, während die Korrektheit des Systems in allen Fällen bestehen bleibt. Anschließend soll durch Messungen der Performancegewinn gegenüber der sequentiellen Variante gezeigt werden. Dieses Thema kann mit 8 oder 16 LP bearbeitet werden. (This project can also be completed in english. Please contact me for further details). |
Beschreibung und allgemeine Angaben | |
Einordnung in die Studiengänge: | Informatik, M.Sc.: Projekt, Modul Middlewaresystem-Entwicklung |
Verantwortlich: | Prof. Dr.-Ing. Franz J. Hauck |
Unterrichtssprache: | Deutsch |
Turnus / Dauer: | jedes Semester / ein volles Semester |
Voraussetzungen (inhaltlich): | - |
Voraussetzungen (formal): | - |
Grundlage für (inhaltlich): | |
Inhalt: | |
Literatur: | |
Bewertungsmethode: | |
Notenbildung: | |
Arbeitsaufwand: | Präsenzzeit: 45h Selbststudium, Projektarbeit, Abschlusspräsentation und Ausarbeitung: 315h Summe: 360h |
Titel: | Multimedia- und Internetsysteme im Eigenbau |
Englischer Titel: | Multimedia and Internet Systems (Hands-on Project) |
Typ: | Projektseminar |
Kürzel / Nr.: | MITIE / CS7000.001 |
SWS / LP: | 3Pj / 12LP |
Dozent: | Prof. Dr.-Ing. Franz J. Hauck |
Betreuer: | Prof. Dr.-Ing. Franz J. Hauck, Eugen Frasch, Gerhard Habiger, David Mödinger |
Vorbesprechung: | Mittwoch, 18.10.2017, 16.15 Uhr - 17.45 Uhr, Raum O27-411 |
Termine: | Abschlussvorträge vorheriges Semester: Mittwoch, 25.10.2017, 16.15 Uhr - 17.45 Uhr, Raum O27-411 Zielvereinbarungsvorträge: Mittwoch, 08.11.2017, 16.15 Uhr - 17.45 Uhr, Raum O27-411 |
Lernplattform: | Kursmaterialien finden Sie im Moodle-Kurs Seminare Verteilte Systeme. Sie werden dem Kurs nach der Themenvergabe hinzugefügt. |
Themen | |
Nachimplementierung der etcd API in Java Betreuer: Gerhard Habiger | Projektanteil: Für die Verwaltung großer verteilter Systeme werden in der Regel Koordinierungsdienste wie ZooKeeper oder etcd eingesetzt. Um maximale Ausfallsicherheit und dennoch starke Konsistenzgarantien zu gewährleisten, sind solche Koordinierungsdienste durch State Machine Replication repliziert. Ein Problem dieses Replizierungsansatzes ist die zumeist schlechte Ausnutzung heutiger Multicore-Systeme. In unserer Forschung beschäftigen wir uns mit Methoden, SMR-replizierte Software zu beschleunigen und auch Multithreading zu erlauben. Hierfür sind unter anderem vergleichende Messungen mit etcd vorgesehen. Da etcd selbst komplett in Go geschrieben ist, sich unsere Forschung momentan jedoch auf Java konzentriert, soll in diesem Projekt die nach außen hin sichtbare API und dafür nötige Funktionalität von etcd in Java nachimplementiert werden. Es können dabei nahezu alle Schwierigkeiten die sich durch die Verteilung ergeben (Netzwerkkommunikation und -fehler, Konsensus, etc.) vernachlässigt werden. Es wird primär die Funktionalität, die eine nicht-verteilte Installation von etcd mit einem Host bereitstellen würde, verlangt. Das Projekt kann mit 16LP belegt werden. Seminaranteil: Das Seminar kann den Koordinierungsdienst etcd und seine API bzw. angebotene Funktionalität im Detail untersuchen und vorstellen. |
PriPlus: Userfriendly Privacy Betreuer: David Mödinger | Projektanteil: PriCloud ist ein Projekt mit dem Ziel einen Privatsphäre erhaltenden Cloudspeicher zu erhalten. Hierfür wird im Insitut an einem Prototypen in Python gearbeitet. Dieser bietet jedoch nur Konsolenzugriff auf die Subsysteme des Prototypen. Ziel des Projektes ist es ein fundiertes und geeignetes User Interface zu entwerfen und dieses praktisch zu erstellen. Das Thema kann nur mit 8 LP bearbeitet werden. |
NetVision: Simple Visualization of Distributed Algorithms Betreuer: David Mödinger | Projektanteil: In der Lehre steht man häufig vor der Herausforderung ein Problem geeignet zu visualisieren. Findet man eine geeignete Darstellung ist diese jedoch meist statisch, auf eine einzige Probleminstanz beschränkt und nicht interaktiv für die Studierenden. Ziel dieser Arbeit ist es ein Werkzeug zu erstellen um verteilte Algorithmen interaktiv zu visualisieren und so Studierenden die Möglichkeit zu geben damit zu experimentieren. Als erster Schritt muss hierfür ein Konzept erstellt werden (bestimmung geeigneter Einschränkungen für eine einfache Darstellung und Interaktion) sowie eine grafische Interaktion für die Modellierung des Algorithmus und des zu visualisierenden Netzes. Zuletzt gilt es diese Erkenntnisse in einer Java oder Web Applikation umzusetzen. Der genaue Umfang des Projekts richtet sich nach den gewählten Leistungspunkten und im Konzept ermittelten Herausforderungen und Einschränkungen. Das Thema kann mit 8 oder 16 LP bearbeitet werden. |
Vergleich von Entwicklungsumgebungen für AngularJS Betreuer: Franz J. Hauck | Projektanteil: Angular JS/2/4 ist ein populäres Framework zur Erstellung von Single-Page-Web-Applications. Aufgabe dieser Projektarbeit ist es verschiedene Entwicklungswerkzeuge zu recherchieren und vergleichend auszuprobieren, um Angular Anwendungen auf der Client-Seite zu entwickeln. Dies soll anhand eines selbst gestallten oder vorhandenen Beispielprojekts erfolgen. Wichtig ist die Integration in das Versionskontrollsystem Git. Für ein 16 LP Projekt sollte auch die Serverseite in Form eines REST-basierten Backends untersucht werden. Vorteilhaft sind Kenntnisse in Javascript und evtl. NodeJS und/oder Angular. Bei einem 16 LP Projekt könnte ein entsprechender Anteil Einarbeitung in diese Technologien in Form eines geeigneten Seminarthemas erfolgen. Seminaranteil: Bei 16 LP Projekten, Einarbeitung in Angular durch ein vorher abgestimmtes Thema, je nach Vorwissen. |
Beschreibung und allgemeine Angaben | |
Einordnung in die Studiengänge: | Informatik, M.Sc.: Projekt, Modul Middlewaresystem-Entwicklung |
Verantwortlich: | Prof. Dr.-Ing. Franz J. Hauck |
Unterrichtssprache: | Deutsch |
Turnus / Dauer: | jedes Semester / ein volles Semester |
Voraussetzungen (inhaltlich): | - |
Voraussetzungen (formal): | - |
Grundlage für (inhaltlich): | |
Inhalt: | |
Literatur: | |
Bewertungsmethode: | |
Notenbildung: | |
Arbeitsaufwand: | Präsenzzeit: 45h Selbststudium, Projektarbeit, Abschlusspräsentation und Ausarbeitung: 315h Summe: 360h |
Titel: | Multimedia- und Internetsysteme im Eigenbau |
Englischer Titel: | Multimedia and Internet Systems (Hands-on Project) |
Typ: | Projektseminar |
Kürzel / Nr.: | MITIE / CS7000.001 |
SWS / LP: | 3Pj / 12LP |
Dozent: | Prof. Dr.-Ing. Franz J. Hauck |
Betreuer: | Prof. Dr.-Ing. Franz J. Hauck, Eugen Frasch, Gerhard Habiger, David Mödinger |
Vorbesprechung: | Mittwoch 19.04.2017, 08.30 Uhr - 10.00 Uhr, O27-331 |
Termine: | Abschlussvorträge vorheriges Semester: Mittwoch 26.04.2017, 08.30 Uhr - 10.00 Uhr, O27-331 Zielvereinbarungsvorträge: Mittwoch 03.05.2017, 08.30 Uhr - 10.00 Uhr, O27-331 |
Lernplattform: | Kursmaterialien finden Sie im Moodle-Kurs Seminare Verteilte Systeme. Sie werden dem Kurs nach der Themenvergabe hinzugefügt. |
Themen | |
in.Crease: DevOps Pipeline und Entwicklungsumgebung Betreuer: Franz J. Hauck | Projektanteil: Für das Lehrprojekt eines Studieninformationssystems wurde in einer Masterarbeit ein weitgehendes Konzept für das so genannte Continious Delivery erstellt, d.h. ein Entwickler kann eine neue Version erstellen, die dann automatisch getestet und mit vorhandener Software kombiniert wird sowie auf Knopfdruck direkt produktiv gehen kann. In diesem Projekt, das eventuell sogar Raum für zwei zusammen arbeitende Studierende geben könnte, soll die gesamte Umgebung dokumentiert und weiter ausgebaut werden. Insbesondere soll ein Entwicklungskonzept für Angular2 integriert werden. Je nach Ausgestaltung sollte Interesse an Systemsoftware, Software-Entwicklung, Java- bzw. Angular2-Programmierung vorhanden sein. Das Projekt kann mit 8LP oder 16LP belegt werden. Seminaranteil: Das Seminar kann ausgewählte Aspekte von DevOps, Continous Delivery und beteiligter Software zur Einarbeitung betrachten(z.B. Angular2, Jenkins, NPM + Node.js). |
Topologieerkennung mit JTomato Betreuer: Franz J. Hauck | Projektanteil: JTomato ist eine Software des Instituts, die verschiedene IP-Pakete mit genauen Timings absenden und empfangen kann (ICMP u.ä.). Aus einer Masterarbeit ist ein Konzept zur Topologieermittlung des Internets entstanden, das Eigenheiten von IPv6 ausnutzt. Leider wurde die Evaluation nur rudimentär ausgeführt. Thema des Projekts ist das Reimplementieren des Konzepts mit JTomato und eine Durchführung praktischer Messungen. Interesse an Netzwerkprotokollen sowie an der Programmierung in Java und C++ (wenig) wäre hilfreich. Das Thema kann mit 8 oder 16 LP bearbeitet werden. Seminaranteil: Als Seminar könnten je nach Vorkenntnissen Aspekte von IPv6, der Topologieerkennung und von JTomato behandelt werden. |
PriPlus: Userfriendly Privacy Betreuer: David Mödinger | Projektanteil: PriCloud ist ein Projekt mit dem Ziel einen Privatsphäre erhaltenden Cloudspeicher zu erhalten. Hierfür wird im Insitut an einem Prototypen in Python gearbeitet. Dieser bietet jedoch nur Konsolenzugriff auf die Subsysteme des Prototypen. Ziel des Projektes ist es ein fundiertes und geeignetes User Interface zu entwerfen und dieses praktisch zu erstellen. Das Thema kann nur mit 8 LP bearbeitet werden. |
NetVision: Simple Visualization of Distributed Algorithms Betreuer: David Mödinger | Projektanteil: In der Lehre steht man häufig vor der Herausforderung ein Problem geeignet zu visualisieren. Findet man eine geeignete Darstellung ist diese jedoch meist statisch, auf eine einzige Probleminstanz beschränkt und nicht interaktiv für die Studierenden. Ziel dieser Arbeit ist es ein Werkzeug zu erstellen um verteilte Algorithmen interaktiv zu visualisieren und so Studierenden die Möglichkeit zu geben damit zu experimentieren. Als erster Schritt muss hierfür ein Konzept erstellt werden (bestimmung geeigneter Einschränkungen für eine einfache Darstellung und Interaktion) sowie eine grafische Interaktion für die Modellierung des Algorithmus und des zu visualisierenden Netzes. Zuletzt gilt es diese Erkenntnisse in einer Java oder Web Applikation umzusetzen. Der genaue Umfang des Projekts richtet sich nach den gewählten Leistungspunkten und im Konzept ermittelten Herausforderungen und Einschränkungen. Das Thema kann mit 8 oder 16 LP bearbeitet werden. |
Beschreibung und allgemeine Angaben | |
Einordnung in die Studiengänge: | Informatik, M.Sc.: Projekt, Modul Middlewaresystem-Entwicklung |
Verantwortlich: | Prof. Dr.-Ing. Franz J. Hauck |
Unterrichtssprache: | Deutsch |
Turnus / Dauer: | jedes Semester / ein volles Semester |
Voraussetzungen (inhaltlich): | - |
Voraussetzungen (formal): | - |
Grundlage für (inhaltlich): | |
Inhalt: | |
Literatur: | |
Bewertungsmethode: | |
Notenbildung: | |
Arbeitsaufwand: | Präsenzzeit: 45h Selbststudium, Projektarbeit, Abschlusspräsentation und Ausarbeitung: 315h Summe: 360h |
Wintersemester 2016/2017 | |
Titel: | Multimedia- und Internetsysteme im Eigenbau |
Englischer Titel: | Multimedia and Internet Systems (Hands-on Project) |
Typ: | Projektseminar |
Kürzel / Nr.: | MITIE / CS7000.001 |
SWS / LP: | 3Pj / 12LP |
Dozent: | Prof. Dr.-Ing. Franz J. Hauck |
Betreuer: | Prof. Dr.-Ing. Franz J. Hauck, Eugen Frasch, Gerhard Habiger, David Mödinger |
Termine: | Montag 17.10., 24.10. und 31.10.2016, jeweils 16.15 - 17.45 Uhr, O27-341 sowie nach Vereinbarung |
Vorbesprechung: | Montag 17.10.2016, 16.15 Uhr - 17.45 Uhr, O27-341 |
Lernplattform: | Kursmaterialien finden Sie im Moodle-Kurs Seminare Verteilte Systeme. Sie werden dem Kurs nach der Themenvergabe hinzugefügt. |
Themen | |
in.Crease: ein Informationsdienst für Prüfungsordnungen Betreuer: Franz J. Hauck | Projektanteil: In vorherigen Projekten wurde bereits Server-Software für die Präsentation, den Vergleich, die Kommentierung und die Verlinkung zwischen verschiedenen Prüfungsordnungen implementiert. Dieses Projekt soll den Dienst zur "Produktionsreife" bringen, so dass er für Studierende angeboten werden kann. Insbesondere sollen die Funktionen und die verwendete Oberfläche angepasst werden. Falls als 16 LP Projekt gewählt, soll das Einloggen mit KIZ-Login und der Zugriff auf Präferenzen realisiert werden. Die Implementierung erfolgt mit AngularJS und JavaEE (JBoss Wildfly, Hibernate/JPA, Postgres). Kenntnisse in der Vorlesung AvID und/oder AngularJS sind hilfreich, können aber auch erarbeitet werden. Das Projekt kann mit 8LP oder 16LP belegt werden. Seminaranteil: Das Seminar kann ausgewählte Aspekte von AngularJS betrachten (z.B. Angular2). |
in.Crease Datenmodell für ein Studieninformationssystem Betreuer: Franz J. Hauck | Projektanteil: Der in.Crease Informationsdienst soll auch das Modulhandbuch und das Vorlesungsverzeichnis zusammenfassen. In mehreren Projekten wurden schon Prototypen erstellt. Es hat sich jedoch herausgestellt, dass das Datenmodell noch unzureichend ist. In diesem Projekt soll das Datenmodell verbessert werden (semesterweise Historie der Änderungen, individuelle Versionen). Als Technologien kommen Wildfly, JPA, Envers und Postgres zum Einsatz. Zum Projekt gehört ein abgeschlossener Data Access Layer sowie die dazugehörige Dokumentation des Modells. Das Thema kann mit 8 oder 16 LP bearbeitet werden. Seminaranteil: Als Seminar könnten je nach Vorkenntnissen Aspekte von JPA und Envers behandelt werden. |
OpenStack-Anbindung für EmuSphere Betreuer: Gerhard Habiger | Projektanteil: EmuSphere ist eine Plattform, mit der sich verteilte Serverlandschaften simulieren lassen, die dann z.B. verteilte Tests ausführen. Dabei werden unter anderem auch die Netzwerkeigenschaften zwischen den Knoten des verteilten Systems beeinflusst (z.B. Latenz, Jitter), um beispielsweise die Auswirkung globaler Verteilung eines Systems zu testen. EmuSphere wird zur Zeit an der Universität Passau in Kooperation mit dem Institut Verteilte Systeme entwickelt. Momentan benötigt EmuSphere zum Deployment der Testinstanzen die Cloud-Plattform OpenNebula. In diesem Projekt soll EmuSphere erweitert werden um das Deployment der Instanzen auch mit OpenStack zu ermöglichen. Das Projekt kann mit 8 oder 16 LP abgelegt werden. Seminar: Der Seminaranteil soll EmuSphere und seinen Einsatzzweck präsentieren. |
Benchmarking Implementierung für PriCloud Betreuer: David Mödinger | Projektanteil: PriCloud beschäftigt sich mit der Schaffung eines Privatsphäre erhaltenden Cloud Speichers. Eines der betrachteten Szenarien baut auf ein Peer-to-peer Netz auf. Die Aufgabe dieses Projektes ist es, einen Teil der aktuellen PriCloud Spezifikation zu implementieren. Diese Implementierung kann als Baislinie für einen Benchmark von weitergehenden Technologien dienen. Das Projekt kann als 8 oder 16 LP Projekt gewählt werden. |
Beschreibung und allgemeine Angaben | |
Einordnung in die Studiengänge: | Informatik, M.Sc.: Projekt, Modul Middlewaresystem-Entwicklung |
Verantwortlich: | Prof. Dr.-Ing. Franz J. Hauck |
Unterrichtssprache: | Deutsch |
Turnus / Dauer: | jedes Semester / ein volles Semester |
Voraussetzungen (inhaltlich): | - |
Voraussetzungen (formal): | - |
Grundlage für (inhaltlich): | |
Inhalt: | |
Literatur: | |
Bewertungsmethode: | |
Notenbildung: | |
Arbeitsaufwand: | Präsenzzeit: 45h Selbststudium, Projektarbeit, Abschlusspräsentation und Ausarbeitung: 315h Summe: 360h |
Titel: | Multimedia- und Internetsysteme im Eigenbau |
Englischer Titel: | Multimedia and Internet Systems (Hands-on Project) |
Typ: | Projektseminar |
Kürzel / Nr.: | MITIE / CS7000.001 |
SWS / LP: | 3Pj / 12LP |
Dozent: | Prof. Dr.-Ing. Franz J. Hauck |
Betreuer: | Eugen Frasch, Gerhard Habiger, David Mödinger |
Termine: | Dienstag, 12.04.2016, 16.15 Uhr - 17.45 Uhr, O27-341: Vorbesprechung Dienstag, 19.04.2016, 16.15 Uhr - 17.45 Uhr, O27-341: Abschlusspräsentationen aus dem WS 2015/2016 Dienstag, 12.04.2016, 16.15 Uhr - 17.45 Uhr, O27-341: Zielvereinbarungsvorträge |
Vorbesprechung: | Dienstag, 12.04.2016, 16.15 Uhr - 17.45 Uhr, O27-341 |
Lernplattform: | Kursmaterialien finden Sie im Moodle-Kurs Seminare Verteilte Systeme. Sie werden dem Kurs nach der Themenvergabe hinzugefügt. |
Hinweis: Die folgende Themenliste für den Modulstart im Sommersemester 2016 ist vorläufig und wird bis zum 08.04.2016 ergänzt und verändert.
Themen | |
in.Crease: ein Informationsdienst zum Lesen und Vergleichen von Prüfungsordnungen Betreuer: Franz J. Hauck | Projektanteil: In einem vorherigen Projekt wurde bereits Server-Software für die Präsentation, den Vergleich, die Kommentierung und die Verlinkung zwischen verschiedenen Prüfungsordnungen implementiert. Dieses Projekt soll den Dienst mit einer neu zu gestaltenden und ansprechenden Oberfläche in Betrieb nehmen. Die Implementierung erfolgt mit AngularJS und JavaEE (JBoss Wildfly, Hibernate/JPA, MySQL bzw. Postgres). Kenntnisse in der Vorlesung AvID und/oder AngularJS sind hilfreich, können aber auch erarbeitet werden. Das Projekt kann mit 8LP oder 16LP belegt werden. Seminaranteil: Das Seminar kann ausgewählte Aspekte von AngularJS betrachten (Modularisierung, Routing, Bedienelemente, client-seitige Validierung etc.). |
Werkzeuge für kryptographische Operationen in Java Betreuer: Franz J. Hauck | Projektanteil: In einer Bachelorarbeit wurden bereits einfache Werkzeuge für kryptographische Operationen in Java entwickelt. Dieses Projekt soll den Prototyp komplementieren und vor allem gängige Operationen wie Erstellen und Beantragen von Zertifikaten ermöglichen. Die Implementierung erfolgt mit Java und JavaFX. Seminaranteil: Das Seminar kann die Java Krypto-API (JCA und JSSE) behandeln oder auch JavaFX. |
Implementation of asynchronous request handling in the fault-tolerant Java library BFT-SMaRt Betreuer: Gerhard Habiger | Project: The BFT-SMaRt library, written in Java, allows distributed systems to be reliable even when experiencing byzantine failures. Current research efforts of our institute aim to integrate our own work on deterministic scheduling of multithreaded applications with BFT-SMaRt. Currently, BFT-SMaRt only supports synchronous request-response patterns and singlethreaded execution, whereas our planned fault-tolerant platform would enable multithreading and asynchronous request handling. This could significantly improve throughput and latency of fault-tolerant systems. The goals of this lab project are (i) to analyze the existing BFT-SMaRt Java codebase, (ii) to implement the necessary interfaces for asynchronous request handling in Java and (iii) to integrate these changes into the existing BFT-SMaRt libraries. This project has a length of 16 ECTS. Seminar: The Seminar can summarize the concepts of our scheduling algorithm for multithreaded applications and the BFT-SMaRt library and should identify the problems of combining the two. |
Design and Implementation of an Educational Distributed System Betreuer: David Mödinger | Project: A course on foundations of distributed systems is usually accompanied by several programming exercises. The goal of this project is a coherent project with well defined modules, consisting of different aspects of a distributed system taught in a course on distributed systems (e.g., message passing or time synchronisation). These modules should be covered by unit tests, which ideally could be run automatically on student submissions. This project has a length of 8 or 16 ECTS. |
Beschreibung und allgemeine Angaben | |
Einordnung in die Studiengänge: | Informatik, M.Sc.: Projekt, Modul Middlewaresystem-Entwicklung |
Verantwortlich: | Prof. Dr.-Ing. Franz J. Hauck |
Unterrichtssprache: | Deutsch |
Turnus / Dauer: | jedes Semester / ein volles Semester |
Voraussetzungen (inhaltlich): | - |
Voraussetzungen (formal): | - |
Grundlage für (inhaltlich): | |
Inhalt: | |
Literatur: | |
Bewertungsmethode: | |
Notenbildung: | |
Arbeitsaufwand: | Präsenzzeit: 45h Selbststudium, Projektarbeit, Abschlusspräsentation und Ausarbeitung: 315h Summe: 360h |
Titel: | Multimedia- und Internetsysteme im Eigenbau |
Englischer Titel: | Multimedia and Internet Systems (Hands-on Project) |
Typ: | Projektseminar |
Kürzel / Nr.: | MITIE / CS7000.001 |
SWS / LP: | 3Pj / 12LP |
Dozent: | Prof. Dr.-Ing. Franz J. Hauck |
Betreuer: | Eugen Frasch |
Termine: | werden in der Vorbesprechung bekannt gegeben |
Vorbesprechung: | Donnerstag 15.10.2015, 14.15 Uhr - 15.45 Uhr im Raum O27-341 |
Lernplattform: | Kursmaterialien finden Sie im Moodle-Kurs Seminare Verteilte Systeme. Sie werden dem Kurs nach der Themenvergabe hinzugefügt. |
Themen | |
in.Crease: Inbetriebnahme eines elektronischen Modulhandbuchs Betreuer: Franz J. Hauck | Projektanteil: In vorherigen Projekten wurde bereits ein Datenmodell und die Oberfläche für ein einfache Oberfläche für ein elektronisches Modulhandbuch implementiert. Dieses Projekt hat zur Aufgabe zum einen das Datenmodell auf eine neue Version zu aktualisierung und weiterhin die Benutzeroberfläche neu zu gestalten. Dazu gehören auch grafische Elemente, Icons und die Benutzerführung insgesamt. Die Implementierung erfolgt in AngularJS und JavaEE (JBoss Wildfly, Hibernate/JPA, MySQL). Kenntnisse in der Vorlesung AvID und/oder AngularJS sind hilfreich, können aber auch erarbeitet werden. Das Projekt kann mit 8LP oder 16LP belegt werden. Seminaranteil: Das Seminar kann ausgewählte Aspekte von AngularJS betrachten (Modularisierung, Routing, Bedienelemente, client-seitige Validierung etc.). |
in.Crease: Inbetriebnahme eines Informationsdienstes für Prüfungsordnungen Betreuer: Franz J. Hauck | Projektanteil: In einem vorherigen Projekt wurde bereits Server-Software für die Präsentation, den Vergleich und die Verlinkung von verschiedenen Prüfungsordnungen implementiert. Dieses Projekt soll den Dienst mit einer ansprechenden Oberfläche in Betrieb nehmen. Die Implementierung erfolgt mit AngularJS und JavaEE (JBoss Wildfly, Hibernate/JPA, MySQL). Kenntnisse in der Vorlesung AvID und/oder AngularJS sind hilfreich, können aber auch erarbeitet werden. Das Projekt kann mit 8LP oder 16LP belegt werden. Seminaranteil: Das Seminar kann ausgewählte Aspekte von AngularJS betrachten (Modularisierung, Routing, Bedienelemente, client-seitige Validierung etc.). |
Werkzeuge für kryptographische Operationen in Java Betreuer: Franz J. Hauck | Projektanteil: In einer Bachelorarbeit wurden bereits einfache Werkzeuge für kryptographische Operationen in Java entwickelt. Dieses Projekt soll den Prototyp komplementieren und vor allem gängige Operationen wie Erstellen und Beantragen von Zertifikaten ermöglichen. Die Implementierung erfolgt mit Java und JavaFX. Seminaranteil: Das Seminar kann die Java Krypto-API (JCA und JSSE) behandeln oder auch JavaFX. |
Beschreibung und allgemeine Angaben | |
Einordnung in die Studiengänge: | Informatik, M.Sc.: Projekt, Modul Middlewaresystem-Entwicklung |
Verantwortlich: | Prof. Dr.-Ing. Franz J. Hauck |
Unterrichtssprache: | Deutsch |
Turnus / Dauer: | jedes Semester / ein volles Semester |
Voraussetzungen (inhaltlich): | - |
Voraussetzungen (formal): | - |
Grundlage für (inhaltlich): | |
Inhalt: | |
Literatur: | |
Bewertungsmethode: | |
Notenbildung: | |
Arbeitsaufwand: | Präsenzzeit: 45h Selbststudium, Projektarbeit, Abschlusspräsentation und Ausarbeitung: 315h Summe: 360h |
Titel: | Multimedia- und Internetsysteme im Eigenbau |
Englischer Titel: | Multimedia and Internet Systems (Hands-on Project) |
Typ: | Projektseminar |
Kürzel / Nr.: | MITIE / CS7000.001 |
SWS / LP: | 3Pj / 12LP |
Dozent: | Prof. Dr.-Ing. Franz J. Hauck |
Betreuer: | Steffen Kächele |
Termine: | nach Vereinbarung |
Vorbesprechung: | Dienstag, 14.04.2015, 16.15 Uhr - 17.45 Uhr, O27-341 |
Lernplattform: | Kursmaterialien finden Sie im Moodle-Kurs Seminare Verteilte Systeme. Sie werden dem Kurs nach der Themenvergabe hinzugefügt. |
Themen | |
in.Crease: Elektronisches Modul- und Vorlesungsverzeichnis auf der Basis von Angular JS Betreuer: Franz J. Hauck | Projektanteil: Diese Projektarbeit soll bestehende Konzepte des in.crease-Systems, ein elektronisches Lehre-Informationssystem, anstatt wie bisher mit JSF und Java EE nun mit Angular JS auf der Browserseite und mit Java EE auf der Serverseite implementieren. Kenntnisse im Bereich der Vorlesung AvID und/oder von Javascript/Angular JS sind hilfreich. Das Projekt kann nur mit 16LP durchgeführt werden. Seminaranteil: Für das vorangehende oder parallel zu besuchenden Seminar bietet sich als Thema die Vorstellung von Angular JS und seine grundsätzlich andere Vorgehensweise im Vergleich zu JSF an. [reserviert] |
in.Crease: Integration bis zu einem lauffähigen Lehrinformationssystem Betreuer: Franz J. Hauck | Projektanteil: Bisher sind im Rahmen von Projektarbeiten eine Reihe von Software-Komponenten entstanden, die noch nicht zu einem lauffähigen System zusammengefügt wurden. Aufgabe dieser Projektarbeit ist genau dies zu tun. Herausforderung ist hier die Einarbeitung in bestehende Software-Komponenten, in die Philosophie des Gesamtsystems und die Korrektur von nicht zusammenpassenden Teilen. Eventuell müssen Teile auch reimplementiert werden. Ziel ist ein lauffähiges System mit einer (teil-)automatischen Speisung mit aktuellen Modul- und Lehrdaten, der Präsentation der Lehrdaten an anonyme und eingeloggte Benutzer in ansprechendem Layout. Weiterhin ist auf der Basis einer vorhandenen Benutzerverwaltung die Erweiterung auf Benutzerpräferenzen, wie z.B. voreingestellter Default-Studiengang. Ein wichtiger Anteil ist die Dokumentation von Konventionen und Struktur-Überlegungen, damit künftige Arbeiten sich an diese Vorgaben halten. Idealerweise sind Vorkenntnisse im Bereich der Vorlesung AvID und/oder von JSF und EJB vorhanden. Seminaranteil: Diese Arbeit könnte mit 8LP, d.h. ohne Seminar belegt werden. Mit Seminar bietet sich an bestehende Lehrinformationssysteme in ihrer Funktion und vor allem ihrer Benutzeroberfläche zu vergleichen. Das Seminar kann vorab oder parallel belegt werden. |
in.Crease: Eingabesystem für Module und Vorlesungen Betreuer: Franz J. Hauck | Projektanteil: Um die Lehrdaten zu bearbeiten benötigt das in.Crease System eine Benutzeroberfläche, die entsprechende Eingabemasken präsentiert. Je nach Schwierigkeit der Aufgabe kann der organisatorische Prozess realisiert werden, der aus der dezentralen Eingabe durch Dozenten und eine Genehmigung sowie Veröffentlichung der Daten durch die Gremien wie Studienkommission und Studiendekan besteht. Seminaranteil: Diese Projektarbeit könnte mit 8LP, d.h. ohne Seminar belegt werden. Mit Seminar ist als Thema im vorab oder parallel zu belegenden Seminar eine Übersicht über die Gestaltung von Benutzeroberflächen für komplexe Editierinteraktionen zu betrachten, z.B. Editieren von Listen von Personen, Editieren von Studiengangszuordnungen, Editieren von Texten, Editieren von großen Datenmengen. Dabei ist die Intuitivität und die klare Benutzerführung zu bewerten. Damit wird die Grundlage für den Projektanteil gelegt, in dem solche Mechanismen eingesetzt werden müssen. [reserviert] |
in.Crease: versioniertes Einlesen von Moduldaten Betreuer: Franz J. Hauck | Projektanteil: Die Moduldaten der Fakultät werden in einem LaTeX-Format bearbeitet und als versionierte Menge von LaTeX-Dateien gespeichert. Das Einlesen der Daten wurde bereits in vorangegangenen Projekten implementiert. Ziel dieser Arbeit ist es alle in GIT vorliegenden Modulversionen mit ihren korrekten Änderungszeitpunkten in eine versionierte Datenbank zu schreiben. Dazu wird Hibernate und Envers verwendet. Eine entsprechende Modell-Implementierung gibt es bereits. Herausforderungen sind hier, bei Aktualisierungen nur diejenigen Änderungen zu übernehmen, die noch nicht erfasst wurden. Weiterhin sind bestimmte Informationen nur rudimentär in den LaTeX-Dateien vorhanden, die manuell von Editoren eingegeben werden müssen. Es muss dafür gesorgt werden, dass diese Eingaben nicht überschrieben und gegebenenfalls in neuen Versionen weiter verwendet werden. Kennnisse im Bereich der Vorlesung AvID sind hilfreich. Seminaranteil: Diese Projektarbeit kann mit 8LP, d.h. ohne Seminar belegt werden. Als Seminarthema bietet sich an Java-APIs und Implementierungen zum direkten Zugang auf GIT-Repositories vorzustellen. |
Qualitätsanpassung von Videostreams Betreuer:Vladimir Nikolov | Projektanteil: Video-Streams, wie sie bei Video-on-Demand, Videotelefonie oder -konferenzen benutzt werden, sind in ihrer Qualität durch die im Netz verfügbare Datenrate sowie die CPU-Ressourcen auf Sender- und Empfängerseite beschränkt. Heutige Systeme wie z.B. LibJitsi passen sich nur auf die Datenrate an. Im Projekt sollen Mechnismen integirert werden, die eine Anpassung an die vorhandenen CPU-Ressourcen erlauben. Messen und Abschätzen der REssourcen findet außerhalb von LibJitsi statt und ist bereits implementiert; entsprechende Interaktionen müssen aber integriert werden. Da in einem solchen Szenario ein Empfänger dem Sender eine Überlastung mitteilen muss, gehört beispielsweise auch eine entpsrechende Signalisierung mit einer RTCP-Erweiterung zur Projektarbeit. Ideale Vorkenntnisse bestehen durch die Vorlesung MMK. Seminaranteil: Im vorangehenden Seminarteil oder parallel zu besuchenden Seminar sollen die möglichen Qualitätsanpassungen bei heute typischen Videocodecs zusammengestellt werden. Welche Metriken können genutzt weden (z.B. Frame-Rate)? Welche Mechanismen können eingesetzt werden (z.B. Enhancement-Layer)? Welche Auswirkungen haben diese auf Netz- und CPU-Ressourcen bei Sender und Empfänger? |
Beschreibung und allgemeine Angaben | |
Einordnung in die Studiengänge: | Informatik, M.Sc.: Projekt, Modul Middlewaresystem-Entwicklung |
Verantwortlich: | Prof. Dr.-Ing. Franz J. Hauck |
Unterrichtssprache: | Deutsch |
Turnus / Dauer: | jedes Semester / ein volles Semester |
Voraussetzungen (inhaltlich): | - |
Voraussetzungen (formal): | - |
Grundlage für (inhaltlich): | |
Inhalt: | |
Literatur: | |
Bewertungsmethode: | |
Notenbildung: | |
Arbeitsaufwand: | Präsenzzeit: 45h Selbststudium, Projektarbeit, Abschlusspräsentation und Ausarbeitung: 315h Summe: 360h |
Titel: | Multimedia- und Internetsysteme im Eigenbau |
Englischer Titel: | Multimedia and Internet Systems (Hands-on Project) |
Typ: | Projektseminar |
Kürzel / Nr.: | MITIE / CS7000.001 |
SWS / LP: | 3Pj / 12LP |
Dozent: | Prof. Dr.-Ing. Franz J. Hauck |
Betreuer: | Steffen Kächele |
Termine: | nach Vereinbarung |
Vorbesprechung: | Mittwoch, 15.10.2014, 16.15 Uhr - 17.45 Uhr, O27-341 |
Lernplattform: | Kursmaterialien finden Sie im Moodle-Kurs Seminare Verteilte Systeme. Sie werden dem Kurs nach der Themenvergabe hinzugefügt. |
Beschreibung und allgemeine Angaben | |
Einordnung in die Studiengänge: | Informatik, M.Sc.: Projekt, Modul Middlewaresystem-Entwicklung |
Verantwortlich: | Prof. Dr.-Ing. Franz J. Hauck |
Unterrichtssprache: | Deutsch |
Turnus / Dauer: | jedes Semester / ein volles Semester |
Voraussetzungen (inhaltlich): | - |
Voraussetzungen (formal): | - |
Grundlage für (inhaltlich): | |
Inhalt: | |
Literatur: | |
Bewertungsmethode: | |
Notenbildung: | |
Arbeitsaufwand: | Präsenzzeit: 45h Selbststudium, Projektarbeit, Abschlusspräsentation und Ausarbeitung: 315h Summe: 360h |
Titel: | Multimedia- und Internetsysteme im Eigenbau |
Englischer Titel: | Multimedia and Internet Systems (Hands-on Project) |
Typ: | Projektseminar |
Kürzel / Nr.: | MITIE / CS7000.001 |
SWS / LP: | 3Pj / 12 LP |
Dozent: | Prof. Dr.-Ing. Franz J. Hauck |
Betreuer: | Steffen Kächele, Christian Spann |
Termine: | wird noch festgelegt |
Vorbesprechung: | Mittwoch 23.4.2014 16.15 Uhr, Raum O27-341 In der Vorbesprechung wird der organisatorische Rahmen präsentiert, die möglichen Themen vorgestellt und danach vergeben. |
Lernplattform: | Kursmaterialien finden Sie im Moodle-Kurs. Sie werden dem Kurs automatisch hinzugefügt sobald sie eines unserer Seminare besuchen. |
Themen | |
in.Crease: Benutzerverwaltung für ein elektronisches Modulhandbuch Betreuer: Franz J. Hauck | Projektanteil: Für ein elektronisches Modulhandbuch und Vorlesungsverzeichnis gibt es bereits erste Arbeiten für eine Benutzerführung. Die eingesetzte Technologien sind Java EE insbesondere Java Server Faces und EJB. Für die künftige Benutzerverwaltung sollen geeignete Tabellen für die Benutzerinformationen entwickelt und mit Authentisierungs- und Autorisierungsmechanismen verknüpft werden. Dies soll sich nahtlos in ein Java EE System integrieren. Insbesondere soll die Eingabe von Passwörtern nicht im System selbst sondern bei externen Dienstleister wie z.B. dem KIZ erfolgen. Hierzu sind entsprechende Technologien und Machbarkeiten auszuloten und dann umzusetzen. Entsprechende Kooperationen mit dem KIZ werden vom Betreuer geregelt. Ideale Voraussetzung sind Kenntnise im Bereich Web-Technologien bzw. AvID Stoff. Seminaranteil: Im vorangehenden oder parallel zu besuchenden Seminar sind Mechanismen und Konzepte für die entfernte und web-basierte Authentisierung zusammen zu tragen, vergleichend gegenüber zu stellen und in der Eignung für den Projektanteil zu evaluieren. Insbesondere sollten OpenID, Shiboleth, OAuith und ähnliche zu untersuchen. |
in.Crease: Datenmodellierung für ein elektronisches Modulhandbuch Betreuer: Franz J. Hauck | Projektanteil: Für ein ein elektronisches Modulhandbuch und Vorlesungsverzeichnis soll eine effiziente Datenmodellierung durchgeführt werden. Die Modellierung soll mittels JavaEE (genauer EJB und JPA, Java Persistence API erfolgen). Die notwendigen Entitäten und Attribute müssen auf ein geeignetes relationales Schema umgesetzt werden. Ein vorläufiges Datenmodell ist vorhanden. Die Herausforderung ist, die Revisionierbarkeit der Daten, d.h. alle Änderungen bleiben gespeichert und müssen nachvollziehbar sein. Das Modell soll in der Lage sein, alle Daten von einem bestimmten Zeitpunkt wieder herzustellen. Um dies zu erreichen sind verschiedene Vorgehensweisen nebeneinander auszuprobieren und deren Effizienz und Handhabung zu vergleichen. Ideale Voraussetzung sind Kenntnisse von JPA bzw. AvID Stoff. Seminaranteil: Im vorangehenden oder parallel zu besuchenden Seminar sind bestehende Erweiterungen von JPA für die Revisionierbarkeit von Daten zu ermitteln und deren Fähigkeiten im Vergleich gegenüber zu stellen. |
Orchestrierte Topologieerfassung Betreuer: Sven Schober | Wissen über die Netzwerktopologie kann Helfen die Quality-of-Service verteilter Multimedia-Anwendungen zu verbessern. So können z.B. Cluster innerhalb der Teilnehmer von Videokonferenzen erkannt werden und gezielt Proxy-Server platziert werden, die die Netzwerklast verringern. Ein bekanntes Werkzeug zur Topologieerfassung ist traceroute, welches die einzelnen "Hops" einer Internet-Route von Quell- zu Zielhost sichtbar machen kann. Um ein umfassendes Bild der Topologie zwischen mehreren Teilnehmern zu erhalten müssen jedoch einige Herausforderungen angegangen werden: Zum einen existiert mit Load-Balancern eine starke Quelle von Ungenauigkeiten, zum anderen sind die Routen der Hin- und Rückrichtung im Allgemeinen nicht identisch und selbst wenn ist dies nicht immer ohne weiteres Erkennbar. Am Lehrstuhl für Verteilte Systeme entstand u.a. bereits eine Traceroute- Implementierung, welche es erlaubt aus Java heraus Traces zu starten und umfassenden Einfluss auf die versendeten Pakete zunehmen. In diesem Thema soll der Stand der Technik bei der Topologieerkennung aufgearbeitet (Seminaranteil) werden und aufbauend auf den existierenden Vorarbeiten eine Implementierung angefertigt (Projektanteil) werden. |
Kombinierte Bandbreiten- und Topologieerfassung Betreuer: Sven Schober | Verteilte Anwendungen können von Wissen über Bandbreite und Topoligie des Netzwerks zwischen Hosts profitieren. So können z.B. Proxy-Server an "günstigen" Stellen platziert werden, um Flaschenhälse weniger zu belasten. Bisher gibt es für beide Einsatzfälle separate Werkzeuge, für Topologieerkennung z.B. traceroute, für Bandbreitenmessung z.B. tcpperf. Gerade letztere Kategorie belastet den Netzwerkpfad zwischen Quell- und Zielhost jedoch stark, weshalb in der Forschung einige Ansätze entwickelt wurden die Belastung zu reduzieren. Weiterhin messen die vorhandenen Ansätze meist nur die Ende-zu-Ende-Bandbreite, Informationen darüber, wo der Flaschenhals entlang des Pfades liegt bleibt verborgen. Am Lehrstuhl für Verteilte Systeme entstand ein Werkzeug mit dem aus Java heraus Pakete versendet werden können, auf deren Aufbau umfassend Einfluß genommen werden kann. So kann damit z.B. traceroute sehr einfach implementiert werden, aber auch die erwähnten modernen Bandbreitenmesstechniken. Ziel dieses Themas soll die Aufarbeitung der Literatur (Seminaranteil) und die Erarbeitung eines Ansatzes zur kombinierten Toplogie-, Latenz- und Bandbreitenmessung entlang eines Pfades sein, sowie eine Implementierung aufbauend auf den vorhandenen Vorarbeiten (Projektanteil). |
Digitale Fernsteuerung Betreuer: Jan-Patrick Elsholz | Projektanteil: Für die Middleware Instant-X soll eine digitalen Fernsteuerung für Video on Demand (VoD) weiterentwickelt werden. Dazu gehört die prototypische Abbildung des Real-Time Streaming Protokolls (RTSP) auf die API der Middleware. Sowohl die Server- als auch die Clientseite sollen betrachtet und im Test-driven Development entwickelt werden. Ideale Voraussetzung sind Kenntnisse von RTSP und der MMK Stoff. Seminaranteil: Im vorangehenden oder parallel zu besuchenden Seminar sind die Besonderheiten der Middleware Instant-X herauszuarbeiten. Neben den grundsätzlichen Fähigkeiten sind vor allem der Einsatz von RTSP im Zusammenhang mit dem Projektanteil darzustellen. |
Zugriffanalyse vorhandener Anwendungen Betreuer: Steffen Kächele | Projektanteil: Heutige mobile Betriebssysteme (Android/iOS) bieten eine mehr oder weniger umfangreiche Rechteverwaltung für Anwendungen an. Beim Zugriff auf kritische Ressourcen müssen sich Anwendungen entsprechende Rechte bereits während der Installation einholen. Auf üblichen Desktop- und Serverbetriebssystemen ist der Ressourcenzugriff von Anwendungen hingegen weitgehens intransparent. Für vorhandene Java Anwendungen soll ein Analysetool entworfen werden, dass den Zugriff der Anwendung auf System-Ressourcen, Programm-Bibliotheken und JVM-Funktionalität analysiert und darstellt. Das Analysetool soll generisch für mehrere Anwendungsfälle anpassbar und konfigurierbar sein. Die Analyse soll auf Java Bytecode operieren. Seminaranteil: Im vorangehenden oder parallel zu besuchenden Seminar sind die Funktionsweise von Codeanalyse (insbesondere Bytecode-Analyse) herauszuarbeiten. |
Beschreibung und allgemeine Angaben | |
Einordnung in die Studiengänge: | Informatik, M.Sc.: Projekt, Modul Middlewaresystem-Entwicklung Medieninformatik, M.Sc.: Projekt, Modul Middlewaresystem-Entwicklung Informationssystemtechnik, M.Sc.: Wahlpflicht Informatik, Projekt, Modul Middlewaresystem-Entwicklung |
Verwantwortlich: | Prof. Dr.-Ing. Franz J. Hauck |
Unterrichtssprache: | Deutsch |
Turnus / Dauer: | jedes Semester / ein volles Semester |
Vorraussetzungen (inhaltlich): | ... |
Vorraussetzungen (formal): | keine |
Grundlage für (inhaltlich): | |
Inhalt: | ... |
Literatur: | ... |
Bewertungsmethode: | ... |
Notenbildung: | ... |
Arbeitsaufwand: | Präsenzzeit: 45h Selbststudium, Projektarbeit, Abschlusspräsentation und Ausarbeitung: 315h Summe: 360h |
Titel: | Multimedia- und Internetsysteme im Eigenbau |
Englischer Titel: | Multimedia and Internet Systems (Hands-on Project) |
Typ: | Projektseminar |
Kürzel / Nr.: | MITIE / CS7000.001 |
SWS / LP: | 3Pj / 12 LP |
Dozent: | Prof. Dr.-Ing. Franz J. Hauck |
Betreuer: | Steffen Kächele, Christian Spann |
Termine: | nach Vereinbarung |
Vorbesprechung: | Vorstellung und Vergabe der Themen am Donnerstag, 17.10.2013, 10.15 Uhr - 11.45 Uhr, O27-341 |
Lernplattform: | Die Veranstaltung wird mit Hilfe des E-Learningsystems ILIAS durchgeführt. Bitte melden Sie sich dort an. |
Themen | |
in.Crease: GUI-Komponenten für ein elektronisches Modulhandbuch Betreuer: Franz J. Hauck | Projektanteil: Für ein elektronisches Modulhandbuch und Vorlesungsverzeichnis soll eine erste Version für eine Benutzerführung weiterentwickelt werden. Dazu gehören der Entwurf der Benutzeroberfläche, der Navigation und Benutzerführung für Betrachtungs- und Editorfunktionen. Gemäß dem MVC-Muster soll vor allem View und Controller für einen abgegrenzten Aufgabenbereich erstellt werden. Ein lauffähiger Prototyp soll nach einer Konzeptphase mit JavaEE (genauer JSF und Servlets) entwickelt werden. Ideale Voraussetzung sind Studium der Medieninformatik und Kenntnise von JSF bzw. AvID Stoff. Seminaranteil: Im vorangehenden oder parallel zu besuchenden Seminar sind die Besonderheiten von JSF herauszuarbeiten. Neben den grundsätzlichen Fähigkeiten sind vor allem der mögliche Einsatz von Validatoren und Templates im Zusammenhang mit dem Projektanteil darzustellen. |
in.Crease: Datenmodellierung für ein elektronisches Modulhandbuch Betreuer: Franz J. Hauck | Projektanteil: Für ein ein elektronisches Modulhandbuch und Vorlesungsverzeichnis soll eine effiziente Datenmodellierung durchgeführt werden. Die Modellierung soll mittels JavaEE (genauer EJB und JPA, Java Persistence API erfolgen). Die notwendigen Entitäten und Attribute müssen auf ein geeignetes relationales Schema umgesetzt werden. Dabei ist die Herausforderung, dass alle Datenänderungen einzeln persistiert werden müssen, um Änderungen nachträglich nach zu verfolgen. Hierzu sollen verschiedene Schemata erstellt und deren Abfrageeffizienz bei großen Datenmengen evaluiert werden. Ideale Voraussetzung sind Kenntnisse von JPA bzw. AvID Stoff. Seminaranteil: Im vorangehenden oder parallel zu besuchenden Seminar sind die Besonderheiten von JPA herauszuarbeiten. Neben der grundsätzlichen Funktion sind vor allem die Besonderheiten des objektrelationalen Mappings von JPA im Zusammenhang mit dem Projektanteil darzustellen. |
Orchestrierte Topologieerfassung Betreuer: Sven Schober | Wissen über die Netzwerktopologie kann Helfen die Quality-of-Service verteilter Multimedia-Anwendungen zu verbessern. So können z.B. Cluster innerhalb der Teilnehmer von Videokonferenzen erkannt werden und gezielt Proxy-Server platziert werden, die die Netzwerklast verringern. Ein bekanntes Werkzeug zur Topologieerfassung ist traceroute, welches die einzelnen "Hops" einer Internet-Route von Quell- zu Zielhost sichtbar machen kann. Um ein umfassendes Bild der Topologie zwischen mehreren Teilnehmern zu erhalten müssen jedoch einige Herausforderungen angegangen werden: Zum einen existiert mit Load-Balancern eine starke Quelle von Ungenauigkeiten, zum anderen sind die Routen der Hin- und Rückrichtung im Allgemeinen nicht identisch und selbst wenn ist dies nicht immer ohne weiteres Erkennbar. Am Lehrstuhl für Verteilte Systeme entstand u.a. bereits eine Traceroute- Implementierung, welche es erlaubt aus Java heraus Traces zu starten und umfassenden Einfluss auf die versendeten Pakete zunehmen. In diesem Thema soll der Stand der Technik bei der Topologieerkennung aufgearbeitet (Seminaranteil) werden und aufbauend auf den existierenden Vorarbeiten eine Implementierung angefertigt (Projektanteil) werden. |
Kombinierte Bandbreiten- und Topologieerfassung Betreuer: Sven Schober | Verteilte Anwendungen können von Wissen über Bandbreite und Topoligie des Netzwerks zwischen Hosts profitieren. So können z.B. Proxy-Server an "günstigen" Stellen platziert werden, um Flaschenhälse weniger zu belasten. Bisher gibt es für beide Einsatzfälle separate Werkzeuge, für Topologieerkennung z.B. traceroute, für Bandbreitenmessung z.B. tcpperf. Gerade letztere Kategorie belastet den Netzwerkpfad zwischen Quell- und Zielhost jedoch stark, weshalb in der Forschung einige Ansätze entwickelt wurden die Belastung zu reduzieren. Weiterhin messen die vorhandenen Ansätze meist nur die Ende-zu-Ende-Bandbreite, Informationen darüber, wo der Flaschenhals entlang des Pfades liegt bleibt verborgen. Am Lehrstuhl für Verteilte Systeme entstand ein Werkzeug mit dem aus Java heraus Pakete versendet werden können, auf deren Aufbau umfassend Einfluß genommen werden kann. So kann damit z.B. traceroute sehr einfach implementiert werden, aber auch die erwähnten modernen Bandbreitenmesstechniken. Ziel dieses Themas soll die Aufarbeitung der Literatur (Seminaranteil) und die Erarbeitung eines Ansatzes zur kombinierten Toplogie-, Latenz- und Bandbreitenmessung entlang eines Pfades sein, sowie eine Implementierung aufbauend auf den vorhandenen Vorarbeiten (Projektanteil). |
Effizientes Checkpointing in Byzantinisch Fehlertoleranten Bibliotheken Betreuer: Christian Spann | Verteilte Anwendungen sehen sich in der Realität mit verschiedenen Ausfall- bzw. Angriffsszenarien konfrontiert. Der Rechner auf dem die Anwendung ausgeführt wird kann ausfallen oder von Hackern übernommen werden. Byzantinisch Fehlertoleranten Systeme versuchen dies durch eine Replikation der Anwendung auf mehrere Rechner zu verhindern. Dabei ist die Logik für eine solche Verteilung unter anderem darauf angewiesen, periodisch den Zustand der Anwendung zum gleichen logischen Zeitpunkt auf allen Replikaten zu sichern. Denn erst nach dieser Sicherung kann die Anfragehistorie der Anwendung gelöscht werden. Die Notwendigkeit dieser Historie ergibt sich aus der durchzuführenden Fehlererholung beim Ausfall bzw. einer übernahme eines Replikats. Projektanteil: Design und Implementierung eines Moduls zur verteilten Erstellung und Verifikation von Zustandsschnappschüssen. Seminaranteil: Untersuchung verschiedener Ansätze zur Erstellung solcher Schnappschüsse und Identifikation der notwendigen Komponenten und Methoden. |
Beschreibung und allgemeine Angaben | |
Einordnung in die Studiengänge: | Informatik, M.Sc.: Projekt, Modul Middlewaresystem-Entwicklung Medieninformatik, M.Sc.: Projekt, Modul Middlewaresystem-Entwicklung Informationssystemtechnik, M.Sc.: Wahlpflicht Informatik, Projekt, Modul Middlewaresystem-Entwicklung |
Verwantwortlich: | Prof. Dr.-Ing. Franz J. Hauck |
Unterrichtssprache: | Deutsch |
Turnus / Dauer: | jedes Semester / ein volles Semester |
Vorraussetzungen (inhaltlich): | ... |
Vorraussetzungen (formal): | keine |
Grundlage für (inhaltlich): | |
Inhalt: | ... |
Literatur: | ... |
Bewertungsmethode: | ... |
Notenbildung: | ... |
Arbeitsaufwand: | Präsenzzeit: 45h Selbststudium, Projektarbeit, Abschlusspräsentation und Ausarbeitung: 315h Summe: 360h |
Titel: | Multimedia- und Internetsysteme im Eigenbau |
Englischer Titel: | Multimedia and Internet Systems (Hands-on Project) |
Typ: | Projektseminar |
Kürzel / Nr.: | MITIE / CS7000.001 |
SWS / LP: | 3Pj / 12 LP |
Dozent: | Prof. Dr.-Ing. Franz J. Hauck |
Betreuer: | Steffen Kächele, Vladimir Nikolov, Sven Schober, Christian Spann |
Termine: | nach Vereinbarung |
Vorbesprechung: | Unverbindliche Vorbesprechung am Donnerstag, 18.04.2013, 10.15 Uhr im Raum O27-341. |
Beschreibung und allgemeine Angaben | |
Einordnung in die Studiengänge: | Informatik, M.Sc. (PO 2010): Projektmodul Informatik Middleware (Projekt) Informatik, M.Sc. (PO 2010): Projekt, Modul Middlewaresystem-Entwicklung Medieninformatik, M.Sc. (PO 2010): Projektmodul Medieninformatik Middleware (Projekt) Medieninformatik, M.Sc. (PO 2012): Projekt, Modul Middlewaresystem-Entwicklung Informationssystemtechnik, M.Sc.: Wahlpflicht Informatik, Projekt, Modul Middlewaresystem-Entwicklung |
Verwantwortlich: | Prof. Dr.-Ing. Franz J. Hauck |
Unterrichtssprache: | Deutsch |
Turnus / Dauer: | jedes Semester / ein volles Semester |
Vorraussetzungen (inhaltlich): | ... |
Vorraussetzungen (formal): | keine |
Grundlage für (inhaltlich): | |
Inhalt: | ... |
Literatur: | ... |
Bewertungsmethode: | ... |
Notenbildung: | ... |
Arbeitsaufwand: | Präsenzzeit: 45h Selbststudium, Projektarbeit, Abschlusspräsentation und Ausarbeitung: 315h Summe: 360h |
Titel: | Multimedia- und Internetsysteme im Eigenbau |
Englischer Titel: | Multimedia and Internet Systems (Hands-on Project) |
Typ: | Projektseminar |
Nummer / Kürzel: | CS7000.001 / MITIE |
SWS / LP: | 3Pj / 12 LP |
Dozent: | Prof. Dr.-Ing. Franz J. Hauck |
Betreuer: | Steffen Kächele, Jan-Patrick Elsholz, Christian Spann, Vladimir Nikolov, Sven Schober |
Termine: | nach Vereinbarung |
Vorbesprechung: | Die Anmeldung erfolgt entweder per Email an den entsprechenden Betreuer oder in der Vorbesprechung. Die Themenzuordnung erfolgt in der Reihenfolge der Anmeldung. Eine unverbindliche Vorbesprechung mit Vorstellung und Vergabe der Themen findet am Dienstag, 16.10.2012 um 12:30 Uhr im Raum O27-341 statt. |
Themen | |
Pfaduntersuchungs-Framework nach traceroute-Vorbild Betreuer: Sven Schober | Wissen über Pfade die Netzwerkpakete durch das Internet nehmen, kann dabei helfen Multimedia-Anwendungen zu optimieren. Mit traceroute und seinen Varianten existieren bereits Werkzeuge, welche unterschiedliche Techniken anwenden um Routing-Stationen entlang der Netzwerkpfade aufzudecken. Ziel dieses Projektes ist der Entwurf und Implementierung eines flexiblen Java-Frameworks für Netzwerktomografieanwendungen, welches als Untersuchungs- und Experimentalplattform für zukünftige Ansätze dienen soll. |
ARTOScope Betreuer: Vladimir Nikolov | Dieses Thema kann gern im Rahmen eines Projekts bearbeitet werden. Vorkenntnisse im Bereich von SWT, JFace und RAP sind von Vorteil.
Zur Visualisierung von Anwendungsverhalten in unserem ARTOS-System soll im Rahmen dieses Projekts eine RAP-Anwendung ARTOScope entwickelt werden. Diese soll in einem Browser-Fenster mehrere Oszilloskope darstellen, welche die vom ARTOS laufend gemessenen Parameter über das Anwendungsverhalten (wie z.B. CPU-Verbrauch, Jitter) darstellt. Eine Widget Implementierung eines geeigneten Oszilloskops auf der Basis von SWT und JFace existiert bereits im Rahmen des Nebula Projekts, die hier als Grundlage verwendet werden kann.
|
in.Crease: GUI-Komponenten für ein elektronisches Modulhandbuch Betreuer: Franz J. Hauck | Für ein elektronisches Modulhandbuch soll die Benutzerführung entworfen und implementiert werden. Dazu gehören der Entwurf der Benutzeranzeige, Navigation und Benutzerführung. Dabei sind als Benutzer sowohl Studierende als auch Lehrende zu betrachten. Für die Realisierung sollen verschiedene von Java Servlets bereitstellbare Technologien evaluiert werden (GWT, JSF, jQuery UI). Gegenüber einem Model-Mockup soll die Oberfläche lauffähig implementiert werden. Ideale Voraussetzung sind Studium der Medieninformatik und Kenntnise von AvID. |
in.Crease: Datenmodellierung für ein elektronisches Modulhandbuch Betreuer: Franz J. Hauck | Für ein ein elektronisches Modulhandbuch soll eine Datenmodellierung zusammen mit einer effizienten Implementierung erfolgen. Die übersichtliche und vorliegende Menge von Entitäten und Attribute muss auf ein geeignetes relationales Schema umgesetzt werden. Dabei ist die Herausforderung, dass alle Datenänderungen einzeln persistiert werden müssen, um Änderungen nachträglich nach zu verfolgen. Hierzu sollen verschiedene Schemata erstellt und deren Abfrageeffizienz bei großen Datenmengen evaluiert werden. Die Implementierung erfolgt mittels EJB bzw. JPA. Ideale Voraussetzung sind Kenntnisse von AvID. |
Maxdome light Betreuer: Jan-Patrick Elsholz | Ziel dieses Projektes ist die Entwicklung eines Video on Demand (VoD) Servers auf Basis der Multimedia Middleware Instant-X. |
MURX Betreuer: Jan-Patrick Elsholz | Ziel dieses Projektes ist die Entwicklung eines Multi-User Relay chats basierend auf der Multimedia Middleware Instanxt-X (MURX). Dabei wird das Message Session Relay Protocol (MSRP) verwendet. |
Beschreibung und allgemeine Angaben | |
Einordnung in die Studiengänge: | Ma. Inf. (PO 2010): Projektmodul Informatik "Middleware (Projekt)" Ma. Medieninf.: Projektmodul Medieninformatik "Middleware (Projekt)" Ma. Inf.Sys.Tech.: Wahlpflicht Informatik, Modul "Middleware (Projekt)" |
Verwantwortlich: | Prof. Dr.-Ing. Franz J. Hauck |
Unterrichtssprache: | Deutsch |
Turnus / Dauer: | jedes Semester / ein volles Semester |
Vorraussetzungen (inhaltlich): | ... |
Vorraussetzungen (formal): | keine |
Grundlage für (inhaltlich): | |
Inhalt: | ... |
Literatur: | ... |
Bewertungsmethode: | ... |
Notenbildung: | ... |
Arbeitsaufwand: | ... |
Titel: | Multimedia- und Internetsysteme im Eigenbau |
Englischer Titel: | Multimedia and Internet Systems (Hands-on Project) |
Typ: | Projektseminar |
Nummer / Kürzel: | CS7000.001 / MITIE |
SWS / LP: | 3Pj / 12 LP |
Dozent: | Prof. Dr.-Ing. Franz J. Hauck |
Betreuer: | Jan-Patrick Elsholz, Christian Spann, Vladimir Nikolov, Sven Schober, Steffen Kächele |
Termine: | nach Vereinbarung |
Vorbesprechung: | Die Anmeldung erfolgt entweder per Email an den entsprechenden Betreuer oder in der Vorbesprechung. Die Themenzuordnung erfolgt in der Reihenfolge der Anmeldung. Die Vorbesprechung findet am 25.04.2012 um 14:15 Uhr im Raum O27 - 122 statt. |
Themen | |
Cloud-unterstützte Android Videokonferenz-App Betreuer: Sven Schober | Videokonferenzen stellen u.A. hohe und mit der Teilnehmerzahl wachsende Bandbreitenanforderungen. Für Mobiltelefone ergibt sich so eine verbindungstypabhängige Obergrenze der Teilnehmerzahl. Der Falschenhals ist sich dabei meist der Netzzugungang des Telefons (z.B. UMTS oder Edge). Eine Möglichkeit dieses Problem anzugehen ist es sog. RTP-Proxys einzusetzen, welche den Datenstrom jedes Teilnehmers an die anderen Teilnehmer weiterverteilen. Die Proxys können z.B. in einer Cloud-Infrastruktur (z.B. Amazon EC2, oder Eucalyptus) eingerichtet werden. Ziel dieses Projektes ist die Entwicklung einer Android Videokonferenz-App, welche in der Lage ist solche Proxys zu Nutzen. Ein RTP-Proxy existiert bereits als Vorarbeit. Besonderes Augenmerk ist bei der Implementierung auf einen modularen Entwurf der Applikation zu richten. (So kann z.B. das Auffinden der Proxys zunächst simpel "fest konfiguriert", später aber durch einen "intelligenten" Algorithmus ersetzt werden.) Vorkenntnisse im Bereich Multimediakommunikation und Android-Entwicklung sind empfehlenswert. |
ARTOScope Betreuer: Vladimir Nikolov | Dieses Thema kann gern im Rahmen eines Projekts bearbeitet werden. Vorkenntnisse im Bereich von SWT, JFace und RAP sind von Vorteil.
Zur Visualisierung von Anwendungsverhalten in unserem ARTOS-System soll im Rahmen dieses Projekts eine RAP-Anwendung ARTOScope entwickelt werden. Diese soll in einem Browser-Fenster mehrere Oszilloskope darstellen, welche die vom ARTOS laufend gemessenen Parameter über das Anwendungsverhalten (wie z.B. CPU-Verbrauch, Jitter) darstellt. Eine Widget Implementierung eines geeigneten Oszilloskops auf der Basis von SWT und JFace existiert bereits im Rahmen des Nebula Projekts, die hier als Grundlage verwendet werden kann.
|
SpaceX Real-Time Betreuer: Vladimir Nikolov | Dieses Thema kann gern im Rahmen eines Projekts bearbeitet werden. Vorkenntnisse aus dem Bereich von OSGi und Echtzeit-Java sind von Vorteil.
SpaceX ist ein am Institut für Verteilte Systeme entwickeltes Galcon-ähnliches Strategiespiel auf der Basis von OSGi. Dieses unterstützt das dynamische Nachladen von Spielkomponenten und Diensten zur Laufzeit. Wird zum Beispiel ein intelligenter Dienst zur Pfadsuche für die Spielerflotten nachgeladen, so hat dies eine instantane Auswirkung auf das aktuelle Spielgeschehen. Im Rahmen dieses Praktikums soll das SpaceX nun "echtzeitfähig" gemacht werden. Dafür sollen unterschiedliche Qualitätsstufen definiert werden, in denen das Spiel dynamisch betrieben werden kann. Hierfür sind verschiedene Dienstkonfigurationen denkbar, in denen das Spiel zur Laufzeit umgeschaltet werden kann.
|
Multi-QoS-Level Audioplayer Betreuer: Vladimir Nikolov | Dieses Thema kann gern im Rahmen eines Projekts bearbeitet werden. Interesse für Echtzeit-Signalverarbeitung sowie Programmiererfahrungen mit C++ und Java sind von Vorteil. Bei diesem Praktikum soll ein komponentenbasierter Audio-Player entwickelt werden, der zur Laufzeit zwischen mehreren Betriebsmodi umgeschaltet werden kann. Dafür soll der Player mit einigen simplen Audioeffekten ausgerüstet werden, wie z.B. Delay, Chorus oder Reverb. Die Effekte sollen bei der Wiedergabe in Echtzeit berechnet und dynamisch ein und ausgeschaltet werden können. Aus Kombinationen dieser Effekte ergeben sich mehrere Laufzeitkonfigurationen des Players, in denen er zur Laufzeit beliebig umgeschaltet werden soll. Die Implementierung soll auf der Basis von OSGi erfolgen. Für die Realisierung der Echtzeit-Effekte soll die open source Bibliothek JUCE verwendet werden.
|
Beschreibung und allgemeine Angaben | |
Einordnung in die Studiengänge: | Ma. Inf. (PO 2010): Projektmodul Informatik "Middleware (Projekt)" Ma. Medieninf.: Projektmodul Medieninformatik "Middleware (Projekt)" Ma. Inf.Sys.Tech.: Wahlpflicht Informatik, Modul "Middleware (Projekt)" |
Verwantwortlich: | Prof. Dr.-Ing. Franz J. Hauck |
Unterrichtssprache: | Deutsch |
Turnus / Dauer: | jedes Semester / ein volles Semester |
Vorraussetzungen (inhaltlich): | ... |
Vorraussetzungen (formal): | keine |
Grundlage für (inhaltlich): | |
Inhalt: | ... |
Literatur: | ... |
Bewertungsmethode: | ... |
Notenbildung: | ... |
Arbeitsaufwand: | ... |