An Adapter-Based Approach to Co-evolve Generated SQL in Model-to-Text Transformations

  • Jokin García
  • Oscar Dìaz
  • Jordi Cabot
Part of the Lecture Notes in Computer Science book series (LNCS, volume 8484)

Abstract

Forward Engineering advocates for code to be generated dynamically through model-to-text transformations that target a specific platform. In this setting, platform evolution can leave the transformation, and hence the generated code, outdated. This issue is exacerbated by the perpetual beta phenomenon in Web 2.0 platforms where continuous delta releases are a common practice. Here, manual co-evolution becomes cumbersome. This paper looks at how to automate —fully or in part—the synchronization process between the platform and the transformation. To this end, the transformation process is split in two parts: the stable part is coded as a MOFScript transformation whereas the unstable side is isolated through an adapter that is implicitly called by the transformation at generation time. In this way, platform upgrades impact the adapter but leave the transformation untouched. The work focuses on DB schema evolution, and takes MediaWiki as a vivid case study. A first case study results in the upfront cost of using the adapter paying off after three releases MediaWiki upgrades.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Antkiewicz, M., Czarnecki, K.: Design space of heterogeneous synchronization. In: Lämmel, R., Visser, J., Saraiva, J. (eds.) GTTSE 2007. LNCS, vol. 5235, pp. 3–46. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  2. 2.
    Cicchetti, A., Di Ruscio, D., Eramo, R., Pierantonio, A.: Automating Co-evolution in Model-Driven Engineering. In: Enterprise Distributed Object Computing Conference (2008)Google Scholar
  3. 3.
    Cleve, A., Brogneaux, A.F., Hainaut, J.L.: A conceptual approach to database applications evolution. In: Parsons, J., Saeki, M., Shoval, P., Woo, C., Wand, Y. (eds.) ER 2010. LNCS, vol. 6412, pp. 132–145. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  4. 4.
    Cleve, A., Hainaut, J.: Co-transformations in database applications evolution. In: Lämmel, R., Saraiva, J., Visser, J. (eds.) GTTSE 2005. LNCS, vol. 4143, pp. 409–421. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  5. 5.
    Curino, C., Moon, H.J., Deutsch, A., Zaniolo, C.: Automating the database schema evolution process. VLDB J. 22(1), 73–98 (2013)CrossRefGoogle Scholar
  6. 6.
    Curino, C.A., Tanca, L., Moon, H.J., Zaniolo, C.: Schema evolution in wikipedia: toward a web information system benchmark. In: ICEIS (2008)Google Scholar
  7. 7.
    Miller, R.J., Hernandez, M.A., Haas, L.M., Yan, L., Ho, H.C.T., Fagin, R., Popa, L.: The clio project: managing heterogeneity. SIGMOD Rec. 30(1), 78–83 (2001)CrossRefGoogle Scholar
  8. 8.
    Oldevik, J., Haugen, Ø.: Higher-order transformations for product lines. In: SPLC, pp. 243–254. IEEE Computer Society (2007)Google Scholar
  9. 9.
    Puente, G., Díaz, O., Azanza, M.: Refactoring affordances in corporate wikis: a case for the use of mind maps. Enterprise Information Systems, 1–50 (2013)Google Scholar
  10. 10.
    Puente, G., Díaz, O.: Wiki refactoring as mind map reshaping. In: Ralyté, J., Franch, X., Brinkkemper, S., Wrycza, S. (eds.) CAiSE 2012. LNCS, vol. 7328, pp. 646–661. Springer, Heidelberg (2012)CrossRefGoogle Scholar
  11. 11.
    Ra, Y.G.: Relational schema evolution for program independency. In: Das, G., Gulati, V.P. (eds.) CIT 2004. LNCS, vol. 3356, pp. 273–281. Springer, Heidelberg (2004), http://dx.doi.org/10.1007/978-3-540-30561-3_29 CrossRefGoogle Scholar
  12. 12.
    Sneed, H.M.: Encapsulation of legacy software: A technique for reusing legacy software components. Annals of Software Engineering 9(1-4), 293–313 (2000)CrossRefGoogle Scholar
  13. 13.
    Thiran, P., Hainaut, J.L., Houben, G.J., Benslimane, D.: Wrapper-based evolution of legacy information systems. ACM Trans. Softw. Eng. Methodol. 15(4), 329–359 (2006)CrossRefGoogle Scholar
  14. 14.
    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)CrossRefGoogle Scholar
  15. 15.
    Velegrakis, Y., Miller, J., Popa, L.: Preserving mapping consistency under schema changes. The VLDB Journal 13(3), 274–293 (2004)CrossRefGoogle Scholar

Copyright information

© Springer International Publishing Switzerland 2014

Authors and Affiliations

  • Jokin García
    • 1
  • Oscar Dìaz
    • 1
  • Jordi Cabot
    • 2
  1. 1.Onekin Research GroupUniversity of the Basque Country (UPV/EHU)San SebastianSpain
  2. 2.Atlanmod, Ecolé des Mines de Nantes - INRIANantesFrance

Personalised recommendations