Refactoring techniques