Skip to main content
Erschienen in: Automated Software Engineering 1/2013

01.03.2013

Automated verification of model transformations based on visual contracts

verfasst von: Esther Guerra, Juan de Lara, Manuel Wimmer, Gerti Kappel, Angelika Kusel, Werner Retschitzegger, Johannes Schönböck, Wieland Schwinger

Erschienen in: Automated Software Engineering | Ausgabe 1/2013

Einloggen

Aktivieren Sie unsere intelligente Suche, um passende Fachinhalte oder Patente zu finden.

search-config
loading …

Abstract

Model-Driven Engineering promotes the use of models to conduct the different phases of the software development. In this way, models are transformed between different languages and notations until code is generated for the final application. Hence, the construction of correct Model-to-Model (M2M) transformations becomes a crucial aspect in this approach.
Even though many languages and tools have been proposed to build and execute M2M transformations, there is scarce support to specify correctness requirements for such transformations in an implementation-independent way, i.e., irrespective of the actual transformation language used.
In this paper we fill this gap by proposing a declarative language for the specification of visual contracts, enabling the verification of transformations defined with any transformation language. The verification is performed by compiling the contracts into QVT to detect disconformities of transformation results with respect to the contracts. As a proof of concept, we also report on a graphical modeling environment for the specification of contracts, and on its use for the verification of transformations in several case studies.

Sie haben noch keine Lizenz? Dann Informieren Sie sich jetzt über unsere Produkte:

Springer Professional "Wirtschaft+Technik"

Online-Abonnement

Mit Springer Professional "Wirtschaft+Technik" erhalten Sie Zugriff auf:

  • über 102.000 Bücher
  • über 537 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Maschinenbau + Werkstoffe
  • Versicherung + Risiko

Jetzt Wissensvorsprung sichern!

Springer Professional "Technik"

Online-Abonnement

Mit Springer Professional "Technik" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 390 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Maschinenbau + Werkstoffe




 

Jetzt Wissensvorsprung sichern!

Springer Professional "Wirtschaft"

Online-Abonnement

Mit Springer Professional "Wirtschaft" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 340 Zeitschriften

aus folgenden Fachgebieten:

  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Versicherung + Risiko




Jetzt Wissensvorsprung sichern!

