Refactoring redesigning