Análise da modernização de sistemas monolíticos legados para micro-serviços à luz da dívida técnica: um estudo de caso corporativo

Detalhes bibliográficos
Ano de defesa: 2018
Autor(a) principal: Loureiro, Caio Henrique Bos
Orientador(a): Não Informado pela instituição
Banca de defesa: Não Informado pela instituição
Tipo de documento: Dissertação
Tipo de acesso: Acesso aberto
Idioma: por
Instituição de defesa: Biblioteca Digitais de Teses e Dissertações da USP
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://teses.usp.br/teses/disponiveis/45/45134/tde-20230727-113220/
Resumo: Devido ao crescente apelo por agilidade e flexibilidade no desenvolvimento de software, sistemas legados tornaram-se grandes gargalos nas corporações globais devido a baixa manutenibilidade e evolutibilidade que apresentam, sendo resistentes às mudanças cada vez mais constantes no dia-a- dia. Para evitar a queda da produtividade das equipes, a estratégia de Strangler Application, uma técnica faseada de modernização de software, vem sendo amplamente adotada devido ao baixo risco e custo associado. Essa estratégia favorece a adoção de arquiteturas de micro-serviços em detrimento aos sistemas monolíticos, já que possibilita a criação de aplicações menores, coesas e autônomas a cada etapa do processo de modernização. Embora 88 por cento das empresas planejem modernizar seus sistemas nos próximos anos, a literatura sobre Strangler Application é escassa assim como os estudos sobre a arquitetura de micro-serviços, já que tais tendências surgiram recentemente na indústria e ainda não puderam ser totalmente exploradas pela comunidade científica. Nesse contexto, um estudo de caso exploratório foi desenvolvido num contexto real de uma grande empresa brasileira baseado na modernização de um sistema monolítico legado em uma arquitetura de micro-serviços através da estratégia de Strangler Application. Métricas de dívida técnica foram coletadas das aplicações para que pudesse ser inferida a qualidade do sistema resultante a cada etapa do processo de modernização, uma da formas de avaliar o sucesso do mesmo. Além disso, a presença do pesquisador no dia-a-dia da empresa durante três anos garantiu o levantamento de uma ampla gama de dados qualitativos. Como resultado, percebeu-se que a dívida técnica pode variar conforme as características do sistema legado e principalmente de acordo com a priorização dos módulos migrados, o que também influência no acoplamento e adequação da nova arquitetura descentralizada construída aos padrões existentes na literatura de micro-serviços. Como contribuição, além da análise de alguns padrões de comunicação utilizados na arquitetura de micro-serviços, um guia de boas práticas de Strangler Application foi desenvolvido buscando consolidar a literatura existente e proporcionar uma transição mais suave entre o mundo de software legado e moderno.