Detecting Structural Refactoring Conflicts Using Critical Pair Analysis

Tom Mens, Gabriele Taentzer, Olga Runge · Electronic Notes in Theoretical Computer Science · 2005

Refactorings are program transformations that improve the software structure while preserving the external behaviour. In spite of this very useful property, refactorings can still give rise to structural conflicts when parallel evolutions to the same software are made by different developers. This paper explores this problem of structural evolution conflicts in a formal way by using graph transformation and critical pair analysis. Based on experiments carried out in the graph transformation tool AGG, we show how this formalism can be exploited to detect and resolve refactoring conflicts.

Read the paper · More papers on PaperTik