University of Leicester
Browse

Code-First Model-Driven Engineering: On the Agile Adoption of MDE Tooling

Download (1.78 MB)
conference contribution
posted on 2020-04-07, 13:22 authored by A Boronat
Domain models are the most important asset in widely accepted software development approaches, likeDomain-Driven Design (DDD), yet those models are still im-plicitly represented in programs. Model-Driven Engineering(MDE) regards those models as representable entities that are amenable to automated analysis and processing, facilitating quality assurance while increasing productivity in software development processes. Although this connection is not new,very few approaches facilitate adoption of MDE tooling without compromising existing value, their data. Moreover, switching to MDE tooling usually involves re-engineering core parts of an application, hindering backward compatibility and, thereby,continuous integration, while requiring an up-front investment in training in specialized modeling frameworks. In those approaches that overcome the previous problem, there is no clear indication−from a quantitative point of view−of the extent to which adopting state-of-the-art MDE practices and tooling is feasible or advantageous.In this work, we advocate a code-first approach to modeling through an approach for applying MDE techniques and tools to existing object-oriented software applications that fully preserves the semantics of the original application, which need not be modified. Our approach consists both of a semi-automated method for specifying explicit view models out of existing object-oriented applications and of a conservative extension mechanism that enables the use of such view models at run time, where view model queries are resolved on demand and view model updates are propagated incrementally to the original application. This mechanism enables an iterative,flexible application of MDE tooling to software applications,where meta models and models do not exist explicitly. An evaluation of this extension mechanism, implemented for Java applications and for view models atop the Eclipse Modeling Framework (EMF), has been conducted with an industry-targeted benchmark for decision support systems, analyzing performance and scalability of the synchronization mechanism.Backward propagation of large updates over very large views is instant.

History

Citation

A. Boronat, "Code-First Model-Driven Engineering: On the Agile Adoption of MDE Tooling," 2019 34th IEEE/ACM International Conference on Automated Software Engineering (ASE), San Diego, CA, USA, 2019, pp. 874-886. doi: 10.1109/ASE.2019.00086

Author affiliation

/Organisation/COLLEGE OF SCIENCE AND ENGINEERING/Department of Informatics

Source

The 34th IEEE/ACM International Conference on Automated Software Engineering (ASE 2019). San Diego from November 11 to 15, 2019.

Acceptance date

2019-08-05

Copyright date

2019

Publisher version

https://ieeexplore.ieee.org/xpl/conhome/8949433/proceeding

Notes

© 2019 IEEE. Personal use of this material is permitted. Permission from IEEE must be obtained for all other uses, in any current or future media, including reprinting/republishing this material for advertising or promotional purposes, creating new collective works, for resale or redistribution to servers or lists, or reuse of any copyrighted component of this work in other works.

Language

en

Usage metrics

    University of Leicester Publications

    Categories

    No categories selected

    Exports

    RefWorks
    BibTeX
    Ref. manager
    Endnote
    DataCite
    NLM
    DC