Main            People          Papers     

Refactoring Research Homepage

What is Refactoring?

Refactoring is a disciplined technique for improving the structure of existing code without changing the observable behavior.

Why this webpage?

These pages have been created for strictly one purpose and one purpose only. To provide researchers and industrial engineers with an information resource on "Refactoring". As an information repository, this site presents work of several people who are active in the research community, rather than presenting the work of a single individual or organization.

That said, these pages provide a number of links and articles that I have found useful during my research and professional work. I have tried to keep them as unbiased as possible, but as with any statistical sample, do not believe information that only comes from one source.

If you are interested about tools for refactoring, visit Martin Fowler's refactoring page.

Who am I?

I am Danny Dig. I've been working on automated refactorings for many years. I built JavaRefactor in 2001, the first open-source Java refactoring engine. I became so interested in refactoring that I moved later to the birthplace of refactoring research (which started in late 80's). I wrote a PhD dissertation on automatic upgrading of applications with respect to API refactorings in software components. Lately I have been working on refactorings that retrofit parallelism into sequential code (see concurrency refactorings)



Visitors since July 1st, 2006