Propagating Model Refactorings to Graph Transformation Rules

Sabine Winetzhammer, Bernhard Westfechtel


Model-driven software engineering reduces the effort of developing software by replacing low-level programming with the construction of high-level executable models. Refactoring improves the structure of software artifacts without changing external behavior. Originally, refactoring was developed for and applied to (object-oriented) programs. In the context of model-driven software engineering, refactoring has to be applied to both structural and behavioral models. In this paper, we present tool support for model refactoring in ModGraph, a tool which employs Ecore class diagrams for structural modeling and graph transformation rules for behavioral modeling. In particular, we focus on the propagation of refactorings of the structural model into the behavioral model.


  1. Agrawal, A., Karsai, G., Neema, S., Shi, F., and Vizhanyo, A. (2006). The design of a language for model transformations. Software and System Modeling, 5(3):261- 288.
  2. Banerjee, J., Kim, W., Kim, H.-J., and Korth, H. F. (1987). Semantics and implementation of schema evolution in object-oriented databases. In Proceedings of the 1987 ACM SIGMOD International Conference on Management of Data (SIGMOD 1987), pages 311-322, San Franciso, CA. ACM Press.
  3. Biermann, E., Ehrig, K., Kö hler, C., Kuhns, G., Taentzer, G., and Weiss, E. (2006). EMF model refactoring based on graph transformation concepts. In Favre, J.- M., Heckel, R., and Mens, T., editors, Proceedings of the Third Workshop on Software Evolution Through Transformations: Embracing the Change, volume 3 of Electronic Communications of the EASST, Natal, Rio Grande del Norte, Brazil. 16 p.
  4. Bottoni, P., Parisi-Presicce, F., and Taentzer, G. (2003). Specifying integrated refactoring with distributed graph transformations. In (Pfaltz et al., 2003), pages 220-235.
  5. Fowler, M. (1999). Refactoring: Improving the Design of Existing Code. Addison-Wesley, Boston, MA, USA.
  6. Geiger, L. (2008). Graph transformation-based refactorings using Fujaba. In Rensink, A. and van Gorp, P., editors, 4th International Workshop on Graph-Based Tools: The Contest, Leicester, UK.
  7. Levendovszky, T., Balasubramanian, D., Narayanan, A., and Karsai, G. (2009). A novel approach to semiautomated evolution of DSML model transformation. In van den Brand, M., Gasevic, D., and Gray, J., editors, Proceedings of the Second International Conference on Software Language Engineering (SLE 2009), volume 5969 of LNCS, pages 23-41, Denver, CO. Springer.
  8. Mens, T. (2005). On the use of graph transformations for model refactoring. In Lämmel, R., Saraiva, J., and Visser, J., editors, International Summer School on Generative Techniques in Software Engineering (GTTSE 2005), volume 4143 of LNCS, pages 219- 257, Braga, Portugal. Springer.
  9. Mens, T., Eetvelde, N. V., Demeyer, S., and Janssens, D. (2005). Formalizing refactorings with graph transformations. Journal of Software Maintenance and Evolution: Research and Practice, 17(4):247-276.
  10. Mens, T., Taentzer, G., and Runge, O. (2007). Analysing refactoring dependencies using graph transformation. Software and Systems Modeling, 6(3):269-285.
  11. Mens, T. and Tourwé, T. (2004). A survey of software refactoring. IEEE Transactions on Software Engineering, 30(2):126-139.
  12. OMG (2011). Meta Object Facility (MOF) 2.0 Query/View/Transformation Specification. Object Management Group, Needham, MA, formal/2011-01- 01 edition.
  13. Pfaltz, J. L., Nagl, M., and Bö hlen, B., editors (2003). Application of Graph Transformations with Industrial Relevance: Second International Workshop (AGTIVE 2003), volume 3062 of LNCS, Charlottesville, VA, USA. Springer.
  14. Rose, L. M., Herrmannsdoerfer, M., Williams, J. R., Kolovos, D., Garcés, K., Paige, R. F., and Pollack, F. A. (2010). A comparison of model migration tools. In Petriu, D. C., Rouquette, N., and Haugen, Ø., editors, MODELS 2010, Part I, volume 6394 of LNCS, pages 61-75, Oslo, Norway. Springer.
  15. Roser, S. and Bauer, B. (2008). Automatic generation and evolution of model transformations using ontology engineering space. In Spaccapietra, S., Pan, J. Z., Thiran, P., Halpin, T., Staab, S., Svatek, V., Shvaiko, P., and Roddick, J., editors, Journal of Data Semantics XI, volume 5383 of LNCS, pages 32-64. Springer, Heidelberg.
  16. Steinberg, D., Budinsky, F., Paternostro, M., and Merks, E. (2009). EMF: Eclipse Modeling Framework. Addison-Wesley, Boston, MA, 2nd edition.
  17. Taentzer, G. (2003). AGG: A graph transformation environment for modeling and validation of software. In (Pfaltz et al., 2003), pages 446-453.
  18. Tisi, M., Jouault, F., Fraternali, P., Ceri, S., and Bézivin, J. (2009). On the use of higher-order model transformations. In Paige, R. F., Hartman, A., and Rensink, A., editors, ECMDA-FA 2009, volume 5562 of LNCS, pages 18-33, Heidelberg. Springer.
  19. Winetzhammer, S. (2012). ModGraph - generating executable EMF models. In Krause, C. and Westfechtel, B., editors, Proceedings of the 7th International Workshop on Graph Based Tools, volume 54 of Electronic Communications of the EASST, pages 32-44, Bremen, Germany. EASST.
  20. Winetzhammer, S. and Westfechtel, B. (2013). ModGraph meets Xcore: Combining rule-based and procedural behavioral modeling for EMF. In Tichy, M., Ribeiro, L., Margaria, T., Padberg, J., and Taentzer, G., editors, Proceedings of the 12th International Workshop on Graph Transformation and Visual Modeling Techniques (GTVMT 2013), volume 58 of Electronic Communications of the EASST, Rome, Italy. EASST.
  21. Winetzhammer, S. and Westfechtel, B. (2014). Compiling graph transformation rules into a procedural language for behavioral modeling. In Pires, L. F., Hammoudi, S., Filipe, J., and das Neves, R. C., editors, Proceedings of the 2nd International Conference on Model-Driven Engineering and Software Development (MODELSWARD 2014), pages 415-424, Lisbon, Portugal. SCITEPRESS Science and Technology Publications, Portugal.
  22. Zündorf, A. (2001). Rigorous object oriented software development. Technical report, University of Paderborn, Germany.

Paper Citation

in Harvard Style

Winetzhammer S. and Westfechtel B. (2014). Propagating Model Refactorings to Graph Transformation Rules . In Proceedings of the 9th International Conference on Software Paradigm Trends - Volume 1: ICSOFT-PT, (ICSOFT 2014) ISBN 978-989-758-037-6, pages 17-28. DOI: 10.5220/0005098900170028

in Bibtex Style

author={Sabine Winetzhammer and Bernhard Westfechtel},
title={Propagating Model Refactorings to Graph Transformation Rules},
booktitle={Proceedings of the 9th International Conference on Software Paradigm Trends - Volume 1: ICSOFT-PT, (ICSOFT 2014)},

in EndNote Style

JO - Proceedings of the 9th International Conference on Software Paradigm Trends - Volume 1: ICSOFT-PT, (ICSOFT 2014)
TI - Propagating Model Refactorings to Graph Transformation Rules
SN - 978-989-758-037-6
AU - Winetzhammer S.
AU - Westfechtel B.
PY - 2014
SP - 17
EP - 28
DO - 10.5220/0005098900170028