Refactor use case