Refactor Supervisor model to use helper function