  This paper reports an empirical study on refactoring activity in three Java
software systems. We investigated some questions on refactoring activity, to
confirm or disagree on conclusions that have been drawn from previous empirical
studies. Unlike previous empirical studies, our study found that it is not
always true that there are more refactoring activities before major project
release date than after. In contrast, we were able to confirm that software
developers perform different types of refactoring operations on test code and
production code, specific developers are responsible for refactorings in the
project, refactoring edits are not very well tested. Further, floss refactoring
is more popular among the developers, refactoring activity is frequent in the
projects, majority of bad smells once occurred they persist up to the latest
version of the system. By confirming assumptions by other researchers we can
have greater confidence that those research conclusions are generalizable.
