Nothing Special   »   [go: up one dir, main page]

skip to main content
10.1145/3239372.3239386acmconferencesArticle/Chapter ViewAbstractPublication PagesmodelsConference Proceedingsconference-collections
research-article

Expressive and Efficient Model Transformation with an Internal DSL of Xtend

Published: 14 October 2018 Publication History

Abstract

Model transformation (MT) of very large models (VLMs), with millions of elements, is a challenging cornerstone for applying Model-Driven Engineering (MDE) technology in industry. Recent research efforts that tackle this problem have been directed at distributing MT on the Cloud, either directly, by managing clusters explicitly, or indirectly, via external NoSQL data stores. In this paper, we draw attention back to improving efficiency of model transformations that use EMF natively and that run on non-distributed environments, showing that substantial performance gains can still be reaped on that ground.
We present Yet Another Model Transformation Language (YAMTL), a new internal domain-specific language (DSL) of Xtend for defining declarative MT, and its execution engine. The part of the DSL for defining MT is similar to ATL in terms of expressiveness, including support for advanced modelling contructs, such as multiple rule inheritance and module composition. In addition, YAMTL provides support for specifying execution control strategies. We experimentally demonstrate that the presented transformation engine outperforms other representative MT engines by using the batch transformation component of the VIATRA CPS benchmark. The improvement is, at least, one order of magnitude over the up-to-now fastest solution in all of the assessed scenarios. The software artefacts accompanying this work have been approved by the artefact evaluation committee and are available at http://remodd.org/node/585.

References

