Skip to main content

Automated Co-evolution of Metamodels and Transformation Rules: A Search-Based Approach

  • Conference paper
  • First Online:
Search-Based Software Engineering (SSBSE 2018)

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 11036))

Included in the following conference series:

Abstract

Metamodels frequently change over time by adding new concepts or changing existing ones to keep track with the evolving problem domain they aim to capture. This evolution process impacts several depending artifacts such as model instances, constraints, as well as transformation rules. As a consequence, these artifacts have to be co-evolved to ensure their conformance with new metamodel versions. While several studies addressed the problem of metamodel/model co-evolution (Please note the potential name clash for the term co-evolution. In this paper, we refer to the problem of having to co-evolve different dependent artifacts in case one of them changes. We are not referring to the application or adaptation of co-evolutionary search algorithms.), the co-evolution of metamodels and transformation rules has been less studied. Currently, programmers have to manually change model transformations to make them consistent with the new metamodel versions which require the detection of which transformations to modify and how to properly change them. In this paper, we propose a novel search-based approach to recommend transformation rule changes to make transformations coherent with the new metamodel versions by finding a trade-off between maximizing the coverage of metamodel changes and minimizing the number of static errors in the transformation and the number of applied changes to the transformation. We implemented our approach for the ATLAS Transformation Language (ATL) and validated the proposed approach on four co-evolution case studies. We demonstrate the outperformance of our approach by comparing the quality of the automatically generated co-evolution solutions by NSGA-II with manually revised transformations, one mono-objective algorithm, and random search.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 59.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 74.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    https://git.eclipse.org/c/gerrit/www.eclipse.org/atl.git/tree/atlTransformations.

