Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/3239372.3239378acmconferencesArticle/Chapter ViewAbstractPublication PagesmodelsConference Proceedingsconference-collections
research-article

Towards sound, optimal, and flexible building from megamodels

Published: 14 October 2018 Publication History

Abstract

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. In general, however, 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 explain the relationship between software build systems and the megamodel consistency problem. 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.

References

[1]
Francesco Basciani, Juri Di Rocco, Davide Di Ruscio, Amleto Di Salle, Ludovico Iovino, and Alfonso Pierantonio. 2014. MDEForge: an Extensible Web-Based Modeling Platform. In CloudMDE, Vol. 1242. CEUR Workshop Proceedings, 10. http://ceur-ws.org/Vol-1242/paper10.pdf
[2]
Jean Bézivin, Frédéric Jouault, and Pierre Valduriez. 2004. On the need for megamodels. In Proc. OOPLSA/GPCE workshop: Best Practices for Model-Driven Software Development.
[3]
Zinovy Diskin, Sahar Kokaly, and Tom Maibaum. 2013. Mapping-Aware Megamodeling: Design Patterns and Laws. In SLE (Lecture Notes in Computer Science), Vol. 8225. Springer, 322--343.
[4]
Sebastian Erdweg, Moritz Lichter, and Manuel Weiel. 2015. A sound and optimal incremental build system with dynamic dependencies. In OOPSLA. ACM, 89--106.
[5]
Sebastian Erdweg and Klaus Ostermann. 2017. A Module-System Discipline for Model-Driven Software Development. Programming Journal 1, 2 (2017), 9.
[6]
Jokin Garcia. 2018. Continuous Model-driven Engineering. https://modeling-languages.com/continuous-model-driven-engineering/.
[7]
Jeff Gray and Bernhard Rumpe. 2017. The importance of flow in software development. Software and System Modeling 16, 4 (2017), 927--928.
[8]
Object Management Group. 2014. Model Driven Architecture (MDA) MDA Guide rev. 2.0. http://www.omg.org/cgi-bin/doc?ormsc/14-06-01
[9]
Wolfgang Kling, Frédéric Jouault, Dennis Wagelaar, Marco Brambilla, and Jordi Cabot. 2011. MoScript: A DSL for Querying and Manipulating Model Repositories. In SLE (Lecture Notes in Computer Science), Vol. 6940. Springer, 180--200.
[10]
Dimitrios S. Kolovos, Richard F. Paige, and Fiona A. C. Polack. 2008. A framework for composing modular and interoperable model management tasks. In In Model-Driven Tool and Process Integration Workshop. 79--90.
[11]
Adrian Kuhn, Gail C. Murphy, and C. Albert Thompson. 2012. An Exploratory Study of Forces and Frictions Affecting Large-Scale Model-Driven Development. In MoDELS (Lecture Notes in Computer Science), Vol. 7590. Springer, 352--367.
[12]
Epperly T Kumfert G. 2002. Software in the DOE: The Hidden Overhead of "The Build". Technical Report UCRL-ID-147343. Lawrence Livermore National Laboratory, CA, USA.
[13]
Ralf Lämmel. 2017. Relationship Maintenance in Software Language Repositories. The Art, Science, and Engineering of Programming Journal 1 (2017), 27. Issue 1.
[14]
Shane McIntosh, Bram Adams, Thanh H. D. Nguyen, Yasutaka Kamei, and Ahmed E. Hassan. 2011. An empirical study of build maintenance effort. In ICSE. ACM, 141--150.
[15]
Andrey Mokhov, Neil Mitchell, Simon Peyton Jones, and Simon Marlow. 2016. Non-recursive make considered harmful: build systems at scale. In Haskell. ACM, 170--181.
[16]
Bashar Nuseibeh, Steve M. Easterbrook, and Alessandra Russo. 2001. Making inconsistency respectable in software development. Journal of Systems and Software 58, 2 (2001), 171--180.
[17]
Juri Di Rocco, Davide Di Ruscio, Marcel Heinz, Ludovico Iovino, Ralf Lämmel, and Alfonso Pierantonio. 2017. Consistency recovery in interactive modeling. In EXE at MODELS. 6. http://www.modelexecution.org/media/EXE2017/papers/EXE_2017_paper_6.pdf
[18]
Perdita Stevens. 2012. Observations relating to the equivalences induced on model sets by bidirectional transformations. ECEASST 049 (2012), 16.
[19]
Perdita Stevens. 2017. Bidirectional transformations in the large. In MODELS. IEEE, 1--17.
[20]
Perdita Stevens. 2018. Is Bidirectionality Important?. In Modelling Foundations and Applications - 14th European Conference, ECMFA 2018, Held as Part of STAF 2018, Toulouse, France, June 26-28, 2018, Proceedings (Lecture Notes in Computer Science), Alfonso Pierantonio and Salvador Trujillo (Eds.), Vol. 10890. Springer, 1--11.
[21]
Perdita Stevens. 2018. Supplemental note to "Towards Sound, Optimal and Flexible Building from Megamodels". (July 2018). Available from http://homepages.inf.ed.ac.uk/perdita/MegamodelBuild.
[22]
Jon Whittle, John Edward Hutchinson, and Mark Rouncefield. 2014. The State of Practice in Model-Driven Engineering. IEEE Software 31, 3 (2014), 79--85.

