Se celebrará en Sala de Grados B, el 09/10/2018, 09:30
Model-driven software engineering promotes models as first-class entities in the software development process, allowing for a higher level of abstraction than code. Descriptive models are usually used to reason about software structure and behaviour, while prescriptive ones describe the problem domain and outline software solutions. In the mainstream modelling techniques, prescriptive models often struggle to represent reality because of the unnatural limitation of abstraction levels: Whereas real-world domains consist of multiple layers, these techniques are limited to two or three layers. In particular, metamodels for domain specific modelling languages (DSML) often get polluted with the so-called type-instance patterns. Multilevel modelling (MLM) tackles this limitation by providing an unlimited number of abstraction layers. While several tools for MLM exist already, most of them suffer from low uptake in the mainstream modelling community due to technology lock-in. By contrast, the tool MultEcore, developed by the presenters, extends the mature and widespread EMF ecosystem with MLM capabilities. In this tutorial, we motivate MLM using MultEcore. We also explain several multilevel concepts that can be used in MultEcore to reduce model complexity and convolution. Finally, we introduce our multilevel model transformation tool for the definition, among others, of DSML behaviour.