Nothing Special   »   [go: up one dir, main page]

skip to main content
10.1145/3357766.3359544acmconferencesArticle/Chapter ViewAbstractPublication PagessplashConference Proceedingsconference-collections
research-article

Consistency management via a combination of triple graph grammars and linear programming

Published: 20 October 2019 Publication History

Abstract

Consistency management is an important task in the context of Domain-Specific Language (DSL) development. It involves operations such as program (model) transformation, synchronisation, integration, and consistency checking, which are all tasks required to enable concurrent engineering using multiple DSLs. Even though consistency management is a well-researched topic, existing approaches either implement a fixed strategy for each consistency management operation, or do not scale for large models. This has been criticised in the literature, as practical applications require not only reasonable scalability with model size, but also unite multiple consistency management tasks within one tool. To raise the adaptability of such a tool to an appropriate level, a uniform way of performing these tasks is a desirable goal. In this paper, we propose an approach to consistency management that leverages a synergetic combination of Triple Graph Grammars and Integer Linear Programming. By modelling consistency management as an optimisation problem with a configurable objective function, we are able to uniformly address a wide range of consistency management operations. We show that our approach scales acceptably in practice, while still guaranteeing that a consistent solution is found if and only if one exists.

References

[1]
S. Ambler. 2012. Agile Database Techniques: Effective Strategies for the Agile Software Developer. Wiley. https://books.google.se/books?id= HtkKKEzrqb0C
[2]
Anthony Anjorin, Zinovy Diskin, Frédéric Jouault, Hsiang-Shang Ko, Erhan Leblebici, and Bernhard Westfechtel. 2017. Benchmarx Reloaded: A Practical Benchmark Framework for Bidirectional Transformations. In Bx 2017, Romina Eramo and Michael Johnson (Eds.). 15 – 30. http: //ceur-ws.org/Vol-1827/paper6.pdf
[3]
Anthony Anjorin, Erhan Leblebici, and Andy Schürr. 2015. 20 Years of Triple Graph Grammars: A Roadmap for Future Research. ECEASST 73 (2015).
[4]
Anthony Anjorin, Enes Yigitbas, Erhan Leblebici, Andy Schürr, Marius Lauder, and Martin Witte. 2018. Description Languages for Consistency Management Scenarios Based on Examples from the Industry Automation Domain. Programming Journal 2, 3 (2018), 7.
[5]
Jean Bézivin, Bernhard Rumpe, Andy Schürr, and Laurence Tratt. 2005. Model Transformations in Practice Workshop. In Satellite Events at MoDELS 2005, Jean-Michel Bruel (Ed.). Springer.
[6]
Aaron Bohannon, J. Nathan Foster, Benjamin C. Pierce, Alexandre Pilkiewicz, and Alan Schmitt. 2008. Boomerang: Resourceful Lenses for String Data. SIGPLAN Not. 43, 1 (2008), 407–419.
[7]
Thomas Buchmann. 2018. BXtend - A Framework for (Bidirectional) Incremental Model Transformations. In MODELSWARD 2018, Slimane Hammoudi, Luís Ferreira Pires, and Bran Selic (Eds.). SciTePress.
[8]
Glenn Callow and Roy Kalawsky. 2013. A Satisficing Bi-Directional Model Transformation Engine using Mixed Integer Linear Programming. Journal of Object Technology 12, 1 (2013), 1:1–43.
[9]
Antonio Cicchetti, Davide Di Ruscio, Romina Eramo, and Alfonso Pierantonio. 2010. JTL: A Bidirectional and Change Propagating Transformation Language. In SLE 2010, Brian A. Malloy, Steffen Staab, and Mark van den Brand (Eds.). Springer.
[10]
Joachim Denil, Maris Jukss, Clark Verbrugge, and Hans Vangheluwe. 2014. Search-Based Model Optimization Using Model Transformations. In SAM 2014, Daniel Amyot, Pau Fonseca i Casas, and Gunter Mussbacher (Eds.). Springer, Cham.
[11]
Hartmut Ehrig, Karsten Ehrig, Claudia Ermel, Frank Hermann, and Gabriele Taentzer. 2007. Information Preserving Bidirectional Model Transformations. In FASE 2007 (LNCS), Matthew B. Dwyer and Antónia Lopes (Eds.), Vol. 4422. Springer, 72–86.
[12]
Hartmut Ehrig, Karsten Ehrig, Ulrike Prange, and Gabriele Taentzer. 2006. Fundamentals of Algebraic Graph Transformation. SpringerVerlag Berlin Heidelberg.
[13]
Claudia Ermel, Frank Hermann, Jürgen Gall, and Daniel Binanzer. 2012. Visual Modeling and Analysis of EMF Model Transformations Based on Triple Graph Grammars. In GraBaTs 2012.
[14]
Martin Fleck, Javier Troya, and Manuel Wimmer. 2016. Search-Based Model Transformations with MOMoT. In ICMT 2016, Pieter Van Gorp and Gregor Engels (Eds.). Springer, Cham.
[15]
J. Nathan Foster, Alexandre Pilkiewicz, and Benjamin C. Pierce. 2008. Quotient Lenses. SIGPLAN Not. 43, 9 (2008), 383–396.
[16]
Lars Fritsche, Erhan Leblebici, Anthony Anjorin, and Andy Schürr. 2017. A Look-Ahead Strategy for Rule-Based Model Transformations. In MODELS 2017 Satellite Events (CEUR Workshop Proceedings), Loli Burgueño, Jonathan Corley, Nelly Bencomo, Peter J. Clarke, Philippe Collet, Michalis Famelis, Sudipto Ghosh, Martin Gogolla, Joel Greenyer, Esther Guerra, Sahar Kokaly, Alfonso Pierantonio, Julia Rubin, and Davide Di Ruscio (Eds.), Vol. 2019. CEUR-WS.org. http://ceur-ws.org/ Vol-2019/me_1.pdf
[17]
Holger Giese and Stephan Hildebrandt. 2009. Efficient Model Synchronization of Large-Scale Models. Technical Report. Hasso-PlattnerInstitut für Softwaresystemtechnik an der Universität Potsdam.
[18]
Frank Hermann, Hartmut Ehrig, Ulrike Golas, and Fernando Orejas. 2010. Efficient Analysis and Execution of Correct and Complete Model Transformations Based on Triple Graph Grammars. In MDI@MoDELS 2010, Jean Bézivin, Richard Mark Soley, and Antonio Vallecillo (Eds.). ACM.
[19]
Tassilo Horn. 2017. Solving the TTC Families to Persons Case with FunnyQT. In TTC 2017 (CEUR Workshop Proceedings), Antonio GarcíaDomínguez, Georg Hinkel, and Filip Krikava (Eds.), Vol. 2026. CEUR-WS.org. http://ceur-ws.org/Vol-2026/paper13.pdf
[20]
Shinya Kawanaka and Haruo Hosoya. 2006. biXid: A Bidirectional Transformation Language for XML. In ICFP 2006 (ICFP ’06). ACM, New York, NY, USA.
[21]
Marouane Kessentini, Houari Sahraoui, and Mounir Boukadoum. 2008. Model Transformation as an Optimization Problem. In MoDELS 2008, Krzysztof Czarnecki, Ileana Ober, Jean-Michel Bruel, Axel Uhl, and Markus Völter (Eds.). Springer, Berlin, Heidelberg.
[22]
Hsiang-Shang Ko, Tao Zan, and Zhenjiang Hu. 2016. BiGUL: A Formally Verified Core Language for Putback-based Bidirectional Programming. In PEPM 2016 (PEPM ’16). ACM, New York, NY, USA.
[23]
Dimitrios S. Kolovos, Louis M. Rose, Nicholas Drivalos Matragkas, Richard F. Paige, Esther Guerra, Jesús Sánchez Cuadrado, Juan de Lara, István Ráth, Dániel Varró, Massimo Tisi, and Jordi Cabot. 2013. A Research Roadmap towards Achieving Scalability in Model Driven Engineering. In Workshop on Scalability in Model Driven Engineering 2013, Davide Di Ruscio, Dimitris S. Kolovos, and Nicholas Matragkas (Eds.). ACM.
[24]
Barbara König and Dennis Nolte. 2018. CoReS: A Tool for Computing Core Graphs via SAT/SMT Solvers (Tool Presentation Paper). In ICGT 2018. Springer.
[25]
Leen Lambers, Stephan Hildebrandt, Holger Giese, and Fernando Orejas. 2012. Attribute Handling for Bidirectional Model Transformations: The Triple Graph Grammar Case. In BX 2012.
[26]
Erhan Leblebici. 2018. Inter-Model Consistency Checking and Restoration with Triple Graph Grammars. Ph.D. Dissertation. Darmstadt University of Technology, Germany. http://tuprints.ulb.tu-darmstadt.de/ 7426/
[27]
Erhan Leblebici, Anthony Anjorin, and Andy Schürr. 2014. Developing eMoflon with eMoflon. In ICMT 2014, Davide Di Ruscio and Dániel Varró (Eds.). Springer, Cham.
[28]
Erhan Leblebici, Anthony Anjorin, and Andy Schürr. 2017. Inter-model Consistency Checking Using Triple Graph Grammars and Linear Optimization Techniques. In FASE 2017, Marieke Huisman and Julia Rubin (Eds.). Springer, Berlin, Heidelberg.
[29]
Nuno Macedo and Alcino Cunha. 2013. Implementing QVT-R Bidirectional Model Transformations Using Alloy. In FASE 2013, Vittorio Cortellessa and Dániel Varró (Eds.). Springer, Berlin, Heidelberg.
[30]
Nuno Macedo, Jorge Tiago, and Alcino Cunha. 2017. A Feature-Based Classification of Model Repair Approaches. IEEE Trans. Software Eng. 43, 7 (2017), 615–640.
[31]
Perdita Stevens. 2014. Bidirectionally Tolerating Inconsistency: Partial Transformations. In FASE 2014, Stefania Gnesi and Arend Rensink (Eds.). Springer, Berlin, Heidelberg.
[32]
Eugene Syriani, Hans Vangheluwe, and Brian Lashomb. 2015. T-Core: A Framework for Custom-built Model Transformation Engines. Softw. Syst. Model. 14, 3 (2015), 1215–1243.
[33]
Nils Weidmann, Anthony Anjorin, Lars Fritsche, Gergely Varró, Andy Schürr, and Erhan Leblebici. 2019. Incremental Bidirectional Model Transformation with eMoflon: : IBeX. In Bx@PLW 2019 (CEUR Workshop Proceedings), James Cheney and Hsiang-Shang Ko (Eds.), Vol. 2355. CEUR-WS.org, 45–55. http://ceur-ws.org/Vol-2355/paper4.pdf

