Software & Systems Modeling

, Volume 12, Issue 1, pp 175–199

A simple game-theoretic approach to checkonly QVT Relations

Special Section Paper

Abstract

The QVT Relations (QVT-R) transformation language allows the definition of bidirectional model transformations, which are required in cases where two (or more) models must be kept consistent in the face of changes to either or both. A QVT-R transformation can be used either in checkonly mode, to determine whether a target model is consistent with a given source model, or in enforce mode, to change the target model. A precise understanding of checkonly mode transformations is prerequisite to a precise understanding of enforce mode transformations, and this is the focus of this paper. In order to give semantics to checkonly QVT-R transformations, we need to consider the overall structure of the transformation as given by when and where clauses, and the role of trace classes. In the standard, the semantics of QVT-R are given both directly, and by means of a translation to QVT Core, a language which is intended to be simpler. In this paper, we argue that there are irreconcilable differences between the intended semantics of QVT-R and those of QVT Core, so that no translation from QVT-R to QVT Core can be semantics-preserving, and hence no such translation can be helpful in defining the semantics of QVT-R. Treating QVT-R directly, we propose a simple game-theoretic semantics. We demonstrate its behaviour on examples and show how it can be used to prove an example result comparing two QVT-R transformations. We demonstrate that consistent models may not possess a single trace model whose objects can be read as traceability links in either direction. We briefly discuss the effect of variations in the rules of the game, to elucidate some design choices available to the designers of the QVT-R language.

Keywords

