Microservice antipatterns : an approach for detection using dynamic analysis
| Ano de defesa: | 2025 |
|---|---|
| Autor(a) principal: | |
| Orientador(a): | |
| Banca de defesa: | |
| Tipo de documento: | Dissertação |
| Tipo de acesso: | Acesso aberto |
| Idioma: | eng |
| Instituição de defesa: |
[s.n.]
|
| Programa de Pós-Graduação: |
Não Informado pela instituição
|
| Departamento: |
Não Informado pela instituição
|
| País: |
Não Informado pela instituição
|
| Palavras-chave em Português: | |
| Link de acesso: | https://hdl.handle.net/20.500.12733/41842 |
Resumo: | Orientador: Breno Bernard Nicolau de França |
| id |
UNICAMP-30_ce8d483d6ebd8e2b05106c2edae7c2fc |
|---|---|
| oai_identifier_str |
oai::1541418 |
| network_acronym_str |
UNICAMP-30 |
| network_name_str |
Biblioteca Digital de Teses e Dissertações da Universidade Estadual de Campinas (UNICAMP) |
| repository_id_str |
|
| spelling |
Microservice antipatterns : an approach for detection using dynamic analysisAntipadrões em microsserviços: : uma abordagem de detecção utilizando análise dinâmicaSoftware architectureSoftware engineeringDynamic analysisMicroservices architectureArquitetura de softwareEngenharia de softwareAnálise dinâmicaArquitetura de microsserviçosOrientador: Breno Bernard Nicolau de FrançaCoorientador: Bruno Barbieri de Pontes CafeoDissertação (mestrado) - Universidade Estadual de Campinas (UNICAMP), Instituto de ComputaçãoResumo: A crescente adoção da arquitetura de microsserviços no desenvolvimento de software, impulsionada pela necessidade de sistemas flexíveis e escaláveis, tornou imperativo o desenvolvimento de estratégias para monitorar, verificar e validar a saúde geral do sistema em diferentes níveis, incluindo a arquitetura, o design e o código-fonte. No entanto, à medida que o software evolui, ele se torna, invariavelmente, suscetível a soluções recorrentes inadequadas para problemas que podem impactar negativamente a saúde do sistema, conhecidas como antipadrões. As técnicas já catalogadas para detecção de antipadrões em diferentes modelos arquiteturais empregam abordagens distintas, abrangendo tanto a análise estática de código e de ambiente quanto a análise dinâmica de dados coletados durante a execução. Contudo, a detecção de antipadrões em ambientes de execução, especialmente no contexto de microsserviços, apresenta desafios devido à natureza distribuída e à complexidade operacional da arquitetura. Isso dificulta a identificação de antipadrões relacionados à visibilidade do sistema, à comunicação, ao reconhecimento de escopo, ao desempenho e a outros aspectos inerentes aos microsserviços. Assim, este trabalho propõe uma abordagem para detectar antipadrões identificáveis primariamente em tempo de execução, incluindo quatro estratégias distintas, e avalia sua eficácia por meio de uma aplicação real de microsserviços de código aberto, o Spinnaker, utilizando métricas coletadas em tempo de execução. Como resultado, duas das heurísticas identificaram com sucesso antipadrões no sistema, enquanto as outras duas não detectaram falhas. Todos os casos reportados foram verificados e confirmados manualmente, garantindo a validade dos resultados nas situações analisadas. Dessa forma, os resultados evidenciam que a análise dinâmica é uma alternativa viável e eficaz para detectar antipadrões em ambientes de microsserviços em execução real, permitindo identificar falhas que dificilmente são observadas por meio de análise estáticaAbstract: The increasing adoption of microservice architecture in software development, driven by the need for flexible and scalable systems, has made it imperative to develop strategies for monitoring, verifying, and validating the overall health of systems at different levels, including architecture, design, and source code. However, as software evolves, it inevitably becomes susceptible to recurring inadequate solutions to problems, which can negatively impact system health, commonly known as antipatterns. Existing techniques for detecting antipatterns across different architectural models employ distinct approaches, including static analysis of code and the environment, and dynamic analysis of data collected during execution. Nonetheless, detecting antipatterns in runtime environments, especially in the context of microservices, poses challenges due to their distributed nature and the architecture's operational complexity. This complexity hinders the identification of antipatterns related to system visibility, communication, scope recognition, performance, and other aspects inherent to microservices. Therefore, this work proposes an approach to detect antipatterns primarily identifiable at runtime, including four distinct detection strategies. It evaluates their effectiveness through application in a real-world open-source microservice system, Spinnaker, using runtime metrics. As a result, two proposed heuristics successfully identified antipatterns in the system, while the other two did not detect any failures. All reported cases were manually verified and confirmed, ensuring the validity of the results for the analyzed scenarios. Thus, the findings demonstrate that dynamic analysis is a viable and effective alternative for detecting antipatterns in microservice environments, providing a closer-to-reality approach that enables the identification of issues that are difficult to observe through static analysisAbertoMestradoCiência da ComputaçãoMestre em Ciência da Computação[s.n.]França, Breno Bernard Nicolau de, 1983-Cafeo, Bruno Barbieri de Pontes, 1985-Almeida, Rodrigo Bonifácio deSantanchè, AndréUniversidade Estadual de Campinas (UNICAMP). Instituto de ComputaçãoPrograma de Pós-Graduação em Ciência da ComputaçãoUNIVERSIDADE ESTADUAL DE CAMPINASBraz, Leonardo Henrique de, 1999-20252025-12-04T00:00:00Zinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisapplication/pdf1 recurso online (82 p.) : il., digital, arquivo PDF.https://hdl.handle.net/20.500.12733/41842BRAZ, Leonardo Henrique de. Microservice antipatterns: an approach for detection using dynamic analysis. 2025. 1 recurso online (82 p.) Dissertação (mestrado) - Universidade Estadual de Campinas (UNICAMP), Instituto de Computação, Campinas, SP. Disponível em: 20.500.12733/41842. Acesso em: 27 abr. 2026.https://repositorio.unicamp.br/acervo/detalhe/1541418Cover: https://repositorio.unicamp.br/capa/capa?codigo=1541418Requisitos do sistema: Software para leitura de arquivo em PDFengreponame:Biblioteca Digital de Teses e Dissertações da Universidade Estadual de Campinas (UNICAMP)instname:Universidade Estadual de Campinas (UNICAMP)instacron:UNICAMPinfo:eu-repo/semantics/openAccess2026-03-16T09:27:49Zoai::1541418Biblioteca Digital de Teses e DissertaçõesPUBhttp://repositorio.unicamp.br/oai/tese/oai.aspsbubd@unicamp.bropendoar:2026-03-16T09:27:49Biblioteca Digital de Teses e Dissertações da Universidade Estadual de Campinas (UNICAMP) - Universidade Estadual de Campinas (UNICAMP)false |
| dc.title.none.fl_str_mv |
Microservice antipatterns : an approach for detection using dynamic analysis Antipadrões em microsserviços: : uma abordagem de detecção utilizando análise dinâmica |
| title |
Microservice antipatterns : an approach for detection using dynamic analysis |
| spellingShingle |
Microservice antipatterns : an approach for detection using dynamic analysis Braz, Leonardo Henrique de, 1999- Software architecture Software engineering Dynamic analysis Microservices architecture Arquitetura de software Engenharia de software Análise dinâmica Arquitetura de microsserviços |
| title_short |
Microservice antipatterns : an approach for detection using dynamic analysis |
| title_full |
Microservice antipatterns : an approach for detection using dynamic analysis |
| title_fullStr |
Microservice antipatterns : an approach for detection using dynamic analysis |
| title_full_unstemmed |
Microservice antipatterns : an approach for detection using dynamic analysis |
| title_sort |
Microservice antipatterns : an approach for detection using dynamic analysis |
| author |
Braz, Leonardo Henrique de, 1999- |
| author_facet |
Braz, Leonardo Henrique de, 1999- |
| author_role |
author |
| dc.contributor.none.fl_str_mv |
França, Breno Bernard Nicolau de, 1983- Cafeo, Bruno Barbieri de Pontes, 1985- Almeida, Rodrigo Bonifácio de Santanchè, André Universidade Estadual de Campinas (UNICAMP). Instituto de Computação Programa de Pós-Graduação em Ciência da Computação UNIVERSIDADE ESTADUAL DE CAMPINAS |
| dc.contributor.author.fl_str_mv |
Braz, Leonardo Henrique de, 1999- |
| dc.subject.por.fl_str_mv |
Software architecture Software engineering Dynamic analysis Microservices architecture Arquitetura de software Engenharia de software Análise dinâmica Arquitetura de microsserviços |
| topic |
Software architecture Software engineering Dynamic analysis Microservices architecture Arquitetura de software Engenharia de software Análise dinâmica Arquitetura de microsserviços |
| description |
Orientador: Breno Bernard Nicolau de França |
| publishDate |
2025 |
| dc.date.none.fl_str_mv |
2025 2025-12-04T00:00:00Z |
| dc.type.status.fl_str_mv |
info:eu-repo/semantics/publishedVersion |
| dc.type.driver.fl_str_mv |
info:eu-repo/semantics/masterThesis |
| format |
masterThesis |
| status_str |
publishedVersion |
| dc.identifier.uri.fl_str_mv |
https://hdl.handle.net/20.500.12733/41842 BRAZ, Leonardo Henrique de. Microservice antipatterns: an approach for detection using dynamic analysis. 2025. 1 recurso online (82 p.) Dissertação (mestrado) - Universidade Estadual de Campinas (UNICAMP), Instituto de Computação, Campinas, SP. Disponível em: 20.500.12733/41842. Acesso em: 27 abr. 2026. |
| url |
https://hdl.handle.net/20.500.12733/41842 |
| identifier_str_mv |
BRAZ, Leonardo Henrique de. Microservice antipatterns: an approach for detection using dynamic analysis. 2025. 1 recurso online (82 p.) Dissertação (mestrado) - Universidade Estadual de Campinas (UNICAMP), Instituto de Computação, Campinas, SP. Disponível em: 20.500.12733/41842. Acesso em: 27 abr. 2026. |
| dc.language.iso.fl_str_mv |
eng |
| language |
eng |
| dc.relation.none.fl_str_mv |
https://repositorio.unicamp.br/acervo/detalhe/1541418 Cover: https://repositorio.unicamp.br/capa/capa?codigo=1541418 Requisitos do sistema: Software para leitura de arquivo em PDF |
| dc.rights.driver.fl_str_mv |
info:eu-repo/semantics/openAccess |
| eu_rights_str_mv |
openAccess |
| dc.format.none.fl_str_mv |
application/pdf 1 recurso online (82 p.) : il., digital, arquivo PDF. |
| dc.publisher.none.fl_str_mv |
[s.n.] |
| publisher.none.fl_str_mv |
[s.n.] |
| dc.source.none.fl_str_mv |
reponame:Biblioteca Digital de Teses e Dissertações da Universidade Estadual de Campinas (UNICAMP) instname:Universidade Estadual de Campinas (UNICAMP) instacron:UNICAMP |
| instname_str |
Universidade Estadual de Campinas (UNICAMP) |
| instacron_str |
UNICAMP |
| institution |
UNICAMP |
| reponame_str |
Biblioteca Digital de Teses e Dissertações da Universidade Estadual de Campinas (UNICAMP) |
| collection |
Biblioteca Digital de Teses e Dissertações da Universidade Estadual de Campinas (UNICAMP) |
| repository.name.fl_str_mv |
Biblioteca Digital de Teses e Dissertações da Universidade Estadual de Campinas (UNICAMP) - Universidade Estadual de Campinas (UNICAMP) |
| repository.mail.fl_str_mv |
sbubd@unicamp.br |
| _version_ |
1863676533886943232 |