From UML Profiles to EMF Profiles and Beyond
Domain-Specific Modeling Languages (DSMLs) are getting more and more attention as a key element of Model Driven Engineering. As any other software artefact, DSMLs should continuously evolve to adapt to the changing needs of the domain they represent. Unfortunately, right now evolution of DSMLs is a costly process that requires changing its metamodel and re-creating the complete modeling environment.
In this paper we advocate for the use of EMF Profiles, an adaptation of the UML profile concept to DSMLs. Profiles have been a key enabler for the success of UML by providing a lightweight language-inherent extension mechanism which is expressive enough to cover an important subset of adaptation scenarios. We believe a similar concept for DSMLs would provide an easier extension mechanism which has been so far neglected by current metamodeling tools. Apart from direct metamodel profiles, we also propose reusable profile definition mechanisms whereby profiles are defined independently of any DSML and, later on, coupled with all DSMLs that can benefit from these profiles. Our approach has been implemented in a prototype integrated in the EMF environment.
Keywordslanguage extensions UML profiles language engineering
Unable to display preview. Download preview PDF.
- 3.Bruneliere, H., Cabot, J., Jouault, F., Madiot, F.: MoDisco: a generic and extensible framework for model driven reverse engineering. In: Automated Software Engineering (ASE 2010), pp. 173–174. ACM Press, New York (2010)Google Scholar
- 5.Clark, T., Evans, A., Sammut, P., Willans, J.: Applied Metamodelling, A Foundation for Language Driven Development (2004), http://www.ceteva.com
- 6.Del Fabro, M.D., Bézivin, J., Jouault, F., Breton, E., Gueltas, G.: AMW: a generic model weaver. In: Journe sur l’ Ingnierie Dirige par les Modles, IDM 2005 (2005)Google Scholar
- 7.Kelly, S., Tolvanen, J.-P.: Domain-Specific Modeling: Enabling Full Code Generation. Wiley-IEEE Computer Society Press (2008) (2008)Google Scholar
- 12.Object Management Group (OMG): Meta Object Facility, Version 2.0 (2006), http://www.omg.org/spec/MOF/2.0/PDF/
- 13.Object Management Group (OMG): Unified Modeling Language Infrastructure Specification, Version 2.1.2 (2007), http://www.omg.org/spec/UML/2.1.2/Infrastructure/PDF