Bidirectional model transformation QVT Relations QVT Core Games Semantics Consistency checking 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Back R.-J., Wright J.: Contracts, games, and refinement. Inf. Comput. 156(1-2), 25–45 (2000)MATHCrossRefGoogle Scholar
  2. 2.
    Boronat, A., Carsí, J.A., Ramos, I.: Algebraic specification of a model transformation engine. In: Baresi, L., Heckel, R. (eds.) Fundamental Approaches to Software Engineering, 9th International Conference, FASE 2006, Held as Part of the Joint European Conferences on Theory and Practice of Software, ETAPS 2006, Vienna, Austria, March 27–28, 2006, Proceedings, Lecture Notes in Computer Science, vol. 3922, pp. 262–277. Springer, New York (2006)Google Scholar
  3. 3.
    Cabot J., Clarisó R., Guerra E., de Lara J.: Verification and validation of declarative model-to-model transformations through invariants. J. Syst. Softw. 83(2), 283–302 (2010)CrossRefGoogle Scholar
  4. 4.
    Czarnecki, K., Foster, J.N., Hu, Z., Lämmel, R., Schürr, A., Terwilliger, J.F.: Bidirectional transformations: a cross-discipline perspective. Grace meeting, notes, state of the, art, outlook. In: Paige, R.F. (ed.) Theory and Practice of Model Transformations, Second International Conference, ICMT 2009, Zurich, Switzerland, June 29–30, 2009. Proceedings. Lecture Notes in Computer Science, vol. 5563, pp. 260–283. Springer, New York (2009)Google Scholar
  5. 5.
    de Lara J., Guerra E.: Formal support for qvt-relations with coloured petri nets. In: Schürr, A., Selic, B. (eds) Proceedings of MODELS’09. Lecture Notes in Computer Science vol. 5795, pp. 256–270. Springer, New York (2009)Google Scholar
  6. 6.
    Egyed, A.: Instant consistency checking for the uml. In: Proceeding of the 28th International Conference on Software Engineering, pp. 381–390 (2006)Google Scholar
  7. 7.
    Foster J.N., Greenwald M.B., Moore J.T., Pierce B.C., Schmitt A.: Combinators for bi-directional tree transformations: a linguistic approach to the view update problem. ACM Trans. Program. Lang. Syst. 29(3), 17 (2007)CrossRefGoogle Scholar
  8. 8.
    Garcia, M.: Formalization of QVT-Relations: OCL-based static semantics and alloy-based validation. In: Proceedings of the Second Workshop on MDSD Today, pp. 21–30, October 2008Google Scholar
  9. 9.
    Glabbeek R.J.: The linear time—branching time spectrum I; the semantics of concrete, sequential processes. In: Bergstra, J.A., Ponse, A., Smolka, S.A. (eds) Handbook of Process Algebra, Chap. 1, pp. 3–99. Elsevier, Amsterdam (2001)CrossRefGoogle Scholar
  10. 10.
    Grädel, E., Thomas, W., Wilke, T. (eds): Automata, Logics, and Infinite Games: A Guide to Current Research. LNCS, vol. 2500. Springer, New york (2002)Google Scholar
  11. 11.
    Greenyer J., Kindler E.: Comparing relational model transformation technologies: implementing query/view/transformation with triple graph grammars. Softw. Syst. Model. 9(1), 21–46 (2010)CrossRefGoogle Scholar
  12. 12.
    Kiegeland, J., Eichler, H.: medini QVT workshop. http://projects.ikv.de/qvt/downloads/22. February 2008. Slides presented by ikv++ technologies at the QVT Workshop in Enschede, Telematica Institute (2008)
  13. 13.
    Lucas F.J., Molina F., Toval A.: A systematic review of uml model consistency management. Inf. Softw. Technol. 51(12), 1631–1645 (2009)CrossRefGoogle Scholar
  14. 14.
    Martin D.A.: Borel determinacy. Ann. Math. 102(2), 363–371 (1975)MATHCrossRefGoogle Scholar
  15. 15.
    OMG.: MOF2.0 query/view/transformation (QVT) version 1.1. OMG document formal/2009-12-05, 2009. http://www.omg.org
  16. 16.
    Romeikat, R., Roser, S., Müllender, P., Bauer, B.: Translation of QVT relations into QVT operational mappings. In: ICMT ’08: Proceedings of the 1st international conference on Theory and Practice of Model Transformations, pp. 137–151. Springer, Berlin (2008)Google Scholar
  17. 17.
    Stevens, P.: A landscape of bidirectional model transformations. In: Generative and Transformational Techniques in Software Engineering II. Lecture Notes in Computer Science, vol. 5235, pp. 408–424. Springer, Berlin (2008)Google Scholar
  18. 18.
    Stevens, P.: Towards an algebraic theory of bidirectional transformations. In: Proceedings of the International Conference on Graph Transformations, ICGT’08. Lecture Notes in Computer Science, vol. 5214, pp. 1–17. Springer, Berlin (2008, September)Google Scholar
  19. 19.
    Stevens, P.: A simple game-theoretic approach to checkonly QVT Relations. In: Proceedings of the International Conference on Model Transformations, ICMT’09. Lecture Notes in Computer Science. Springer, Berlin (2009, June)Google Scholar
  20. 20.
    Stevens P.: Bidirectional model transformations in QVT: semantic issues and open questions. J. Softw. Syst. Model. 9(1), 7–20 (2010)CrossRefGoogle Scholar
  21. 21.
    Stirling, C.: Bisimulation, model checking and other games. In: Notes for Mathfit Instructural Meeting on Games and Computation, 1997. http://homepages.inf.ed.ac.uk/cps/mathfit.ps (1997)
  22. 22.
    Tenzer, J., Stevens, P.: GUIDE: games with UML for interactive design exploration. J. Knowl. Based Syst. 20(7) (2007)Google Scholar
  23. 23.
    Wimmer, M., Kappel, G., Schönböck, J., Kusel, A., Retschitzegger, W., Schwinger, W.: A petri net based debugging environment for qvt relations. In: ASE 2009, 24th IEEE/ACM International Conference on Automated Software Engineering, Auckland, New Zealand, November 16–20, 2009, pp. 3–14. IEEE Computer Society (2009)Google Scholar
  24. 24.
    Wimmer, M., Kusel, A., Schoenboeck, J., Kappel, G., Retschitzegger, W., Schwinger, W.: Reviving qvt relations: model-based debugging using colored petri nets. In: MODELS ’09: Proceedings of the 12th International Conference on Model Driven Engineering Languages and Systems, pp. 727–732, Berlin, Heidelberg. Springer, Berlin (2009)Google Scholar

Copyright information

© Springer-Verlag 2011

Authors and Affiliations

  1. 1.Laboratory for Foundations of Computer Science, School of InformaticsUniversity of EdinburghEdinburghScotland

Personalised recommendations