Abstract
Composition of models is a key operation in model-driven engineering where it is used for, e.g., elaborating models with additional concepts, acquiring a holistic system view, or making model variants. However, there are few state-of-the-art composition mechanisms that support type-safe symmetric composition of metamodels and their behavioural semantics. This hampers the flexible customisation and reuse of metamodels in model-driven engineering approaches. This paper presents a new mechanism for composing metamodels by defining metamodels as reusable templates. Composition of metamodels is achieved using template instantiations that allow customising the metamodel classes as part of the composition process. The work includes a prototypical metamodel composition tool that supports the ideas presented. The result is an approach for composing metamodels in a type-safe manner, where name conflict resolution, composition of behavioural semantics and reuse of tools are supported.
Access provided by Autonomous University of Puebla. Download to read the full chapter text
Chapter PDF
Similar content being viewed by others
Keywords
References
Kent, S.: Model Driven Engineering. In: Butler, M., Petre, L., Sere, K. (eds.) IFM 2002. LNCS, vol. 2335, pp. 286–298. Springer, Heidelberg (2002)
Fleurey, F., Baudry, B., France, R., Ghosh, S.: A Generic Approach for Automatic Model Composition. In: Giese, H. (ed.) MODELS 2008. LNCS, vol. 5002, pp. 7–15. Springer, Heidelberg (2008)
Groher, I., Voelter, M.: XWeave – Models and Aspects in Concert. In: 10th International Workshop on Aspect-Oriented Modeling (AOM 2007), pp. 35–40. ACM Press (2007)
Didonet Del Fabro, M., Bézivin, J., Valduriez, P.: Weaving Models with the Eclipse AMW plugin. In: Eclipse Modeling Symposium, Eclipse Summit Europe 2006 (2006), http://ssei.pbworks.com/f/Del+Fabro.Weaving+Models+with+the+Eclipse+AMW+plugin.pdf
Kolovos, D.S., Paige, R.F., Polack, F.A.C.: Merging Models with the Epsilon Merging Language (EML). In: Wang, J., Whittle, J., Harel, D., Reggio, G. (eds.) MoDELS 2006. LNCS, vol. 4199, pp. 215–229. Springer, Heidelberg (2006)
Morin, B., Perrouin, G., Lahire, P., Barais, O., Vanwormhoudt, G., Jézéquel, J.-M.: Weaving Variability into Domain Metamodels. In: Schürr, A., Selic, B. (eds.) MODELS 2009. LNCS, vol. 5795, pp. 690–705. Springer, Heidelberg (2009)
Morin, B., Klein, J., Barais, O.: A Generic Weaver for Supporting Product Lines. In: 13th International Workshop on Early Aspects (EA 2008), pp. 11–18. ACM Press (2008)
Kramer, M.E., Klein, J., Steel, J.R.H., Morin, B., Kienzle, J., Barais, O., Jézéquel, J.-M.: On the Formalisation of GeKo: a Generic Aspect Models Weaver. Technical Report, University of Luxembourg (2012) ISBN: 978-2-87971-110-2
Kienzle, J., Al Abed, W., Klein, J.: Aspect-Oriented Multi-View Modeling. In: 8th ACM International Conference on Aspect-Oriented Software Development (AOSD 2009), pp. 87–98. ACM Press (2009)
Krogdahl, S., Møller-Pedersen, B., Sørensen, F.: Exploring the use of Package Templates for flexible re-use of Collections of related Classes. Journal of Object Technology 8(7) (2005), http://www.jot.fm/issues/issue_2009_11/article1/
Sørensen, F., Axelsen, E.W., Krogdahl, S.: Reuse and Combination with Package Templates. In: 4th Workshop on MechAnisms for SPEcialization, Generalization and InHeritance (MASPEGHI 2010), Article 3. ACM Press (2010)
Axelsen, E.W., Sørensen, F., Krogdahl, S., Møller-Pedersen, B.: Challenges in the Design of the Package Template Mechanism. In: Leavens, G.T., Chiba, S., Haupt, M., Ostermann, K., Wohlstadter, E. (eds.) Transactions on AOSD IX. LNCS, vol. 7271, pp. 268–305. Springer, Heidelberg (2012)
The Eclipse Foundation: Eclipse Modeling Framework, http://www.eclipse.org/modeling/emf
Object Management Group: Meta Object Facility (MOF) Core Specification, http://www.omg.org/mof
Muller, P.-A., Fleurey, F., Jézéquel, J.-M.: Weaving Executability into Object-Oriented Meta-languages. In: Briand, L.C., Williams, C. (eds.) MoDELS 2005. LNCS, vol. 3713, pp. 264–278. Springer, Heidelberg (2005)
Tolvanen, J.-P., Kelly, S.: MetaEdit+ – Defining and Using Integrated Domain-Specific Modeling Languages. In: 18th Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, & Applications (OOPSLA 2003), pp. 92–93. ACM Press (2003)
Institute for Software Integrated Systems: GME – Generic Modeling Environment, http://www.isis.vanderbilt.edu/projects/gme
Clark, T., Evans, A., Kent, S.: Aspect-Oriented Metamodelling. The Computer Journal 46(5), 566–577 (2003)
Cho, H., Gray, J.: Design Patterns for Metamodels. In: SPLASH 2011 Workshops Proceedings, pp. 25–32. ACM Press (2011)
Axelsen, E.W., Krogdahl, S.: Package Templates: A Definition by Semantics-Preserving Source-to-Source Transformations to Efficient Java Code. In: 11th International Conference on Generative Programming and Component Engineering (GPCE 2012), pp. 50–59. ACM Press (2012)
Reiter, T., Kapsammer, E., Retschitzegger, W., Schwinger, W.: Model Integration through Mega Operations. In: Proceedings of the Workshop on Model-Driven Web Engineering (MDWE 2005) (2005), http://www.lcc.uma.es/~av/mdwe2005/camera-ready/3-MDWE2005_MegaOperations_CameraReady.pdf
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2013 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Berg, H., Møller-Pedersen, B. (2013). Type-Safe Symmetric Composition of Metamodels Using Templates. In: Haugen, Ø., Reed, R., Gotzhein, R. (eds) System Analysis and Modeling: Theory and Practice. SAM 2012. Lecture Notes in Computer Science, vol 7744. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-36757-1_10
Download citation
DOI: https://doi.org/10.1007/978-3-642-36757-1_10
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-36756-4
Online ISBN: 978-3-642-36757-1
eBook Packages: Computer ScienceComputer Science (R0)