Cited By

View all
  • (2020)Connecting software build with maintaining consistency between models: towards sound, optimal, and flexible building from megamodelsSoftware and Systems Modeling10.1007/s10270-020-00788-4Online publication date: 19-Mar-2020
  • (2020)Towards Multiple Model Synchronization with Comprehensive SystemsFundamental Approaches to Software Engineering10.1007/978-3-030-45234-6_17(335-356)Online publication date: 17-Apr-2020
  • (2020)Incremental Concurrent Model Synchronization using Triple Graph GrammarsFundamental Approaches to Software Engineering10.1007/978-3-030-45234-6_14(273-293)Online publication date: 17-Apr-2020
  • Show More Cited By

Index Terms

  1. Towards sound, optimal, and flexible building from megamodels

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM Conferences
    MODELS '18: Proceedings of the 21th ACM/IEEE International Conference on Model Driven Engineering Languages and Systems
    October 2018
    478 pages
    ISBN:9781450349499
    DOI:10.1145/3239372
    Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

    Sponsors

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 14 October 2018

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. bidirectionality
    2. build system
    3. megamodel
    4. model transformation
    5. orientation model

    Qualifiers

    • Research-article
    • Research
    • Refereed limited

    Conference

    MODELS '18
    Sponsor:

    Acceptance Rates

    MODELS '18 Paper Acceptance Rate 29 of 101 submissions, 29%;
    Overall Acceptance Rate 118 of 382 submissions, 31%

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)13
    • Downloads (Last 6 weeks)0
    Reflects downloads up to 26 Sep 2024

    Other Metrics

    Citations

    Cited By

    View all
    • (2020)Connecting software build with maintaining consistency between models: towards sound, optimal, and flexible building from megamodelsSoftware and Systems Modeling10.1007/s10270-020-00788-4Online publication date: 19-Mar-2020
    • (2020)Towards Multiple Model Synchronization with Comprehensive SystemsFundamental Approaches to Software Engineering10.1007/978-3-030-45234-6_17(335-356)Online publication date: 17-Apr-2020
    • (2020)Incremental Concurrent Model Synchronization using Triple Graph GrammarsFundamental Approaches to Software Engineering10.1007/978-3-030-45234-6_14(273-293)Online publication date: 17-Apr-2020
    • (2019)ModelFlow: towards reactive model management workflowsProceedings of the 17th ACM SIGPLAN International Workshop on Domain-Specific Modeling10.1145/3358501.3361238(30-39)Online publication date: 20-Oct-2019
    • (2019)How to live with inconsistencies in industrial model-based development practiceProceedings of the 22nd International Conference on Model Driven Engineering Languages and Systems10.1109/MODELS-C.2019.00098(642-647)Online publication date: 15-Sep-2019
    • (2019)Understanding MDE projects: megamodels to the rescue for architecture recoverySoftware and Systems Modeling10.1007/s10270-019-00748-719:2(401-423)Online publication date: 18-Jul-2019
    • (2019)Heterogeneous megamodel management using collection operatorsSoftware & Systems Modeling10.1007/s10270-019-00738-9Online publication date: 22-Jun-2019
    • (2019)Maintaining consistency in networks of models: bidirectional transformations in the largeSoftware & Systems Modeling10.1007/s10270-019-00736-xOnline publication date: 29-May-2019
    • (2018)Is Bidirectionality Important?Modelling Foundations and Applications10.1007/978-3-319-92997-2_1(1-11)Online publication date: 29-May-2018

    View Options

    Get Access

    Login options

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media