Modelltransformations-Framework basierend auf Petri-Netzen
A Framework for Model Transformations on Petri Nets in Color
Wissenschaftsdisziplinen
Informatik (100%)
Keywords
-
Model-Driven Engineering,
Model Transformation Language,
Structural Heterogeneities,
Model Management,
Colored Petri Nets,
Model Translation
Modelltransformationen stellen die Schlüsseltechnologie in der modell-getriebenen Softwareentwicklung dar, um beispielsweise Modellübersetzungen (z.B. ER-Modell in UML-Klassenmodell), Modellerweiterun-gen (z.B. Aspektierung eines Klassenmodells mit Logging-Funktionalität) oder Modellsynchronisationen (z.B. GUI-Modell mit Content-Modell) realisieren zu können. Es existieren mittlerweile unzählige Modelltransformationssprachen, die eine Abbildung zwischen den Metamodellen von Quell- und Zielmodell erlauben und darauf aufbauend die eigentliche Transformation der Modelle vornehmen. Aufgrund gravierender Mängel konnte sich jedoch bis dato keine dieser Sprachen als defakto-Standard in der Praxis durchsetzen. Dies liegt zum einen daran, dass Modelltransformationssprachen meist keine geeigneten Abstraktionsmechanismen zur Verfügung stellen, die den Umgang mit komplexen strukturellen Heterogenitäten zwischen verschiedenen Metamodellen erlauben würden. Zum andern fehlt es existierenden Ansätzen an Mechanismen, die eine Wiederverwendung von Lösungen für wiederkehrende Transformationsprobleme ermöglichen würden. Schließlich weisen diese Sprachen einen "impedance mismatch" zwischen der Spezifikationsebene von Transformationen und der Ausführungsebene auf, wodurch insbesondere Verständlichkeit und Debuggingmöglichkeiten von Transformationen stark beeinträchtigt werden. Das Ziel dieses Projekts liegt in der Entwicklung eines Frameworks zur Spezifikation und Ausführung von Modelltransformationen namens TROPIC (Transformations on Petri Nets in Color). TROPIC ermög-licht die Spezifikation von Modelltransformationen auf unterschiedlichen Abstraktionsstufen, wobei eine deklarative Abbildungssprache basierend auf UML 2 Komponentendiagrammen unterstützt wird, die bei der Überbrückung von Heterogenitäten zwischen Metamodellen von Implementierungsdetails abstrahiert. Um das Potential der Wiederverwendung zu erhöhen, werden generische Transformations-Operatoren in erweiterbaren Bibliotheken zur Verfügung gestellt, wobei diese Operatoren an beliebige Metamodelle gebunden und durch Komposition zu komplexeren Operatoren zusammengefügt werden können. Der "impedance mismatch" zwischen der Spezifikationsebene von Transformationen und der Ausführungsebene wird in TROPIC überwunden, indem ein dezidiertes Laufzeitmodell für die Ausführung von Modelltransformationen in Form von färbigen Petri-Netzen zur Verfügung gestellt wird, das eine homogene Repräsentation aller Transformations-Artefakte (Modelle, Metamodelle sowie Transformationslogik) erlaubt und damit Verständlichkeit und Debugging von Modelltransformationen erleichtert. Die Methode zur Evaluierung von TROPIC basiert auf drei Strategien. Strategie 1 umfasst die Spezifi-kation von Fallstudien für die Transformation heterogener Struktur- und Verhaltensmodelle und deren Realisierung mittels verschiedener existierender Modelltransformationssprachen, sodass eine Evaluierung auf Basis geeigneter Kriterien des Softwarequalitätsstandards ISO 9126 ermöglicht wird. Strategie 2 be-steht in der Durchführung einer empirischen Studie mit den ca. 200 TeilnehmerInnen der Model Enginee-ring Lehrveranstaltungen der TU Wien und der JKU Linz, um die Ergebnisse der Fallstudien kritisch zu reflektieren. Strategie 3 verfolgt das Ziel, den Nutzen von TROPIC durch Workshops mit international renommierten Experten komparativ zu anderen Modelltransformationssprachen zu evaluieren.
Aufgrund der ständig steigenden Komplexität von Software ist die Rationalisierung des Softwareentwicklungsprozesses von entscheidender Bedeutung. Ein aktueller Trend ist die Modell-getriebene Softwareentwicklung, dessen Ziel es ist, Software auf einer abstrakten Ebene zu spezifizieren und immer wiederkehrende Aufgaben durch Codegenerierung zu automatisieren. Dadurch kann nicht nur der Entwicklungsprozess verkürzt, sondern auch die Qualität der entstehenden Software erhöht werden, was vor allem für sicherheitskritische Anwendungen wie beispielsweise in der Flugzeugindustrie von größter Wichtigkeit ist. Für die Spezifikation auf einer abstrakten Ebene werden Softwaremodelle eingesetzt. Entsprechend diesem Prinzip, spielen Modelle die zentrale Rolle im Softwareentwicklungsprozess. Diese Modelle können mit unterschiedlichen Formalismen repräsentiert werden, wobei jeder Formalismus für einen bestimmten Zweck optimiert ist. Um die unterschiedlichen Modelle eines Projekts ineinander zu überführen und damit inkonsistente Spezifikationen zu vermeiden, stellen Übersetzungen zwischen den unterschiedlichen Modellen bzw. Code sogenannte Modelltransformationen den Kernmechanismus dar. Für die Spezifikation und die Ausführung von Modelltransformationen wurden mittlerweile dedizierte Transformationssprachen vorgeschlagen. Im Rahmen des TROPIC-Projekts wurden, um fehlende Wiederverwendungsmechanismen in existierenden Transformationssprachen wett zu machen, einerseits wiederkehrende Probleme identifiziert sogenannte Transformationsmuster und andererseits vorgefertigte Lösungen Komponenten für diese entwickelt, auf die Entwickler bei der Erstellung einer Modelltransformation zurückgreifen können. Dies stellt die Voraussetzung für einen effizienteren und fehlerfreieren Entwicklungsprozess von Modelltransformationen dar. Um darüber hinaus die Fehlersuche in Transformationen zu unterstützen, wurden existierende Transformationssprachen sowie die eigenen vorgeschlagenen Komponenten in einen visuellen Formalismus auf Basis von Petri-Netzen überführt, der es auf Grund seiner formalen Basis erlaubt, Transformationsspezifikationen hinsichtlich Korrektheit automatisiert zu verifizieren.Um die vorgeschlagenen Konzepte zu evaluieren, wurde eine entsprechende prototypische Implementierung umgesetzt. Diese erlaubt es, Modelltransformationen auf Basis der vorgeschlagenen Komponenten graphisch zu spezifizieren. Diese Spezifikation sowie Spezifikationen in anderen gängigen Transformationssprachen können in eine Petri-Netz-basierte Sicht überführt werden, welche sich besonders für das Auffinden von Fehlern in einer Spezifikation eignet.
- Universität Linz - 49%
- Technische Universität Wien - 51%
- Werner Retschitzegger, Universität Linz , assoziierte:r Forschungspartner:in
- Andy Schürr, Technische Universität Darmstadt - Deutschland
Research Output
- 267 Zitationen
- 24 Publikationen
-
2022
Titel On the privacy of mental health apps DOI 10.1007/s10664-022-10236-0 Typ Journal Article Autor Iwaya L Journal Empirical Software Engineering Seiten 2 Link Publikation -
2011
Titel A Comparison of Rule Inheritance in Model-to-Model Transformation Languages DOI 10.1007/978-3-642-21732-6_3 Typ Book Chapter Autor Wimmer M Verlag Springer Nature Seiten 31-46 -
2011
Titel Reusing Model Transformations across Heterogeneous Metamodels. Typ Conference Proceeding Abstract Autor De Lara J Et Al Konferenz Proceedings of the 5th International Workshop on Multi-Paradigm Modeling (MPM) @ MoDELS'11 -
2009
Titel Lets's Play the Token Game - Model Transformations Powered By Transformation Nets. Typ Conference Proceeding Abstract Autor Schwinger W Et Al Konferenz Proceedings of the International Workshop on Petri Nets and Software Engineering (PNSE) @ PN'09, Université Paris 13 -
2009
Titel Reviving QVT Relations: Model-Based Debugging Using Colored Petri Nets DOI 10.1007/978-3-642-04425-0_59 Typ Book Chapter Autor Wimmer M Verlag Springer Nature Seiten 727-732 -
2010
Titel Surviving the Heterogeneity Jungle with Composite Mapping Operators DOI 10.1007/978-3-642-13688-7_18 Typ Book Chapter Autor Wimmer M Verlag Springer Nature Seiten 260-275 -
2010
Titel Taming the Shrew - Resolving Structural Heterogeneities with Hierarchical CPN. Typ Conference Proceeding Abstract Autor Schwinger W Et Al Konferenz Proceedings of the International Workshop on Petri Nets and Software Engineering (PNSE) @ PN'10, University of Hamburg -
2010
Titel On using Inplace Transformations for Model Co-evolution. Typ Conference Proceeding Abstract Autor Kappel G Et Al Konferenz Proceedings of the 2nd International Workshop on Model Transformation with ATL (MtATL) @ TOOLS'10, INRIA & Ecole des Mines de Nantes -
2010
Titel Plug & Play Model Transformations - A DSL for Resolving Structural Metamodel Heterogeneities. Typ Conference Proceeding Abstract Autor Schwinger W Et Al Konferenz Proceedings of the 10th Workshop on Domain-Specific Modeling (DSM) @ Splash'10 -
2010
Titel Towards an expressivity benchmark for mappings based on a systematic classification of heterogeneities DOI 10.1145/1866272.1866278 Typ Conference Proceeding Abstract Autor Wimmer M Seiten 32-41 -
2010
Titel Catch Me If You Can – Debugging Support for Model Transformations DOI 10.1007/978-3-642-12261-3_2 Typ Book Chapter Autor Schoenboeck J Verlag Springer Nature Seiten 5-20 -
2009
Titel Lost in Translation? Transformation Nets to the Rescue! DOI 10.1007/978-3-642-01112-2_33 Typ Book Chapter Autor Wimmer M Verlag Springer Nature Seiten 315-327 -
2009
Titel A Meta-Framework for Generating Ontologies from Legacy Schemas*This work has been partly funded by the Austrian Science Fund (FWF) under grant P21374-N13. DOI 10.1109/dexa.2009.67 Typ Conference Proceeding Abstract Autor Wimmer M Seiten 474-479 Link Publikation -
2009
Titel TROPIC - A Framework for Building Reusable Transformation Components. Typ Conference Proceeding Abstract Autor Kusel A Konferenz Proceedings of the Doctoral Symposium at MODELS 2009, School of Computing, Queen's University -
2009
Titel Transformation Nets: A Runtime Model for Transformation Languages. Typ Conference Proceeding Abstract Autor Schönböck J Konferenz Proceedings of the Doctoral Symposium at MODELS 2009, School of Computing, Queen's University -
2009
Titel Right or Wrong? - Verification of Model Transformations using Colored Petri Nets. Typ Conference Proceeding Abstract Autor Schwinger W Et Al Konferenz Proceedings of the 9th OOPSLA Workshop on Domain-Specific Modeling (DSM´09), Helsinki Business School -
2009
Titel Common Pitfalls of Using QVT Relations - Graphical Debugging as Remedy* *This work has been partly funded by the Austrian Science Fund (FWF) under grant P21374-N13. DOI 10.1109/iceccs.2009.24 Typ Conference Proceeding Abstract Autor Kusel A Seiten 329-334 -
2009
Titel A Petri Net Based Debugging Environment for QVT Relations DOI 10.1109/ase.2009.99 Typ Conference Proceeding Abstract Autor Wimmer M Seiten 3-14 -
2013
Titel Reuse in model-to-model transformation languages: are we there yet? DOI 10.1007/s10270-013-0343-7 Typ Journal Article Autor Kusel A Journal Software & Systems Modeling Seiten 537-572 -
2012
Titel Automated verification of model transformations based on visual contracts DOI 10.1007/s10515-012-0102-y Typ Journal Article Autor Guerra E Journal Automated Software Engineering Seiten 5-46 -
2012
Titel Surveying Rule Inheritance in Model-to-Model Transformation Languages. DOI 10.5381/jot.2012.11.2.a3 Typ Journal Article Autor Wimmer M Journal The Journal of Object Technology Seiten 3:1 Link Publikation -
2012
Titel Debugging Model-to-Model Transformations DOI 10.1109/apsec.2012.56 Typ Conference Proceeding Abstract Autor Schönböck J Seiten 164-173 -
2012
Titel Fact or Fiction – Reuse in Rule-Based Model-to-Model Transformation Languages DOI 10.1007/978-3-642-30476-7_19 Typ Book Chapter Autor Wimmer M Verlag Springer Nature Seiten 280-295 -
2011
Titel From the Heterogeneity Jungle to Systematic Benchmarking DOI 10.1007/978-3-642-21210-9_15 Typ Book Chapter Autor Wimmer M Verlag Springer Nature Seiten 150-164