Testing M2T Transformations - A Systematic Literature Review

André Abade, Fabiano Ferrari, Daniel Lucrédio

Abstract

Context: Model-Driven Development (MDD) is about to become a reality in the development of enterprise information systems due to its benefits, such as reduction of development and maintenance costs, and support for controlled evolution. Consequently, testing model transformations, considering their high complexity particularly regarding Model-to-Text (M2T) transformations, plays a key role to increase the confidence in the produced artefacts. Objective: this paper aims to characterize testing approaches and test selection criteria that focus on M2T transformations, in particular white-box approaches. Method: the objective is accomplished through a systematic literature review. We defined research questions regarding the testing of M2T transformations and extracted and analyzed data from a set of primary studies. Results: we identified a variety of incipient white-box testing approaches for this context. They mostly rely on mapping strategies and traceability of artefacts. Most of them focus on well-formedness and correctness of models and source code, although we could notice a change of focus in most recent research. Conclusions: current solutions for testing M2T transformations have begun to change the initial focus on well-formedness and correctness of models. Some approaches involve techniques that establish coverage criteria for testing, whereas others try to solve the testability across many transformations languages.

References

  1. Alvarez, C. and Casallas, R. (2013). Mtc flow: A tool to design, develop and deploy model transformation chains. In Workshop on ACadeMics Tooling with Eclipse (ACME), pages 1-9. ACM.
  2. Amrani, M., Lucio, L., Selim, G., Combemale, B., Dingel, J., Vangheluwe, H., Le Traon, Y., and Cordy, J. R. (2012). A tridimensional approach for studying the formal verification of model transformations. In 5th International Conference on Software Testing, Verification and Validation (ICST), pages 921-928. IEEE Computer Society.
  3. Basso, F. P., Pillat, R. M., Frantz, R. Z., and Roos-Frantz, F. (2014). Assisted tasks to generate pre-prototypes for web information systems. In 16th International Conference on Enterprise Information Systems (ICEIS), pages 14-25.
  4. Baudry, B., Ghosh, S., Fleurey, F., France, R., Le Traon, Y., and Mottu, J.-M. (2010). Barriers to systematic model transformation testing. Communications of the ACM, 53(6):139-143.
  5. Beizer, B. (1990). Software Testing Techniques. Van Nostrand Reinhold Co., New York, NY, USA, 2nd edition.
  6. Binder, R. V. (1999). Testing Object-Oriented Systems: Models, Patterns and Tools. Addison Wesley, Reading/MA - USA, 1st edition.
  7. Broy, M., Jonsson, B., Katoen, J.-P., Leucker, M., and Pretschner, A. (2005). Model-Based Testing of Reactive Systems: Advanced Lectures, volume 3472. Springer-Verlag.
  8. Chavez, H. M., Shen, W., France, R. B., and Mechling, B. A. (2013). An approach to testing java implementation against its uml class model. In 16th International Conference on Model Driven Engineering Languages and Systems (MODELS), pages 220-236 (LNCS 8107). Springer.
  9. Czarnecki, K. and Helsen, S. (2006). Feature-based survey of model transformation approaches. IBM Systems Journal, 45(3):621-645.
  10. Eriksson, A., Lindström, B., Andler, S. F., and Offutt, J. (2012). Model transformation impact on test artifacts: An empirical study. In Workshop on Model-Driven Engineering, Verification and Validation (MoDeVVa), pages 5-10. ACM.
  11. Eriksson, A., Lindström, B., and Offutt, J. (2013). Transformation rules for platform independent testing: An empirical study. In 6th International Conference on Software Testing, Verification and Validation (ICST), pages 202-211. IEEE Computer Society.
  12. Fabbri, S. C. P. F., Felizardo, K. R., Ferrari, F. C., Hernandes, E. C. M., Octaviano, F. R., Nakagawa, E. Y., and Maldonado, J. C. (2013). Externalising tacit knowledge of the systematic review process. IET Software, 7(6):298-307.
  13. Fleurey, F., Steel, J., and Baudry, B. (2004). Validation in model-driven engineering: testing model transformations. In First International Workshop on Model, Design and Validation, pages 29-40. IEEE Computer Society.
  14. Fraternali, P. and Tisi, M. (2010). Multi-level tests for model driven web applications. In 10th International Conference on Web Engineering (ICWE), pages 158- 172 (LNCS 6189. Springer-Verlag.
  15. Garzotto, F. (2011). Enterprise frameworks for data intensive web applications: An end-user development, model based approach. Journal of Web Engineering, 10(2):87-108.
  16. Guerra, E., Lara, J., Kolovos, D., Paige, R., and Santos, O. (2013). Engineering model transformations with transml. Software and Systems Modeling, 12(3):555- 577.
  17. Harman, M. (2008). Open problems in testability transformation. In Workshops of the International Conference on Software Testing Verification and Validation (ICSTW), pages 196-209. IEEE Computer Society.
  18. Harrold, M. J. (2000). Testing: A roadmap. In Conference on the Future of Software Engineering - in conjunction with ICSE, pages 61-72. ACM.
  19. Hernandes, E. M., Zamboni, A., Fabbri, S., and Di Thommazo, A. (2012). Using GQM and TAM to evaluate StArt - a tool that supports systematic review. CLEI Electronic Journal, 15(1).
  20. Jalali, S. and Wohlin, C. (2012). Systematic literature studies: Database searches vs. backward snowballing. In 6th International Symposium on Empirical Software Engineering and Measurement (ESEM), pages 29-38. ACM.
  21. Kalinov, A., Kossatchev, A., Petrenko, A., Posypkin, M., and Shishkov, V. (2003). Coverage-driven automated compiler test suite generation. Electronic Notes in Theoretical Computer Science, 82(3):500-514.
  22. Kitchenham, B. (2004). Procedures for performing systematic reviews. Technical report, Departament of Computer Science, Keele University.
  23. Kitchenham, B. A., Dyba, T., and Jorgensen, M. (2004). Evidence-based software engineering. In 26th International Conference on Software Engineering (ICSE), pages 273-281, Washington, DC, USA. IEEE Computer Society.
  24. Kleppe, A. G., Warmer, J., and Bast, W. (2003). MDA Explained: The Model Driven Architecture: Practice and Promise. Addison-Wesley Longman Publishing Co., Inc., Boston, MA, USA.
  25. Lamancha, B. P., Mateo, P. R., Polo, M., and Caivano, D. (2011). Model-driven testing - transformations from test models to test code. In 6th International Conference on Evaluation of Novel Approaches to Software Engineering - (ENASE), pages 121-130. SciTePress.
  26. Lämmel, Ralf (2001). Grammar testing. In Hussmann, H., editor, Fundamental Approaches to Software Engineering, volume 2029 of Lecture Notes in Computer Science, pages 201-216. Springer Berlin Heidelberg.
  27. Lucredio, D., de Almeida, E., and Fortes, R. (2012). An investigation on the impact of MDE on software reuse. In Sixth Brazilian Symposium on Software Components Architectures and Reuse (SBCARS), pages 101- 110. IEEE Computer Society.
  28. Mayo, F. J. D., Escalona, M. J., Mejías, M., Ross, M., and Staples, G. (2014). Towards a homogeneous characterization of the model-driven web development methodologies. Journal of Web Engineering, 13(1&2):129-159.
  29. Naslavsky, L., Ziv, H., and Richardson, D. J. (2008). Using model transformation to support model-based test coverage measurement. In 3rd International Workshop on Automation of Software Test (AST), pages 1- 6. ACM.
  30. Object Management Group (2003). MDA guide version 1.0.1. online - http://www.omg.org/cgibin/doc?omg/03-06-01.pdf - accessed on 26/02/2015.
  31. Object Management Group (2012). MOF model to text transformation language - MOFM2T 1.0. online. http://www.omg.org/spec/MOFM2T/1.0/ - accessed on 26/02/2015.
  32. Oldevik, J. (2011). MOFScript User Guide. online. http://eclipse.org/gmt/mofscript/doc/MOFScriptUser-Guide-0.9.pdf.
  33. Osherove, R. (2009). The Art of Unit Testing: With Examples in .Net. Manning Publications Co., Greenwich, CT, USA, 1st edition.
  34. Panfilenko, D. V., Hrom, K., Elvesaeter, B., and Landre, E. (2013). Model transformation recommendations for service-oriented architectures. In 15th International Conference on Enterprise Information Systems (ICEIS), pages 248-256.
  35. Pastor, O. and Espan˜a, S. (2012). Full model-driven practice: From requirements to code generation. In Advanced Information Systems Engineering, volume 7328 of Lecture Notes in Computer Science, pages 701-702. Springer Berlin Heidelberg.
  36. Petersen, K., Feldt, R., Mujtaba, S., and Mattsson, M. (2008). Systematic mapping studies in software engineering. In 12th International Conference on Evaluation and Assessment in Software Engineering (EASE), pages 68-77, Swinton, UK, UK. British Computer Society.
  37. Polack, D., Paige, R., Rose, L., and Polack, F. (2008). Unit testing model management operations. In Workshops of the International Conference on Software Testing Verification and Validation (ICSTW), pages 97-104. IEEE Computer Society.
  38. Rose, L., Matragkas, N., Kolovos, D., and Paige, R. (2012). A feature model for model-to-text transformation languages. In ICSE Workshop on Modeling in Software Engineering (MISE), pages 57-63. IEEE Computer Society.
  39. Selim, G. M. K., Cordy, J. R., and Dingel, J. (2012). Model transformation testing: The state of the art. In First Workshop on the Analysis of Model Transformations (AMT), pages 21-26, New York, NY, USA. ACM.
  40. Sendall, S. and Kozaczynski, W. (2003). Model transformation: The heart and soul of model-driven software development. Software, IEEE, 20(5):42-45.
  41. Sirer, E. and Bershad, B. (1999). Testing Java virtual machines - An Experience Report on Automatically Testing Java Virtual Machines. In International Conference on Software Testing And Review.
  42. Soltani, M. and Benslimane, S. M. (2012). From a high level business process model to service model artifacts - A model-driven approach. In 14th International Conference on Enterprise Information Systems (ICEIS), pages 265-268. SciTePress.
  43. Tiso, A., Reggio, G., and Leotta, M. (2012). Early experiences on model transformation testing. In First Workshop on the Analysis of Model Transformations (AMT), pages 15-20, New York, NY, USA. ACM.
  44. Tiso, A., Reggio, G., and Leotta, M. (2013). A method for testing model to text transformations. In Second Workshop on the Analysis of Model Transformations (AMT), volume 1077. CEUR-WS.org.
  45. Vallecillo, A., Gogolla, M., Burguen˜o, L., Wimmer, M., and Hamann, L. (2012). Formal specification and testing of model transformations. In Formal Methods for Model-Driven Engineering, volume 7320, pages 399- 437. Springer.
  46. Wimmer, M. and Burguen˜o, L. (2013). Testing M2T/T2M transformations. In Model-Driven Engineering Languages and Systems, volume 8107, pages 203-219. Springer Berlin Heidelberg.
Download


Paper Citation


in Harvard Style

Abade A., Ferrari F. and Lucrédio D. (2015). Testing M2T Transformations - A Systematic Literature Review . In Proceedings of the 17th International Conference on Enterprise Information Systems - Volume 2: ICEIS, ISBN 978-989-758-097-0, pages 177-187. DOI: 10.5220/0005378501770187


in Bibtex Style

@conference{iceis15,
author={André Abade and Fabiano Ferrari and Daniel Lucrédio},
title={Testing M2T Transformations - A Systematic Literature Review},
booktitle={Proceedings of the 17th International Conference on Enterprise Information Systems - Volume 2: ICEIS,},
year={2015},
pages={177-187},
publisher={SciTePress},
organization={INSTICC},
doi={10.5220/0005378501770187},
isbn={978-989-758-097-0},
}


in EndNote Style

TY - CONF
JO - Proceedings of the 17th International Conference on Enterprise Information Systems - Volume 2: ICEIS,
TI - Testing M2T Transformations - A Systematic Literature Review
SN - 978-989-758-097-0
AU - Abade A.
AU - Ferrari F.
AU - Lucrédio D.
PY - 2015
SP - 177
EP - 187
DO - 10.5220/0005378501770187