[1]
C. Amelunxen, A. Königs, T. Rötschke, and A. Schürr. 2006. MOFLON: A Standard-Compliant Metamodeling Framework with Graph Transformations. In ECMDA-FA, Arend Rensink and Jos Warmer (Eds.), Vol. 4066. LNCS, 361--375.
[2]
Amine Benelallam, Abel Gómez, Massimo Tisi, and Jordi Cabot. 2015. Distributed Model-to-model Transformation with ATL on MapReduce. In SLE. ACM, 37--48.
[3]
Gábor Bergmann, István Dávid, Ábel Hegedüs, Ákos Horváth, István Ráth, Zoltán Ujhelyi, and Dániel Varró. 2015. Viatra 3: A Reactive Model Transformation Platform. In ICMT, Vol. 9152. LNCS, 101--110.
[4]
Gábor Bergmann, Ákos Horváth, István Ráth, Dániel Varró, András Balogh, Zoltán Balogh, and András Ökrös. 2010. Incremental Evaluation of Model Queries over EMF Models. In MoDELS, Vol. 6394. LNCS, 76--90.
[5]
Artur Boronat. 2018. ATL Batch M2M Transformation for the VIATRA CPS Benchmark. https://github.com/yamtl/viatra-cps-batch-benchmark/blob/master/m2m.batch.data/atlFiles/Cps2Dep.atl.
[6]
Artur Boronat. 2018. ATL Batch M2M Transformation for the VIATRA CPS Benchmark (variant with lazy rules). https://github.com/yamtl/viatra-cps-batch-benchmark/blob/master/m2m.batch.data/atlFiles/Cps2Dep_lazy.atl.
[7]
Artur Boronat. 2018. ATL2010 (EMFVM) Runner for Batch M2M Transformation for the VIATRA CPS Benchmark. https://github.com/yamtl/viatra-cps-batch-benchmark/tree/master/m2m.batch.cps2dep.atl2010.
[8]
Artur Boronat. 2018. ATL2010 (EMFVM) Runner for Batch M2M Transformation for the VIATRA CPS Benchmark (lazy variant). https://github.com/yamtl/viatra-cps-batch-benchmark/tree/master/m2m.batch.cps2dep.atl2010_lazy.
[9]
Artur Boronat. 2018. Discussion on the integration of the YAMTL solution into the VIATRA CPS Benchmark. https://github.com/viatra/viatra-cps-benchmark/issues/23.
[10]
Artur Boronat. 2018. EMFTVM Runner for Batch M2M Transformation for the VIATRA CPS Benchmark. https://github.com/yamtl/viatra-cps-batch-benchmark/tree/master/m2m.batch.cps2dep.emftvm.plugin.
[11]
Artur Boronat. 2018. Repository with Examples of YAMTL Model Transformations. https://github.com/yamtl/examples.
[12]
Artur Boronat. 2018. YAMTL Batch M2M Transformation for the VIATRA CPS Benchmark. https://github.com/yamtl/viatra-cps-batch-benchmark/tree/master/m2m.batch.cps2dep.yamtl#benchmark-cps2dep-variant-yamtl-batch.
[13]
Artur Boronat. 2018. YAMTL Evaluation Repository with the batch component of the VIATRA CPS Benchmark. https://github.com/yamtl/viatra-cps-batch-benchmark.
[14]
M. Clavel, F. Durán, S. Eker, J. Meseguer, P. Lincoln, N. Martí-Oliet, and C. Talcott. 2007. All About Maude. LNCS 4350.
[15]
Gwendal Daniel, Frédéric Jouault, Gerson Sunyé, and Jordi Cabot. 2017. Gremlin-ATL: A Scalable Model Transformation Framework. In ASE. IEEE Computer Society, 462--472.
[16]
Gwendal Daniel, Gerson Sunyé, Amine Benelallam, Massimo Tisi, Yoann Vernageau, Abel Gómez, and Jordi Cabot. 2017. NeoEMF: A multi-database model persistence framework for very large models. Sci. Comput. Program. 149 (2017), 9--14.
[17]
Javier Espinazo-Pagán, Jesús Sánchez Cuadrado, and Jesús García Molina. 2013. A repository for scalable model management. Software and System Modeling 14, 1 (2013), 219--239.
[18]
The Eclipse Foundation. 2018. Xtend (official web page). http://www.eclipse.org/xtend/.
[19]
EU FP7. 2018. The MONDO Project: Scalable Modelling and Model Management on the Cloud. http://www.mondo-project.org/.
[20]
Dénes Harmath and István Ráth. 2016. VIATRA/Query/FAQ: Performance optimization guidelines. https://wiki.eclipse.org/VIATRA/Query/FAQ#Performance_optimization_guidelines.
[21]
Georg Hinkel. 2015. Change Propagation in an Internal Model Transformation Language. In ICMT, Vol. 9152. LNCS, 3--17.
[22]
Georg Hinkel and Erik Burger. 2017. Change propagation and bidirectionality in internal transformation DSLs. Softw Syst Model (2017).
[23]
Georg Hinkel, Thomas Goldschmidt, Erik Burger, and Ralf Reussner. 2017. Using internal domain-specific languages to inherit tool support and modularity for model transformations. Soft. Syst. Model. (2017).
[24]
Edgar Jakumeit, Sebastian Buchwald, Dennis Wagelaar, Li Dan, Ábel Hegedüs, Markus Herrmannsdörfer, Tassilo Horn, Elina Kalnina, Christian Krause, Kevin Lano, Markus Lepper, Arend Rensink, Louis Rose, Sebastian Wätzoldt, and Steffen Mazanek. 2014. A survey and comparison of transformation tools based on the transformation tool contest. Science of Computer Programming 85 (2014), 41--99. Special issue on Experimental Software Engineering in the Cloud(ESEiC).
[25]
Frédéric Jouault, Freddy Allilaire, Jean Bézivin, and Ivan Kurtev. 2008. ATL: A model transformation tool. Sci. Comput. Program. 72, 1-2 (2008), 31--39.
[26]
Dimitrios S. Kolovos, Louis M. Rose, Nicholas Drivalos Matragkas, Richard F. Paige, Esther Guerra, Jesús Sánchez Cuadrado, Juan de Lara, István Ráth, Dániel Varró, Massimo Tisi, and Jordi Cabot. 2013. A research roadmap towards achieving scalability in model driven engineering. In BigMDE@STAF. 2.
[27]
Filip Krikava. 2015. Solving the TTC'15 Train Benchmark Case Study with SIGMA. In Transformation Tool Contest@STAF 2015 (CEUR Workshop Proceedings), Vol. 1524. 167--175.
[28]
Filip Krikava, Philippe Collet, and Robert B. France. 2014. Manipulating models using internal domain-specific languages. In Symposium on Applied Computing, SAC 2014, Gyeongju, Republic of Korea - March 24 - 28, 2014. 1612--1614.
[29]
Filip Krikava, Philippe Collet, and Robert B. France. 2014. SIGMA: Scala Internal Domain-Specific Languages for Model Manipulations. In MoDELS (LNCS), Vol. 8767. Springer, 569--585.
[30]
Salvador Martínez Perez, Massimo Tisi, and Rémi Douence. 2017. Reactive model transformation with ATL. Sci. Comput. Program. 136 (2017), 1--16.
[31]
David Steinberg, Frank Budinsky, Marcelo Paternostro, and Ed Merks. 2009. EMF: Eclipse Modeling Framework 2.0 (2nd ed.). Addison-Wesley Professional.
[32]
Gábor Szárnyas, Benedek Izsó, István Ráth, Dénes Harmath, Gábor Bergmann, and Dániel Varró. 2014. IncQuery-D: A Distributed Incremental Model Query Framework in the Cloud. In MoDELS, Vol. 8767. LNCS, 653--669.
[33]
Antero Taivalsaari. 1996. On the Notion of Inheritance. ACM Comput. Surv. 28, 3 (Sept. 1996), 438--479.
[34]
VIATRA Team. 2016. Simple Xtend and Query M2M Transformation. https://github.com/viatra/viatra-docs/blob/master/cps/Simple-Xtend-and-Query-M2M-transformation.adoc.
[35]
VIATRA Team. 2016. VIATRA CPS Benchmark (batch use case performance results). https://github.com/viatra/viatra-cps-benchmark/wiki/Performance-evaluation#runtime.
[36]
VIATRA Team. 2016. VIATRA CPS Benchmark (CPS to Deployment Transformation). https://github.com/viatra/viatra-docs/blob/master/cps/CPS-to-Deployment-Transformaton.adoc.
[37]
VIATRA Team. 2016. VIATRA CPS Benchmark (model generator). https://github.com/viatra/viatra-docs/blob/master/cps/Model-Generator.adoc.
[38]
VIATRA Team. 2016. VIATRA CPS Benchmark (scenario specification). https://github.com/viatra/viatra-cps-benchmark/wiki/Benchmark-specification#cases.
[39]
VIATRA Team. 2016. Xtend Optimized Batch M2M Transformation. https://github.com/viatra/viatra-docs/blob/master/cps/Simple-and-optimized-Xtend-batch-M2M-transformation.adoc/#optimized-batch-m2m-transformation.
[40]
Massimo Tisi, Salvador Martínez Perez, and Hassene Choura. 2013. Parallel Execution of ATL Transformation Rules. In MODELS (LNCS), Vol. 8107. Springer, 656--672.
[41]
Zoltán Ujhelyi, Gábor Bergmann, Ábel Hegedüs, Ákos Horváth, Benedek Izsó, István Ráth, Zoltán Szatmári, and Dániel Varró. 2015. EMF-IncQuery: An integrated development environment for live model queries. Sci. Comput. Program. 98 (2015), 80--99.
[42]
Zoltán Ujhelyi, Gábor Sz oke, Ákos Horváth, Norbert István Csiszár, László Vidács, Dániel Varró, and Rudolf Ferenc. 2015. Performance comparison of query-based techniques for anti-pattern detection. Information and Software Technology 65 (2015), 147 -- 165.
[43]
Dániel Varró, Gábor Bergmann, Ábel Hegedüs, Ákos Horváth, István Ráth, and Zoltán Ujhelyi. 2016. Road to a reactive and incremental model transformation platform: three generations of the VIATRA framework. Software & Systems Modeling 15, 3 (Jul 2016), 609--629.
[44]
Dániel Varró and András Pataricza. 2002. Metamodeling Mathematics: A Precise and Visual Framework for Describing Semantics Domains of UML Models. In UML, Vol. 2460. LNCS, Berlin, Heidelberg, 18--33.
[45]
Gergely Varró, Frederik Deckwerth, Martin Wieber, and Andy Schürr. 2015. An algorithm for generating model-sensitive search plans for pattern matching on EMF models. Software & Systems Modeling 14, 2 (May 2015), 597--621.
[46]
Dennis Wagelaar, Massimo Tisi, Jordi Cabot, and Frédéric Jouault. 2011. Towards a General Composition Semantics for Rule-Based Model Transformation. In MoDELS, Vol. 6981. LNCS, 623--637.
[47]
Edward D. Willink. 2017. The Micromapping Model of Computation; The Foundation for Optimized Execution of Eclipse QVTc/QVTr/UMLX. In ICMT, Vol. 10374. LNCS, 51--65.
[48]
Manuel Wimmer, Gerti Kappel, Angelika Kusel, Werner Retschitzegger, Johannes Schönböck, Wieland Schwinger, Dimitris S. Kolovos, Richard F. Paige, Marius Lauder, Andy Schürr, and Dennis Wagelaar. 2012. Surveying Rule Inheritance in Model-to-Model Transformation Languages. Journal of Object Technology 11, 2 (2012), 3: 1--46.