Cited By

View all
  • (2024)Dynamic Property Preservation in AIoT: A Machine Learning Approach for Data-Efficient Model TransformationIEEE Access10.1109/ACCESS.2024.345471712(130707-130722)Online publication date: 2024
  • (2021)Schema Compliant Consistency Management via Triple Graph Grammars and Integer Linear ProgrammingFormal Aspects of Computing10.1007/s00165-021-00557-033:6(1115-1145)Online publication date: 24-Aug-2021

Index Terms

  1. Consistency management via a combination of triple graph grammars and linear programming

    Recommendations

    Comments

    Please enable JavaScript to view thecomments powered by Disqus.

    Information & Contributors

    Information

    Published In

    cover image ACM Conferences
    SLE 2019: Proceedings of the 12th ACM SIGPLAN International Conference on Software Language Engineering
    October 2019
    215 pages
    ISBN:9781450369817
    DOI:10.1145/3357766
    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 ACM 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: 20 October 2019

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. Consistency Checking
    2. Integer Linear Programming
    3. Model Transformation
    4. Triple Graph Grammars

    Qualifiers

    • Research-article

    Conference

    SLE '19
    Sponsor:

    Upcoming Conference

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)4
    • Downloads (Last 6 weeks)2
    Reflects downloads up to 21 Nov 2024

    Other Metrics

    Citations

    Cited By

    View all
    • (2024)Dynamic Property Preservation in AIoT: A Machine Learning Approach for Data-Efficient Model TransformationIEEE Access10.1109/ACCESS.2024.345471712(130707-130722)Online publication date: 2024
    • (2021)Schema Compliant Consistency Management via Triple Graph Grammars and Integer Linear ProgrammingFormal Aspects of Computing10.1007/s00165-021-00557-033:6(1115-1145)Online publication date: 24-Aug-2021

    View Options

    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