A method for monitoring the coupling evolution of microservice-based architectures.
Autor(a) principal: | |
---|---|
Data de Publicação: | 2021 |
Outros Autores: | |
Tipo de documento: | Artigo |
Idioma: | eng |
Título da fonte: | Repositório Institucional da EMBRAPA (Repository Open Access to Scientific Information from EMBRAPA - Alice) |
Texto Completo: | http://www.alice.cnptia.embrapa.br/alice/handle/doc/1137627 https://doi.org/10.1186/s13173-021-00120-y |
Resumo: | Abstract. The microservice architecture is claimed to satisfy ongoing software development demands, such as resilience, flexibility, and velocity. However, developing applications based on microservices also brings some drawbacks, such as the increased software operational complexity. Recent studies have also pointed out the lack of methods to prevent problems related to the maintainability of these solutions. Disregarding established design principles during the software evolution may lead to the so-called architectural erosion, which can end up in a condition of unfeasible maintenance. As microservices can be considered a new architecture style, there are few initiatives to monitoring the evolution of software microservice-based architectures. In this paper, we introduce the SYMBIOTE method for monitoring the coupling evolution of microservice-based systems. More specifically, this method collects coupling metrics during runtime (staging or production environments) and monitors them throughout software evolution. The longitudinal analysis of the collected measures allows detecting an upward trend in coupling metrics that could represent signs of architectural degradation. To develop the proposed method, we performed an experimental analysis of the coupling metrics behavior using artificially generated data. The results of these experiment revealed the metrics behavior in different scenarios, providing insights to develop the analysis method for the identification of architectural degradation. We evaluated the SYMBIOTE method in a real-case open source project called Spinnaker. The results obtained in this evaluation show the relationship between architectural changes and upward trends in coupling metrics for most of the analyzed release intervals. Therefore, the first version of SYMBIOTE has shown potential to detect signs of architectural degradation during the evolution of microservice-based architectures. |
id |
EMBR_163be92e333845174619bb6133dbf6da |
---|---|
oai_identifier_str |
oai:www.alice.cnptia.embrapa.br:doc/1137627 |
network_acronym_str |
EMBR |
network_name_str |
Repositório Institucional da EMBRAPA (Repository Open Access to Scientific Information from EMBRAPA - Alice) |
repository_id_str |
2154 |
spelling |
A method for monitoring the coupling evolution of microservice-based architectures.MicrosserviçosEvolução de softwareArquitetura de softwareEngenharia de softwareMétricas de acoplamentoMicroservicesMaintainabilityCoupling metricsSoftware evolutionSoftware architectureSoftware engineeringAbstract. The microservice architecture is claimed to satisfy ongoing software development demands, such as resilience, flexibility, and velocity. However, developing applications based on microservices also brings some drawbacks, such as the increased software operational complexity. Recent studies have also pointed out the lack of methods to prevent problems related to the maintainability of these solutions. Disregarding established design principles during the software evolution may lead to the so-called architectural erosion, which can end up in a condition of unfeasible maintenance. As microservices can be considered a new architecture style, there are few initiatives to monitoring the evolution of software microservice-based architectures. In this paper, we introduce the SYMBIOTE method for monitoring the coupling evolution of microservice-based systems. More specifically, this method collects coupling metrics during runtime (staging or production environments) and monitors them throughout software evolution. The longitudinal analysis of the collected measures allows detecting an upward trend in coupling metrics that could represent signs of architectural degradation. To develop the proposed method, we performed an experimental analysis of the coupling metrics behavior using artificially generated data. The results of these experiment revealed the metrics behavior in different scenarios, providing insights to develop the analysis method for the identification of architectural degradation. We evaluated the SYMBIOTE method in a real-case open source project called Spinnaker. The results obtained in this evaluation show the relationship between architectural changes and upward trends in coupling metrics for most of the analyzed release intervals. Therefore, the first version of SYMBIOTE has shown potential to detect signs of architectural degradation during the evolution of microservice-based architectures.Article number: 17.DANIEL RODRIGO DE F APOLINARIO, CNPTIA; BRENO B. N. DE FRANÇA, Unicamp.APOLINÁRIO, D. R. de F.FRANÇA, B. B. N. de2021-12-13T13:01:00Z2021-12-13T13:01:00Z2021-12-132021info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/articleJournal of the Brazilian Computer Society, v. 27, p. 1-35, 2021.http://www.alice.cnptia.embrapa.br/alice/handle/doc/1137627https://doi.org/10.1186/s13173-021-00120-yenginfo:eu-repo/semantics/openAccessreponame:Repositório Institucional da EMBRAPA (Repository Open Access to Scientific Information from EMBRAPA - Alice)instname:Empresa Brasileira de Pesquisa Agropecuária (Embrapa)instacron:EMBRAPA2021-12-13T13:01:10Zoai:www.alice.cnptia.embrapa.br:doc/1137627Repositório InstitucionalPUBhttps://www.alice.cnptia.embrapa.br/oai/requestopendoar:21542021-12-13T13:01:10falseRepositório InstitucionalPUBhttps://www.alice.cnptia.embrapa.br/oai/requestcg-riaa@embrapa.bropendoar:21542021-12-13T13:01:10Repositório Institucional da EMBRAPA (Repository Open Access to Scientific Information from EMBRAPA - Alice) - Empresa Brasileira de Pesquisa Agropecuária (Embrapa)false |
dc.title.none.fl_str_mv |
A method for monitoring the coupling evolution of microservice-based architectures. |
title |
A method for monitoring the coupling evolution of microservice-based architectures. |
spellingShingle |
A method for monitoring the coupling evolution of microservice-based architectures. APOLINÁRIO, D. R. de F. Microsserviços Evolução de software Arquitetura de software Engenharia de software Métricas de acoplamento Microservices Maintainability Coupling metrics Software evolution Software architecture Software engineering |
title_short |
A method for monitoring the coupling evolution of microservice-based architectures. |
title_full |
A method for monitoring the coupling evolution of microservice-based architectures. |
title_fullStr |
A method for monitoring the coupling evolution of microservice-based architectures. |
title_full_unstemmed |
A method for monitoring the coupling evolution of microservice-based architectures. |
title_sort |
A method for monitoring the coupling evolution of microservice-based architectures. |
author |
APOLINÁRIO, D. R. de F. |
author_facet |
APOLINÁRIO, D. R. de F. FRANÇA, B. B. N. de |
author_role |
author |
author2 |
FRANÇA, B. B. N. de |
author2_role |
author |
dc.contributor.none.fl_str_mv |
DANIEL RODRIGO DE F APOLINARIO, CNPTIA; BRENO B. N. DE FRANÇA, Unicamp. |
dc.contributor.author.fl_str_mv |
APOLINÁRIO, D. R. de F. FRANÇA, B. B. N. de |
dc.subject.por.fl_str_mv |
Microsserviços Evolução de software Arquitetura de software Engenharia de software Métricas de acoplamento Microservices Maintainability Coupling metrics Software evolution Software architecture Software engineering |
topic |
Microsserviços Evolução de software Arquitetura de software Engenharia de software Métricas de acoplamento Microservices Maintainability Coupling metrics Software evolution Software architecture Software engineering |
description |
Abstract. The microservice architecture is claimed to satisfy ongoing software development demands, such as resilience, flexibility, and velocity. However, developing applications based on microservices also brings some drawbacks, such as the increased software operational complexity. Recent studies have also pointed out the lack of methods to prevent problems related to the maintainability of these solutions. Disregarding established design principles during the software evolution may lead to the so-called architectural erosion, which can end up in a condition of unfeasible maintenance. As microservices can be considered a new architecture style, there are few initiatives to monitoring the evolution of software microservice-based architectures. In this paper, we introduce the SYMBIOTE method for monitoring the coupling evolution of microservice-based systems. More specifically, this method collects coupling metrics during runtime (staging or production environments) and monitors them throughout software evolution. The longitudinal analysis of the collected measures allows detecting an upward trend in coupling metrics that could represent signs of architectural degradation. To develop the proposed method, we performed an experimental analysis of the coupling metrics behavior using artificially generated data. The results of these experiment revealed the metrics behavior in different scenarios, providing insights to develop the analysis method for the identification of architectural degradation. We evaluated the SYMBIOTE method in a real-case open source project called Spinnaker. The results obtained in this evaluation show the relationship between architectural changes and upward trends in coupling metrics for most of the analyzed release intervals. Therefore, the first version of SYMBIOTE has shown potential to detect signs of architectural degradation during the evolution of microservice-based architectures. |
publishDate |
2021 |
dc.date.none.fl_str_mv |
2021-12-13T13:01:00Z 2021-12-13T13:01:00Z 2021-12-13 2021 |
dc.type.driver.fl_str_mv |
info:eu-repo/semantics/publishedVersion info:eu-repo/semantics/article |
format |
article |
status_str |
publishedVersion |
dc.identifier.uri.fl_str_mv |
Journal of the Brazilian Computer Society, v. 27, p. 1-35, 2021. http://www.alice.cnptia.embrapa.br/alice/handle/doc/1137627 https://doi.org/10.1186/s13173-021-00120-y |
identifier_str_mv |
Journal of the Brazilian Computer Society, v. 27, p. 1-35, 2021. |
url |
http://www.alice.cnptia.embrapa.br/alice/handle/doc/1137627 https://doi.org/10.1186/s13173-021-00120-y |
dc.language.iso.fl_str_mv |
eng |
language |
eng |
dc.rights.driver.fl_str_mv |
info:eu-repo/semantics/openAccess |
eu_rights_str_mv |
openAccess |
dc.source.none.fl_str_mv |
reponame:Repositório Institucional da EMBRAPA (Repository Open Access to Scientific Information from EMBRAPA - Alice) instname:Empresa Brasileira de Pesquisa Agropecuária (Embrapa) instacron:EMBRAPA |
instname_str |
Empresa Brasileira de Pesquisa Agropecuária (Embrapa) |
instacron_str |
EMBRAPA |
institution |
EMBRAPA |
reponame_str |
Repositório Institucional da EMBRAPA (Repository Open Access to Scientific Information from EMBRAPA - Alice) |
collection |
Repositório Institucional da EMBRAPA (Repository Open Access to Scientific Information from EMBRAPA - Alice) |
repository.name.fl_str_mv |
Repositório Institucional da EMBRAPA (Repository Open Access to Scientific Information from EMBRAPA - Alice) - Empresa Brasileira de Pesquisa Agropecuária (Embrapa) |
repository.mail.fl_str_mv |
cg-riaa@embrapa.br |
_version_ |
1794503514180812800 |