- Craft a mechanism for integration with repository - Error handling - Connecting viewModels with interface