7 CONCLUSION
Model-driven software engineering reduces develop-
ment effort by replacing low-level programming with
the construction of high-level models. To make
these models executable, structural modeling has to
be complemented with behavioral modeling. During
their lifetime, models undergo many changes for a va-
riety of different reasons. Thus, it is crucial to sup-
port model evolution. Refactoring of models provides
an important contribution to model evolution since it
aims at restructuring models such that future changes
are facilitated.
In this paper, we presented tool support for model
refactoring in the ModGraph environment. Mod-
Graph employs Ecore models for structural modeling
and graph transformation rules for behavioral mod-
eling. Refactorings are supported in an integrated
way: Each refactoring transformation on the struc-
tural model is consistently propagated into the be-
havioral model. In this way, our work goes con-
siderably beyond previous work on model refactor-
ing which was confined to the refactoring of the
structural model. Furthermore, while several other
approaches use graph transformations for refactor-
ing (i.e., refactoring with graph transformations), our
work is unique inasmuch as it addresses refactoring
for graph transformations, as well.
REFERENCES
Agrawal, A., Karsai, G., Neema, S., Shi, F., and Vizhanyo,
A. (2006). The design of a language for model trans-
formations. Software and System Modeling, 5(3):261–
288.
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 Manage-
ment of Data (SIGMOD 1987), pages 311–322, San
Franciso, CA. ACM Press.
Biermann, E., Ehrig, K., K
¨
ohler, 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.
Bottoni, P., Parisi-Presicce, F., and Taentzer, G. (2003).
Specifying integrated refactoring with distributed
graph transformations. In (Pfaltz et al., 2003), pages
220–235.
Buchmann, T., Westfechtel, B., and Winetzhammer, S.
(2012). ModGraph: Graphtransformationen f
¨
ur EMF.
In Sinz, E. J. and Sch
¨
urr, A., editors, Modellierung
2012, volume 201 of Lecture Notes in Informatics,
pages 107–122, Bamberg, Germany. GI.
D
¨
ummel, N. (2013). Refactoring mit Graphtransforma-
tionsregeln. Bachelor thesis, University of Bayreuth,
Bayreuth, Germany.
Fowler, M. (1999). Refactoring: Improving the Design of
Existing Code. Addison-Wesley, Boston, MA, USA.
Geiger, L. (2008). Graph transformation-based refactor-
ings using Fujaba. In Rensink, A. and van Gorp, P.,
editors, 4th International Workshop on Graph-Based
Tools: The Contest, Leicester, UK.
Levendovszky, T., Balasubramanian, D., Narayanan, A.,
and Karsai, G. (2009). A novel approach to semi-
automated evolution of DSML model transformation.
In van den Brand, M., Gasevic, D., and Gray, J., edi-
tors, Proceedings of the Second International Confer-
ence on Software Language Engineering (SLE 2009),
volume 5969 of LNCS, pages 23–41, Denver, CO.
Springer.
Mens, T. (2005). On the use of graph transformations
for model refactoring. In L
¨
ammel, 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.
Mens, T., Eetvelde, N. V., Demeyer, S., and Janssens, D.
(2005). Formalizing refactorings with graph transfor-
mations. Journal of Software Maintenance and Evo-
lution: Research and Practice, 17(4):247–276.
Mens, T., Taentzer, G., and Runge, O. (2007). Analysing
refactoring dependencies using graph transformation.
Software and Systems Modeling, 6(3):269–285.
Mens, T. and Tourw
´
e, T. (2004). A survey of software refac-
toring. IEEE Transactions on Software Engineering,
30(2):126–139.
OMG (2011). Meta Object Facility (MOF) 2.0
Query/View/Transformation Specification. Object
Management Group, Needham, MA, formal/2011-01-
01 edition.
Pfaltz, J. L., Nagl, M., and B
¨
ohlen, B., editors (2003).
Application of Graph Transformations with Industrial
Relevance: Second International Workshop (AGTIVE
2003), volume 3062 of LNCS, Charlottesville, VA,
USA. Springer.
Rose, L. M., Herrmannsdoerfer, M., Williams, J. R.,
Kolovos, D., Garc
´
es, K., Paige, R. F., and Pollack,
F. A. (2010). A comparison of model migration tools.
In Petriu, D. C., Rouquette, N., and Haugen, Ø., ed-
itors, MODELS 2010, Part I, volume 6394 of LNCS,
pages 61–75, Oslo, Norway. Springer.
Roser, S. and Bauer, B. (2008). Automatic generation and
evolution of model transformations using ontology en-
gineering space. In Spaccapietra, S., Pan, J. Z., Thi-
ran, P., Halpin, T., Staab, S., Svatek, V., Shvaiko,
P., and Roddick, J., editors, Journal of Data Seman-
tics XI, volume 5383 of LNCS, pages 32–64. Springer,
Heidelberg.
Steinberg, D., Budinsky, F., Paternostro, M., and Merks,
E. (2009). EMF: Eclipse Modeling Framework.
Addison-Wesley, Boston, MA, 2nd edition.
PropagatingModelRefactoringstoGraphTransformationRules
27