Titelaufnahme

Titel
Graphical debugging of QVT relations using transformation nets / von Patrick Zwickl
VerfasserZwickl, Patrick
Begutachter / BegutachterinKappel, Gerti ; Schönböck, Johannes
Erschienen2009
UmfangXI, 108 S. : 1 DVD ; Ill., graph. Darst.
HochschulschriftWien, Techn. Univ., Dipl.-Arb., 2009
Anmerkung
Zsfassung in dt. Sprache
SpracheEnglisch
DokumenttypDiplomarbeit
Schlagwörter (DE)QVT / Model / Model Transformation / Fehlersuche / Visualisierung
Schlagwörter (EN)QVT / Model / Model Transformation / Debugging / Visualization
URNurn:nbn:at:at-ubtuw:1-31081 Persistent Identifier (URN)
Zugriffsbeschränkung
 Das Werk ist frei verfügbar
Dateien
Graphical debugging of QVT relations using transformation nets [2.96 mb]
Links
Nachweis
Klassifikation
Zusammenfassung (Deutsch)

Modelltransformationen (MT) übernehmen eine Schlüsselrolle im Model Driven Engineering (MDE) Paradigma, welche zur Standardisierung der Modelltransformationssprache Query / View / Transformation (QVT) von der Object Management Group (OMG) führte. Allerdings konnte diese Sprache bislang nicht das gleiche Interesse wie die Unified Modeling Language (UML) wecken, da ein immanenter Mangel an adequaten Debugging Mechanismen besteht. Folgende drei Problembereiche wurden dabei identifiziert: Erstens offerieren deklarative Sprachen wie QVT Relations (QVT-R) keine operative Sicht des Transformationsprozesses. Nur die Informationen, die von den Interpretern zur Verfügung gestellt werden, sowie die vorhandenen Ein- und Ausgabedaten, können für die Beobachtung der Transformationsumsetzung genutzt werden. Sogar die Reihenfolge der Transformationsausführung wird durch den MT engine als Black-box-System verschleiert. Dies kann zum Problem der Diskrepanz zwischen Design- und Laufzeit führen. Zweitens verfügt der QVT-R Code über ein höheres Abstraktionslevel als die Ausführung und das Debugging des Codes. Dies beeinträchtigt die Möglichkeit von Schlussfolgerungen aus produziereten Ergebnissen. Drittens sind die Informationen der Durchführung der Modelltransformationen über mehrere Artefakte -- einschließlich des Source-Modells, des resultierenden Ziel-Modells und des umfassenden QVT-R Codes -- zerstreut. Daraus folgend sind die Gründe für ein bestimmtes Ergebnis für den Benutzer nicht nachvollziehbar.

Zur Lösung der genannten Probleme wird in dieser Diplomarbeit die Visualisierung von QVT-R in Transformationsnetzen mittels des MT Frameworks ``Transformation On Petri Nets In Color'' (TROPIC), das auf Colored Petri Nets (CPN) aufbaut, erörtert. Diese kann als explizite Definition der operationalen Semantik für die Fehlersuche auf hoch abstraktem Level interpretiert werden. Die vorliegende Arbeit formuliert einen konzeptionellen Ansatz mit protoypischer Umsetzung zur Überwindung der bestehenden Kluft zwischen den verwendeten Paradigmen. Dies erfolgt durch die Abbildung der QVT-R Konzepte auf TROPIC. Konkret werden drei Kontributionen präsentiert: (i) ein Lösungsansatz für unidirektionale Transformationen welche ein Zielmodell aus einem bestehenden Quellmodell erstellen, (ii) die Unterstützung von Modelvererbung, und (iii) Synchronisationsansätze für zeitliche und versionsbedingte inkrementelle Änderungen.

Zusammenfassung (Englisch)

Model transformations (MT) play a key role in the Model Driven Engineering (MDE) paradigm, leading to the standardization of the Query/View/Transformation (QVT) model transformation language by the Object Management Group (OMG). Until now, however, this language did not attract the same interest as the Unified Modeling Language (UML), because of the lack of adequate debugging facilities which are necessary regarding the following three problem areas: First, declarative languages like QVT Relations (QVT-R) hides the operational semantics of transformations. Only the information provided by the interpreter, as well as the tendered inputs and returned outputs are available for tracking the progress of transformations. Furthermore, the ordering of transformation application is hidden by the MT engines providing only a black-boxes view to the users. This can lead to the problem of impedance mismatches between design and runtime. These characteristics of QVT-R are assets for developing, but are handicaps for debugging. Second, QVT-R code is specified on higher abstraction level than its execution and state-of-the-art debugging. This deteriorates the ability to deduce causes from produced results. Third, the information content responsible for operating MTs is spread over several artifacts including the input model, a resulting target model and the QVT-R code. As a consequence, the reasons for a particular outcome are hard to be derived from the involved artifacts. This severely harms the ease of debugging.

Therefore, this master thesis tackles the mentioned problems by visualizing QVT-R as Transformations Nets, using the MT framework ``Transformations On Petri Nets In Color'' (TROPIC) based on Colored Petri Nets (CPN). This can be seen as explicit definition of operational semantics on a high abstraction level providing a white-box view for debugging QVT-R. This thesis proposes a procedure model formulated in a conceptual approach and in a prototypic implementation striving for bridging the existing gap between these two different paradigms by mapping the concepts of QVT Relations to such nets. In this thesis three particular contributions are provided: (i) a solution approach for unidirectional mappings producing target models from an existing source model, (ii) the support for model inheritance, (iii) and synchronization approaches for timely and version-based incremental changes.