refactoring person update method