Verteilte Anwendungen, Plattformen und Systeme - Themen

Auf dieser Seite finden Sie ausgeschriebene offene Themen zu den Projektmodulen Verteilte Anwendungen, Plattformen und Systeme. Falls Sie sich für eines der Themen interessieren, wenden Sie sich bitte (gerne auch während des Semesters) an den genannten Betreuer. Häufig haben wir auch noch kurzfristig zusammengestellte Themen, bei denen wir nicht selten auch auf Ihre Vorlieben eingehen können. Sollte in der folgenden Liste nichts für Sie dabei sein, kontaktieren Sie bitte einen der Betreuer oder Prof. Hauck.

„User interface for the in.Crease person and committee module,“ Projektarbeit, F. J. Hauck (Betreuung), F. J. Hauck (Prüfer), Inst. of Distr. Sys., Ulm Univ., 2024 – Verfügbar.
in.Crease ist ein geplantes Informationssystem für Studierende. In Vorarbeiten wurde bereits ein Modul entworfen, um Personen und Gremien zu verwalten und geeignet darszustellen. Ziel dieses Projekts ist es die Anforderungen an die Darstellung von Personen und Gremien zu überarbeiten und neu zusammen zu stellen. Auch das Datenmodell soll auf Vollständigkeit und Konsistenz abgeklopft werden. Im Anschluss sollen UI-Elemente sowie entsprechende Berechtigungen für die einzelnen Use-Cases implementiert werden - je nach Umfang eventuell nur eine Teilmenge von wichtigen Use-Cases. Zu den Use-Cases gehören nicht nur lesende Zugriffe in Form von geeigneten Anzeigeelementen sondern auch Editier-, Anlege- und Löschfunktionen. Die Arbeit hat damit einen konzeptionellen Anteil sowie einen Implementierungsanteil, der mit TypeScript und Angular in Verbindung mit einem Redux-Store.
„Reconfiguration of BFT-SMaRt replica groups at run-time,“ Projektarbeit, F. J. Hauck (Betreuung), F. J. Hauck (Prüfer), Inst. of Distr. Sys., Ulm Univ., 2024 – Verfügbar.
State-machine replication (SMR) is a fault-tolerance concept where multiple servers (replicas) execute the same requests. Replicas are then able to replace each other in case of faulty servers. BFT-SMaRt is a popular framework to implement SMR. BFT-SMaRt is able to add and remove replicas from the replica group at runtime. Unfortunately only the latest of the added replicas can be removed again, which is obviously an odd restriction. It is likely that the reconfiguration part is just a proof-of-concept implementation. As part of this project the restrictions should be removed so that any replica can be removed by a reconfiguration request. This needs a cleanup in the internal software as replicas are internally numbered from 0 upwards and only the replica with the highest number can be removed. This numbering scheme has to be replaced by a more sophisticated solution.
„Liberating BFT-SMaRt from configuration files,“ Projektarbeit, F. J. Hauck (Betreuung), F. J. Hauck (Prüfer), Inst. of Distr. Sys., Ulm Univ., 2024 – Verfügbar.
State-machine replication (SMR) is a fault-tolerance concept where multiple servers (replicas) execute the same requests. Replicas are then able to replace each other in case of faulty servers. BFT-SMaRt is a popular framework to implement SMR. One of its drawbacks is that clients and replicas need the same set of configuration files. This projects is supposed to "liberate" replicas and clients mostly from these files. The configuration should be expressed by Java objects (BFT-SMaRt internally already does something like this). Further, these objects should be handed out by our commander application that is already able to initialise a group of replicas – currently by copying configuration files. This copy operation should be replaced by object passing. The student has to identify all accesses to configuration files and update the software accordingly. For clients there should be the choice of using configuration files or a serialised configuration object that could be retrieved from the commander app.
„Development of a Visualization Tool for Educational Purposes for the Operating Systems Lecture,“ Projektarbeit, A. Heß (Betreuung), F. J. Hauck (Prüfer), Inst. of Distr. Sys., Ulm Univ., 2024 – Verfügbar.
The task of this project is to develop a web-based application that can be used as part of the operating systems lecture for educational purposes. The application should encompass a graphical emulation of basic computer hardware components such as a simple processor with a narrow instruction set or a memory management unit. The goal is to have an educational tool for students to help them develop intuition for concepts like instruction processing or virtual memory management.
„A Performance Evaluation of Gramine,“ Projektarbeit, A. Heß (Betreuung), F. J. Hauck (Prüfer), Inst. of Distr. Sys., Ulm Univ., 2024 – Verfügbar.
Intel SGX is a technology that allows to launch tamper-proof enclaves in main memory, which isolate parts of applications that deal with sensitive data. There is a broad spectrum of application scenarios, ranging from fault-tolerant systems to privacy-preserving machine learning approaches. Intel provides a native SDK that can be used to derive low-level wrapper functions from a function definitions provided in a DSL, which are then used to interact with the protected parts of the application applications. However, the SDK requires special care during the design process as well as C/C++ programming skills, in order to create a bulletproof interface to the enclave. The Gramine project promises to simplify the SGX application development process by providing functionality to wrap unmodified linux applications in Intel SGX enclaves. Since this approach trades in performance for usability, the goal of this project is to conduct a performance evaluation for different applications launched natively and wrapped with Gramine.