Strategies to mitigate anti-patterns in microservices before migrating from a monolithic system to microservices

Detalhes bibliográficos
Ano de defesa: 2022
Autor(a) principal: Villaca, Guilherme Luciano Donin lattes
Orientador(a): Silva, Ivonei Freitas da lattes
Banca de defesa: Silva, Ivonei Freitas da lattes, Assunção, Wesley Klewerton Guez lattes, Andrade, Sidgley Camargo de lattes
Tipo de documento: Dissertação
Tipo de acesso: Acesso aberto
Idioma: por
Instituição de defesa: Universidade Estadual do Oeste do Paraná
Cascavel
Programa de Pós-Graduação: Programa de Pós-Graduação em Ciência da Computação
Departamento: Centro de Ciências Exatas e Tecnológicas
País: Brasil
Palavras-chave em Português:
Palavras-chave em Inglês:
Área do conhecimento CNPq:
Link de acesso: https://tede.unioeste.br/handle/tede/6034
Resumo: As arquiteturas de microsserviços são afetadas pelos chamados antipadrões, que são maus hábitos de implementação que afetam a qualidade do software. Considerando que a grande maioria dos sistemas baseados em microsserviços são migrados de sistemas legados monolíticos, esses antipadrões podem ser uma herança indesejável que deve ser evitada pois isto afeta negativamente a arquitetura de microsserviços, causando problemas de manutenibilidade, gerenciamento e evolução do sistema. Alguns desses antipadrões de microsserviços devem ser mitigados nas fases iniciais do processo de migração, ou seja, durante a pré-migração. Para ajudar profissionais e pesquisadores a mitigar antipadrões de microsserviços durante a pré-migração, esta dissertação apresenta um estudo exploratório que examina as estratégias existentes. Este estudo aborda os antipadrões já catalogados na literatura e define quais podem ser mitigados por meio de um melhor planejamento na fase de pré-migração ao passar de sistemas monolíticos para sistemas baseados em microsserviços. Este estudo se baseia em multi-métodos compostos por um mapeamento sistemático da literatura, uma revisão rápida e entrevistas com profissionais. Em seguida, os resultados são analisados por meio da análise temática. Como resultado, dez estratégias foram identificadas, que são, adotar o domain-driven design, uso da strangler pattern, identificar o alto acoplamento, usar uma estratégia de backlog, agrupamento de entidades, classificar dados como subsistema de negócios, olhar primeiro para os dados, uso de clean architecture, adotar twelve factor app e adotar uma estratégia de garantia de evolução do sistema.