Skip to main content

Metamodel and Constraints Co-evolution: A Semi Automatic Maintenance of OCL Constraints

  • Conference paper
  • First Online:
Software Reuse: Bridging with Social-Awareness (ICSR 2016)

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

Included in the following conference series:

Abstract

Metamodels are core components of modeling languages to define structural aspects of a business domain. As a complement, OCL constraints are used to specify detailed aspects of the business domain, e.g. more than 750 constraints come with the UML metamodel. As the metamodel evolves, its OCL constraints may need to be co-evolved too. Our systematic analysis shows that semantically different resolutions can be applied depending not only on the metamodel changes, but also on the user intent and on the structure of the impacted constraints. In this paper, we investigate the reasons that lead to apply different resolutions. We then propose a co-evolution approach that offers alternative resolutions while allowing the user to choose the best applicable one. We evaluated our approach on the evolution of the UML case study. The results confirm the need of alternative resolutions along with user decision to cope with real co-evolution scenarios. The results show that our approach reaches 80 % of semantically correct co-evolution.

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 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.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.

    Graphical Modeling Framework http://www.eclipse.org/modeling/gmf.

  2. 2.

    https://pages.lip6.fr/Djamel.Khelladi/ICSR2016/.

  3. 3.

    % = ((deleted constraints + syntactically (respectively semantically) correct co-evolved constraints)/impacted constraints).