References

  1. Batot, E., Kessentini, W., Sahraoui, H.A., Famelis, M.: Heuristic-based recommendation for Metamodel - OCL coevolution. In: MODELS, pp. 210–220 (2017)

    Google Scholar 

  2. Brambilla, M., Cabot, J., Wimmer, M.: Model-Driven Software Engineering in Practice, 2nd edn. Morgan & Claypool Publishers, San Rafael (2017)

    Google Scholar 

  3. Burgueño, L., Troya, J., Wimmer, M., Vallecillo, A.: Static fault localization in model transformations. IEEE Trans. Softw. Eng. 41(5), 490–506 (2015)

    Article  Google Scholar 

  4. Cheng, Z., Monahan, R., Power, J.F.: A sound execution semantics for ATL via translation validation. In: ICMT, pp. 133–148 (2015)

    Google Scholar 

  5. Cuadrado, J.S., Guerra, E., de Lara, J.: Quick fixing ATL transformations with speculative analysis. Softw. Syst. Model 1–35 (2016)

    Google Scholar 

  6. Cuadrado, J.S., Guerra, E., de Lara, J.: Static analysis of model transformations. IEEE Trans. Softw. Eng. 43(9), 868–897 (2017)

    Article  Google Scholar 

  7. Deb, K., Pratap, A., Agarwal, S., Meyarivan, T.: A fast and elitist multiobjective genetic algorithm: NSGA-II. IEEE Trans. Evol. Comput. 6(2), 182–197 (2002)

    Article  Google Scholar 

  8. Di Ruscio, D., Iovino, L., Pierantonio, A.: What is needed for managing co-evolution in MDE? In: Workshop on Model Comparison in Practice, pp. 30–38 (2011)

    Google Scholar 

  9. Ehrig, H., Ehrig, K., Ermel, C.: Refactoring of model transformations. In: ECEASST (2009)

    Google Scholar 

  10. Etzlstorfer, J., Kapsammer, E., Schwinger, W.: On the evolution of modeling ecosystems: an evaluation of co-evolution approaches. In: MODELSWARD, pp. 90–99 (2017)

    Google Scholar 

  11. Fleck, M., Troya, J., Kessentini, M., Wimmer, M., Alkhazi, B.: Model transformation modularization as a many-objective optimization problem. IEEE Trans. Software Eng. 43(11), 1009–1032 (2017)

    Article  Google Scholar 

  12. García, J., Díaz, O., Azanza, M.: Model transformation co-evolution: a semi-automatic approach. In: SLE, pp. 144–163 (2012)

    Google Scholar 

  13. Harman, M., Mansouri, S.A., Zhang, Y.: Search-based software engineering: trends, techniques and applications. ACM Comput. Surv. 45(1), 11:1–11:61 (2012)

    Article  Google Scholar 

  14. Hebig, R., Khelladi, D.E., Bendraou, R.: Approaches to co-evolution of metamodels and models: a survey. IEEE Trans. Softw. Eng. 43(5), 396–414 (2017)

    Article  Google Scholar 

  15. Iovino, L., Pierantonio, A., Malavolta, I.: On the impact significance of metamodel evolution in MDE. J. Object Technol. 11(3), 1–33 (2012)

    Article  Google Scholar 

  16. Jouault, F., Allilaire, F., Bézivin, J., Kurtev, I.: ATL: a model transformation tool. Sci. Comput. Program. 72(1–2), 31–39 (2008)

    Article  MathSciNet  Google Scholar 

  17. Kessentini, W.: https://sites.google.com/site/coevolutionkessentini/data

  18. Kessentini, W., Sahraoui, H.A., Wimmer, M.: Automated metamodel/model co-evolution using a multi-objective optimization approach. In: ECMFA, pp. 138–155 (2016)

    Google Scholar 

  19. Khelladi, D.E., Bendraou, R., Hebig, R., Gervais, M.: A semi-automatic maintenance and co-evolution of OCL constraints with (meta)model evolution. J. Syst. Softw. 134, 242–260 (2017)

    Article  Google Scholar 

  20. Kruse, S.: On the use of operators for the co-evolution of metamodels and transformations. In: Models and Evolution Workshop (2011)

    Google Scholar 

  21. Kühne, T.: Matters of (meta-)modeling. Syst. Softw. Model 5(4), 369–385 (2006)

    Article  Google Scholar 

  22. Kusel, A., et al.: Systematic co-evolution of OCL expressions. In: APCCM, pp. 33–42 (2015)

    Google Scholar 

  23. Levendovszky, T., Balasubramanian, D., Narayanan, A., Karsai, G.: A novel approach to semi-automated evolution of DSML model transformation. In: SLE, pp. 23–41 (2010)

    Google Scholar 

  24. Lohmann, W., Riedewald, G.: Towards automatical migration of transformation rules after grammar extension. In: CSMR, pp. 30–39 (2003)

    Google Scholar 

  25. Lúcio, L., et al.: Model transformation intents and their properties. Softw. Syst. Model. 15(3), 647–684 (2016)

    Article  Google Scholar 

  26. Mendez, D., Etien, A., Muller, A., Casallas, R.: Towards transformation migration after metamodel evolution. In: Models and Evolution Workshop (2010)

    Google Scholar 

  27. Meyers, B., Vangheluwe, H.: A framework for evolution of modelling languages. Sci. Comput. Program. 76(12), 1223–1246 (2011)

    Article  Google Scholar 

  28. Rachmawati, L., Srinivasan, D.: Multiobjective evolutionary algorithm with controllable focus on the knees of the pareto front. IEEE Trans. Evol. Comput. 13(4), 810–824 (2009)

    Article  Google Scholar 

  29. Ruscio, D.D., Etzlstorfer, J., Iovino, L., Pierantonio, A., Schwinger, W.: Supporting variability exploration and resolution during model migration. In: ECMFA, pp. 231–246 (2016)

    Google Scholar 

  30. Selim, G.M.K., Cordy, J.R., Dingel, J.: How is ATL really used? Language feature use in the ATL zoo. In: MODELS, pp. 34–44 (2017)

    Google Scholar 

  31. Sendall, S., Kozaczynski, W.: Model transformation: the heart and soul of model-driven software development. IEEE Softw. 20(5), 42–45 (2003)

    Article  Google Scholar 

Download references

Acknowledgements

This work has been partially funded by the Austrian Federal Ministry of Science, Research and Economy, National Foundation for Research, Technology and Development, by the Austrian Science Fund (FWF) P 28519-N31, and by the Canada NSERC grant RGPIN/06702-2014.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Wael Kessentini .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2018 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Kessentini, W., Sahraoui, H., Wimmer, M. (2018). Automated Co-evolution of Metamodels and Transformation Rules: A Search-Based Approach. In: Colanzi, T., McMinn, P. (eds) Search-Based Software Engineering. SSBSE 2018. Lecture Notes in Computer Science(), vol 11036. Springer, Cham. https://doi.org/10.1007/978-3-319-99241-9_12

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-99241-9_12

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-99240-2

  • Online ISBN: 978-3-319-99241-9

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics