Skip to main content
Log in

Abstract

Reverse and roundtrip engineering have become important research topics in model driven engineering. In this paper, we report on the use of model-to-model transformer (MoTMoT), a tool for model transformation (Schippers et al. in Satellite of the second international conference on graph transformation, vol 127, issue 3, pp 5–16, 2004), for the realization of a number of refactoring operations; this was proposed as a case study at GraBaTs 2008. MoTMoT is based on the story driven modeling (SDM) language for graph rewriting; thus the refactorings modify a graph model derived from Java source code. Realizing the three refactorings proposed in the case study allows us to demonstrate the strengths and weaknesses of the tool, but it also forces us to consider numerous issues that require the use of standard compliant mechanisms. The case study highlights the benefits of MoTMoT as a transformation engine. Among the advantages of MoTMoT, we may mention that MoTMoT does not depend on a particular modeling tool to represent transformations, and the input models may be produced by arbitrary UML tools, separately from MoTMoT. This is in contrast to other transformation tools which depend on a custom built modeling tool. Moreover, MoTMoT can easily be extended with new language features to improve its support for model transformation. The underlying transformation language, SDM, is based on a very powerful paradigm and is capable of expressing the preconditions and checks required by the case study. We also address other, more general challenges of this case study: conciseness, readability, maintainability, efficiency and scalability are important features for the implementation. MoTMoT turns out to be a robust tool that provides an answer to these challenges.

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

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Amelunxen, C., Königs, A., Rötschke, T., Schürr, A.: MOFLON: a standard-compliant metamodeling framework with graph transformations. In: Rensink, A., Warmer, J. (eds.) Model Driven Architecture—Foundations and Applications: Second European Conference. Lecture Notes in Computer Science (LNCS), vol. 4066, pp. 361–375. Springer, Heidelberg (2006)

  2. Bohlen, M., et al.: AndroMDA. http://www.andromda.org

  3. Eclipse Foundation. Eclipse Modeling Framework. http://www.eclipse.org/modeling/emf/

  4. Fischer, T., Niere, J., Torunski, L., Zündorf, A.: Story diagrams: a new graph rewritelanguage based on the unified modeling language and Java. In: Proceedings of the 6th international workshop on theory and application of graph transformation (TAGT). Lecture Notes in Computer Science, vol. 1764, pp. 296–309. Springer, Berlin (1998)

  5. Hoffmann, B., Pérez, J., Mens, T.: A case study for program refactoring (2008)

  6. Königs, A.: Model transformation with triple graph grammars. In: Model Transformations in Practice Satellite Workshop of MODELS 2005, Montego Bay, Jamaica (2005)

  7. Meyers, B., Van Gorp, P.: Towards a hybrid transformation language: implicit and explicit rule scheduling in story diagrams. In: Sixth International Fujaba Days (FD+08) (2008)

  8. Muliawan, O., Van Gorp, P., Keller, A., Janssens, D.: Executing a standard compliant transformation model on a non-standard platform. In: ICSTW ’08: Proceedings of the 2008 IEEE International Conference on Software Testing Verification and Validation Workshop, pp. 151–160. IEEE Computer Society, Washington, DC (2008)

  9. Netbeans. MDR: metadata repository. http://mdr.netbeans.org/

  10. Object Management Group. MOF 1.4 Final Adopted Specification. http://www.omg.org/technology/documents/formal/mof.htm

  11. Object Management Group. MOF 2.0 Final Adopted Specification. http://www.omg.org/spec/MOF/2.0/

  12. Object Management Group. MOF QVT Final Adopted Specification. http://www.omg.org/docs/ptc/05-11-01.pdf

  13. Object Management Group. XMI 2.1 Final Adopted Specification. http://www.omg.org/spec/XMI/2.1/

  14. Schippers, H., Van Gorp, P.: Standardizing sdm for model transformations. In: Second International Fujaba Days (FD04), Darmstadt, Germany (2004)

  15. Schippers, H., van Gorp, P., Janssens, D.: Leveraging UML profiles to generate plugins from visual model transformations. Software evolution through transformations (SETra). In: Satellite of the Second International Conference on Graph Transformation, vol. 127, issue 3, pp. 5–16 (2004)

  16. Sun Microsystems. Java Metadata Repository. http://java.sun.com/products/jmi/index.jsp

  17. Taentzer, G.: Agg: a tool environment for algebraic graph transformation. In: AGTIVE. Lecture Notes in Computer Science, pp. 481–488. Springer, Berlin (2000)

  18. TU Berlin, TFS. Tiger: transformation-based generation of modeling environments. http://user.cs.tu-berlin.de/~tigerprj/

  19. Van Gorp P., Schippers H., Janssens D.: Copying subgraphs within model repositories. In: Bruni, R., Varró, D. (eds) Fifth International Workshop on Graph Transformation and Visual Modeling Techniques, Electronic Notes in Theoretical Computer Science, pp. 127–139. Elsevier, Vienna (2006)

    Google Scholar 

  20. Zaidman, A., Du Bois B., Demeyer, S.: How webmining and coupling metrics improve early program comprehension. In: ICPC ’06: Proceedings of the 14th IEEE International Conference on Program Comprehension, pp. 74–78. IEEE Computer Society, Washington, DC (2006)

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Olaf Muliawan.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Muliawan, O., Janssens, D. Model refactoring using MoTMoT. Int J Softw Tools Technol Transfer 12, 201–209 (2010). https://doi.org/10.1007/s10009-010-0147-9

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10009-010-0147-9

Keywords

Navigation