Individual Projects

In addition to our periodically scheduled project courses (see right column), you can also participate in a number of individual and group projects. Depending on your program and its exam regulation, these can be credited as a master project module. Please contact us for details. Note that some of the proposed project works are also offered as Bachelor's or Master's  thesis. Size and difficulty will be adapted to the kind of work that is finally done.

“Android app for mobile electroencephalography (EEG),” project, M. Mehdi (Supervisor), F. J. Hauck (Examiner), Inst. of Distr. Sys., Ulm Univ., 2019 – open.
Electroencephalography (EEG) is the method of monitoring the electrical activity of the brain, thus enabling mitigation of many psychological disorders and illnesses, mainly by therapies that help patients to better self-regulate their brain activity. Mobile EEGs are dedicated hardware equipment capable of coupling with many state-of-the-art smartphones. Bluetooth 2.1 with Enhanced Data Rate (EDR) capability is one of the most effective mean of coupling EEGs with smartphones. For successful completion of the project, the student is required to work on development of an app. More specifically, in the project, the student will have the options to work on acquiring and collecting data, transformation and parsing of data, visualizing data on smartphone, or optimally storing data in a database.
“Erweiterung von C++ Netzwerksimulator,” project, D. Mödinger (Supervisor), F. J. Hauck (Examiner), Inst. of Distr. Sys., Ulm Univ., 2019 – open.
Am Institut für verteilte Systeme wurde in früheren Arbeiten ein Simulator für Peer-to-Peer Netzwerke erstellt und mit ver-schiedenen Protokollen ausgestattet. Zunächst wurde dieser zielgerichtet auf einzelne Anwendungszwecke weiterentwickelt. In dieser Arbeit sollen nun die verschiedenen Entwicklungen vereinheitlicht und zu einer einfach erweiterbaren Simulations-software zusammengefasst werden. Hierfür gilt es zunächst die bestehende Codebasis zu verstehen und zu vereinheitlichen, sowie geeignete Schnittstellen für verschiedene Verhaltensweisen, Modelle und Strategien des Simulators zu erstellen.
“Extension of a Monero Wallet,” Bachelor's thesis, project, F. Engelmann (Supervisor), F. Kargl (Examiner), Inst. of Distr. Sys., Ulm Univ., 2019 – open.
The goal of this project is to extend the Monero project [1] to support an additional transaction type. The transaction itself is already implemented, but is not integrated into the cli tools and the consensus mechanism. A good knowledge of C++ is required and a basic understanding of cryptocurrencies is helpful. The evaluation of the project consists of creating a cli demo in a test setup.
“Integration of etcd4j and BFT-SMaRt Parallel,” project, G. Habiger (Supervisor), F. J. Hauck (Examiner), Inst. of Distr. Sys., Ulm Univ., 2019 – open.
In our recent research, teaching, and project work, we re-implemented etcd – a popular and well-known fault-tolerant key-value store – in Java, resulting in a multithreaded version that is easier to integrate into our research prototypes. Additionally, recent projects have looked at the State Machine Replication framework BFT-SMaRt, especially our own parallelized version of it, and worked on a way to enable snapshotting functionality. This project aims at integrating these two prototypes – etcd4J and BFT-SMaRt Parallel – into one working project, to yield a fully working, state machine replicated and fault-tolerant version of etcd4J. Further work includes testing and benchmarking this solution. The project can be modified to fit 8 or 16 ECTS.
“Latenzmessungen und Evaluation in alternativen Blockchain Systemen,” Bachelor's thesis, Master's thesis, project, D. Mödinger (Supervisor), F. J. Hauck (Examiner), Inst. of Distr. Sys., Ulm Univ., 2019 – open.
Die Transaktionsverbreitung in Blockchain Netzwerken findet üblicherweise über einen Broadcastmechanismus statt. In einer ersten Forschungsarbeit am Institut haben wir das Verhalten dieses Broadcasts im Bitcoin Netzwerk untersucht. Ziel dieser Arbeit ist es, für alternative Blockchain Netzwerke, wie Beispielsweise das Ethereum oder Monero Netzwerk, die Untersuchung zu replizieren. Hierfür gilt es einen geeigneten Crawler zu erstellen, Datensets zusammen zu stellen und geeignete stochastische Methoden anzuwenden. Das Ausmaß dieser Untersuchung richtet sich nach der gewählten Art der Arbeit.
“Machine Learning with TensorFlow Privacy,” Master's thesis, Bachelor's thesis, project, M. Matousek (Supervisor), F. Kargl (Examiner), Inst. of Distr. Sys., Ulm Univ., 2019 – open.
Machine learning offers great opportunities, but also comes with risks. Especially the privacy risks are becoming more prevalent in the discussions about machine learning. Recently, Google published a machine learning library called TensorFlow Privacy. Its goal is to make it easier for developers and researchers to build privacy-preserving machine learning models. Specifically, it utilizes Differential Privacy, which mathematically guarantees that the training data to create the models is protected from being extracted. The goal of this thesis or project is to become familiar with the TensorFlow Privacy library, to understand and be able to explain the techniques which are implemented in it, to be able to build privacy-preserved machine learning models, and possibly to implement own protection techniques that could enhance the TensorFlow Privacy library.
“Optimizing Smart Mobile Crowdsensing Apps,” project, M. Mehdi (Supervisor), F. J. Hauck (Examiner), Inst. of Distr. Sys., Ulm Univ., 2019 – open.
Mobile crowdsensing is the method of acquiring user experience data from users. Either in an automated fashion without limited user engagement, for instance using embedded sensors of the smartphone. Or in a participatory fashion, where the user is the main responsible for the provision of data, for instance filling out surveys. With regard to this, we have developed an app that acquires user experience data related to weather in both - automated as well as participatory fashion. However, using multiple embedded sensors of the smartphone consumes resources, battery, as well as storage. For successful completion of the project, the student is required to work on the existing mobile crowdsensing app. More specifically, in the project, the student will have the options to work on optimizing battery consumption, limiting resource usage, optimize sensor data storage, or improve the sensor data accuracy. Or the student has the freedom to suggest his own vision about extending the current app. The successful completion of the project requires the student to actively participate in the project meetings, deliver the tasks on time, write a project report and present their work at the end.
“Practical Overview of Serverless Computing,” projectarbeit, D. Meißner (Supervisor), F. Kargl (Examiner), Inst. of Distr. Sys., Ulm Univ., 2019 – open.
Serverless is a current trend in cloud computing. In contrast to what the name indicates it does not describe an architecture without servers. Instead, it really means that developers do not have to worry about servers and infrastructure, but can completely focus on their code. Unlike previous cloud computing models, a cloud vendor does not offer full platforms or virtual machines, but an execution environment for functions. These often feature a pay-per-use billing model and automatic scalability of resources based on current utilization. Thus, developers are completely relieved of the operational concerns of their applications. All major cloud computing providers offer their own flavor of serverless computing or Function as a Service (FaaS). The goal of this project is to provide a comparison of the similarities and differences of these platforms. Another goal of this project is the implementation of a reference application that can be used to compare different platforms and their programming model. As the practical part of this project a multi node Apache OpenWhisk (an open source serverless platform) cluster should be set up and tested.
“Realisierung von spieltheoretischer Peer-to-Peer Netzwerkerzeugung II,” D. Mödinger (Supervisor), F. J. Hauck (Examiner), Inst. of Distr. Sys., Ulm Univ., 2019 – open.
Die Topologie von Peer-to-Peer-Netzen spielt für viele darauf aufbauende Protokolle eine zentrale Bedeutung. So bestimmt der Netzwerkdurchmesser beispielsweise, wie schnell alle Teilnehmer Broadcastnachrichten erhalten können. Zudem agieren Teilnehmer in einem Peer-to-Peer-Netzwerk üblicherweise so, dass sie ihre ei-gene Situation verbessern. Basierend darauf lassen sich die Hand-lungen der Teilnehmer spieltheoretisch modellieren. Ziel dieser Arbeit ist es, aufbauend auf Ergebnisse einers vorherigen Projekts, ein gegebenes spieltheoretisches Modell in ein Protokoll umzusetzen, das jeder Spieler bzw. Teilnehmer befolgt. Hierfür soll die gegebene Simulation erweitert werden. Dieses Projekt wird in Kooperation zwischen den Instituten für Theoretische Informatik und Verteilte Systeme durchgeführt und gemeinsam betreut.
“Electroencephalography (EEG) using Smartphones,” project, M. Mehdi (Supervisor), F. J. Hauck (Examiner), Inst. of Distr. Sys., Ulm Univ., 2018 – open.
Electroencephalography (EEG) is the method of monitoring the electrical activity of the brain, thus enabling mitigation of many psychological disorders and illnesses, mainly by therapies that help patients to better self-regulate their brain activity. Mobile EEGs are dedicated hardware equipment capable of coupling with many state-of-the-art smartphones. Bluetooth 2.1 with Enhanced Data Rate (EDR) capability is one of the most effective mean of coupling EEGs with smartphones. For successful completion of the project, the student is required to work on Bluetooth 2.1 stack to couple electrical signal simulator with Smartphones. More specifically, in the project, the student will have the options to work on acquiring and collecting data from the simulator, managing the bandwidth of incoming data, real-time data compression, visualizing data on smartphone, or optimally storing data in a database.
“Machine Learning on Encrypted Data,” Bachelor Thesis, Master Thesis, project, M. Matousek (Supervisor), F. Kargl (Examiner), Inst. of Distr. Sys., Ulm Univ., 2018 – open.
Encryption is one of the most reliable techniques for protecting information. However, once data is encrypted, using it becomes very difficult. Goal of this thesis or project, is to explore how Machine Learning algorithms can be designed to be able to deal with encrypted data. Firstly, a survey of existing mechanisms should be conducted. In a second part, algorithms will be comparatively implemented, or own encryption mechanisms introduced.
“Replicating data-centric detection results in VANETs,” (Individual) project, R. van der Heijden (Supervisor), F. Kargl (Examiner), Inst. of Distr. Sys., Ulm Univ., 2017 – open.
Vehicular ad-hoc networks (VANETs) have many applications that rely on the same type of data that is directly related to traffic and sensor data available to a vehicle. These applications include traffic jam warnings, efficient navigation for drivers, and improved safety; all of them rely on the accuracy of the data stored in the vehicle. In the scientific literature, there is a multitude of mechanisms to determine this accuracy; however, existing work is often not comparable. In this project, the goal is to implement several such mechanisms in the Java-based Maat framework, which is a prototype detection framework designed to combine detection results. The purpose is twofold; verifying that existing work behaves as expected (i.e., reproducing results) and enabling the use of these mechanisms in future studies.