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

Towards Efficient Model Comparison using Automated Program Rewriting

Published: 23 October 2023 Publication History

Abstract

Model comparison is a prerequisite task for several other model management tasks such as model merging, model differencing etc. We present a novel approach to efficiently compare models using programs written in a rule-based model comparison language. As the comparison is done at the model element level, and each element needs to be traversed and compared with its corresponding elements, the execution of these comparison algorithms can be computationally expensive for larger models. In this paper, we present an efficient comparison approach which provides an automated rewriting facility to compare (both homogeneous and heterogeneous) models, based on static program analysis. Using this analysis, we reduce the search space by pre-filtering/indexing model elements, before actually comparing them. Moreover, we reorder the comparison match rules according to the dependencies between these rules to reduce the cost of jumping between rules. Our experiments demonstrate that the proposed model comparison approach delivers significant performance benefits in terms of execution time compared to the default ECL execution engine.

References

[1]
2022. Epsilon Validation Language. https://www.eclipse.org/epsilon/doc/evl/ [Online; accessed 29-April-2022]
[2]
2023. Eclipse EMF Compare. https://projects.eclipse.org/projects/modeling.emfcompare [Online; accessed 10-April-2023]
[3]
2023. EMF DiffMerge. https://wiki.eclipse.org/EMF_DiffMerge [Online; accessed 10-April-2023]
[4]
2023. Epsilon. https://www.eclipse.org/epsilon/ [Online; accessed 26-March-2023]
[5]
2023. Epsilon Model Connectivity Layer. https://www.eclipse.org/epsilon/doc/emc/ [Online; accessed 26-March-2023]
[6]
Qurat Ul Ain Ali, Benedek Horváth, Dimitris Kolovos, Konstantinos Barmpis, and Ákos Horváth. 2021. Towards Scalable Validation of Low-Code System Models: Mapping EVL to VIATRA Patterns. In 2021 ACM/IEEE International Conference on Model Driven Engineering Languages and Systems Companion (MODELS-C). 83–87. https://doi.org/10.1109/MODELS-C53483.2021.00019
[7]
Qurat ul ain Ali, Dimitris Kolovos, and Konstantinos Barmpis. 2020. Efficiently Querying Large-Scale Heterogeneous Models. In Proceedings of the 23rd ACM/IEEE International Conference on Model Driven Engineering Languages and Systems: Companion Proceedings (MODELS ’20). Association for Computing Machinery, New York, NY, USA. Article 73, 5 pages. isbn:9781450381352 https://doi.org/10.1145/3417990.3420207
[8]
Qurat ul ain Ali, Dimitris Kolovos, and Konstantinos Barmpis. 2022. Selective Traceability for Rule-Based Model-to-Model Transformations. In Proceedings of the 15th ACM SIGPLAN International Conference on Software Language Engineering (SLE 2022). Association for Computing Machinery, New York, NY, USA. 98–109. isbn:9781450399197 https://doi.org/10.1145/3567512.3567521
[9]
Antonio Bucchiarone, Jordi Cabot, Richard F Paige, and Alfonso Pierantonio. 2020. Grand challenges in model-driven engineering: an analysis of the state of the research. Software and Systems Modeling, 19, 1 (2020), 5–13.
[10]
Justin Cooper, Alfonso De la Vega, Richard Paige, Dimitris Kolovos, Michael Bennett, Caroline Brown, Beatriz Sanchez Piña, and Horacio Hoyos Rodriguez. 2021. Model-Based Development of Engine Control Systems: Experiences and Lessons Learnt. In 2021 ACM/IEEE 24th International Conference on Model Driven Engineering Languages and Systems (MODELS). 308–319. https://doi.org/10.1109/MODELS50736.2021.00038
[11]
Marcos Didonet Del Fabro and Patrick Valduriez. 2007. Semi-Automatic Model Integration Using Matching Transformations and Weaving Models. In Proceedings of the 2007 ACM Symposium on Applied Computing (SAC ’07). Association for Computing Machinery, New York, NY, USA. 963–970. isbn:1595934804 https://doi.org/10.1145/1244002.1244215
[12]
Lucian Gonçales, Kleinner Farias, Murilo Scholl, Toacy Oliveira, and Mauricio Veronez. 2015. Model Comparison: a Systematic Mapping Study. https://doi.org/10.18293/SEKE2015-116
[13]
Faezeh Khorram, Masoumeh Taromirad, and Raman Ramsin. [n. d.]. SeGa4Biz: Model-Driven Framework for Developing Serious Games for Business Processes.
[14]
Dimitrios S. Kolovos. 2009. Establishing Correspondences between Models with the Epsilon Comparison Language. In Model Driven Architecture - Foundations and Applications, Richard F. Paige, Alan Hartman, and Arend Rensink (Eds.). Springer Berlin Heidelberg, Berlin, Heidelberg. 146–157. isbn:978-3-642-02674-4
[15]
Dimitris S Kolovos and Richard F Paige. 2017. The epsilon pattern language. In 2017 IEEE/ACM 9th International Workshop on Modelling in Software Engineering (MiSE). 54–60.
[16]
Dimitrios S Kolovos, Richard F Paige, and Fiona AC Polack. 2006. The epsilon object language (EOL). In European conference on model driven architecture-foundations and applications. 128–142.
[17]
Dimitrios S Kolovos, Richard F Paige, and Fiona AC Polack. 2006. Merging models with the epsilon merging language (eml). In Model Driven Engineering Languages and Systems: 9th International Conference, MoDELS 2006, Genova, Italy, October 1-6, 2006. Proceedings 9. 215–229.
[18]
Dimitrios S Kolovos, Richard F Paige, and Fiona AC Polack. 2008. The epsilon transformation language. In Theory and Practice of Model Transformations: First International Conference, ICMT 2008, Zürich, Switzerland, July 1-2, 2008 Proceedings 1. 46–60.
[19]
Yuehua Lin, Jeff Gray, and Frédéric Jouault. 2007. DSMDiff: a differentiation tool for domain-specific models. European Journal of Information Systems, 16, 4 (2007), 349–361.
[20]
José Antonio Hernández López and Jesús Sánchez Cuadrado. 2021. Towards the Characterization of Realistic Model Generators using Graph Neural Networks. In 2021 ACM/IEEE 24th International Conference on Model Driven Engineering Languages and Systems (MODELS). 58–69. https://doi.org/10.1109/MODELS50736.2021.00015
[21]
Dirk Ohst, Michael Welle, and Udo Kelter. 2003. Differences between Versions of UML Diagrams. SIGSOFT Softw. Eng. Notes, 28, 5 (2003), sep, 227–236. issn:0163-5948 https://doi.org/10.1145/949952.940102
[22]
Massimo Tisi, Salvador Martínez, and Hassene Choura. 2013. Parallel execution of ATL transformation rules. In Model-Driven Engineering Languages and Systems: 16th International Conference, MODELS 2013, Miami, FL, USA, September 29–October 4, 2013. Proceedings 16. 656–672.
[23]
Christoph Treude, Stefan Berlik, Sven Wenzel, and Udo Kelter. 2007. Difference computation of large models. In Proceedings of the the 6th joint meeting of the European software engineering conference and the ACM SIGSOFT symposium on The foundations of software engineering. 295–304.
[24]
Qurat Ul Ain Ali, Dimitris Kolovos, and Konstantinos Barmpis. 2021. Identification and Optimisation of Type-Level Model Queries. In 2021 ACM/IEEE International Conference on Model Driven Engineering Languages and Systems Companion (MODELS-C). 751–760. https://doi.org/10.1109/MODELS-C53483.2021.00121
[25]
Alfa Yohannis, Rodriguez Hoyos Rodriguez, Fiona Polack, and Dimitris Kolovos. 2019. Towards Efficient Comparison of Change-Based Models. Journal of Object Technology, 18, 2 (2019), July, 7:1–21. issn:1660-1769 https://doi.org/10.5381/jot.2019.18.2.a7 The 15th European Conference on Modelling Foundations and Applications

Index Terms

  1. Towards Efficient Model Comparison using Automated Program Rewriting

    Recommendations

    Comments

    Please enable JavaScript to view thecomments powered by Disqus.

    Information & Contributors

    Information

    Published In

    cover image ACM Conferences
    SLE 2023: Proceedings of the 16th ACM SIGPLAN International Conference on Software Language Engineering
    October 2023
    231 pages
    ISBN:9798400703966
    DOI:10.1145/3623476
    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: 23 October 2023

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. Model Comparison
    2. Model-Driven Engineering
    3. Program Analysis
    4. Scalability
    5. Static Analysis

    Qualifiers

    • Research-article

    Funding Sources

    • Marie Sk?odowska-Curie grant agreement

    Conference

    SLE '23
    Sponsor:

    Upcoming Conference

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • 0
      Total Citations
    • 49
      Total Downloads
    • Downloads (Last 12 months)34
    • Downloads (Last 6 weeks)2
    Reflects downloads up to 01 Nov 2024

    Other Metrics

    Citations

    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