Design refactoring