Skip to main content

Towards Bidirectional Higher-Order Transformation for Model-Driven Co-evolution

  • Conference paper
  • First Online:
Model-Driven Engineering and Software Development (MODELSWARD 2014)

Abstract

In model-driven development (MDD), numerous metamodels, models, and model transformations need to be taken into account. These MDD-based artifacts—although highly interdependent—are autonomously maintained. Changes in one artifact (e.g., in a model) are not automatically reflected in other dependent artifacts (e.g., in a model transformation). The barrier for a tight integration of MDD-based artifacts stems from two limitations of current approaches. On the one hand, model transformations are unidirectional and changes can be propagated in one direction only. On the other hand, changes can only be propagated into output artifacts of transformations, not into transformation definitions themselves. In order to overcome these co-evolution problems, our approach is based on establishing bidirectional transformations (BX) between modeling artifacts and on applying higher-order transformations (HOTs) on first-class model representations of transformation specifications. In this paper, we present a generic approach and provide initial prototypes for an integrated tool support which integrates BX into well-established Eclipse-based MDD frameworks, thereby neither being restricted to a specific modeling nor model transformation language.

This is an extended version of the paper published as Hoisl et al. [1].

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.

    All software artifacts are publicly available at http://www.biglab.org and http://nm.wu.ac.at/modsec.

  2. 2.

    This separate work of integrating ATL and BX is performed in collaboration with the AtlanMod team, uses the same BX framework (GRoundTram), but in contrast focuses on unidirectional transformations from ATL to \(\mathrm{UnQL}^{+}\) with a concrete semantic alignment between these two technical spaces.

  3. 3.

    All software artifacts can be obtained from the URLs mentioned in the footnote of Sect. 1.

