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

Detalhes bibliográficos
Autor(a) principal: Villaca, Guilherme Luciano Donin
Data de Publicação: 2022
Tipo de documento: Dissertação
Idioma: por
Título da fonte: Biblioteca Digital de Teses e Dissertações do UNIOESTE
Texto Completo: 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.
id UNIOESTE-1_220f9799b3f5ae99b7cb810a2878aa12
oai_identifier_str oai:tede.unioeste.br:tede/6034
network_acronym_str UNIOESTE-1
network_name_str Biblioteca Digital de Teses e Dissertações do UNIOESTE
repository_id_str
spelling Silva, Ivonei Freitas dahttp://lattes.cnpq.br/4053071719790087Silva, Ivonei Freitas dahttp://lattes.cnpq.br/4053071719790087Assunção, Wesley Klewerton Guezhttp://lattes.cnpq.br/2841032013026879Andrade, Sidgley Camargo dehttp://lattes.cnpq.br/2230323637134843http://lattes.cnpq.br/6956551345123012Villaca, Guilherme Luciano Donin2022-05-12T14:46:22Z2022-02-11VILLACA, Guilherme Luciano Donin. Strategies to mitigate anti-patterns in microservices before migrating from a monolithic system to microservices. 2022. 141 f. Dissertação (Mestrado em Ciência da Computação) - Universidade Estadual do Oeste do Paraná, Cascavel - PR.https://tede.unioeste.br/handle/tede/6034As 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.Microservice architectures are affected by the so-called anti-patterns, i.e., bad implementation habits that affect software quality. Considering that the vast majority of microservicesbased systems are migrated from monolithic legacy systems, these anti-patterns can be an undesirable inheritance that must be avoided. Some of these microservice anti-patterns should be mitigated in the early stages of the migration process, namely during premigration. To assist practitioners and researchers in mitigating microservice anti-patterns during pre-migration, this dissertation presents an exploratory study that examines existing strategies. This study addresses the anti-patterns already catalogued in the literature and defined which ones can be mitigated through better pre-migration planning when moving from monolithic to microservice-based systems. This study relies on multi-methods composed of a systematic literature mapping, a rapid review and interview with practitioners. Then, results are analysed using thematic analysis. As a result, ten strategies were identified, namely adopt the domain-driven design, use the strangler pattern, identify tight coupling, use of backlog strategy, group entities, classify data in business subsystem, look at data first, focus on clean architecture, adopt the twelve factor app, and adoption of the evolvability assurance.Submitted by Neusa Fagundes (neusa.fagundes@unioeste.br) on 2022-05-12T14:46:22Z No. of bitstreams: 2 Guilherme_Villaca2022.pdf: 4105497 bytes, checksum: dc90cd949c69adfe49622573ee602fc7 (MD5) license_rdf: 0 bytes, checksum: d41d8cd98f00b204e9800998ecf8427e (MD5)Made available in DSpace on 2022-05-12T14:46:22Z (GMT). No. of bitstreams: 2 Guilherme_Villaca2022.pdf: 4105497 bytes, checksum: dc90cd949c69adfe49622573ee602fc7 (MD5) license_rdf: 0 bytes, checksum: d41d8cd98f00b204e9800998ecf8427e (MD5) Previous issue date: 2022-02-11application/pdfpor6588633818200016417500Universidade Estadual do Oeste do ParanáCascavelPrograma de Pós-Graduação em Ciência da ComputaçãoUNIOESTEBrasilCentro de Ciências Exatas e Tecnológicashttp://creativecommons.org/licenses/by-nc-nd/4.0/info:eu-repo/semantics/openAccessMonolithicMigrationMicroservicesAnti-patternsStrategiesMonoliticoMigraçãoMicrosserviçosAnti-padrõesEstratégiasCIENCIA DA COMPUTACAO::TEORIA DA COMPUTACAOStrategies to mitigate anti-patterns in microservices before migrating from a monolithic system to microservicesEstratégias para mitigar antipadrões em microsserviços antes da migração de um sistema monolítico para microsserviçosinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesis2214374442868382015600600-862078257083325301reponame:Biblioteca Digital de Teses e Dissertações do UNIOESTEinstname:Universidade Estadual do Oeste do Paraná (UNIOESTE)instacron:UNIOESTEORIGINALGuilherme_Villaca2022.pdfGuilherme_Villaca2022.pdfapplication/pdf4105497http://tede.unioeste.br:8080/tede/bitstream/tede/6034/5/Guilherme_Villaca2022.pdfdc90cd949c69adfe49622573ee602fc7MD55CC-LICENSElicense_urllicense_urltext/plain; charset=utf-849http://tede.unioeste.br:8080/tede/bitstream/tede/6034/2/license_url4afdbb8c545fd630ea7db775da747b2fMD52license_textlicense_texttext/html; charset=utf-80http://tede.unioeste.br:8080/tede/bitstream/tede/6034/3/license_textd41d8cd98f00b204e9800998ecf8427eMD53license_rdflicense_rdfapplication/rdf+xml; charset=utf-80http://tede.unioeste.br:8080/tede/bitstream/tede/6034/4/license_rdfd41d8cd98f00b204e9800998ecf8427eMD54LICENSElicense.txtlicense.txttext/plain; charset=utf-82165http://tede.unioeste.br:8080/tede/bitstream/tede/6034/1/license.txtbd3efa91386c1718a7f26a329fdcb468MD51tede/60342022-05-12 11:46:22.387oai:tede.unioeste.br:tede/6034Tk9UQTogQ09MT1FVRSBBUVVJIEEgU1VBIFBSw5NQUklBIExJQ0VOw4dBCkVzdGEgbGljZW7Dp2EgZGUgZXhlbXBsbyDDqSBmb3JuZWNpZGEgYXBlbmFzIHBhcmEgZmlucyBpbmZvcm1hdGl2b3MuCgpMSUNFTsOHQSBERSBESVNUUklCVUnDh8ODTyBOw4NPLUVYQ0xVU0lWQQoKQ29tIGEgYXByZXNlbnRhw6fDo28gZGVzdGEgbGljZW7Dp2EsIHZvY8OqIChvIGF1dG9yIChlcykgb3UgbyB0aXR1bGFyIGRvcyBkaXJlaXRvcyBkZSBhdXRvcikgY29uY2VkZSDDoCBVbml2ZXJzaWRhZGUgClhYWCAoU2lnbGEgZGEgVW5pdmVyc2lkYWRlKSBvIGRpcmVpdG8gbsOjby1leGNsdXNpdm8gZGUgcmVwcm9kdXppciwgIHRyYWR1emlyIChjb25mb3JtZSBkZWZpbmlkbyBhYmFpeG8pLCBlL291IApkaXN0cmlidWlyIGEgc3VhIHRlc2Ugb3UgZGlzc2VydGHDp8OjbyAoaW5jbHVpbmRvIG8gcmVzdW1vKSBwb3IgdG9kbyBvIG11bmRvIG5vIGZvcm1hdG8gaW1wcmVzc28gZSBlbGV0csO0bmljbyBlIAplbSBxdWFscXVlciBtZWlvLCBpbmNsdWluZG8gb3MgZm9ybWF0b3Mgw6F1ZGlvIG91IHbDrWRlby4KClZvY8OqIGNvbmNvcmRhIHF1ZSBhIFNpZ2xhIGRlIFVuaXZlcnNpZGFkZSBwb2RlLCBzZW0gYWx0ZXJhciBvIGNvbnRlw7pkbywgdHJhbnNwb3IgYSBzdWEgdGVzZSBvdSBkaXNzZXJ0YcOnw6NvIApwYXJhIHF1YWxxdWVyIG1laW8gb3UgZm9ybWF0byBwYXJhIGZpbnMgZGUgcHJlc2VydmHDp8Ojby4KClZvY8OqIHRhbWLDqW0gY29uY29yZGEgcXVlIGEgU2lnbGEgZGUgVW5pdmVyc2lkYWRlIHBvZGUgbWFudGVyIG1haXMgZGUgdW1hIGPDs3BpYSBhIHN1YSB0ZXNlIG91IApkaXNzZXJ0YcOnw6NvIHBhcmEgZmlucyBkZSBzZWd1cmFuw6dhLCBiYWNrLXVwIGUgcHJlc2VydmHDp8Ojby4KClZvY8OqIGRlY2xhcmEgcXVlIGEgc3VhIHRlc2Ugb3UgZGlzc2VydGHDp8OjbyDDqSBvcmlnaW5hbCBlIHF1ZSB2b2PDqiB0ZW0gbyBwb2RlciBkZSBjb25jZWRlciBvcyBkaXJlaXRvcyBjb250aWRvcyAKbmVzdGEgbGljZW7Dp2EuIFZvY8OqIHRhbWLDqW0gZGVjbGFyYSBxdWUgbyBkZXDDs3NpdG8gZGEgc3VhIHRlc2Ugb3UgZGlzc2VydGHDp8OjbyBuw6NvLCBxdWUgc2VqYSBkZSBzZXUgCmNvbmhlY2ltZW50bywgaW5mcmluZ2UgZGlyZWl0b3MgYXV0b3JhaXMgZGUgbmluZ3XDqW0uCgpDYXNvIGEgc3VhIHRlc2Ugb3UgZGlzc2VydGHDp8OjbyBjb250ZW5oYSBtYXRlcmlhbCBxdWUgdm9jw6ogbsOjbyBwb3NzdWkgYSB0aXR1bGFyaWRhZGUgZG9zIGRpcmVpdG9zIGF1dG9yYWlzLCB2b2PDqiAKZGVjbGFyYSBxdWUgb2J0ZXZlIGEgcGVybWlzc8OjbyBpcnJlc3RyaXRhIGRvIGRldGVudG9yIGRvcyBkaXJlaXRvcyBhdXRvcmFpcyBwYXJhIGNvbmNlZGVyIMOgIFNpZ2xhIGRlIFVuaXZlcnNpZGFkZSAKb3MgZGlyZWl0b3MgYXByZXNlbnRhZG9zIG5lc3RhIGxpY2Vuw6dhLCBlIHF1ZSBlc3NlIG1hdGVyaWFsIGRlIHByb3ByaWVkYWRlIGRlIHRlcmNlaXJvcyBlc3TDoSBjbGFyYW1lbnRlIAppZGVudGlmaWNhZG8gZSByZWNvbmhlY2lkbyBubyB0ZXh0byBvdSBubyBjb250ZcO6ZG8gZGEgdGVzZSBvdSBkaXNzZXJ0YcOnw6NvIG9yYSBkZXBvc2l0YWRhLgoKQ0FTTyBBIFRFU0UgT1UgRElTU0VSVEHDh8ODTyBPUkEgREVQT1NJVEFEQSBURU5IQSBTSURPIFJFU1VMVEFETyBERSBVTSBQQVRST0PDjU5JTyBPVSAKQVBPSU8gREUgVU1BIEFHw4pOQ0lBIERFIEZPTUVOVE8gT1UgT1VUUk8gT1JHQU5JU01PIFFVRSBOw4NPIFNFSkEgQSBTSUdMQSBERSAKVU5JVkVSU0lEQURFLCBWT0PDiiBERUNMQVJBIFFVRSBSRVNQRUlUT1UgVE9ET1MgRSBRVUFJU1FVRVIgRElSRUlUT1MgREUgUkVWSVPDg08gQ09NTyAKVEFNQsOJTSBBUyBERU1BSVMgT0JSSUdBw4fDlUVTIEVYSUdJREFTIFBPUiBDT05UUkFUTyBPVSBBQ09SRE8uCgpBIFNpZ2xhIGRlIFVuaXZlcnNpZGFkZSBzZSBjb21wcm9tZXRlIGEgaWRlbnRpZmljYXIgY2xhcmFtZW50ZSBvIHNldSBub21lIChzKSBvdSBvKHMpIG5vbWUocykgZG8ocykgCmRldGVudG9yKGVzKSBkb3MgZGlyZWl0b3MgYXV0b3JhaXMgZGEgdGVzZSBvdSBkaXNzZXJ0YcOnw6NvLCBlIG7Do28gZmFyw6EgcXVhbHF1ZXIgYWx0ZXJhw6fDo28sIGFsw6ltIGRhcXVlbGFzIApjb25jZWRpZGFzIHBvciBlc3RhIGxpY2Vuw6dhLgo=Biblioteca Digital de Teses e Dissertaçõeshttp://tede.unioeste.br/PUBhttp://tede.unioeste.br/oai/requestbiblioteca.repositorio@unioeste.bropendoar:2022-05-12T14:46:22Biblioteca Digital de Teses e Dissertações do UNIOESTE - Universidade Estadual do Oeste do Paraná (UNIOESTE)false
dc.title.por.fl_str_mv Strategies to mitigate anti-patterns in microservices before migrating from a monolithic system to microservices
dc.title.alternative.por.fl_str_mv Estratégias para mitigar antipadrões em microsserviços antes da migração de um sistema monolítico para microsserviços
title Strategies to mitigate anti-patterns in microservices before migrating from a monolithic system to microservices
spellingShingle Strategies to mitigate anti-patterns in microservices before migrating from a monolithic system to microservices
Villaca, Guilherme Luciano Donin
Monolithic
Migration
Microservices
Anti-patterns
Strategies
Monolitico
Migração
Microsserviços
Anti-padrões
Estratégias
CIENCIA DA COMPUTACAO::TEORIA DA COMPUTACAO
title_short Strategies to mitigate anti-patterns in microservices before migrating from a monolithic system to microservices
title_full Strategies to mitigate anti-patterns in microservices before migrating from a monolithic system to microservices
title_fullStr Strategies to mitigate anti-patterns in microservices before migrating from a monolithic system to microservices
title_full_unstemmed Strategies to mitigate anti-patterns in microservices before migrating from a monolithic system to microservices
title_sort Strategies to mitigate anti-patterns in microservices before migrating from a monolithic system to microservices
author Villaca, Guilherme Luciano Donin
author_facet Villaca, Guilherme Luciano Donin
author_role author
dc.contributor.advisor1.fl_str_mv Silva, Ivonei Freitas da
dc.contributor.advisor1Lattes.fl_str_mv http://lattes.cnpq.br/4053071719790087
dc.contributor.referee1.fl_str_mv Silva, Ivonei Freitas da
dc.contributor.referee1Lattes.fl_str_mv http://lattes.cnpq.br/4053071719790087
dc.contributor.referee2.fl_str_mv Assunção, Wesley Klewerton Guez
dc.contributor.referee2Lattes.fl_str_mv http://lattes.cnpq.br/2841032013026879
dc.contributor.referee3.fl_str_mv Andrade, Sidgley Camargo de
dc.contributor.referee3Lattes.fl_str_mv http://lattes.cnpq.br/2230323637134843
dc.contributor.authorLattes.fl_str_mv http://lattes.cnpq.br/6956551345123012
dc.contributor.author.fl_str_mv Villaca, Guilherme Luciano Donin
contributor_str_mv Silva, Ivonei Freitas da
Silva, Ivonei Freitas da
Assunção, Wesley Klewerton Guez
Andrade, Sidgley Camargo de
dc.subject.eng.fl_str_mv Monolithic
Migration
Microservices
Anti-patterns
Strategies
topic Monolithic
Migration
Microservices
Anti-patterns
Strategies
Monolitico
Migração
Microsserviços
Anti-padrões
Estratégias
CIENCIA DA COMPUTACAO::TEORIA DA COMPUTACAO
dc.subject.por.fl_str_mv Monolitico
Migração
Microsserviços
Anti-padrões
Estratégias
dc.subject.cnpq.fl_str_mv CIENCIA DA COMPUTACAO::TEORIA DA COMPUTACAO
description 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.
publishDate 2022
dc.date.accessioned.fl_str_mv 2022-05-12T14:46:22Z
dc.date.issued.fl_str_mv 2022-02-11
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.citation.fl_str_mv VILLACA, Guilherme Luciano Donin. Strategies to mitigate anti-patterns in microservices before migrating from a monolithic system to microservices. 2022. 141 f. Dissertação (Mestrado em Ciência da Computação) - Universidade Estadual do Oeste do Paraná, Cascavel - PR.
dc.identifier.uri.fl_str_mv https://tede.unioeste.br/handle/tede/6034
identifier_str_mv VILLACA, Guilherme Luciano Donin. Strategies to mitigate anti-patterns in microservices before migrating from a monolithic system to microservices. 2022. 141 f. Dissertação (Mestrado em Ciência da Computação) - Universidade Estadual do Oeste do Paraná, Cascavel - PR.
url https://tede.unioeste.br/handle/tede/6034
dc.language.iso.fl_str_mv por
language por
dc.relation.department.fl_str_mv 2214374442868382015
dc.relation.confidence.fl_str_mv 600
600
dc.relation.cnpq.fl_str_mv -862078257083325301
dc.rights.driver.fl_str_mv http://creativecommons.org/licenses/by-nc-nd/4.0/
info:eu-repo/semantics/openAccess
rights_invalid_str_mv http://creativecommons.org/licenses/by-nc-nd/4.0/
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv application/pdf
dc.publisher.none.fl_str_mv Universidade Estadual do Oeste do Paraná
Cascavel
dc.publisher.program.fl_str_mv Programa de Pós-Graduação em Ciência da Computação
dc.publisher.initials.fl_str_mv UNIOESTE
dc.publisher.country.fl_str_mv Brasil
dc.publisher.department.fl_str_mv Centro de Ciências Exatas e Tecnológicas
publisher.none.fl_str_mv Universidade Estadual do Oeste do Paraná
Cascavel
dc.source.none.fl_str_mv reponame:Biblioteca Digital de Teses e Dissertações do UNIOESTE
instname:Universidade Estadual do Oeste do Paraná (UNIOESTE)
instacron:UNIOESTE
instname_str Universidade Estadual do Oeste do Paraná (UNIOESTE)
instacron_str UNIOESTE
institution UNIOESTE
reponame_str Biblioteca Digital de Teses e Dissertações do UNIOESTE
collection Biblioteca Digital de Teses e Dissertações do UNIOESTE
bitstream.url.fl_str_mv http://tede.unioeste.br:8080/tede/bitstream/tede/6034/5/Guilherme_Villaca2022.pdf
http://tede.unioeste.br:8080/tede/bitstream/tede/6034/2/license_url
http://tede.unioeste.br:8080/tede/bitstream/tede/6034/3/license_text
http://tede.unioeste.br:8080/tede/bitstream/tede/6034/4/license_rdf
http://tede.unioeste.br:8080/tede/bitstream/tede/6034/1/license.txt
bitstream.checksum.fl_str_mv dc90cd949c69adfe49622573ee602fc7
4afdbb8c545fd630ea7db775da747b2f
d41d8cd98f00b204e9800998ecf8427e
d41d8cd98f00b204e9800998ecf8427e
bd3efa91386c1718a7f26a329fdcb468
bitstream.checksumAlgorithm.fl_str_mv MD5
MD5
MD5
MD5
MD5
repository.name.fl_str_mv Biblioteca Digital de Teses e Dissertações do UNIOESTE - Universidade Estadual do Oeste do Paraná (UNIOESTE)
repository.mail.fl_str_mv biblioteca.repositorio@unioeste.br
_version_ 1801124588184141824