Abstract / Description of output
Software build systems tackle the problem of building software from sources in a way which is sound (when a build completes successfully, the relations between the generated and source files are as specified) and optimal (only genuinely required rebuilding steps are done). In this paper we explain and exploit the connection between software build and the megamodel consistency problem. The model-driven development of systems involves multiple models, metamodels and transformations. Transformations – which may be bidirectional – specify, and provide means to enforce, desired “consistency” relationships between models.We can describe the whole configuration using a megamodel. As development proceeds, and various models are modified, we need to be able to restore consistency in the megamodel, so that the consequences of decisions first recorded in one model are appropriately reflected in the others. At the same time, we need to minimise the amount of recomputation needed; in particular, we would like to avoid reapplying a transformation when no relevant changes have occurred in the models it relates. The megamodel consistency problem requires flexibility beyond what is found in conventional software build, because different results are obtained depending on which models are allowed to be modified and on the order and direction of transformation application. In this paper we propose using an orientation model to make important choices explicit. We show how to extend the formalised build system pluto to provide a means of restoring consistency in a megamodel that is, in appropriate senses, flexible, sound and optimal.
Original language | English |
---|---|
Pages (from-to) | 935-958 |
Number of pages | 24 |
Journal | Software and Systems Modeling |
Volume | 19 |
Issue number | 4 |
Early online date | 19 Mar 2020 |
DOIs | |
Publication status | Published - 1 Jul 2020 |
Keywords / Materials (for Non-textual outputs)
- megamodel
- build system
- model transformation
- bidirectionality
- orientation model
Fingerprint
Dive into the research topics of 'Connecting software build with maintaining consistency between models: towards sound, optimal, and flexible building from megamodels'. Together they form a unique fingerprint.Profiles
-
Perdita Stevens
- School of Informatics - Personal Chair in Mathematics of Software Engineering
- Laboratory for Foundations of Computer Science
- Foundations of Computation
Person: Academic: Research Active