Agile software development
Agile software development methodologies plan for regular (or even continuous) refactoring making it an integral part of the team software development process.