"Refactoring is the process of changing a software system in such a way that it does not alter the external behavior of the code yet improves its internal structure." -- Martin Fowler in Refactoring Improving The Design Of Existing Code.
A solid definition is attempted in What Is Refactoring.
Click on this page's title for a list of pages about refactoring.
See original on c2.com