ABSTRACT
Today, model-driven approaches are a cornerstone in modern software development. The Eclipse Modeling Framework (EMF) is highly adopted in practice and generates Java code from platform-independent models with embedded Object Constraint Language (OCL) expressions. However, applications that target multiple platforms like Android, iOS, Windows, web browsers usually need to be implemented in different programming languages. Feature-complete Ecore and OCL runtime APIs are not available for all these platforms, such that their functionality has to be re-implemented. In this paper, we present CrossEcore: A multi-platform enabled modeling framework that generates C#, Swift, TypeScript, and JavaScript code from Ecore models with embedded OCL. An OCL compiler translates OCL expressions into expressions of the target language. The Ecore and OCL API can be consistently used across platforms, which facilitates application portability. CrossEcore is also extendible and can be easily adopted for new programming languages.
- 2014. Object Constraint Language Version 2.4. (2014). http://www.omg.org/spec/OCL/2.4/Google Scholar
- David Akehurst and Octavian Patrascoiu. 2004. OCL 2.0 - Implementing the Standard for Multiple Metamodels. Electronic Notes in Theoretical Computer Science 102 (2004), 21 -- 41. Google ScholarDigital Library
- David H Akehurst, W Gareth J Howells, Markus Scheidgen, and Klaus D McDonald-Maier. 2008. C# 3.0 makes OCL redundant. Electronic Communications of the EASST 9 (2008).Google Scholar
- Vincent Aranega and Mike Pagel. 2018. PyEcore. (2018). Retrieved March 19, 2018 from https://github.com/pyecoreGoogle Scholar
- Andrés Senac González, Diego Sevilla Ruiz, and Gregorio Martinez Perez. 2010. EMF4CPP: a C++ Ecore Implementation. DSDM 2010 - Desarrollo de Software Dirigido por Modelos, Jornadas de Ingenieria del Software y Bases de Datos (2010).Google Scholar
- Guillaume Hillairet. 2018. Ecore.js. (2018). Retrieved March 19, 2018 from https://github.com/emfjson/ecore.jsGoogle Scholar
- Georg Hinkel. 2016. NMF: A Modeling Framework for the .NET Platform. Technical Report. Karlsruhe Institute of Technology, http://nbn-resolving.org/urn:nbn:de:swb:90-537082Google Scholar
- Heinrich Hußmann, Birgit Demuth, and Frank Finger. 2002. Modular architecture for a toolset supporting OCL. Science of Computer Programming 44, 1 (2002), 51--69. Google ScholarDigital Library
- S. Jäger, R. Maschotta, T. Jungebloud, A. Wichmann, and A. Zimmermann. 2016. An EMF-like UML generator for C+ +. In 2016 4th International Conference on Model-Driven Engineering and Software Development (MODELSWARD). 309--316.Google Scholar
- Ivan Jovanovikj and Stefan Sauer. 2017. Towards a Framework for Constructing Context-Specific Migration Methods for Test Cases. Softwaretechnik-Trends, Proceedings of the 19th Workshop Software-Reengineering & Evolution (WSRE) & 8th Workshop Design for Future (DFF) 37, 2 (2017), 50--51.Google Scholar
- Gerard Meszaros. 2007. xUnit test patterns: Refactoring test code. Pearson Education. Google ScholarDigital Library
- Octavian Patrascoiu. 2005. Model Driven Language Engineering. Ph.D. Dissertation. University of Kent.Google Scholar
- Dave Steinberg, Frank Budinsky, Ed Merks, and Marcelo Paternostro. 2008. EMF: eclipse modeling framework. Pearson Education. Google ScholarDigital Library
- Tamás Vajk, Gergely Mezei, and Tihamer Levendovszky. 2013. Incremental semantic analysis for OCL compilers. ISSE 9, 3 (2013), 147--162. Google ScholarDigital Library
- Edward D. Willink. 2010. Re-engineering Eclipse MDT/OCL for Xtext. ECEASST 36 (2010). http://journal.ub.tu-berlin.de/index.php/eceasst/article/view/444Google Scholar
Recommendations
Model-driven engineering with domain-specific meta-modelling languages
Domain-specific modelling languages are normally defined through general-purpose meta-modelling languages like the MOF. While this is satisfactory for many model-driven engineering (MDE) projects, several researchers have identified the need for domain-...
Mapping visual notations to MOF compliant models with QVT relations
SAC '07: Proceedings of the 2007 ACM symposium on Applied computingModel-centric methodologies rely on the definition of domain-specific modeling languages for being able to create domain-specific models. With MOF the OMG adopted a standard which provides the essential constructs for the definition of semantic language ...
A new tool for URDAD to Java EE EJB transformations
SAICSIT '13: Proceedings of the South African Institute for Computer Scientists and Information Technologists ConferenceFollowing the Object Management Group's (OMG) Model-Driven Architecture (MDA) approach, the semi-formal, service-orientated "Use Case, Responsibility Driven Analysis and Design" (URDAD) method is used by requirements engineers to specify a software ...
Comments