Current Theses

Title

Student

Supervisor(s)

Description

Using a Raspberry Pi as an Edge device Lukas Dötlinger Fedor Smirnov details
AFCL Environment – Development and Scalable Execution of Portable Function Choreographies Across Multiple Serverless Cloud Platforms Stefan Pedratscher Sashko Ristov details

Title Using a Raspberry Pi as an Edge device
Number of students 1
Language German or English
Supervisor Fedor Smirnov
Description The goal of this thesis in the the design, the implementation, and the evaluation of the infrastructure required to use a Raspberry Pi (https://www.raspberrypi.org/) as an edge device for the execution of (serverless) functions. In addition to the implementation of this basic functionality, the created software is to be integrated into the Apollo platform (https://github.com/Apollo-Core) developed by the DPS group.
Tasks
  • Researching the available frameworks for the implementation of edge functionality on the Raspberry (i.e., Kybernetes, OpenWhisk, or EdgeX)
  • Familiarization with the Apollo Framework
  • Implementing the edge functionality with (at least) one of the frameworks
  • Experimental evaluation (comparison of different frameworks/comparison of the performance of the edge device and cloud resources)
Theoretical Skills Distributed Systems, Cloud Computing
Practical Skills Java
Additonal Information One (or multiple, if necessary) Raspberry Pi (and potentially other edge devices) will be provided for the work on this topic.
Depending on the main focus of interest, this topic can be laid out into various directions: From an extensive research and comparison of different Edge Frameworks (focus on technology review), over the implementation of an automatic detection of edge devices with a subsequent deployment and invocation of functions on them (focus on software development) to the implementation of an experimental network of fog/edge devices (focus on working with edge hardware).

Title AFCL Environment – Development and Scalable Execution of Portable Function Choreographies Across Multiple Serverless Cloud Platforms
Language Englisch
Supervisors Sashko Ristov
Student Stefan Pedratscher
Description This master thesis designs an abstract function choreography language (AFCL) and JAVA API (AFCLCore) to build serverless workflow applications or function choreographies (FCs) at a high-level of abstraction. AFCLCore will be integrated in several tools that resulted by bachelor theses. Such AFCLCore-based tools will be integrated into the AFCL environment, which will be able to develop and run portable function choreographies (FCs) across multiple serverless cloud platforms by overcoming individual FaaS provider limits.
Tasks
  • Contribute to development of Dependency-Aware Faasifier (DAF) and evaluate it with the state-of-the-art FaaSifiers.
  •  Define a Java Interface jFaaS to facilitate portable serverless application development.
  •  Describe FCs at a high-level of abstraction in AFCL and create a Java application programming interface to easily build, parse, write and validate FCs.
  •  Integrate AFCLCore in the multi-FaaS enactment engine
  •  Define a model within the AFCL runtime system for distributing parallel loops of an FC across multiple FaaS cloud providers using jFaaS and AFCLCore.
  •  Integrate fault tolerance in AFCL.
  •  AFCL Environment: Integrate AFCLCore-based FCEditor, Scheuler and enactment engine.
Theoretical skills Distributed Systems, workflow applications, serverless computing
Practical skills Java, JavaScript, Web development, YAML, JSON, SDK for public cloud providers
Additional information enactment engine, Scheduler and FCEditor is provided.