Abstract
Model transformations (MTs) are essential elements of model-driven engineering (MDE) solutions. MDE promotes the creation of domain-specific metamodels, but without proper reuse mechanisms, MTs need to be developed from scratch for each new metamodel. In this paper, we classify reuse approaches for MTs across different metamodels and compare a sample of specific approaches – model types, concepts, a-posteriori typing, multilevel modeling, and design patterns for MTs – with the help of a feature model developed for this purpose, as well as a common example. We discuss strengths and weaknesses of each approach, provide a reading grid used to compare their features, and identify gaps in current reuse approaches.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
References
Krueger, C.W.: Software reuse. ACM Comput. Surv. 24(2), 131–183 (1992)
Kusel, A., et al.: Reuse in model-to-model transformation languages: are we there yet? SoSyM 14(2), 537–572 (2015)
Steel, J., Jézéquel, J.M.: On model typing. SoSyM 6(4), 401–414 (2007)
Guy, C., Combemale, B., Derrien, S., Steel, J.R.H., Jézéquel, J.-M.: On model subtyping. In: Vallecillo, A., Tolvanen, J.-P., Kindler, E., Störrle, H., Kolovos, D. (eds.) ECMFA 2012. LNCS, vol. 7349, pp. 400–415. Springer, Heidelberg (2012). https://doi.org/10.1007/978-3-642-31491-9_30
de Lara, J., Guerra, E.: From types to type requirements: genericity for model-driven engineering. SoSyM 12(3), 453–474 (2013)
Cuadrado, J.S., Guerra, E., de Lara, J.: A component model for model transformations. IEEE Trans. Softw. Eng. 40(11), 1042–1060 (2014)
de Lara, J., Guerra, E.: A posteriori typing for model-driven engineering: concepts, analysis, and applications. ACM TOSEM 25(4), 31:1–31:60 (2017)
de Lara, J., Guerra, E., Cuadrado, J.S.: Model-driven engineering with domain-specific meta-modelling languages. SoSyM 14(1), 429–459 (2015)
Ergin, H., Syriani, E., Gray, J.: Design pattern oriented development of model transformations. Comput. Lang. Syst. Struct. 46, 106–139 (2016)
Jouault, F., Allilaire, F., Bézivin, J., Kurtev, I.: ATL: a model transformation tool. Sci. Comput. Programm. 72(1–2), 31–39 (2008)
Kolovos, D.S., Paige, R.F., Polack, F.A.C.: The epsilon transformation language. In: Vallecillo, A., Gray, J., Pierantonio, A. (eds.) ICMT 2008. LNCS, vol. 5063, pp. 46–60. Springer, Heidelberg (2008). https://doi.org/10.1007/978-3-540-69927-9_4
Jézéquel, J.-M., Barais, O., Fleurey, F.: Model driven language engineering with kermeta. In: Fernandes, J.M., Lämmel, R., Visser, J., Saraiva, J. (eds.) GTTSE 2009. LNCS, vol. 6491, pp. 201–221. Springer, Heidelberg (2011). https://doi.org/10.1007/978-3-642-18023-1_5
Juergens, E., Deissenboeck, F., Hummel, B., Wagner, S.: Do code clones matter? In: ICSE, IEEE Computer Society, pp. 485–495 (2009)
Wimmer, M., Kappel, G., Kusel, A., Retschitzegger, W., Schoenboeck, J., Schwinger, W.: Surviving the heterogeneity jungle with composite mapping operators. In: Tratt, L., Gogolla, M. (eds.) ICMT 2010. LNCS, vol. 6142, pp. 260–275. Springer, Heidelberg (2010). https://doi.org/10.1007/978-3-642-13688-7_18
de Lara, J., Di Rocco, J., Di Ruscio, D., Guerra, E., Iovino, L., Pierantonio, A., Cuadrado, J.S.: Reusing model transformations through typing requirements models. In: Huisman, M., Rubin, J. (eds.) FASE 2017. LNCS, vol. 10202, pp. 264–282. Springer, Heidelberg (2017). https://doi.org/10.1007/978-3-662-54494-5_15
Varró, D., Pataricza, A.: Generic and meta-transformations for model transformation engineering. In: Baar, T., Strohmeier, A., Moreira, A., Mellor, S.J. (eds.) UML 2004. LNCS, vol. 3273, pp. 290–304. Springer, Heidelberg (2004). https://doi.org/10.1007/978-3-540-30187-5_21
Zschaler, S.: Towards constraint-based model types: a generalised formal foundation for model genericity. In: VAO@STAF, pp. 11–18. ACM (2014)
Sánchez Cuadrado, J., Guerra, E., de Lara, J.: Reverse engineering of model transformations for Reusability. In: Di Ruscio, D., Varró, D. (eds.) ICMT 2014. LNCS, vol. 8568, pp. 186–201. Springer, Cham (2014). https://doi.org/10.1007/978-3-319-08789-4_14
Diskin, Z., Maibaum, T., Czarnecki, K.: Intermodeling, queries, and Kleisli categories. In: de Lara, J., Zisman, A. (eds.) FASE 2012. LNCS, vol. 7212, pp. 163–177. Springer, Heidelberg (2012). https://doi.org/10.1007/978-3-642-28872-2_12
Salay, R., Zschaler, S., Chechik, M.: Correct reuse of transformations is hard to guarantee. In: Van Van Gorp, P., Engels, G. (eds.) ICMT 2016. LNCS, vol. 9765, pp. 107–122. Springer, Cham (2016). https://doi.org/10.1007/978-3-319-42064-6_8
Sun, W., Combemale, B., Derrien, S., France, R.B.: Using model types to support contract-aware model substitutability. In: Van Gorp, P., Ritter, T., Rose, L.M. (eds.) ECMFA 2013. LNCS, vol. 7949, pp. 118–133. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-39013-5_9
Degueule, T., Combemale, B., Blouin, A., Barais, O., Jézéquel, J.M.: Melange: a meta-language for modular and reusable development of DSLs. In: SLE, pp. 25–36. ACM (2015)
Atkinson, C., Kühne, T.: Rearchitecting the UML infrastructure. ACM Trans. Model. Comput. Simul. 12(4), 290–321 (2002)
Lúcio, L., Amrani, M., Dingel, J., Lambers, L., Salay, R., Selim, G.M., Syriani, E., Wimmer, M.: Model transformation intents and their properties. SoSyM 15(3), 685–705 (2014)
Etien, A., Muller, A., Legrand, T., Paige, R.F.: Localized model transformations for building large-scale transformations. SoSyM 14(3), 1189–1213 (2015)
Morin, B., Klein, J., Kienzle, J., Jézéquel, J.-M.: Flexible model element introduction policies for aspect-oriented modeling. In: Petriu, D.C., Rouquette, N., Haugen, Ø. (eds.) MODELS 2010. LNCS, vol. 6395, pp. 63–77. Springer, Heidelberg (2010). https://doi.org/10.1007/978-3-642-16129-2_6
Sánchez Cuadrado, J., García Molina, J.: Approaches for model transformation reuse: factorization and composition. In: Vallecillo, A., Gray, J., Pierantonio, A. (eds.) ICMT 2008. LNCS, vol. 5063, pp. 168–182. Springer, Heidelberg (2008). https://doi.org/10.1007/978-3-540-69927-9_12
Kleppe, A.: MCC: a model transformation environment. In: Rensink, A., Warmer, J. (eds.) ECMDA-FA 2006. LNCS, vol. 4066, pp. 173–187. Springer, Heidelberg (2006). https://doi.org/10.1007/11787044_14
Sutîi, A., van den Brand, M., Verhoeff, T.: Exploration of modularity and reusability of domain-specific languages: an expression DSL in metamod. Comput. Lang. Syst. Struct. 51, 48–70 (2018)
Strüber, D., Rubin, J., Arendt, T., Chechik, M., Taentzer, G., Plöger, J.: Variability-based model transformation: formal foundation and application. Formal Asp. Comput. 30(1), 133–162 (2018)
Wagelaar, D., Straeten, R.V.D., Deridder, D.: Module superimposition: a composition technique for rule-based model transformation languages. SoSyM 9(3), 285–309 (2010)
Wimmer, M., et al.: Surveying rule inheritance in model-to-model transformation languages. JOT 11(2), 3:1–3:46 (2012)
Czarnecki, K., Helsen, S.: Feature-based survey of model transformation approaches. IBM Syst. J. 45(3), 621–645 (2006)
Kahani, N., Bagherzadeh, M., R. Cordy, J., Dingel, J., Varro, D.: Survey and classification of model transformation tools. In: SoSyM (2018, in press)
Mengerink, J., Serebrenik, A., Schiffelers, R.R.H., van den Brand, M.G.J.: Automated analyses of model-driven artifacts: obtaining insights into industrial application of MDE. In: IWSM-Mensura, pp. 116–121. ACM (2017)
Acknowledgements
Work partially supported by the Spanish MINECO (TIN2014-52129-R), the R&D programme of the Madrid Region (S2013/ICE-3006), the Safran/Inria/CNRS collaboration GLOSE, and the Inria/CWI Associated Team ALE.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2018 Springer International Publishing AG, part of Springer Nature
About this paper
Cite this paper
Bruel, JM. et al. (2018). Model Transformation Reuse Across Metamodels. In: Rensink, A., Sánchez Cuadrado, J. (eds) Theory and Practice of Model Transformation. ICMT 2018. Lecture Notes in Computer Science(), vol 10888. Springer, Cham. https://doi.org/10.1007/978-3-319-93317-7_4
Download citation
DOI: https://doi.org/10.1007/978-3-319-93317-7_4
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-93316-0
Online ISBN: 978-3-319-93317-7
eBook Packages: Computer ScienceComputer Science (R0)