Cited By

View all
  • (2024)Enhanced performance prediction of ATL model transformationsPerformance Evaluation10.1016/j.peva.2024.102413164:COnline publication date: 1-May-2024
  • (2023)Predicting the Performance of ATL Model TransformationsProceedings of the 2023 ACM/SPEC International Conference on Performance Engineering10.1145/3578244.3583727(77-89)Online publication date: 15-Apr-2023
  • (2023)MoTrans-BDI: Leveraging the Beliefs-Desires-Intentions agent architecture for collaborative model transformation by exampleJournal of Computer Languages10.1016/j.cola.2022.10117474(101174)Online publication date: Jan-2023
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Conferences
MODELS '18: Proceedings of the 21th ACM/IEEE International Conference on Model Driven Engineering Languages and Systems
October 2018
478 pages
ISBN:9781450349499
DOI:10.1145/3239372
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 14 October 2018

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. ATL
  2. EMF
  3. Expressiveness
  4. Model transformation
  5. Performance

Qualifiers

  • Research-article
  • Research
  • Refereed limited

Conference

MODELS '18
Sponsor:

Acceptance Rates

MODELS '18 Paper Acceptance Rate 29 of 101 submissions, 29%;
Overall Acceptance Rate 144 of 506 submissions, 28%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)12
  • Downloads (Last 6 weeks)1
