Litcius/Paper detail

A model-driven approach for continuous performance engineering in microservice-based systems

Vittorio Cortellessa, Daniele Di Pompeo, Romina Eramo, Michele Tucci

2021Journal of Systems and Software53 citationsDOIOpen Access PDF

Abstract

Microservices are quite widely impacting on the software industry in recent years. Rapid evolution and continuous deployment represent specific benefits of microservice-based systems, but they may have a significant impact on non-functional properties like performance. Despite the obvious relevance of this property, there is still a lack of systematic approaches that explicitly take into account performance issues in the lifecycle of microservice-based systems. In such a context of evolution and re-deployment, Model-Driven Engineering techniques can provide major support to various software engineering activities, and in particular they can allow managing the relationships between a running system and its architectural model. In this paper, we propose a model-driven integrated approach that exploits traceability relationships between the monitored data of a microservice-based running system and its architectural model to derive recommended refactoring actions that lead to performance improvement. The approach has been applied and validated on two microservice-based systems, in the domain of e-commerce and ticket reservation, respectively, whose architectural models have been designed in UML profiled with MARTE.

Topics & Concepts

MicroservicesComputer scienceSoftware deploymentSoftware engineeringSoftware evolutionUnified Modeling LanguageModel-driven architectureContext (archaeology)Code refactoringDevOpsTraceabilitySystems engineeringSoftware systemSoftwareEngineeringCloud computingSoftware constructionOperating systemBiologyPaleontologySoftware System Performance and ReliabilityAdvanced Software Engineering MethodologiesSoftware Testing and Debugging Techniques
A model-driven approach for continuous performance engineering in microservice-based systems | Litcius