Design, refactoring