Reflects downloads up to 25 Nov 2024

Other Metrics

Citations

Cited By

View all
  • (2024)Enhanced performance prediction of ATL model transformationsPerformance Evaluation10.1016/j.peva.2024.102413164:COnline publication date: 1-May-2024
  • (2023)Predicting the Performance of ATL Model TransformationsProceedings of the 2023 ACM/SPEC International Conference on Performance Engineering10.1145/3578244.3583727(77-89)Online publication date: 15-Apr-2023
  • (2023)MoTrans-BDI: Leveraging the Beliefs-Desires-Intentions agent architecture for collaborative model transformation by exampleJournal of Computer Languages10.1016/j.cola.2022.10117474(101174)Online publication date: Jan-2023
  • (2023)EMF-Syncer: scalable maintenance of view models over heterogeneous data-centric software systems at run timeSoftware and Systems Modeling10.1007/s10270-023-01111-722:6(1949-1968)Online publication date: 12-Jun-2023
  • (2022)A benchmark of incremental model transformation tools based on an industrial case study with AADLSoftware and Systems Modeling10.1007/s10270-022-00989-z22:1(175-201)Online publication date: 19-Mar-2022
  • (2021)Contrasting dedicated model transformation languages versus general purpose languages: a historical perspective on ATL versus Java based on complexity and sizeSoftware and Systems Modeling10.1007/s10270-021-00937-321:2(805-837)Online publication date: 17-Nov-2021
  • (2021)A cross-technology benchmark for incremental graph queriesSoftware and Systems Modeling10.1007/s10270-021-00927-521:2(755-804)Online publication date: 8-Dec-2021
  • (2020)An exploratory study on performance engineering in model transformationsProceedings of the 23rd ACM/IEEE International Conference on Model Driven Engineering Languages and Systems10.1145/3365438.3410950(308-319)Online publication date: 16-Oct-2020
  • (2020)Incremental execution of rule-based model transformationInternational Journal on Software Tools for Technology Transfer10.1007/s10009-020-00583-yOnline publication date: 5-Sep-2020
  • (2019)User-centered performance engineering of model transformationsProceedings of the 22nd International Conference on Model Driven Engineering Languages and Systems10.1109/MODELS-C.2019.00097(635-641)Online publication date: 15-Sep-2019
  • Show More Cited By

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media