cally, only objects whose classes are related using M
2
-
mappings may safely be related using M
1
-mappings.
Another approach utilising higher-order transfor-
mations is discussed in (Hoisl et al., 2014). The ap-
proach is based on defining bi-directional transforma-
tions between modelling artefacts, and uses higher-
order transformations on the specifications of the bi-
directional transformations. This ensures that also the
transformations between the modelling artefacts co-
evolve correctly.
An approach for defining reusable metamodel be-
haviour is discussed in (de Lara and Guerra, 2011).
The approach is based on generic concepts which al-
low adding the same behaviour to unrelated meta-
models. This is achieved by using pattern matching
according to the parameters and requirements of the
concept. A similar approach, in the form of model
types, is discussed in (Steel and Jzquel, 2007).
7 CONCLUSION AND FUTURE
WORK
Composition mechanisms that work on both the meta-
model and model level are important to ensure consis-
tency in the metamodelling ecosystem. In this paper,
we have illustrated how metamodels and models can
be composed in a practically non-intrusive manner in
order for their operational semantics to be linked to-
gether. Non-intrusive composition is achieved by util-
ising a set of mappings, both at the metamodel level
and at the model level. By building on the principle
of partial representation we are able to specify proxy
classes. A proxy class is a placeholder for another
class. Its attributes and operations represent structural
requirements that need to be supported by the class for
which the proxy class is a placeholder. Non-intrusive
composition allows for metamodels and models to
be composed without rendering models, editors and
other modelling artefacts invalid.
An interesting next step is to see whether the map-
pings may be realised in a different form and incorpo-
rated more closely into a language’s definition, and to
study whether non-intrusive composition brings value
also for non-executable models. Future work also
includes solidification of the framework to industry
standard, with the inclusion of a graphical editor.
REFERENCES
Cicchetti, A., D. Ruscio, D., Eramo, R., and Pierantonio,
A. (2008a). Automating co-evolution in model-driven
engineering. In Enterprise Distributed Object Com-
puting Conference (2008).
Cicchetti, A., D. Ruscio, D., Eramo, R., and Pierantonio,
A. (2008b). Meta-model differences for supporting
model co-evolution. In Proceedings of the 2nd Work-
shop on Model-Driven Software Evolution.
de Lara, J. and Guerra, E. (2011). From types to type re-
quirements: Genericity for model-driven engineering.
In Software and Systems Modeling. Springer (2011).
Demuth, A., Lopez-Herrejon, R., and Egyed, A. (2013).
Supporting the co-evolution of metamodels and con-
straints through incremental constraint management.
In Model Driven Engineering Languages and Sys-
tems, LNCS vol. 8107, pp.287-303. Springer (2013).
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).
EMF (2014). Eclipse modeling framework (emf).
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).
Garca, J., Diaz, O., and Azanza, M. (2013). Model trans-
formation co-evolution: A semi-automatic approach.
In Software Language Engineering, LNCS vol. 7745,
pp.144-163. Springer (2013).
Groher, I. and Voelter, M. (2007). Xweave - models and
aspects in concert. In 10th international workshop on
Aspect-Oriented Modeling (AOM ’07) pp.35-40. ACM
Press (2007).
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).
Herrmannsdoerfer, M., D. Vermolen, S., and Wachsmuth,
G. (2011). An extensive catalog of operators for the
coupled evolution of metamodels and models. In Soft-
ware Language Engineering, LNCS vol. 6563, pp.163-
182. Springer (2011).
Hoisl, B., Hu, Z., and Hidaka, S. (2014). Towards co-
evolution in model-driven development via bidirec-
tional higher-order transformation. In Proceedings
of the 2nd International Conference on Model-Driven
Engineering and Software Development. Springer
(2014) [to appear].
Kolovos, D. S., Paige, R. F., and Polack, F. A. (2006). Merg-
ing models with the epsilon merging language (eml).
In Model Driven Engineering Languages and Sys-
tems, LNCS vol. 4199, pp.215-229. Springer (2006).
Morin, B., Perrouin, G., Lahire, P., Barais, O., Van-
wormhoudt, G., and Jzquel, J.-M. (2009). Weav-
ing variability into domain metamodels. In Model
Driven Engineering Languages and Systems, LNCS
vol. 5795, pp.690-705. Springer (2009).
Muller, P.-A., Fleurey, F., and Jzquel, J.-M. (2005). Weav-
ing executability into object-oriented meta-languages.
MODELSWARD2015-3rdInternationalConferenceonModel-DrivenEngineeringandSoftwareDevelopment
120