Background: Over the past decade, microservices have surged in popularity within software engineering. From a research viewpoint, mining studies are frequently employed to assess the evolution of diverse microservice properties. Despite the growing need, a validated static method to swiftly identify microservices seems to be currently missing in the literature. Aims: We present Claim, a lightweight static approach that analyzes configuration files to identify microservices in Dockerized environments, specifically designed with mining studies in mind. Method: To validate Claim, we conduct an empirical experiment comprising 20 repositories, 160 microservices, and 13k commits. A priori and manually defined ground truths are used to evaluate Claim's microservice identification effectiveness and efficiency. Results: Claim detects microservices with an accuracy of 82.0%, reports a median execution time of 61ms per commit, and requires in the worst case scenario 125.5s to analyze the history of a repository comprising 1509 commits. With respect to its closest competitor, CLAIM shines most in terms of false positive reduction (-40%). Conclusions: While not able to reconstruct a microservice architecture in its entirety, Claim is an effective and efficient option to swiftly identify microservices in Dockerized environments, and seems especially fitted for software evolution mining studies.
CLAIM: a Lightweight Approach to Identify Microservices in Dockerized Environments / Maggi K.; Verdecchia R.; Scommegna L.; Vicario E.. - ELETTRONICO. - (2024), pp. 357-362. (Intervento presentato al convegno 28th International Conference on Evaluation and Assessment in Software Engineering, EASE 2024 tenutosi a ita nel 2024) [10.1145/3661167.3661206].
CLAIM: a Lightweight Approach to Identify Microservices in Dockerized Environments
Maggi K.;Verdecchia R.;Scommegna L.;
2024
Abstract
Background: Over the past decade, microservices have surged in popularity within software engineering. From a research viewpoint, mining studies are frequently employed to assess the evolution of diverse microservice properties. Despite the growing need, a validated static method to swiftly identify microservices seems to be currently missing in the literature. Aims: We present Claim, a lightweight static approach that analyzes configuration files to identify microservices in Dockerized environments, specifically designed with mining studies in mind. Method: To validate Claim, we conduct an empirical experiment comprising 20 repositories, 160 microservices, and 13k commits. A priori and manually defined ground truths are used to evaluate Claim's microservice identification effectiveness and efficiency. Results: Claim detects microservices with an accuracy of 82.0%, reports a median execution time of 61ms per commit, and requires in the worst case scenario 125.5s to analyze the history of a repository comprising 1509 commits. With respect to its closest competitor, CLAIM shines most in terms of false positive reduction (-40%). Conclusions: While not able to reconstruct a microservice architecture in its entirety, Claim is an effective and efficient option to swiftly identify microservices in Dockerized environments, and seems especially fitted for software evolution mining studies.I documenti in FLORE sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.