Skip to main content
Erschienen in: Software Quality Journal 1/2017

18.01.2016

Efficient and scalable omniscient debugging for model transformations

verfasst von: Jonathan Corley, Brian P. Eddy, Eugene Syriani, Jeff Gray

Erschienen in: Software Quality Journal | Ausgabe 1/2017

Einloggen

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

search-config
loading …

Abstract

This paper discusses a technique for supporting omniscient debugging for model transformations, which are used to define core operations on software and system models. Similar to software systems developed using general-purpose languages, model transformations are also subject to human error and may possess defects. Existing model-driven engineering tools provide stepwise execution to aid developers in locating and removing defects. In this paper, we describe our investigation into a technique and associated algorithms that support omniscient debugging features for model transformations. Omniscient debugging enables enhanced navigation and exploration features during a debugging session beyond those possible in a strictly stepwise execution environment. Finally, the execution time performance is comparatively evaluated against stepwise execution, and the scalability (in terms of memory usage) is empirically investigated.

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

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!

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!

Literatur
Zurück zum Zitat Agrawal, A., Karsai, G., Neema, S., Shi, F., & Vizhanyo, A. (2006). The design of a language for model transformations. Journal of Software and Systems Modeling, 5(3), 261–288.CrossRef Agrawal, A., Karsai, G., Neema, S., Shi, F., & Vizhanyo, A. (2006). The design of a language for model transformations. Journal of Software and Systems Modeling, 5(3), 261–288.CrossRef
Zurück zum Zitat Androutsopoulos, K., Clark, D., Harman, M., Krinke, J., & Tratt, L. (2013). State-based model slicing: A survey. ACM Computing Surveys, 45(4), 53:1–53:36.CrossRef Androutsopoulos, K., Clark, D., Harman, M., Krinke, J., & Tratt, L. (2013). State-based model slicing: A survey. ACM Computing Surveys, 45(4), 53:1–53:36.CrossRef
Zurück zum Zitat Basciani, F., Di Rocco, J., Di Ruscio, D., Di Salle, A., Iovino, L., & Pierantonio, A.(2014) MDEForge: an extensible web-based modeling platform. In Proceedings of the 2nd international workshop on model-driven engineering on and for the cloud co-located with the 17th international conference on model-driven engineering languages and systems (pp. 66–75). Basciani, F., Di Rocco, J., Di Ruscio, D., Di Salle, A., Iovino, L., & Pierantonio, A.(2014) MDEForge: an extensible web-based modeling platform. In Proceedings of the 2nd international workshop on model-driven engineering on and for the cloud co-located with the 17th international conference on model-driven engineering languages and systems (pp. 66–75).
Zurück zum Zitat Bousse, E., Corley, J., Combemale, B., Gray, J., & Baudry, B. (2015) Supporting efficient and advanced omniscient debugging for xDSMLs. In Proceedings of the 8th international conference on software language engineering (accepted for publication). Bousse, E., Corley, J., Combemale, B., Gray, J., & Baudry, B. (2015) Supporting efficient and advanced omniscient debugging for xDSMLs. In Proceedings of the 8th international conference on software language engineering (accepted for publication).
Zurück zum Zitat Burgueño, L., Troya, J., Wimmer, M., & Vallecillo, A. (2015). Parallel in-place model transformations with LinTra. In Proceedings of the 3rd workshop on scalable model driven engineering part of the software technologies: applications and foundations federation of conferences (pp. 52–62). Burgueño, L., Troya, J., Wimmer, M., & Vallecillo, A. (2015). Parallel in-place model transformations with LinTra. In Proceedings of the 3rd workshop on scalable model driven engineering part of the software technologies: applications and foundations federation of conferences (pp. 52–62).
Zurück zum Zitat Clinger, H., & Ost, E. (1988). Implementation strategies for continuations. In Proceedings of the ACM conference on LISP and functional programming (pp. 124–131). Clinger, H., & Ost, E. (1988). Implementation strategies for continuations. In Proceedings of the ACM conference on LISP and functional programming (pp. 124–131).
Zurück zum Zitat Combemale, B., Deantoni, J., Baudry, B., France, R., Jézéquel, J. M., & Gray, J. (2014). Globalizing modeling languages. IEEE Computer, 10–13. Combemale, B., Deantoni, J., Baudry, B., France, R., Jézéquel, J. M., & Gray, J. (2014). Globalizing modeling languages. IEEE Computer, 10–13.
Zurück zum Zitat Corley, J. (2014). Exploring omniscient debugging for model transformations. In ACM student research competition at the 17th international conference on model-driven engineering, languages, and systems (pp. 63–68). Corley, J. (2014). Exploring omniscient debugging for model transformations. In ACM student research competition at the 17th international conference on model-driven engineering, languages, and systems (pp. 63–68).
Zurück zum Zitat Corley, J., Eddy, B., & Gray, J. (2014). Towards efficient and scalable omniscient debugging for model transformations. In Proceedings of the 14th workshop on domain-specific modeling (pp. 13–18). Corley, J., Eddy, B., & Gray, J. (2014). Towards efficient and scalable omniscient debugging for model transformations. In Proceedings of the 14th workshop on domain-specific modeling (pp. 13–18).
Zurück zum Zitat Corley, J., Syriani, E., Ergin, H., & Van Mierlo, S. (2016). Cloud-based multi-view modeling environments. In A. M. Cruz & S. Paiva (Eds.), Modern software engineering methodologies for mobile and cloud environments. Pennsylvania: IGI Global. Corley, J., Syriani, E., Ergin, H., & Van Mierlo, S. (2016). Cloud-based multi-view modeling environments. In A. M. Cruz & S. Paiva (Eds.), Modern software engineering methodologies for mobile and cloud environments. Pennsylvania: IGI Global.
Zurück zum Zitat Czarnecki, K., & Helsen, S. (2006). Feature-based survey of model transformation approaches. IBM Systems Journal, 45(3), 621–645.CrossRef Czarnecki, K., & Helsen, S. (2006). Feature-based survey of model transformation approaches. IBM Systems Journal, 45(3), 621–645.CrossRef
Zurück zum Zitat Di Ruscio, D., Kolovos, D., & Matragkas, N. (2013). Scalability in model driven engineering: BigMDE’13 workshop summary. In Proceedings of the first workshop on scalability in model driven engineering (pp. 1–2). Di Ruscio, D., Kolovos, D., & Matragkas, N. (2013). Scalability in model driven engineering: BigMDE’13 workshop summary. In Proceedings of the first workshop on scalability in model driven engineering (pp. 1–2).
Zurück zum Zitat Engblom, J. (2012). A review of reverse debugging. In System, software, SoC and silicon debug conference (pp. 1–6). Engblom, J. (2012). A review of reverse debugging. In System, software, SoC and silicon debug conference (pp. 1–6).
Zurück zum Zitat Ergin, H., & Syriani, E. (2014). Atompm solution for the IMDB case study. In Proceedings of the 7th transformation tool contest part of the software technologies: Applications and foundations (pp. 134–138). Ergin, H., & Syriani, E. (2014). Atompm solution for the IMDB case study. In Proceedings of the 7th transformation tool contest part of the software technologies: Applications and foundations (pp. 134–138).
Zurück zum Zitat Gray, J., Tolvanen, J-P, Kelly, S., Gokhale, A., Neema, S., & Sprinkle, J. (2007). Domain-specific modeling. Handbook of Dynamic System Modeling, 7/1-7/20. Gray, J., Tolvanen, J-P, Kelly, S., Gokhale, A., Neema, S., & Sprinkle, J. (2007). Domain-specific modeling. Handbook of Dynamic System Modeling, 7/1-7/20.
Zurück zum Zitat Henkler, S., Meyer, J., Schafer, W., von Detten, M., & Nickel, U. (2010). Legacy component integration by the Fujaba real-time tool suite. In ACM/IEEE 32nd international conference on software engineering (pp. 267–270). Henkler, S., Meyer, J., Schafer, W., von Detten, M., & Nickel, U. (2010). Legacy component integration by the Fujaba real-time tool suite. In ACM/IEEE 32nd international conference on software engineering (pp. 267–270).
Zurück zum Zitat Horn, T., Krause, C., & Tichy, M. (2014). The ttc 2014 movie database case. In Proceedings of the 7th transformation tool contest part of the software technologies: Applications and foundations (pp. 93–97). Horn, T., Krause, C., & Tichy, M. (2014). The ttc 2014 movie database case. In Proceedings of the 7th transformation tool contest part of the software technologies: Applications and foundations (pp. 93–97).
Zurück zum Zitat Jouault, F., Allilaire, F., Bézivin, J., & Kurtev, I. (2008). ATL: A model transformation tool. Science of Computer Programming, 72(1–2), 31–39.MathSciNetCrossRefMATH Jouault, F., Allilaire, F., Bézivin, J., & Kurtev, I. (2008). ATL: A model transformation tool. Science of Computer Programming, 72(1–2), 31–39.MathSciNetCrossRefMATH
Zurück zum Zitat Jouault, F., & Kurtev, I. (2006). Transforming models with ATL. In Satellite events at the MoDELS 2005 conference (pp. 128–138). Jouault, F., & Kurtev, I. (2006). Transforming models with ATL. In Satellite events at the MoDELS 2005 conference (pp. 128–138).
Zurück zum Zitat Kolovos, D. S., Rose, L. M., Matragkas, N., Paige, R. F., Guerra, E., Cuadrado, J. S., et al. (2013). A research roadmap towards achieving scalability in model driven engineering. In Proceedings of the workshop on scalability in model-driven engineering (pp. 1–10). Kolovos, D. S., Rose, L. M., Matragkas, N., Paige, R. F., Guerra, E., Cuadrado, J. S., et al. (2013). A research roadmap towards achieving scalability in model driven engineering. In Proceedings of the workshop on scalability in model-driven engineering (pp. 1–10).
Zurück zum Zitat Kühne, T. (2006). Matters of (meta-) modeling. Journal of Software and Systems Modeling, 5(4), 369–385.CrossRef Kühne, T. (2006). Matters of (meta-) modeling. Journal of Software and Systems Modeling, 5(4), 369–385.CrossRef
Zurück zum Zitat Lewis, B. (2003). Debugging backwards in time. In Proceedings of the fifth international workshop on automated debugging. Lewis, B. (2003). Debugging backwards in time. In Proceedings of the fifth international workshop on automated debugging.
Zurück zum Zitat Lienhard, A., Fierz, J., & Nierstrasz, O. (2009) Flow-centric, back-in-time debugging. In Proceedings of objects, components, models and patterns (pp. 272–288). Lienhard, A., Fierz, J., & Nierstrasz, O. (2009) Flow-centric, back-in-time debugging. In Proceedings of objects, components, models and patterns (pp. 272–288).
Zurück zum Zitat Lienhard, A., Gîrba, T., & Nierstrasz, O. (2008). Practical object-oriented back-in-time debugging. In Proceedings of the 22nd European conference on object-oriented programming (pp. 592–615). Lienhard, A., Gîrba, T., & Nierstrasz, O. (2008). Practical object-oriented back-in-time debugging. In Proceedings of the 22nd European conference on object-oriented programming (pp. 592–615).
Zurück zum Zitat Lúcio, L., Amrani, M., Dingel, J., Lambers, L., Salay, R., Selim, G., et al. (2016). Model transformation intents and their properties. Journal of Software and Systems Modeling. doi:10.1007/s10270-014-0429-x. Lúcio, L., Amrani, M., Dingel, J., Lambers, L., Salay, R., Selim, G., et al. (2016). Model transformation intents and their properties. Journal of Software and Systems Modeling. doi:10.​1007/​s10270-014-0429-x.
Zurück zum Zitat Mannadiar, R., & Vangheluwe, H. (2011). Debugging in domain-specific modelling. In Software language engineering (pp. 276–285). Mannadiar, R., & Vangheluwe, H. (2011). Debugging in domain-specific modelling. In Software language engineering (pp. 276–285).
Zurück zum Zitat Pothier, G., & Tanter, E. (2009). Back to the future: Omniscient debugging. IEEE Software, 26(6), 78–85.CrossRef Pothier, G., & Tanter, E. (2009). Back to the future: Omniscient debugging. IEEE Software, 26(6), 78–85.CrossRef
Zurück zum Zitat Schönböck, J., Kappel, G., Kusel, A., Retschitzegger, W., Schwinger, W., & Wimmer, M. (2009). Catch me if you can—debugging support for model transformations. In Proceedings of the 12th international conference on model-driven engineering, languages, and systems (pp. 5–20). Schönböck, J., Kappel, G., Kusel, A., Retschitzegger, W., Schwinger, W., & Wimmer, M. (2009). Catch me if you can—debugging support for model transformations. In Proceedings of the 12th international conference on model-driven engineering, languages, and systems (pp. 5–20).
Zurück zum Zitat Seifert, M., & Katscher, S. (2008). Debugging triple graph grammar-based model transformations. In Proceedings of 6th international Fujaba days (pp. 19–22). Seifert, M., & Katscher, S. (2008). Debugging triple graph grammar-based model transformations. In Proceedings of 6th international Fujaba days (pp. 19–22).
Zurück zum Zitat Selic, B. (2003). The pragmatics of model-driven development. IEEE Software, 20(5), 19–25.CrossRef Selic, B. (2003). The pragmatics of model-driven development. IEEE Software, 20(5), 19–25.CrossRef
Zurück zum Zitat Steel, J., & Lawley, M. (2004). Model-based test driven development of the Tefkat model transformation engine. In Proceedings of the 15th IEEE international symposium on software reliability engineering (pp. 151–160). Steel, J., & Lawley, M. (2004). Model-based test driven development of the Tefkat model transformation engine. In Proceedings of the 15th IEEE international symposium on software reliability engineering (pp. 151–160).
Zurück zum Zitat Stevens, P. (2010). Bidirectional model transformations in QVT: Semantic issues and open questions. Journal of Software and Systems Modeling, 9(1), 7–20.MathSciNetCrossRef Stevens, P. (2010). Bidirectional model transformations in QVT: Semantic issues and open questions. Journal of Software and Systems Modeling, 9(1), 7–20.MathSciNetCrossRef
Zurück zum Zitat Syriani, E., & Vangheluwe, H. (2011). A modular timed model transformation language. Journal of Software and Systems Modeling, 12(2), 387–414.CrossRef Syriani, E., & Vangheluwe, H. (2011). A modular timed model transformation language. Journal of Software and Systems Modeling, 12(2), 387–414.CrossRef
Zurück zum Zitat Syriani, E., Vangheluwe, H., & LaShomb, B. (2015). T-Core: A framework for custom-built model transformation engines. Journal of Software and Systems Modeling, 14(3), 1215–1243.CrossRef Syriani, E., Vangheluwe, H., & LaShomb, B. (2015). T-Core: A framework for custom-built model transformation engines. Journal of Software and Systems Modeling, 14(3), 1215–1243.CrossRef
Zurück zum Zitat Syriani, E., Vangheluwe, H., Mannadiar, R., Hansen, C., Van Mierlo, S., & Ergin, H. (2013). AtomPM: A web-based modeling environment. In Joint Proceedings of MODELS invited talks, demonstration session, poster session, and ACM student research competition co-located with the 16th international conference on model driven engineering languages and systems. Syriani, E., Vangheluwe, H., Mannadiar, R., Hansen, C., Van Mierlo, S., & Ergin, H. (2013). AtomPM: A web-based modeling environment. In Joint Proceedings of MODELS invited talks, demonstration session, poster session, and ACM student research competition co-located with the 16th international conference on model driven engineering languages and systems.
Zurück zum Zitat Szárnyas, G., Izsó, B., Ráth, I., Harmath, D., Bergmann, G., & Varró, D. (2014). IncQuery-D: A distributed incremental model query framework in the cloud. In Proceedings of the ACM/IEEE 17th international conference model-driven engineering languages and systems (pp. 653–669). Szárnyas, G., Izsó, B., Ráth, I., Harmath, D., Bergmann, G., & Varró, D. (2014). IncQuery-D: A distributed incremental model query framework in the cloud. In Proceedings of the ACM/IEEE 17th international conference model-driven engineering languages and systems (pp. 653–669).
Zurück zum Zitat Taentzer, G. (2003). AGG: A graph transformation environment for modeling and validation of software. In Proceedings of the second international workshop on applications of graph transformations with industrial relevance (pp. 446–453). Taentzer, G. (2003). AGG: A graph transformation environment for modeling and validation of software. In Proceedings of the second international workshop on applications of graph transformations with industrial relevance (pp. 446–453).
Zurück zum Zitat Ujhelyi, Z., Horvath, A., & Varro, D. (2012). Dynamic backward slicing of model transformations. In IEEE fifth international conference on software testing, verification and validation (pp. 1–10). Ujhelyi, Z., Horvath, A., & Varro, D. (2012). Dynamic backward slicing of model transformations. In IEEE fifth international conference on software testing, verification and validation (pp. 1–10).
Zurück zum Zitat Van Mierlo, S. (2014). Explicit modelling of model debugging and experimentation. In Proceedings of doctoral symposium co-located with the 17th international conference on model driven engineering languages and systems. Van Mierlo, S. (2014). Explicit modelling of model debugging and experimentation. In Proceedings of doctoral symposium co-located with the 17th international conference on model driven engineering languages and systems.
Zurück zum Zitat Varró, D., & Balogh, A. (2007). The model transformation language of the VIATRA2 framework. Science of Computer Programming, 68(3), 214–234.MathSciNetCrossRefMATH Varró, D., & Balogh, A. (2007). The model transformation language of the VIATRA2 framework. Science of Computer Programming, 68(3), 214–234.MathSciNetCrossRefMATH
Zurück zum Zitat Zelkowitz, M. V. (1973). Reversible execution. Communications of the ACM, 16(9), 566.CrossRef Zelkowitz, M. V. (1973). Reversible execution. Communications of the ACM, 16(9), 566.CrossRef
Metadaten
Titel
Efficient and scalable omniscient debugging for model transformations
verfasst von
Jonathan Corley
Brian P. Eddy
Eugene Syriani
Jeff Gray
Publikationsdatum
18.01.2016
Verlag
Springer US
Erschienen in
Software Quality Journal / Ausgabe 1/2017
Print ISSN: 0963-9314
Elektronische ISSN: 1573-1367
DOI
https://doi.org/10.1007/s11219-015-9304-4

Weitere Artikel der Ausgabe 1/2017

Software Quality Journal 1/2017 Zur Ausgabe

EditorialNotes

In this issue