[Back]


Diploma and Master Theses (authored and supervised):

A. Eigner:
"From Modeling Languages to Query Languages: A Generative Approach";
Supervisor: M. Wimmer; Institut für Information Systems Engineering, 2019; final examination: 2019-04-24.



English abstract:
The utilization of models and approaches, such as MDE, in engineering fields grows in popularity,
because models provide useful means for the data-exchange, testing, validation and code
generation. In the process of the ongoing digitalization models constantly grow in size and complexity.
Thus, the need for querying models, which are usually created with DSMLs, grows as
well, whereat model querying is not only important for information retrieval, but can also provide
powerful means for the testing and validation of large systems.
Although many well-established model querying approaches already exist, they are usually
meant to be used by IT-experts and ignore the need of users from utterly different engineering
fields for easy-to-use query languages, who lack the necessary IT know-how. Besides that,
users, who lack the knowledge about the DSML´s metamodels, may run into metamodel-related
pitfalls. In order to meet these needs, an EMF-based prototype has been developed in the course
of this thesis based onWieringa´s Engineering Cycle [36], that generates the model querying language
MQL automatically from the Ecore metamodel of a chosen DSML and provides means
for the specification and execution of MQL queries. This approach should provide query languages
that resemble the original DSMLs as much as possible, by reusing and modifying the
DSML´s original elements. This prototype also generates an XText grammar specification that
will be used for writing MQL queries. A model-to-text generator translates MQL queries into
equivalent Viatra VQL queries, which are then executed by the MQL´s Viatra-based query engine.
Hence, MQL firstly tries to be easily usable by domain experts and secondly helps users, who
lack knowledge about the DSML´s metamodel, by "guiding" them through the DSML´s syntactical
features.
A literature survey has yielded only one related work ( [30]) that can be considered as relatively
comparable to the approach of this thesis. This result emphasizes the novelty of this approach
and the relatively little amount of attention that has been paid to the addressed domain expert´s
needs so far.
The MQL prototype has been evaluated in terms of query execution time and usability [3] against
Viatra VQL. The evaluation of the execution times shows, that MQL´s Viatra VQL code generator
needs to be optimized, in order to allow MQL to benefit from the rapidness of its underlying
Viatra VQL query engine. Furthermore, MQL achieved higher scores in the usability evaluation
than Viatra VQL regarding the effectiveness, efficiency and satisfiability.

German abstract:
Die Verwendung von Modellen und Entwicklungsparadigmen, wie z.B. MDE, gewinnt in verschiedensten
Ingenieursdisziplinen immer mehr an Bedeutung. Modelle eignen sich hervorragend
für den Datenaustausch, für Systemvalidierungen und -Tests sowie für Code-Generierung.
Mit der fortschreitenden Digitalisierung nehmen Modelle kontinuirlich an Größe und Komplexität
zu. Das Bedürfnis, Modelle, welche meistens mittels DSMLs erstellt werden, mit Hilfe von
Modellabfragen nach Informationen durchzusuchen, steigt, wobei Modellabfragen nicht nur direkter
Informationsgewinnung dienen, sondern sich auch als hilfreiche Mittel zur automatisierten
Validierung und zum Testen großer und komplexer Modelle eignen.
Obwohl es schon viele etablierte Sprachen für Modellabfragen gibt, richten sich diese meistens
an IT-Experten und oft schwer zugänglich für Benutzer aus anderen Disziplinen. Auch setzen
diese Sprachen oft ein gewisses Wissen über die Metamodelle der DSMLs voraus. Benutzer,
denen dieses Wissen fehlt, laufen Gefahr, an Metamodell-spezifischen Fehlern beim Schreiben
von Abfragen zu scheitern. Um diesen Bedürfnissen entgegenzukommen, wurde im Laufe dieser
Dimplomarbeit ein EMF-basierter Prototyp gemäßWieringas Engineering Cycle [36] entwickelt,
welcher die Sprache MQL basierend auf dem Ecore Metamodell einer beliebigen DSML
generiert und Tools zur Definition und Ausführung der MQL Modellabfragen bereitstellt. Dieser
Prototyp soll Modellabfragesprachen generieren, die der originalen Beschaffenheit der gewählten
DSMLs so weit wie möglich ähneln, indem er die Elemente der DSML wiederverwendet und
modifiziert. Zudem generiert er eine XText-basierte Grammatikspezifikation. Ein eigens entwickelter
Model-to-Text Generator übersetzt die MQL Modellabfragen in äquivalenten Viatra VQL
Code, welcher anschließend von MQLs Viatra-basierter Query-Engine ausgeführt werden.
Dieser Ansatz soll Modellabfragesprachen liefern, die leicht von Benutzern angewendet werden
können, die IT-unkundig sind oder nur über beschränktes Domänen- bzw. Metamodellspezifisches
Wissen verfügen.
Aus der Literaturrecherche ging lediglich ein Paper hervor ( [30]), welches einen dieser Diplomarbeit
vergleichbaren Ansatz präsentiert. Dieses Resultat hebt die Neuheit des Ansatzes dieser
Arbeit hervor und unterstreicht die Tatsache, dass bis jetzt die Bedürfnisse der Fachexperten
hinsichtlich einfach bedienbarer Modellabfragesprachen wenig Beachtung fanden.
Der MQL Prototyp wurde hinsichtlich der Ausführungsdauer der Abfragen sowie der Usability
[3] gegen Viatra VQL evaluiert. Die Evaluierung der Ausführungsdauer der Abfragen zeigt,
dass MQLs Viatra VQL Code Generator optimiert werden muss, damit MQL von der Schnelligkeit
der Viatra-basierten Query-Engine profitieren kann. Zudem erzielte MQL im Rahmen der
Usability-Evaluierung bessere Bewertungen als Viatra VQL hinsichtlich der Effizienz, Effektivität
und Zufriedenheit.

Keywords:
MQL, VQL, DSML, GPML


Electronic version of the publication:
https://publik.tuwien.ac.at/files/publik_280188.pdf


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