Refactoring model