Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/3183440.3194976acmconferencesArticle/Chapter ViewAbstractPublication PagesicseConference Proceedingsconference-collections
poster

CrossEcore: an extendible framework to use ecore and OCL across platforms

Published: 27 May 2018 Publication History

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.

References

[1]
2014. Object Constraint Language Version 2.4. (2014). http://www.omg.org/spec/OCL/2.4/
[2]
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.
[3]
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).
[4]
Vincent Aranega and Mike Pagel. 2018. PyEcore. (2018). Retrieved March 19, 2018 from https://github.com/pyecore
[5]
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).
[6]
Guillaume Hillairet. 2018. Ecore.js. (2018). Retrieved March 19, 2018 from https://github.com/emfjson/ecore.js
[7]
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-537082
[8]
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.
[9]
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.
[10]
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.
[11]
Gerard Meszaros. 2007. xUnit test patterns: Refactoring test code. Pearson Education.
[12]
Octavian Patrascoiu. 2005. Model Driven Language Engineering. Ph.D. Dissertation. University of Kent.
[13]
Dave Steinberg, Frank Budinsky, Ed Merks, and Marcelo Paternostro. 2008. EMF: eclipse modeling framework. Pearson Education.
[14]
Tamás Vajk, Gergely Mezei, and Tihamer Levendovszky. 2013. Incremental semantic analysis for OCL compilers. ISSE 9, 3 (2013), 147--162.
[15]
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/444

Cited By

View all
  • (2022)A tool-assisted approach to engineer domain-specific languages (DSLs) using RustProceedings of the 25th International Conference on Model Driven Engineering Languages and Systems: Companion Proceedings10.1145/3550356.3563133(712-721)Online publication date: 23-Oct-2022
  • (2022)Design of a Validator for Module Type PackagesIECON 2022 – 48th Annual Conference of the IEEE Industrial Electronics Society10.1109/IECON49645.2022.9968371(1-6)Online publication date: 17-Oct-2022
  • (2020)A Model-Driven Mutation Framework for Validation of Test Case MigrationSystems Modelling and Management10.1007/978-3-030-58167-1_2(21-29)Online publication date: 17-Oct-2020

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
ICSE '18: Proceedings of the 40th International Conference on Software Engineering: Companion Proceeedings
May 2018
231 pages
ISBN:9781450356633
DOI:10.1145/3183440
  • Conference Chair:
  • Michel Chaudron,
  • General Chair:
  • Ivica Crnkovic,
  • Program Chairs:
  • Marsha Chechik,
  • Mark Harman
Permission to make digital or hard copies of part or all of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for third-party components of this work must be honored. For all other uses, contact the Owner/Author.

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 27 May 2018

Check for updates

Qualifiers

  • Poster

Conference

ICSE '18
Sponsor:

Acceptance Rates

Overall Acceptance Rate 276 of 1,856 submissions, 15%

Upcoming Conference

ICSE 2025

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)2
  • Downloads (Last 6 weeks)1
Reflects downloads up to 04 Oct 2024

Other Metrics

Citations

Cited By

View all
  • (2022)A tool-assisted approach to engineer domain-specific languages (DSLs) using RustProceedings of the 25th International Conference on Model Driven Engineering Languages and Systems: Companion Proceedings10.1145/3550356.3563133(712-721)Online publication date: 23-Oct-2022
  • (2022)Design of a Validator for Module Type PackagesIECON 2022 – 48th Annual Conference of the IEEE Industrial Electronics Society10.1109/IECON49645.2022.9968371(1-6)Online publication date: 17-Oct-2022
  • (2020)A Model-Driven Mutation Framework for Validation of Test Case MigrationSystems Modelling and Management10.1007/978-3-030-58167-1_2(21-29)Online publication date: 17-Oct-2020

View Options

Get Access

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media