back-end domain: refactoring