References

  1. Blanc, X., Mounier, I., Mougenot, A., Mens, T.: Detecting model inconsistency through operation-based model construction. In: ACM/IEEE 30th ICSE 2008, pp. 511–520 (2008)

    Google Scholar 

  2. Buttner, F., Bauerdick, H., Gogolla, M.: Towards transformation of integrity constraints and database states. In: DEXA, pp. 823–828 (2005)

    Google Scholar 

  3. Cabot, J., Conesa, J.: Automatic integrity constraint evolution due to model subtract operations. In: Wang, S., et al. (eds.) ER Workshops 2004. LNCS, vol. 3289, pp. 350–362. Springer, Heidelberg (2004)

    Chapter  Google Scholar 

  4. Cabot, J., Gogolla, M.: Object constraint language (OCL): a definitive guide. In: 12th SFM, Bertinoro, Italy, pp. 58–90 (2012)

    Google Scholar 

  5. Demuth, A., Lopez-Herrejon, R., Egyed, A.: Automatically generating and adapting model constraints to support co-evolution of design models. In: 27th IEEE/ACM ASE, pp. 302–305 (2012)

    Google Scholar 

  6. Demuth, A., Lopez-Herrejon, R.E., Egyed, A.: Supporting the co-evolution of metamodels and constraints through incremental constraint management. In: MODELS, pp. 287–303, January 2013

    Google Scholar 

  7. Hassam, K., Sadou, S., Gloahec, V.L., Fleurquin, R.: Assistance system for OCL constraints adaptation during metamodel evolution. In: CSMR, pp. 151–160. IEEE (2011)

    Google Scholar 

  8. Herrmannsdoerfer, M., Ratiu, D., Wachsmuth, G.: Language evolution in practice: the history of GMF. In: Brand, M., Gašević, D., Gray, J. (eds.) SLE 2009. LNCS, vol. 5969, pp. 3–22. Springer, Heidelberg (2010)

    Chapter  Google Scholar 

  9. Herrmannsdoerfer, M., Vermolen, S.D., Wachsmuth, G.: An extensive catalog of operators for the coupled evolution of metamodels and models. In: Malloy, B., Staab, S., van den Brand, M. (eds.) SLE 2010. LNCS, vol. 6563, pp. 163–182. Springer, Heidelberg (2011)

    Chapter  Google Scholar 

  10. Hutchinson, J., Whittle, J., Rouncefield, M., Kristoffersen, S.: Empirical assessment of MDE in industry. In: Proceedings of the 33rd International Conference on Software Engineering, pp. 471–480. ACM (2011)

    Google Scholar 

  11. Khelladi, D.E., Bendraou, R., Gervais, M.-P.: Ad-room: a tool for automatic detection of refactorings in object-oriented models. In: The 38th ICSE (2016)

    Google Scholar 

  12. Khelladi, D.E., Hebig, R., Bendraou, R., Robin, J., Gervais, M.-P.: Detecting complex changes during metamodel evolution. In: Zdravkovic, J., Kirikova, M., Johannesson, P. (eds.) CAiSE 2015. LNCS, vol. 9097, pp. 263–278. Springer, Heidelberg (2015)

    Chapter  Google Scholar 

  13. Kusel, A., Etzlstorfer, J., Kapsammer, E., Retschitzegger, W., Schoenboeck, J., Schwinger, W., Wimmer, M.: Systematic co-evolution of OCL expressions. In: 11th APCCM 2015, vol. 27, p. 30 (2015)

    Google Scholar 

  14. Langer, P., Wimmer, M., Brosch, P., Herrmannsdorfer, M., Seidl, M., Wieland, K., Kappel, G.: A posteriori operation detection in evolving software models. J. Syst. Softw. 86(2), 551–566 (2013)

    Article  Google Scholar 

  15. Mantz, F., Taentzer, G., Lamo, Y., Wolter, U.: Co-evolving meta-models and their instance models: a formal approach based on graph transformation. Sci. Comput. Program. 104, 2–43 (2015)

    Article  Google Scholar 

  16. Markovic, S., Baar, T.: Refactoring OCL annotated UML class diagrams. In: MODELS, pp. 280–294 (2005)

    Google Scholar 

  17. Markovic, S., Baar, T.: Refactoring OCL annotated UML class diagrams. Softw. Syst. Model 7(1), 25–47 (2008)

    Article  Google Scholar 

  18. Mezei, G., Levendovszky, T., Charaf, H.: An optimizing OCL compiler for metamodeling and model transformation environments. In: Sacha, K. (ed.) Software Engineering Techniques: Design for Quality, vol. 227, pp. 61–71. Springer, New York (2006)

    Chapter  Google Scholar 

  19. Morisio, M., Ezran, M., Tully, C.: Success and failure factors in software reuse. IEEE Trans. Softw. Eng. 28(4), 340–357 (2002)

    Article  MATH  Google Scholar 

  20. OMG. Meta object facility (MOF) (2011). www.omg.org/spec/MOF/

  21. OMG. Object constraints language (OCL) (2015). www.omg.org/spec/OCL/

  22. OMG. Query/views/transformations (QVT) (2015). www.omg.org/spec/QVT/

  23. OMG. Unified modeling language (UML) (2015). www.omg.org/spec/UML/

  24. Steinberg, D., Budinsky, F., Merks, E., Paternostro, M.: EMF: Eclipse Modeling Framework. Pearson Education, Upper Saddle River (2008)

    Google Scholar 

  25. Wachsmuth, G.: Metamodel adaptation and model co-adaptation. In: Ernst, E. (ed.) ECOOP 2007. LNCS, vol. 4609, pp. 600–624. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  26. Wohlin, C., Runeson, P., Höst, M., Ohlsson, M.C., Regnell, B., Wesslén, A.: Experimentation in Software Engineering. Springer, Heidelberg (2012)

    Book  MATH  Google Scholar 

Download references

Acknowledgment

The research leading to these results has received funding from the industrial innovation Project MoNoGe under grant FUI - AAP no. 15.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Djamel Eddine Khelladi .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2016 Springer International Publishing Switzerland

About this paper

Cite this paper

Khelladi, D.E., Hebig, R., Bendraou, R., Robin, J., Gervais, MP. (2016). Metamodel and Constraints Co-evolution: A Semi Automatic Maintenance of OCL Constraints. In: Kapitsaki, G., Santana de Almeida, E. (eds) Software Reuse: Bridging with Social-Awareness. ICSR 2016. Lecture Notes in Computer Science(), vol 9679. Springer, Cham. https://doi.org/10.1007/978-3-319-35122-3_22

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-35122-3_22

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-35121-6

  • Online ISBN: 978-3-319-35122-3

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics