Skip to main content

EMG: A Domain-Specific Transformation Language for Synthetic Model Generation

  • Conference paper
  • First Online:

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 9765))

Abstract

Appropriate test models that can satisfy complex constraints are required for testing model management programs in order to build confidence in their correctness. Models have inherently complex structures and are often required to satisfy non-trivial constraints which makes them time consuming, labour intensive and error prone to construct manually. Automated capabilities are therefore required, however, existing fully-automated model generation tools cannot generate models that satisfy arbitrarily complex constraints. In this paper, we propose a semi-automated approach towards the generation of such models. A new framework named Epsilon Model Generator (EMG) that implements this approach is presented. The framework supports the development of model generators that can produce random and reproducible test models that satisfy complex constraints.

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Notes

  1. 1.

    https://git.eclipse.org/c/epsilon/org.eclipse.epsilon.git/plain/plugins/org.eclipse.epsilon.eugenia/transformations/ECore2GMF.evl.

  2. 2.

    http://www.eclipse.org/modeling/emft/emfatic/.

  3. 3.

    https://projects.eclipse.org/projects/modeling.mmt.qvt-oml.

  4. 4.

    https://github.com/sop501/ModelCodes/tree/master/org.eclipse.epsilon.emg.engine/src/org/eclipse/epsilon/emg/sampleGenerator/Eugenia.emg.

References

  1. Ali, S., Iqbal, M., Arcuri, A., Briand, L.: A search-based OCL constraint solver for model-based test data generation. In: 11th International Conference on Quality Software (QSIC), pp. 41–50 (2011)

    Google Scholar 

  2. Anastasakis, K., Bordbar, B., Kuster, J.M.: Analysis of model transformations via Alloy. In: 4th Modevva Workshop (2007)

    Google Scholar 

  3. Baudry, B., Ghosh, S., Fleurey, F., France, R., Le Traon, Y., Mottu, J.M.: Barriers to systematic model transformation testing. Commun. ACM 53(6), 139–143 (2010)

    Article  Google Scholar 

  4. Brottier, E., Fleurey, F., Steel, J., Baudry, B., le Traon, Y.: Metamodel-based test generation for model transformations: an algorithm and a tool. In: 17th International Symposium on Software Reliability Engineering, ISSRE 2006, pp. 85–94 (2006)

    Google Scholar 

  5. Dimitris, K., Louis, R., Antonio, G.D., Richard, P.: The Epsilon Book. http://www.eclipse.org/epsilon/doc/book

  6. Duchon, P., Flajolet, P., Louchard, G., Schaeffer, G.: Boltzmann samplers for the random generation of combinatorial structures. Comb. Probab. Comput. 13(4–5), 577–625 (2004)

    Article  MathSciNet  MATH  Google Scholar 

  7. Eclipse Graphical Modeling Framework, official website. http://www.eclipse.org/gmf-tooling

  8. Ehrig, K., Kuster, J.M., Taentzer, G.: Generating instance models from meta models. Softw. Syst. Model. 8(4), 479–500 (2008)

    Article  Google Scholar 

  9. Ferdjoukh, A., Baert, A.E., Chateau, A., Coletta, R., Nebut, C.: A CSP approach for metamodel instantiation. In: 2013 IEEE 25th International Conference on Tools with Artificial Intelligence (ICTAI), pp. 1044–1051 (2013)

    Google Scholar 

  10. Ferdjoukh, A., Baert, A.E., Bourreau, E., Chateau, A., Coletta, R., Nebut, C.: Instantiation of meta-models constrained with OCL - a CSP approach. In: 2015 3rd International Conference on Model-Driven Engineering and Software Development (MODELSWARD), pp. 213–222, February 2015

    Google Scholar 

  11. Fiorentini, C., Momigliano, A., Ornaghi, M., Poernomo, I.: A constructive approach to testing model transformations. In: Tratt, L., Gogolla, M. (eds.) ICMT 2010. LNCS, vol. 6142, pp. 77–92. Springer, Heidelberg (2010)

    Chapter  Google Scholar 

  12. Gonzalez, C., Buttner, F., Clariso, R., Cabot, J.: EMFtoCSP: a tool for the lightweight verification of EMF models. In: Software Engineering: Rigorous and Agile Approaches (FormSERA), pp. 44–50 (2012)

    Google Scholar 

  13. James, W., Simon, P.: Generating models using metaheuristic search. In: Proceedings of the Fourth York Doctoral Symposium on Computing, York, pp. 53–60 (2014)

    Google Scholar 

  14. Kolovos, D.S., Paige, R.F., Polack, F.A.C.: The epsilon object language (EOL). In: Rensink, A., Warmer, J. (eds.) ECMDA-FA 2006. LNCS, vol. 4066, pp. 128–142. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  15. Kolovos, D.S., Paige, R.F., Polack, F.A.C.: On the evolution of OCL for capturing structural constraints in modelling languages. In: Abrial, J.-R., Glässer, U. (eds.) Rigorous Methods for Software Construction and Analysis. LNCS, vol. 5115, pp. 204–218. Springer, Heidelberg (2009)

    Chapter  Google Scholar 

  16. Kolovos, D.S., Rose, L.M., Abid, S.B., Paige, R.F., Polack, F.A.C., Botterweck, G.: Taming EMF and GMF using model transformation. In: Rouquette, N., Haugen, Ø., Petriu, D.C. (eds.) MODELS 2010, Part I. LNCS, vol. 6394, pp. 211–225. Springer, Heidelberg (2010)

    Chapter  Google Scholar 

  17. Martin, G., Jorn, B., Mark, R.: Validating UML and OCL models in USE by automatic snapshot generation. Software 4(4), 386–398 (2005)

    Google Scholar 

  18. Mougenot, A., Darrasse, A., Blanc, X., Soria, M.: Uniform random generation of huge metamodel instances. In: Paige, R.F., Hartman, A., Rensink, A. (eds.) ECMDA-FA 2009. LNCS, vol. 5562, pp. 130–145. Springer, Heidelberg (2009)

    Chapter  Google Scholar 

  19. Paige, R.F., Kolovos, D.S., Rose, L.M., Drivalos, N., Polack, F.A.C.: The design of a conceptual framework and technical infrastructure for model management language engineering. In: Proceedings of the 14th IEEE International Conference on Engineering of Complex Computer Systems, ICECCS 2009, pp. 162–171. IEEE Computer Society (2009)

    Google Scholar 

  20. Scheidgen, M.: Generation of large random models for benchmarking. In: Proceedings of the 3rd Workshop on Scalable Model Driven Engineering, L’Aquila, Italy, pp. 1–10 (2015)

    Google Scholar 

  21. Sen, S., Baudry, B., Mottu, J.-M.: Automatic model generation strategies for model transformation testing. In: Paige, R.F. (ed.) ICMT 2009. LNCS, vol. 5563, pp. 148–164. Springer, Heidelberg (2009)

    Chapter  Google Scholar 

  22. Wu, H., Monahan, R., Power, J.: Exploiting attributed type graphs to generate metamodel instances using an SMT solver. In: 2013 International Symposium on Theoretical Aspects of Software Engineering (TASE), pp. 175–182 (2013)

    Google Scholar 

  23. Xiao, H., Tian, Z., Zhiyi, M., Weizhong, S.: Randomized model generation for performance testing of model transformations. In: 38th Annual Computer Software and Applications Conference (COMPSAC), pp. 11–20 (2014)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Saheed Popoola .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2016 Springer International Publishing Switzerland

About this paper

Cite this paper

Popoola, S., Kolovos, D.S., Rodriguez, H.H. (2016). EMG: A Domain-Specific Transformation Language for Synthetic Model Generation. In: Van Gorp, P., Engels, G. (eds) Theory and Practice of Model Transformations. ICMT 2016. Lecture Notes in Computer Science(), vol 9765. Springer, Cham. https://doi.org/10.1007/978-3-319-42064-6_3

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-42064-6_3

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-42063-9

  • Online ISBN: 978-3-319-42064-6

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics