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.
Similar content being viewed by others
References
Back R.-J., Wright J.: Contracts, games, and refinement. Inf. Comput. 156(1-2), 25–45 (2000)
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)
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)
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)
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)
Egyed, A.: Instant consistency checking for the uml. In: Proceeding of the 28th International Conference on Software Engineering, pp. 381–390 (2006)
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)
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 2008
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)
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)
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)
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)
Lucas F.J., Molina F., Toval A.: A systematic review of uml model consistency management. Inf. Softw. Technol. 51(12), 1631–1645 (2009)
Martin D.A.: Borel determinacy. Ann. Math. 102(2), 363–371 (1975)
OMG.: MOF2.0 query/view/transformation (QVT) version 1.1. OMG document formal/2009-12-05, 2009. http://www.omg.org
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)
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)
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)
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)
Stevens P.: Bidirectional model transformations in QVT: semantic issues and open questions. J. Softw. Syst. Model. 9(1), 7–20 (2010)
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)
Tenzer, J., Stevens, P.: GUIDE: games with UML for interactive design exploration. J. Knowl. Based Syst. 20(7) (2007)
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)
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)
Author information
Authors and Affiliations
Corresponding author
Additional information
Communicated by Richard Paige, Jeff Gray, and Dang Van Hung.
Rights and permissions
About this article
Cite this article
Stevens, P. A simple game-theoretic approach to checkonly QVT Relations. Softw Syst Model 12, 175–199 (2013). https://doi.org/10.1007/s10270-011-0198-8
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10270-011-0198-8