[Back]


Diploma and Master Theses (authored and supervised):

D. Madner:
"Model-based Deployment and Provisioning of Applications to the Cloud";
Supervisor: G. Kappel; Institut für Softwaretechnik und Interaktive Systeme, 2014; final examination: 2014-12-10.



English abstract:
Cloud computing had and still has a major impact on how applications are made accessible for
the users. Due to the advantages cloud computing has, there is a demand to migrate applications
to the cloud. Unfortunately there does not exist general guidelines how to define the required
application execution environments and deployment requirements so that they can be interpreted
by any arbitrary cloud provider.
In the last years, cloud providers came up with approaches to be able to describe cloud
resources in form of an interpretable template. Just recently, in November 2013, OASIS published
the open standard TOSCA [44], which aims to unite existing proprietary approaches and
standardise them. Approaches following a declarative way of describing orchestrated cloud resources
are quite recent and are extended frequently, as it is a promising possibility of illustrating
complex dependencies and limitations of computing resources in a way that can be read by human
beings as well.
This thesis firstly discusses model driven engineering and cloud computing separately and
afterwards, how they can be combined. The main aim is to create a model that contains enough
information about dependencies, limitations and application specific requirements, which can
support the migration of the application to the cloud.
Furthermore, the masterīs thesis proposes a process, which is subdivided into two parts: Deployment
and Provisioning. The first step is about creating UML models and refining them with
UML extensions (classifiers, profiles and stereotypes), which consists out of cloud computing
specific attributes. The second step converts the model into a template, by means of applying
model to text transformations, in order to be interpretable and executable by cloud providers.
Existing solutions only address partial aspects of the whole problem, focusing on other objectives.
One of the main goal of this thesis is the creation of a unified and model-based solution,
whose processes and tools support the application modeler and make a (semi-)automatic execution
of the deployment and provisioning of an application in the cloud possible.

German abstract:
Cloud-Computing hatte und hat noch immer einen großen Einfluss darauf, wie Applikationen
Benutzern zur Verfügung gestellt werden. Aufgrund der überwiegenden Vorteile, die Cloud-
Computing mit sich bringt, besteht ein großes Bestreben, Applikationen in die Cloud zu migrieren.
Leider existieren derzeit keine allgemeinen Richtlinien, in welcher Form die benötigten
Ausführungsumgebungen und die Erstellungsspezifikationen einer Applikation definiert werden
sollen, damit diese von jedem x-beliebigen Cloud Betreiber verwendet werden können.
In den letzten Jahren wurde vermehrt der Fokus auf Ansätze gelegt, die es ermöglichen,
Ressourcen in der Cloud in Form eines interpretierbaren Templates zu beschreiben. Erst letztes
Jahr, im November 2013, wurde von OASIS ein offener Standard TOSCA [44] veröffentlicht,
der versucht bereits existierende propitäre Ansätze zusammen zu fassen und zu vereinheitlichen.
Die Entwicklung hin zu einer deklarativen Beschreibung von orchestrierten Ressourcen in der
Cloud sind noch Neuland und werden ständig erweitert, da es sich um eine vielversprechende
Möglichkeit handelt, komplexe Abhängigkeiten und Einschränkungen von Computerresourcen
in einem für den Menschen lesbaren Format zu beschreiben.
Diese Arbeit beleuchtet zuerst die Welten von Model-Driven-Engineering und Cloudcomputing
und wie diese beiden kombiniert werden können. Das Ziel besteht darin ein Modell zu erstellen,
das ausreichend Information über Abhängigkeiten, Einschränkungen und applikationsspezifische
Anforderungen beinhaltet, damit es bei der Migration der Applikation in die Cloud
unterstützend verwendet werden kann.
Im Rahmen dieser Arbeit wird weiters ein Prozess beschrieben, der in zwei Schritte unterteilt
ist: Erstellung und Bereitstellung. Im ersten Schritt werden UML Modelle erstellt und
mit UML Erweiterungen (Typen, Profile und Stereotypen), welche Cloud-Computing spezifische
Attribute beinhalten, verfeinert. Der zweite Schritt besteht darin, die Modelle mit Hilfe von
Transformationen in Templates zu konvertieren, damit diese vom entsprechenden Cloud Betreiber
interpretiert und exekutiert werden können.
Bestehende Ansätze adressieren nur Teilaspekte des Migrationsproblems und fokussieren
sich auf Teillösungen. Einer der Hauptziele dieser Arbeit ist, die Erstellung einer vereinheitlichten
und modell-basierenden Lösung, dessen Prozesse und Tools den Applikationsmodellierer
unterstützen und einen (semi-)automatischen Ablauf der Erstellung und Bereitstellung einer
Applikation in der Cloud ermöglichen.

Keywords:
cloud providers, UML models

Created from the Publication Database of the Vienna University of Technology.