Heterogeneous Coupled Evolution of Software Languages

  • Sander Vermolen
  • Eelco Visser
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5301)


As most software artifacts, meta-models can evolve. Their evolution requires conforming models to co-evolve along with them. Coupled evolution supports this. Its applicability is not limited to the modeling domain. Other domains are for example evolving grammars or database schemas. Existing approaches to coupled evolution focus on a single, homogeneous domain. They solve the co-evolution problems locally and repeatedly. In this paper we present a systematic, heterogeneous approach to coupled evolution. It provides an automatically derived domain specific transformation language; a means of executing transformations at the top level; a derivation of the coupled bottom level transformation; and it allows for generic abstractions from elementary transformations. The feasibility of the architecture is evaluated by applying it to data model evolution.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Alves, T., Silva, P., Visser, J.: Constraint-aware schema transformation. In: Ninth International Workshop on Rule-Based Programming (Rule 2008) (2008)Google Scholar
  2. 2.
    Berdaguer, P., Cunha, A., Pacheco, H., Visser, J.: Coupled schema transformation and data conversion for XML and SQL. In: Hanus, M. (ed.) PADL 2007. LNCS, vol. 4354, pp. 290–304. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  3. 3.
    Clark, J., DeRose, S., et al.: XML Path Language (XPath). W3C Recommendation 16 (1999)Google Scholar
  4. 4.
    Cunha, A., Oliveira, J., Visser, J.: Type-safe two-level data transformation. In: Misra, J., Nipkow, T., Sekerinski, E. (eds.) FM 2006. LNCS, vol. 4085, pp. 284–299. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  5. 5.
    Eclipse Foundation. Eclipse Modeling Framework Project (EMF) (2008), http://eclipse.org/emf
  6. 6.
    Favre, J.: Meta-model and model co-evolution within the 3D software space. In: Evolution of Large-scale Industrial Software Applications (ELISA 2003), pp. 98–109 (2003)Google Scholar
  7. 7.
    Gruschko, B., Kolovos, D.S., Paige, R.F.: Towards synchronizing models with evolving metamodels. In: Workshop on Model-Driven Software Evolution at CSMR 2007 (2007)Google Scholar
  8. 8.
    Gupta, A., Mumick, I.S., Subrahmanian, V.S.: Maintaining views incrementally. In: International conference on management of data (SIGMOD 1993), pp. 157–166. ACM, New York (1993)CrossRefGoogle Scholar
  9. 9.
    Hearnden, D., Lawley, M., Raymond, K.: Incremental model transformation for the evolution of model-driven systems. In: Nierstrasz, O., Whittle, J., Harel, D., Reggio, G. (eds.) MoDELS 2006. LNCS, vol. 4199, pp. 321–335. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  10. 10.
    Herrmannsdörfer, M.: Metamodels and models. Master’s thesis, München University of technology, München, Germany (July 2007)Google Scholar
  11. 11.
    Hibernate. Relational persistence for Java and.NET (2008), http://www.hibernate.org
  12. 12.
    Hoßler, J., Soden, M., Eichler, H.: Coevolution of models, metamodels and transformations. In: Bab, S., Gulden, J., Noll, T., Wieczorek, T. (eds.) Models and Human Reasoning, Berlin, pp. 129–154. Wissenschaft und Technik Verlag (2005)Google Scholar
  13. 13.
    Janssen, N.: Transformation tool composition. Master’s thesis, Institute of Information and Computing Sciences Utrecht University, Utrecht, The Netherlands (March 2005)Google Scholar
  14. 14.
    Lämmel, R.: Coupled Software Transformations (Extended Abstract). In: First International Workshop on Software Evolution Transformations (November 2004)Google Scholar
  15. 15.
    Lämmel, R., Lohmann, W.: Format Evolution. In: Reverse Engineering for Information Systems (RETIS 2001). books@ocg.at, vol. 155, pp. 113–134. OCG (2001)Google Scholar
  16. 16.
    Object Management Group (OMG). Meta Object Facility (MOF) Core Specification - Version 2.0 (January 2006)Google Scholar
  17. 17.
    Object Management Group (OMG). MOF QVT Final Adopted Specification (March 2007)Google Scholar
  18. 18.
    Pizka, M., Jurgens, E.: Tool-supported multi-level language evolution. In: Tomi Männistö, E.N., Raatikainen, M. (eds.) Software and Services Variability Management Workshop, Helsinki, Finland. Helsinki University of Technology Software Business and Engineering Institute Research Reports, vol. 3, pp. 48–67 (April 2007)Google Scholar
  19. 19.
    Soley, R., et al.: Model driven architecture. OMG white paper 308 (2000)Google Scholar
  20. 20.
  21. 21.
    Visser, E.: Program transformation with Stratego/XT: Rules, strategies, tools, and systems in StrategoXT-0.9. In: Lengauer, C., Batory, D., Consel, C., Odersky, M. (eds.) Domain-Specific Program Generation. LNCS, vol. 3016, pp. 216–238. Springer, Heidelberg (2004)Google Scholar
  22. 22.
    Visser, E.: WebDSL: A case study in domain-specific language engineering. In: Lammel, R., Saraiva, J., Visser, J. (eds.) GTTSE 2007. LNCS, vol. 5235. Springer, Heidelberg (2008)Google Scholar
  23. 23.
    Wachsmuth, G.: Metamodel adaptation and model co-adaptation. In: Ernst, E. (ed.) ECOOP 2007. LNCS, vol. 4609, pp. 600–624. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  24. 24.
    Xiong, Y., Liu, D., Hu, Z., Zhao, H., Takeichi, M., Mei, H.: Towards automatic model synchronization from model transformations. In: Automated Software Engineering (ASE 2007), pp. 164–173. ACM, New York (2007)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2008

Authors and Affiliations

  • Sander Vermolen
    • 1
  • Eelco Visser
    • 1
  1. 1.Software Engineering Research GroupDelft University of TechnologyThe Netherlands

Personalised recommendations