References

  1. Hoisl, B., Hu, Z., Hidaka, S.: Towards co-evolution in model-driven development via bidirectional higher-order transformation. In: Proceedings of the 2nd International Conference on Model-Driven Engineering and Software Development, pp. 466–471. SciTePress (2014)

    Google Scholar 

  2. Mellor, S., Clark, A., Futagami, T.: Model-driven development - guest editor’s introduction. IEEE Softw. 20, 14–18 (2003)

    Article  Google Scholar 

  3. Stahl, T., Völter, M.: Model-Driven Software Development: Technology, Engineering, Management. Wiley, New York (2006)

    MATH  Google Scholar 

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

    Article  Google Scholar 

  5. Schmidt, D.C.: Guest editor’s introduction: model-driven engineering. Computer 39, 25–31 (2006)

    Article  Google Scholar 

  6. Di Ruscio, D., Iovino, L., Pierantonio, A.: Coupled evolution in model-driven engineering. IEEE Softw. 29, 78–84 (2012)

    Article  MATH  Google Scholar 

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

    Article  Google Scholar 

  8. Stevens, P.: Bidirectional model transformations in QVT: semantic issues and open questions. Softw. Syst. Model. 9, 7–20 (2010)

    Article  Google Scholar 

  9. Di Ruscio, D., Iovino, L., Pierantonio, A.: What is needed for managing co-evolution in MDE? In: Proceedings of the 2nd International Workshop on Model Comparison in Practice, pp. 30–38. ACM (2011)

    Google Scholar 

  10. Czarnecki, K., Foster, J.N., Hu, Z., Lämmel, R., Schürr, A., Terwilliger, J.F.: Bidirectional transformations: a cross-discipline perspective. In: Paige, R.F. (ed.) ICMT 2009. LNCS, vol. 5563, pp. 260–283. Springer, Heidelberg (2009)

    Chapter  Google Scholar 

  11. Tisi, M., Jouault, F., Fraternali, P., Ceri, S., Bézivin, J.: On the use of higher-order model transformations. In: Paige, R.F., Hartman, A., Rensink, A. (eds.) ECMDA-FA 2009. LNCS, vol. 5562, pp. 18–33. Springer, Heidelberg (2009)

    Chapter  Google Scholar 

  12. Hidaka, S., Hu, Z., Kato, H., Nakano, K.: Towards a compositional approach to model transformation for software development. In: Proceedings of the 24th Symposium on Applied Computing, pp. 468–475. ACM (2009)

    Google Scholar 

  13. Hidaka, S., Hu, Z., Inaba, K., Kato, H., Nakano, K.: GRoundTram: an integrated framework for developing well-behaved bidirectional model transformations. In: Proceedings of the 26th International Conference on Automated Software Engineering, pp. 480–483. IEEE (2011)

    Google Scholar 

  14. Sasano, I., Hu, Z., Hidaka, S., Inaba, K., Kato, H., Nakano, K.: Toward bidirectionalization of ATL with GRoundTram. In: Cabot, J., Visser, E. (eds.) ICMT 2011. LNCS, vol. 6707, pp. 138–151. Springer, Heidelberg (2011)

    Chapter  Google Scholar 

  15. Hoisl, B., Sobernig, S., Strembeck, M.: Higher-order rewriting of model-to-text templates for integrating domain-specific modeling languages. In: Proceedings of the 1st International Conference on Model-Driven Engineering and Software Development, pp. 49–61. SciTePress (2013)

    Google Scholar 

  16. Steinberg, D., Budinsky, F., Paternostro, M., Merks, E.: EMF: Eclipse Modeling Framework, 2nd edn. Addison-Wesley, Reading (2008)

    Google Scholar 

  17. Jouault, F., Kurtev, I.: Transforming models with ATL. In: Bruel, J.-M. (ed.) MoDELS 2005. LNCS, vol. 3844, pp. 128–138. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  18. Kolovos, D., Rose, L., GarcĂ­a-DomĂ­nguez, A., Paige, R.: The Epsilon book (2015). http://www.eclipse.org/epsilon/doc/book/

  19. Object Management Group: OMG meta object facility (MOF) core specification (2015). http://www.omg.org/spec/MOF, version 2.5, formal/2015-06-05

  20. Object Management Group: Meta object facility (MOF) 2.0 query/view/transformation specification (2015). http://www.omg.org/spec/QVT, version 1.2, formal/2015-02-01

  21. Object Management Group: MOF model to text transformation language (2008). http://www.omg.org/spec/MOFM2T, version 1.0, formal/2008-01-16

  22. Hu, Z., Schurr, A., Stevens, P., Terwilliger, J.F.: Dagstuhl seminar on bidirectional transformations (BX). SIGMOD Rec. 40, 35–39 (2011)

    Article  Google Scholar 

  23. Bézivin, J., Gerbé, O.: Towards a precise definition of the OMG/MDA framework. In: Proceedings of the 16th International Conference on Automated Software Engineering, pp. 273–280. IEEE (2001)

    Google Scholar 

  24. Object Management Group: MDA guide (2003). http://www.omg.org/cgi-bin/doc?omg/03-06-01, version 1.0.1, omg/2003-06-01

  25. OMG unified modeling language (OMG UML), superstructure (2015). http://www.omg.org/spec/UML, version 2.5, formal/2015-03-01

  26. Yu, Y., Lin, Y., Hu, Z., Hidaka, S., Kato, H., Montrieux, L.: Maintaining invariant traceability through bidirectional transformations. In: Proceedings of the 34th International Conference on Software Engineering, pp. 540–550. IEEE (2012)

    Google Scholar 

  27. Schürr, A.: Specification of graph translators with triple graph grammars. In: Mayr, E.W., Schmidt, G., Tinhofer, G. (eds.) WG 1994. LNCS, vol. 903, pp. 151–163. Springer, Heidelberg (1995)

    Chapter  Google Scholar 

  28. Giese, H., Wagner, R.: From model transformation to incremental bidirectional model synchronization. Softw. Syst. Model. 8, 21–43 (2009)

    Article  Google Scholar 

  29. 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 

  30. Wimmer, M., Kusel, A., Schönböck, J., Retschitzegger, W., Schwinger, W., Kappel, G.: On using inplace transformations for model co-evolution. In: Proceedings of the 2nd International Workshop on Model Transformation with ATL, INRIA & Ecole des Mines de Nantes (2010)

    Google Scholar 

  31. Herrmannsdoerfer, M., Benz, S., Juergens, E.: COPE - automating coupled evolution of metamodels and models. In: Drossopoulou, S. (ed.) ECOOP 2009. LNCS, vol. 5653, pp. 52–76. Springer, Heidelberg (2009)

    Chapter  Google Scholar 

  32. Buneman, P., Fernandez, M., Suciu, D.: UnQL: a query language and algebra for semistructured data based on structural recursion. VLDB J. 9, 76–110 (2000)

    Article  Google Scholar 

  33. Hidaka, S., Hu, Z., Inaba, K., Kato, H., Nakano, K.: GRoundTram: an integrated framework for developing well-behaved bidirectional model transformations. Prog. Inf. 10, 131–148 (2013)

    Article  Google Scholar 

  34. Wei, W.: EpsilonLabs: Epsilon static analysis (2012). http://code.google.com/p/epsilonlabs/wiki/EpsilonStaticAnalysis

  35. Sobernig, S., Hoisl, B., Strembeck, M.: Requirements-driven testing of domain-specific core language models using scenarios. In: Proceedings of the 13th International Conference on Quality Software, pp. 163–172. IEEE (2013)

    Google Scholar 

  36. Hoisl, B., Sobernig, S., Strembeck, M.: Natural-language scenario descriptions for testing core language models of domain-specific languages. In: Proceedings of the 2nd International Conference on Model-Driven Engineering and Software Development, pp. 356–367. SciTePress (2014)

    Google Scholar 

  37. Hoisl, B., Sobernig, S., Strembeck, M.: Comparing three notations for defining scenario-based model tests: a controlled experiment. In: Proceedings of the 9th International Conference on the Quality of Information and Communications Technology, pp. 95–104. IEEE (2014)

    Google Scholar 

  38. Hidaka, S., Tisi, M., Cabot, J., Hu, Z.: Feature-based classification of bidirectional transformation approaches. Softw. Syst. Model. (2015)

    Google Scholar 

Download references

Acknowledgements

This work has partly been funded by the Austrian Research Promotion Agency (FFG) of the Austrian Federal Ministry for Transport, Innovation and Technology (BMVIT) through the Competence Centers for Excellent Technologies (COMET K1) initiative and the FIT-IT program.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Bernhard Hoisl .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2015 Springer International Publishing Switzerland

About this paper

Cite this paper

Hoisl, B., Hu, Z., Hidaka, S. (2015). Towards Bidirectional Higher-Order Transformation for Model-Driven Co-evolution. In: Hammoudi, S., Pires, L., Filipe, J., das Neves, R. (eds) Model-Driven Engineering and Software Development. MODELSWARD 2014. Communications in Computer and Information Science, vol 506. Springer, Cham. https://doi.org/10.1007/978-3-319-25156-1_10

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-25156-1_10

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-25155-4

  • Online ISBN: 978-3-319-25156-1

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics