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.

Sommersemester 2018

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 Projekt soll auf der Basis vorangegangener Projekte Wege ergründen wie Snapshotting in Verbindung mit Multithreading in BFT-SMaRt reaktiviert werden kann, sowie Implementierungen und Messungen der gefundenen Ansätze bereitstellen.

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
Informatik, Lehramt: Wahlfach, Modul Middlewaresystem-Entwicklung
Medieninformatik, M.Sc.: Projekt, Modul Middlewaresystem-Entwicklung
Software-Engineering, M.Sc.: Projekt, Modul Middlewaresystem-Entwicklung
Informationssystemtechnik, M.Sc.: Wahlpflicht Informatik, Projekt, Modul Middlewaresystem-Entwicklung
Middlewaresystem-Entwicklung - MWE

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 2017/2018

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
Informatik, Lehramt: Wahlfach, Modul Middlewaresystem-Entwicklung
Medieninformatik, M.Sc.: Projekt, Modul Middlewaresystem-Entwicklung
Software-Engineering, M.Sc.: Projekt, Modul Middlewaresystem-Entwicklung
Informationssystemtechnik, M.Sc.: Wahlpflicht Informatik, Projekt, Modul Middlewaresystem-Entwicklung
Middlewaresystem-Entwicklung - MWE

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

Sommersemester 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
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
Informatik, Lehramt: Wahlfach, Modul Middlewaresystem-Entwicklung
Medieninformatik, M.Sc.: Projekt, Modul Middlewaresystem-Entwicklung
Software-Engineering, M.Sc.: Projekt, Modul Middlewaresystem-Entwicklung
Informationssystemtechnik, M.Sc.: Wahlpflicht Informatik, Projekt, Modul Middlewaresystem-Entwicklung
Middlewaresystem-Entwicklung - MWE

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

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.
Seminar: Der Seminaranteil könnte sich mit dem Projekt PriCloud beschäftigen und dieses präsentieren, da eine Einarbeitung in dieses notwendig ist.

Beschreibung und allgemeine Angaben

Einordnung in die Studiengänge:

Informatik, M.Sc.: Projekt, Modul Middlewaresystem-Entwicklung
Informatik, Lehramt: Wahlfach, Modul Middlewaresystem-Entwicklung
Medieninformatik, M.Sc.: Projekt, Modul Middlewaresystem-Entwicklung
Software-Engineering, M.Sc.: Projekt, Modul Middlewaresystem-Entwicklung
Informationssystemtechnik, M.Sc.: Wahlpflicht Informatik, Projekt, Modul Middlewaresystem-Entwicklung
Middlewaresystem-Entwicklung - MWE

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

Sommersemester 2016

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.
Seminar: The Seminar can cover (automatic) unit tests in Java or aspects of educational software design.

Beschreibung und allgemeine Angaben

Einordnung in die Studiengänge:

Informatik, M.Sc.: Projekt, Modul Middlewaresystem-Entwicklung
Informatik, Lehramt: Wahlfach, Modul Middlewaresystem-Entwicklung
Medieninformatik, M.Sc.: Projekt, Modul Middlewaresystem-Entwicklung
Software-Engineering, M.Sc.: Projekt, Modul Middlewaresystem-Entwicklung
Informationssystemtechnik, M.Sc.: Wahlpflicht Informatik, Projekt, Modul Middlewaresystem-Entwicklung
Middlewaresystem-Entwicklung - MWE

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 2015/2016

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
Informatik, Lehramt: Wahlfach, Modul Middlewaresystem-Entwicklung
Medieninformatik, M.Sc.: Projekt, Modul Middlewaresystem-Entwicklung
Software-Engineering, M.Sc.: Projekt, Modul Middlewaresystem-Entwicklung
Informationssystemtechnik, M.Sc.: Wahlpflicht Informatik, Projekt, Modul Middlewaresystem-Entwicklung
Middlewaresystem-Entwicklung - MWE

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

Sommersemester 2015

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
Informatik, Lehramt: Wahlfach, Modul Middlewaresystem-Entwicklung
Medieninformatik, M.Sc.: Projekt, Modul Middlewaresystem-Entwicklung
Software-Engineering, M.Sc.: Projekt, Modul Middlewaresystem-Entwicklung
Informationssystemtechnik, M.Sc.: Wahlpflicht Informatik, Projekt, Modul Middlewaresystem-Entwicklung
Middlewaresystem-Entwicklung - MWE

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 2014/2015

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
Informatik, Lehramt: Wahlfach, Modul Middlewaresystem-Entwicklung
Medieninformatik, M.Sc.: Projekt, Modul Middlewaresystem-Entwicklung
Software-Engineering, M.Sc.: Projekt, Modul Middlewaresystem-Entwicklung
Informationssystemtechnik, M.Sc.: Wahlpflicht Informatik, Projekt, Modul Middlewaresystem-Entwicklung
Middlewaresystem-Entwicklung - MWE

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

Sommersemester 2014

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

Wintersemester 2013/2014

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

Sommersemester 2013

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

Wintersemester 2012/2013

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
(vergeben)

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
(vergeben)

Betreuer: Jan-Patrick Elsholz

Ziel dieses Projektes ist die Entwicklung eines Video on Demand (VoD) Servers auf Basis der Multimedia Middleware Instant-X.

MURX
(vergeben)

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:...

Sommersemester 2012

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:...