Safe Model Polymorphism for Flexible Modeling

Thomas Degueule 1 Benoit Combemale 1 Arnaud Blouin 1 Olivier Barais 1 Jean-Marc Jézéquel 1
1 DiverSe - Diversity-centric Software Engineering
Inria Rennes – Bretagne Atlantique , IRISA-D4 - LANGAGE ET GÉNIE LOGICIEL
Abstract : Domain-Specific Languages (DSLs) are increasingly used by domain experts to handle various concerns in systems and software development. To support this trend, the Model-Driven Engineering (MDE) community has developed advanced techniques for designing new DSLs. However, the widespread use of independently developed, and constantly evolving DSLs is hampered by the rigidity imposed to the language users by the DSLs and their tooling, e.g., for manipulating a model through various similar DSLs or successive versions of a given DSL. In this paper, we propose a disciplined approach that leverages type groups' polymorphism to provide an advanced type system for manipulating models, in a polymorphic way, through different DSL interfaces. A DSL interface, aka. model type, specifies a set of features, or services, available on the model it types, and subtyping relations among these model types define the safe substitutions. This type system complements the Melange language workbench and is seamlessly integrated into the Eclipse Modeling Framework (EMF), hence providing structural interoperability and compatibility of models between EMF-based tools. We illustrate the validity and practicability of our approach by bridging safe interoperability between different semantic and syntactic variation points of a finite-state machine (FSM) language, as well as between successive versions of the Unified Modeling Language (UML).
Document type :
Journal articles
Complete list of metadatas

Cited literature [56 references]  Display  Hide  Download

https://hal.inria.fr/hal-01367305
Contributor : Thomas Degueule <>
Submitted on : Wednesday, October 26, 2016 - 10:26:10 AM
Last modification on : Thursday, February 7, 2019 - 5:15:00 PM

File

comlan-melange.pdf
Files produced by the author(s)

Identifiers

Citation

Thomas Degueule, Benoit Combemale, Arnaud Blouin, Olivier Barais, Jean-Marc Jézéquel. Safe Model Polymorphism for Flexible Modeling. Computer Languages, Systems and Structures, Elsevier, 2016, Computer Languages, Systems Structures, 49, pp.30. ⟨10.1016/j.cl.2016.09.001⟩. ⟨hal-01367305v2⟩

Share

Metrics

Record views

539

Files downloads

542