fUML as an Assembly Language for Model Transformation
Within a given modeling platform, modeling tools, such as model editors and transformation engines, interoperate efficiently. They are generally written in the same general-purpose language, and use a single modeling framework (i.e., an API to access models). However, interoperability between tools from different modeling platforms is much more problematic.
In this paper, we propose to leverage fUML in order to address this issue by providing a common execution language. Modeling frameworks can then be abstracted into generic actions that perform elementary operations on models. Not only can user models benefit from a unified execution semantics, but modeling tools can too.
We support this proposal by showing how it can apply to a model transformation engine. To this end, a prototype compiler from ATL to fUML has been built, and is described. Finally, we conclude that fUML has some useful properties as candidate common execution language for MDE, but lacks some features.
KeywordsVirtual Machine Model Transformation Object Constraint Language Assembly Language Object Management Group
Unable to display preview. Download preview PDF.
- 1.Steinberg, D., Budinsky, F., Merks, E., Paternostro, M.: EMF: Eclipse Modeling Framework. Pearson Education (2008)Google Scholar
- 2.Gronback, R.C.: Eclipse Modeling Project: A Domain-Specific Language (DSL) Toolkit. Eclipse Series. Pearson Education (2009)Google Scholar
- 3.Object Management Group (OMG): XML Metadata Interchange (XMI), v2.4.2 (April 2014), http://www.omg.org/spec/XMI/2.4.2/
- 4.Object Management Group (OMG): Object Constraint Language (OCL), v2.4 (February 2014), http://www.omg.org/spec/OCL/2.4/
- 5.Object Management Group (OMG): Semantics of a Foundational Subset for Executable UML Models (fUML), v1.1 (August 2013), http://www.omg.org/spec/FUML/1.1/
- 6.Jouault, F., Tisi, M., Delatour, J.: fUML as an Assembly Language for MDA. In: Modeling in Software Engineering Workshop at ICSE 2014 (2014)Google Scholar
- 9.Object Management Group (OMG): MOF Model To Text Transformation Language (MOFM2T), 1.0 (January 2008), http://www.omg.org/spec/MOFM2T/1.0/
- 10.Object Management Group (OMG): Meta Object Facility (MOF) 2.0 Query/View/Transformation, V1.2 (Beta), http://www.omg.org/spec/QVT/1.2/ (May 2014)
- 11.Object Management Group (OMG): Concrete Syntax For A UML Action Language: Action Language For Foundational UML (ALF), v1.0.1, http://www.omg.org/spec/ALF/1.0.1/ (October 2013)
- 12.Object Management Group (OMG): UML Human-Usable Textual Notation (HUTN), v1.0 (August 2004), http://www.omg.org/spec/HUTN/1.0/
- 20.NetBeans Metadata Repository, http://mdr.netbeans.org
- 22.Kühn, H., Murzek, M.: Interoperability issues in metamodelling platforms. In: Konstantas, D., Bourrières, J.P., Léonard, M., Boudjlida, N. (eds.) Interoperability of Enterprise Software and Applications, pp. 215–226. Springer London (2006)Google Scholar
- 24.Blanc, X., Gervais, M.P., Lamari, M., Sriplakich, P.: Towards an Integrated Transformation Environment (ITE) for Model Driven Development (MDD), Invited Session “Model Driven Development”. In: 8th World Multi-Conference on Systemics, Cybernetics and Informatics (SCI 2004). LNCS (2004), Model Driven Architecture: Foundations and Applications, International Institute of Informatics and Systemics (IIIS) (2004) INT LIP6 MoVeGoogle Scholar
- 25.Brunelière, H., Cabot, J., Clasen, C., Jouault, F., Bézivin, J.: Towards model driven tool interoperability: Bridging eclipse and microsoft modeling tools. In: Kühne, T., Selic, B., Gervais, M.-P., Terrier, F. (eds.) ECMFA 2010. LNCS, vol. 6138, pp. 32–47. Springer, Heidelberg (2010)CrossRefGoogle Scholar
- 26.Mayerhofer, T., Langer, P., Kappel, G.: A runtime model for fUML. In: Proceedings of the 7th Workshop on Models@run.time, MRT 2012, pp. 53–58. ACM, New York (2012)Google Scholar
- 27.Herman, D., Wagner, L., Zakai, A.: asm.js (December 2013), http://asmjs.org/spec/latest/