Towards Non-intrusive Composition of Executable Models

Henning Berg, Birger Møller-Pedersen

Abstract

An essential operation in model-driven engineering is composition of models and their metamodels. There exist several mechanisms for model composition. However, most of these only consider composition of either models or metamodels and not both kinds of models simultaneously, and do not address how the composition impacts modelling artefacts like editors, transformations and semantics. Moreover, model composition mechanisms typically deal with model structure and do not consider operational semantics. In this paper, we discuss a novel approach for the composition of both models and metamodels in a virtually non-intrusive manner. We achieve this by utilising a placeholder mechanism where classes in one metamodel may represent classes of another. The ideas presented have been validated by the construction of a framework. We will illustrate how non-intrusive composition allows linking the operational semantics of different languages without rendering existing modelling artefacts inconsistent. This increases the flexibility in how languages can be combined, and reduces the amount of necessary changes of tools and other modelling utilities.

References

  1. Cicchetti, A., D. Ruscio, D., Eramo, R., and Pierantonio, A. (2008a). Automating co-evolution in model-driven engineering. In Enterprise Distributed Object Computing Conference (2008).
  2. Cicchetti, A., D. Ruscio, D., Eramo, R., and Pierantonio, A. (2008b). Meta-model differences for supporting model co-evolution. In Proceedings of the 2nd Workshop on Model-Driven Software Evolution.
  3. de Lara, J. and Guerra, E. (2011). From types to type requirements: Genericity for model-driven engineering. In Software and Systems Modeling. Springer (2011).
  4. Demuth, A., Lopez-Herrejon, R., and Egyed, A. (2013). Supporting the co-evolution of metamodels and constraints through incremental constraint management. In Model Driven Engineering Languages and Systems, LNCS vol. 8107, pp.287-303. Springer (2013).
  5. Di Ruscio, D., Iovino, L., and Pierantonio, A. (2012). Evolutionary togetherness: How to manage coupled evolution in metamodeling ecosystems. In Graph Transformations, LNCS vol. 7562, pp.20-37. Springer (2012).
  6. EMF (2014). Eclipse modeling framework (emf).
  7. Fleurey, F., Baudry, B., France, R., and Ghosh, S. (2008). A generic approach for automatic model composition. In Models in Software Engineering, LNCS vol. 5002, pp.7-15. Springer (2008).
  8. Garca, J., Diaz, O., and Azanza, M. (2013). Model transformation co-evolution: A semi-automatic approach. In Software Language Engineering, LNCS vol. 7745, pp.144-163. Springer (2013).
  9. Groher, I. and Voelter, M. (2007). Xweave - models and aspects in concert. In 10th International Workshop on Aspect-Oriented Modeling (AOM 7807) pp.35-40. ACM Press (2007).
  10. Herrmannsdoerfer, M., Benz, S., and Juergens, E. (2009). Cope: Coupled evolution of metamodels and models for the eclipse modeling framework. In ECOOP 2009 - Object-Oriented Programming, LNCS vol. 5653, pp.52-76. Springer (2009).
  11. Herrmannsdoerfer, M., D. Vermolen, S., and Wachsmuth, G. (2011). An extensive catalog of operators for the coupled evolution of metamodels and models. In Software Language Engineering, LNCS vol. 6563, pp.163- 182. Springer (2011).
  12. Hoisl, B., Hu, Z., and Hidaka, S. (2014). Towards coevolution in model-driven development via bidirectional higher-order transformation. In Proceedings of the 2nd International Conference on Model-Driven Engineering and Software Development. Springer (2014) [to appear].
  13. Kolovos, D. S., Paige, R. F., and Polack, F. A. (2006). Merging models with the epsilon merging language (eml). In Model Driven Engineering Languages and Systems, LNCS vol. 4199, pp.215-229. Springer (2006).
  14. Morin, B., Perrouin, G., Lahire, P., Barais, O., Vanwormhoudt, G., and Jzquel, J.-M. (2009). Weaving variability into domain metamodels. In Model Driven Engineering Languages and Systems, LNCS vol. 5795, pp.690-705. Springer (2009).
  15. Muller, P.-A., Fleurey, F., and Jzquel, J.-M. (2005). Weaving executability into object-oriented meta-languages. In Model Driven Engineering Languages and Systems, LNCS vol. 3173, pp.264-278. Springer (2005).
  16. OMG (2014). Meta object facility (mof) core specification.
  17. Steel, J. and Jzquel, J.-M. (2007). On model typing. In Software and Systems Modeling, vol. 6, no. 4, pp.401- 413. Springer (2007).
  18. Wachsmuth, G. (2007). Metamodel adaptation and model co-adaptation. In ECOOP 2007 - Object-Oriented Programming, LNCS vol. 4609, pp.600-624. Springer (2007).
Download


Paper Citation


in Harvard Style

Berg H. and Møller-Pedersen B. (2015). Towards Non-intrusive Composition of Executable Models . In Proceedings of the 3rd International Conference on Model-Driven Engineering and Software Development - Volume 1: MODELSWARD, ISBN 978-989-758-083-3, pages 111-121. DOI: 10.5220/0005242401110121


in Bibtex Style

@conference{modelsward15,
author={Henning Berg and Birger Møller-Pedersen},
title={Towards Non-intrusive Composition of Executable Models},
booktitle={Proceedings of the 3rd International Conference on Model-Driven Engineering and Software Development - Volume 1: MODELSWARD,},
year={2015},
pages={111-121},
publisher={SciTePress},
organization={INSTICC},
doi={10.5220/0005242401110121},
isbn={978-989-758-083-3},
}


in EndNote Style

TY - CONF
JO - Proceedings of the 3rd International Conference on Model-Driven Engineering and Software Development - Volume 1: MODELSWARD,
TI - Towards Non-intrusive Composition of Executable Models
SN - 978-989-758-083-3
AU - Berg H.
AU - Møller-Pedersen B.
PY - 2015
SP - 111
EP - 121
DO - 10.5220/0005242401110121