Literatur
Zurück zum Zitat Aranega, V., Mottu, J.-M., Etien, A., Dekeyser, J.-L.: Using trace to situate errors in model transformations. In: Software and Data Technologies. Communications in Computer and Information Science, vol. 50, pp. 137–149. Springer, Berlin (2011) CrossRef Aranega, V., Mottu, J.-M., Etien, A., Dekeyser, J.-L.: Using trace to situate errors in model transformations. In: Software and Data Technologies. Communications in Computer and Information Science, vol. 50, pp. 137–149. Springer, Berlin (2011) CrossRef
Zurück zum Zitat Balogh, A., Bergmann, G., Csertán, G., Gönczy, L., Horváth, A., Majzik, I., Pataricza, A., Polgár, B., Ráth, I., Varró, D., Varró, G.: Workflow-driven tool integration using model transformations. In: Graph Transformations and Model-Driven Engineering. LNCS, vol. 5765, pp. 224–248. Springer, Berlin (2010) CrossRef Balogh, A., Bergmann, G., Csertán, G., Gönczy, L., Horváth, A., Majzik, I., Pataricza, A., Polgár, B., Ráth, I., Varró, D., Varró, G.: Workflow-driven tool integration using model transformations. In: Graph Transformations and Model-Driven Engineering. LNCS, vol. 5765, pp. 224–248. Springer, Berlin (2010) CrossRef
Zurück zum Zitat Baudry, B., Dinh-Trong, T., Mottu, J., Simmonds, D., France, R., Ghosh, S., Fleurey, F., Le Traon, Y.: Model transformation testing challenges. In: ECMDA Workshop on Integration of Model Driven Development and Model Driven Testing, vol. 92 (2006) Baudry, B., Dinh-Trong, T., Mottu, J., Simmonds, D., France, R., Ghosh, S., Fleurey, F., Le Traon, Y.: Model transformation testing challenges. In: ECMDA Workshop on Integration of Model Driven Development and Model Driven Testing, vol. 92 (2006)
Zurück zum Zitat Baudry, B., Ghosh, S., Fleurey, F., France, R., Le Traon, Y., Mottu, J.-M.: Barriers to systematic model transformation testing. Commun. ACM 53, 139–143 (2010) CrossRef Baudry, B., Ghosh, S., Fleurey, F., France, R., Le Traon, Y., Mottu, J.-M.: Barriers to systematic model transformation testing. Commun. ACM 53, 139–143 (2010) CrossRef
Zurück zum Zitat Beugnard, A., Jézéquel, J.-M., Plouzeau, N., Watkins, D.: Making components contract aware. Computer 32, 38–45 (1999) CrossRef Beugnard, A., Jézéquel, J.-M., Plouzeau, N., Watkins, D.: Making components contract aware. Computer 32, 38–45 (1999) CrossRef
Zurück zum Zitat Bézivin, J.: On the unification power of models. Softw. Syst. Model. 4(2), 31 (2005) CrossRef Bézivin, J.: On the unification power of models. Softw. Syst. Model. 4(2), 31 (2005) CrossRef
Zurück zum Zitat Bézivin, J., Rumpe, B., Schürr, A., Tratt, L.: Model transformations in practice. In: Workshop of MoDELS’05 (2005) Bézivin, J., Rumpe, B., Schürr, A., Tratt, L.: Model transformations in practice. In: Workshop of MoDELS’05 (2005)
Zurück zum Zitat Briand, L.C., Labiche, Y., Sun, H.: Investigating the use of analysis contracts to improve the testability of object-oriented code. Softw. Pract. Exp. 33(7), 637–672 (2003) MATHCrossRef Briand, L.C., Labiche, Y., Sun, H.: Investigating the use of analysis contracts to improve the testability of object-oriented code. Softw. Pract. Exp. 33(7), 637–672 (2003) MATHCrossRef
Zurück zum Zitat Brottier, E., Fleurey, F., Steel, J., Baudry, B., Traon, Y.L.: Metamodel-based test generation for model transformations: an algorithm and a tool. In: ISSRE’06, pp. 85–94. IEEE Comput. Soc., Los Alamitos (2006) Brottier, E., Fleurey, F., Steel, J., Baudry, B., Traon, Y.L.: Metamodel-based test generation for model transformations: an algorithm and a tool. In: ISSRE’06, pp. 85–94. IEEE Comput. Soc., Los Alamitos (2006)
Zurück zum Zitat 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) CrossRef 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) CrossRef
Zurück zum Zitat Cariou, E., Marvie, R., Seinturier, L., Duchien, L.: OCL for the specification of model transformation contracts. In: Workshop on OCL and Model Driven Engineering UML’04, vol. 12, pp. 69–83 (2004) Cariou, E., Marvie, R., Seinturier, L., Duchien, L.: OCL for the specification of model transformation contracts. In: Workshop on OCL and Model Driven Engineering UML’04, vol. 12, pp. 69–83 (2004)
Zurück zum Zitat Cariou, E., Belloir, N., Barbier, F., Djemam, N.: OCL contracts for the verification of model transformations. In: ECEASST, vol. 24 (2009) Cariou, E., Belloir, N., Barbier, F., Djemam, N.: OCL contracts for the verification of model transformations. In: ECEASST, vol. 24 (2009)
Zurück zum Zitat Czarnecki, K., Helsen, S.: Feature-based survey of model transformation approaches. IBM Syst. J. 45(3), 621–645 (2006) CrossRef Czarnecki, K., Helsen, S.: Feature-based survey of model transformation approaches. IBM Syst. J. 45(3), 621–645 (2006) CrossRef
Zurück zum Zitat Fishman, G.S.: Discrete-Event Simulation: Modeling, Programming, and Analysis. Springer, Berlin (2001) MATH Fishman, G.S.: Discrete-Event Simulation: Modeling, Programming, and Analysis. Springer, Berlin (2001) MATH
Zurück zum Zitat Fleurey, F., Steel, J., Baudry, B.: Validation in model-driven engineering: testing model transformations. In: MoDeVa’04, pp. 29–40. IEEE Comput. Soc., Los Alamitos (2004) Fleurey, F., Steel, J., Baudry, B.: Validation in model-driven engineering: testing model transformations. In: MoDeVa’04, pp. 29–40. IEEE Comput. Soc., Los Alamitos (2004)
Zurück zum Zitat Fleurey, F., Baudry, B., Muller, P.-A., Traon, Y.: Qualifying input test data for model transformations. Softw. Syst. Model. 8, 185–203 (2009) CrossRef Fleurey, F., Baudry, B., Muller, P.-A., Traon, Y.: Qualifying input test data for model transformations. Softw. Syst. Model. 8, 185–203 (2009) CrossRef
Zurück zum Zitat France, R., Rumpe, B.: Model-driven development of complex software: A research roadmap. In: FOSE’07, pp. 37–54. IEEE Comput. Soc., Los Alamitos (2007) France, R., Rumpe, B.: Model-driven development of complex software: A research roadmap. In: FOSE’07, pp. 37–54. IEEE Comput. Soc., Los Alamitos (2007)
Zurück zum Zitat Giner, P., Pelechano, V.: Test-driven development of model transformations. In: MODELS’09. LNCS, vol. 5795, pp. 748–752. Springer, Berlin (2009) Giner, P., Pelechano, V.: Test-driven development of model transformations. In: MODELS’09. LNCS, vol. 5795, pp. 748–752. Springer, Berlin (2009)
Zurück zum Zitat Gogolla, M., Vallecillo, A.: Tractable model transformation testing. In: ECMFA’11. LNCS, vol. 6698, pp. 221–235. Springer, Berlin (2011) Gogolla, M., Vallecillo, A.: Tractable model transformation testing. In: ECMFA’11. LNCS, vol. 6698, pp. 221–235. Springer, Berlin (2011)
Zurück zum Zitat Guerra, E., de Lara, J., Kolovos, D.S., Paige, R.F.: A visual specification language for model-to-model transformations. In: VL/HCC, pp. 119–126. IEEE Comput. Soc., Los Alamitos (2010) Guerra, E., de Lara, J., Kolovos, D.S., Paige, R.F.: A visual specification language for model-to-model transformations. In: VL/HCC, pp. 119–126. IEEE Comput. Soc., Los Alamitos (2010)
Zurück zum Zitat Guerra, E., de Lara, J., Kolovos, D.S., Paige, R.F., dos Santos, O.M.: Engineering model transformations with transML. Softw. Syst. Mod. (2011, in press). doi:10.1007/s10270-011-0211-2 Guerra, E., de Lara, J., Kolovos, D.S., Paige, R.F., dos Santos, O.M.: Engineering model transformations with transML. Softw. Syst. Mod. (2011, in press). doi:10.​1007/​s10270-011-0211-2
Zurück zum Zitat Jackson, D.: Software Abstractions. Logic, Language, and Analysis. MIT Press, Cambridge (2006) Jackson, D.: Software Abstractions. Logic, Language, and Analysis. MIT Press, Cambridge (2006)
Zurück zum Zitat Jensen, K.: Coloured Petri Nets Basic Concepts, Analysis Methods and Practical Use. Monographs in Theoretical Computer Science. Springer, Berlin (1997) MATH Jensen, K.: Coloured Petri Nets Basic Concepts, Analysis Methods and Practical Use. Monographs in Theoretical Computer Science. Springer, Berlin (1997) MATH
Zurück zum Zitat Jensen, K., Kristensen, L.M., Wells, L.: Coloured Petri nets and CPN tools for modelling and validation of concurrent systems. Int. J. Softw. Tools Technol. Transf. 9(3–4), 213–254 (2007) CrossRef Jensen, K., Kristensen, L.M., Wells, L.: Coloured Petri nets and CPN tools for modelling and validation of concurrent systems. Int. J. Softw. Tools Technol. Transf. 9(3–4), 213–254 (2007) CrossRef
Zurück zum Zitat Jouault, F., Kurtev, I.: Transforming models with ATL. In: Model Transformations in Practice Workshop (2005) Jouault, F., Kurtev, I.: Transforming models with ATL. In: Model Transformations in Practice Workshop (2005)
Zurück zum Zitat Kessentini, M., Sahraoui, H.A., Boukadoum, M.: Example-based model-transformation testing. Autom. Softw. Eng. 18(2), 199–224 (2011) CrossRef Kessentini, M., Sahraoui, H.A., Boukadoum, M.: Example-based model-transformation testing. Autom. Softw. Eng. 18(2), 199–224 (2011) CrossRef
Zurück zum Zitat Kolovos, D., Paige, R., Polack, F.: The Epsilon transformation language. In: ICMT’08. LNCS, vol. 5063, pp. 46–60. Springer, Berlin (2008a) Kolovos, D., Paige, R., Polack, F.: The Epsilon transformation language. In: ICMT’08. LNCS, vol. 5063, pp. 46–60. Springer, Berlin (2008a)
Zurück zum Zitat Kolovos, D., Paige, R., Rose, L., Polack, F.: Unit testing model management operations. In: ICSTW’08, pp. 97–104. IEEE Comput. Soc., Los Alamitos (2008b) Kolovos, D., Paige, R., Rose, L., Polack, F.: Unit testing model management operations. In: ICSTW’08, pp. 97–104. IEEE Comput. Soc., Los Alamitos (2008b)
Zurück zum Zitat Kolovos, D.S., Paige, R.F., Polack, F.A.: Model comparison: a foundation for model composition and model transformation testing. In: GaMMa’06, pp. 13–20. ACM Press, New York (2006) Kolovos, D.S., Paige, R.F., Polack, F.A.: Model comparison: a foundation for model composition and model transformation testing. In: GaMMa’06, pp. 13–20. ACM Press, New York (2006)
Zurück zum Zitat Kühne, T.: Matters of (meta-)modeling. Softw. Syst. Model. 5(4), 369–385 (2006) CrossRef Kühne, T.: Matters of (meta-)modeling. Softw. Syst. Model. 5(4), 369–385 (2006) CrossRef
Zurück zum Zitat Küster, J.M.: Definition and validation of model transformations. Softw. Syst. Model. 5(3), 233–259 (2006) CrossRef Küster, J.M.: Definition and validation of model transformations. Softw. Syst. Model. 5(3), 233–259 (2006) CrossRef
Zurück zum Zitat Küster, J.M., Abd-El-Razik, M.: Validation of model transformations—first experiences using a white box approach. In: Models in Software Engineering. LNCS, vol. 4364, pp. 193–204. Springer, Berlin (2006) CrossRef Küster, J.M., Abd-El-Razik, M.: Validation of model transformations—first experiences using a white box approach. In: Models in Software Engineering. LNCS, vol. 4364, pp. 193–204. Springer, Berlin (2006) CrossRef
Zurück zum Zitat Leavens, G.T., Cheon, Y., Clifton, C., Ruby, C., Cok, D.R.: How the design of JML accommodates both runtime assertion checking and formal verification. Sci. Comput. Program. 55(1–3), 185–208 (2005) MathSciNetMATHCrossRef Leavens, G.T., Cheon, Y., Clifton, C., Ruby, C., Cok, D.R.: How the design of JML accommodates both runtime assertion checking and formal verification. Sci. Comput. Program. 55(1–3), 185–208 (2005) MathSciNetMATHCrossRef
Zurück zum Zitat Lin, Y., Zhang, J., Gray, J.: Model comparison: A key challenge for transformation testing and version control in model driven software development. In: OOPSLA Workshop on Best Practices for Model-Driven Software Development (2004) Lin, Y., Zhang, J., Gray, J.: Model comparison: A key challenge for transformation testing and version control in model driven software development. In: OOPSLA Workshop on Best Practices for Model-Driven Software Development (2004)
Zurück zum Zitat Lin, Y., Zhang, J., Gray, J.: A testing framework for model transformations. In: Model-Driven Software Development, pp. 219–236 (2005) CrossRef Lin, Y., Zhang, J., Gray, J.: A testing framework for model transformations. In: Model-Driven Software Development, pp. 219–236 (2005) CrossRef
Zurück zum Zitat Mens, T., Van Gorp, P.: A taxonomy of model transformation. Electron. Notes Theor. Comput. Sci. 152, 125–142 (2006) CrossRef Mens, T., Van Gorp, P.: A taxonomy of model transformation. Electron. Notes Theor. Comput. Sci. 152, 125–142 (2006) CrossRef
Zurück zum Zitat Meyer, B.: Applying “design by contract”. Computer 25, 40–51 (1992) CrossRef Meyer, B.: Applying “design by contract”. Computer 25, 40–51 (1992) CrossRef
Zurück zum Zitat Mottu, J.-M., Baudry, B., Le Traon, Y.: Reusable MDA components: A testing-for-trust approach. In: MoDELS’06. LNCS, vol. 4199, pp. 589–603. Springer, Berlin (2006) Mottu, J.-M., Baudry, B., Le Traon, Y.: Reusable MDA components: A testing-for-trust approach. In: MoDELS’06. LNCS, vol. 4199, pp. 589–603. Springer, Berlin (2006)
Zurück zum Zitat Mottu, J.-M., Baudry, B., Traon, Y.L.: Model transformation testing: oracle issue. In: ICSTW’08, pp. 105–112. IEEE Comput. Soc., Los Alamitos (2008) Mottu, J.-M., Baudry, B., Traon, Y.L.: Model transformation testing: oracle issue. In: ICSTW’08, pp. 105–112. IEEE Comput. Soc., Los Alamitos (2008)
Zurück zum Zitat Ramos, R., Barais, O., Jézéquel, J.-M.: Matching model-snippets. In: MoDELS’07. LNCS, vol. 4735, pp. 121–135. Springer, Berlin (2007) Ramos, R., Barais, O., Jézéquel, J.-M.: Matching model-snippets. In: MoDELS’07. LNCS, vol. 4735, pp. 121–135. Springer, Berlin (2007)
Zurück zum Zitat Schmidt, D.C.: Model-driven engineering. Computer 39(2), 25–31 (2006) CrossRef Schmidt, D.C.: Model-driven engineering. Computer 39(2), 25–31 (2006) CrossRef
Zurück zum Zitat Sen, S., Baudry, B., Mottu, J.-M.: Automatic model generation strategies for model transformation testing. In: ICMT’09. LNCS, vol. 5563, pp. 148–164. Springer, Berlin (2009) Sen, S., Baudry, B., Mottu, J.-M.: Automatic model generation strategies for model transformation testing. In: ICMT’09. LNCS, vol. 5563, pp. 148–164. Springer, Berlin (2009)
Zurück zum Zitat Spivey, J.M.: An introduction to Z and formal specifications. Softw. Eng. J. 4(1), 40–50 (1989) CrossRef Spivey, J.M.: An introduction to Z and formal specifications. Softw. Eng. J. 4(1), 40–50 (1989) CrossRef
Zurück zum Zitat Traon, Y.L., Baudry, B., Jézéquel, J.-M.: Design by contract to improve software vigilance. IEEE Trans. Softw. Eng. 32(8), 571–586 (2006) CrossRef Traon, Y.L., Baudry, B., Jézéquel, J.-M.: Design by contract to improve software vigilance. IEEE Trans. Softw. Eng. 32(8), 571–586 (2006) CrossRef
Zurück zum Zitat Varró, D., Varró-Gyapay, S., Ehrig, H., Prange, U., Taentzer, G.: Termination analysis of model transformations by Petri nets. In: ICGT’06. LNCS, vol. 4178, pp. 260–274. Springer, Berlin (2006) Varró, D., Varró-Gyapay, S., Ehrig, H., Prange, U., Taentzer, G.: Termination analysis of model transformations by Petri nets. In: ICGT’06. LNCS, vol. 4178, pp. 260–274. Springer, Berlin (2006)
Metadaten
Titel
Automated verification of model transformations based on visual contracts
verfasst von
Esther Guerra
Juan de Lara
Manuel Wimmer
Gerti Kappel
Angelika Kusel
Werner Retschitzegger
Johannes Schönböck
Wieland Schwinger
Publikationsdatum
01.03.2013
Verlag
Springer US
Erschienen in
Automated Software Engineering / Ausgabe 1/2013
Print ISSN: 0928-8910
Elektronische ISSN: 1573-7535
DOI
https://doi.org/10.1007/s10515-012-0102-y

Weitere Artikel der Ausgabe 1/2013

Automated Software Engineering 1/2013 Zur Ausgabe