[Back]


Diploma and Master Theses (authored and supervised):

U. Brunflicker:
"Integrating fUML into Enterprise Architect";
Supervisor: G. Kappel, T. Mayerhofer; Institut für Softwaretechnik und Interaktive Systeme, 2015; final examination: 2015-04-24.



English abstract:
The rise of Model Driven Development (MDD) has renewed the interest in the execution of
models. The predominant modeling language applied in MDD is the Unified Modeling Language
(UML). Unfortunately, UML lacks clear execution semantics. This has lead to a plethora
of different interpretations both in academia and industry, hindering the interoperability of UML
tools supporting the execution of models. A possible solution to this problem is the so-called
Foundational Subset For Executable UML Models (FUML) standard published by the Object
Management Group (OMG). FUML is an extension of UML, defining a standardized execution
semantics for a subset of UML. FUML has, however, not yet been widely adopted in commercial
tooling.
This thesis investigates the integration of FUML with existing commercial UML modeling
tools to contribute to the adoption of FUML and identify challenges arising in the integration.
To this end, this thesis aims to answer the following research questions:
1. Can FUML be integrated into a proprietary UML model execution environment? Which
challenges arise in the integration?
2. Does the standardized FUML model execution environment provide the same functionality
as a proprietary UML model execution environment?
3. Is the performance of the standardized FUML model execution environment comparable
to the performance of a proprietary UML model execution environment?
To explore these questions, a prototypical integration of FUML into the commercial UML modeling
tool Enterprise Architect (EA) has been implemented in this thesis. The goal of the prototype
is to allow execution and debugging of UML state machines and sequence diagrams via
EA´s execution environment, in conjunction with the execution of UML activity diagrams via
the FUML execution environment.
The evaluation of the prototype has shown that the integration of the execution environments
has been completed successfully. The prototype is capable of executing and debugging state
machines, sequence diagrams and FUML compliant activity diagrams in conjunction, while still
providing the same functionality as the proprietary execution environment. The performance
analysis has shown that the prototype is slower than the proprietary execution environment provided
by EA. This is mostly due to the necessity of running two different execution environments
in parallel.

German abstract:
Die Verbreitung von Model Driven Development (MDD) hat zu einem erhöhten Interesse an
der direkten Ausführung von Modellen geführt. Die vorherrschende Modellierungssprache im
MDD-Bereich ist die Unified Modeling Language (UML). Jedoch verursaucht das Fehlen einer
vollständigen und präzisen Definition des Ausführungsverhaltens von UML Modellen Inkompatibilitäten
zwischen Ausführungswerkzeugen und -umgebungen für UML. Eine mögliche
Lösung für dieses Problem ist der Foundational Subset For Executable UML Models (FUML)
Standard der Object Management Group (OMG). Dieser Standard ist eine Erweiterung des UML
Standards, die das Ausführungsverhalten einer Teilmenge von UML definiert. FUML findet bislang
jedoch nur geringe Anwendung in kommerziellen UML Werkzeugen.
Diese Diplomarbeit untersucht die Möglichkeit, FUML in ein existierendes UML Ausführungswerkzeug
zu integrieren, um zur Verbreitung von FUML beizutragen. Insbesondere werden
die Herausforderungen, die durch eine solche Integration entstehen, untersucht. Folgende
wissenschaftliche Fragestellungen werden behandelt:
1. Ist es möglich, FUML in ein existierendes UML Ausführungswerkzeug zu integrieren?
Welche Herausforderungen entstehen hierbei?
2. Stellt die standardisierte Ausführungsumgebung von FUML dieselbe Funktionalität wie
eine proprietäre Ausführungsumgebung zur Verfügung?
3. Ist die Performanz der standardisierten Ausführungsumgebung von FUML vergleichbar
mit jener einer proprietären Ausführungsumgebung?
Um diese Fragen zu beantworten, wurde ein Prototyp entwickelt, der FUML in das UML Ausführungswerkzeug
Enterprise Architect (EA) integriert. Das Ziel des Prototypen ist es, das Ausführen
und Debuggen von UML Zustandsautomaten und Sequenzdiagrammen mittels der Ausführungsumgebung
von EA zu ermöglichen, und zwar in Kombination mit der Ausführung von
UML Aktivitätsdiagrammen mittels der Ausführungsumgebung von FUML.
Die Evaluierung des Prototypen hat gezeigt, dass die Integration der Ausführungsumgebungen
erfolgreich durchgeführt werden konnte. Der Prototyp ist in der Lage, eine Kombination von
Zustandsautomaten, Sequenzdiagrammen und FUML-konformen Aktivitätsdiagrammen auszuführen
und zu debuggen. Der verfügbare Funktionsumfang ist vergleichbar mit der proprietären
Ausführungsumgebung von EA. Die Performanz-Analyse hat gezeigt, dass der Prototyp schlechtere
Ausführungszeiten als die proprietäre Lösung von EA aufweist. Dies ist hauptsächlich auf
die Notwendigkeit zweier paralleler Ausführungsumgebungen zurückzuführen.

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