Diploma and Master Theses (authored and supervised):
"Persistable, Distributable and Versionable Application State for Cloud Service Emulators";
Supervisor: S. Dustdar, T. Rausch, W. Hummer;
Institute of Information Systems Engineering, Distributed Systems Group,
final examination: 2022-03-08.
Cloud emulators are a powerful developer tool to counter the friction between the cloud-native paradigm and local development. The advantage of cloud-service emulators is twofold. First, they remove the need of provisioning a dedicated development environment mirroring production. Second, changes do not need to be packaged and uploaded for tests. Nevertheless, they cannot overcome certain limitations. Specifically, they foist isolated environments where it is difficult to share what is happening on the local machine. Furthermore, they impose black boxes, i.e. it is challenging to understand the intricate interplay of the various services the application logic stitches together into one cohesive unit. This thesis proposes a novel system to persist, distribute and version application state of cloud-service emulators to overcome the limitations mentioned above. To this end, we first discuss related work existing in various research communities to correlate various approaches to our problem domain. Then, we conceive a mechanism that allows developers to create persistable sandbox environments they can seamlessly share among collaborators. Further, we design and implement a version control system for application state and demonstrate how it can facilitate collaboration among geo-distributed developers without sacrificing the core functionalities under network partition. Lastly, we show how our solution can function as an eventually consistent distributed key-value storage based on the abstractions provided by our version control system. We evaluated our system by implementing and running it against multiple scenarios representing cloud-native development processes. Furthermore, we perform benchmarks on each component to show how increasing the scope of a project impacts the system´s performance. Our results show that such a system is feasible and performs well enough to accommodate multiple collaborators working on large-scale cloud-native projects.
Cloud Computing / Cloud Emulation / Version Control Systems / Eventual Consistency
"Official" electronic version of the publication (accessed through its Digital Object Identifier - DOI)
Created from the Publication Database of the Vienna University of Technology.