Empirical Study on Refactoring Activity

In this empirical study we examined the refactoring activity in the history of 3 open-source projects, namely JUnit, Apache HTTPCore, and Apache HTTPClient, regarding the following dimensions:

More specifically, the research questions that we investigated are:

  1. Do software developers perform different types of refactoring operations on test code and production code?
  2. Which developers are responsible for refactorings?
  3. Is there more refactoring activity before major project releases than after?
  4. Is refactoring activity on production code preceded by the addition or modification of test code?
  5. What is the purpose of the applied refactorings?

Swiss-Army Knife of Refactorings

Collected data

Related Papers