Formalizing refactorings with graph transformations

The widespread interest in refactoring—transforming the source‐code of an object‐oriented program without changing its external behaviour—has increased the need for a precise definition of refactoring transformations and their properties. In this paper we explore the use of graph rewriting for speci...

Full description

Saved in:
Bibliographic Details
Published inJournal of software maintenance and evolution Vol. 17; no. 4; pp. 247 - 276
Main Authors Mens, Tom, Van Eetvelde, Niels, Demeyer, Serge, Janssens, Dirk
Format Journal Article
LanguageEnglish
Published Chichester, UK John Wiley & Sons, Ltd 01.07.2005
Subjects
Online AccessGet full text

Cover

Loading…
More Information
Summary:The widespread interest in refactoring—transforming the source‐code of an object‐oriented program without changing its external behaviour—has increased the need for a precise definition of refactoring transformations and their properties. In this paper we explore the use of graph rewriting for specifying refactorings and their effect on programs. We introduce a graph representation for programs and show how two representative refactorings can be expressed by graph productions. Then we demonstrate that it is possible to prove that refactorings preserve certain program properties, and that graph rewriting is a suitable formalism for such proofs. Copyright © 2005 John Wiley & Sons, Ltd.
Bibliography:Fund for Scientific Research-Flanders (Belgium) - No. G.0452.03
ark:/67375/WNG-BWCVD6QJ-H
istex:EB17D34FD0C6352FB3E6A2C6642D7F453C6C9952
ArticleID:SMR316
ObjectType-Article-2
SourceType-Scholarly Journals-1
ObjectType-Feature-1
content type line 23
ISSN:1532-060X
1532-0618
DOI:10.1002/smr.316