Duties Refactoring and Test