A Model-Driven Approach Towards Automatic Migration to Microservices