Language family engineering with product lines of multi-level models
EntityUAM. Departamento de Ingeniería Informática
10.1007/s00165-021-00554-3Formal Aspects of Computing 33.6 (2021): 1-36
Funded byThis work has been funded by the SpanishMinistry of Science (project MASSIVE, RTI2018-095255- B-I00), by the R&D programme of Madrid (project FORTE, P2018/TCS-4314), and the Universidad Autónoma de Madrid
ProjectGobierno de España. RTI2018-095255- B-I00; Comunidad de Madrid. P2018/TCS-4314/FORTE
SubjectsDomain-specific languages; Meta-modelling; MetaDepth; Multi-level modelling; Product lines; Software language engineering; Informática
Esta obra está bajo una Licencia Creative Commons Atribución 4.0 Internacional.
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
This item appears in the following Collection(s)
Showing items related by title, author, creator and subject.