Language Family Engineering with Product Lines of Multi-level Models


Abstract:

Modelling is an essential activity in software engineering. Ittypically involves two meta-levels: one includes meta-models thatdescribe modelling languages, and the other contains models built byinstantiating those meta-models. Multi-level modelling generalizes this approach by allowing models to span an arbitrarynumber of meta-levels. A scenario that profits from multi-levelmodelling is the definition of language families that can bespecialized (e.g., for different domains) by successive refinementsat subsequent meta-levels, hence promoting language reuse. Thisenables an open set of variability options given by allpossible specializations of the language family. However,multi-level modelling lacks the ability to express closed variability regarding the availability of language primitives or thepossibility to opt between alternative primitive realizations. Thislimits the reuse opportunities of a language family. To improve thissituation, we propose a novel combination of product lines withmulti-level modelling to cover both open and closed variability. Ourproposal is backed by a formal theory that guarantees correctness,enables top-down and bottom-up language variability design, and isimplemented atop the MetaDepth multi-level modelling tool.

Año de publicación:

2021

Keywords:

  • Meta-Modelling
  • Multi-level modelling
  • Product Lines
  • Domain-Specific Languages
  • software language engineering
  • METADEPTH

Fuente:

scopusscopus

Tipo de documento:

Article

Estado:

Acceso abierto

Áreas de conocimiento:

    Áreas temáticas:

    • Programación informática, programas, datos, seguridad
    • Física aplicada
    • Instrumentos de precisión y otros dispositivos

    Contribuidores: