Monólise: Uma técnica para decomposição de aplicações monolíticas em microsserviços

Detalhes bibliográficos
Autor(a) principal: Rocha, Diego Pereira da
Data de Publicação: 2018
Tipo de documento: Dissertação
Idioma: por
Título da fonte: Repositório Institucional da UNISINOS (RBDU Repositório Digital da Biblioteca da Unisinos)
Texto Completo: http://www.repositorio.jesuita.org.br/handle/UNISINOS/7489
Resumo: A recorrente necessidade de as empresas entregarem seus softwares em curto espaço de tempo e de forma contínua, combinada ao alto nível de exigência dos usuários, está fazendo a indústria, de um modo geral, repensar como devem ser desenvolvidas as aplicações para o mercado atual. Nesse cenário, microsserviços é o estilo arquitetural utilizado para modernizar as aplicações monolíticas. No entanto, o processo para decompor uma aplicação monolítica em microsserviços é ainda um desafio que precisa ser investigado, já que, na indústria, atualmente, não há uma estrutura padronizada para fazer a decomposição das aplicações. Encontrar uma técnica que permita definir o grau de granularidade de um microsserviço também é um tema que desperta discussão na área de Engenharia de Software. Partindo dessas considerações, este trabalho propôs a Monólise, uma técnica que utiliza um algoritmo chamado Monobreak, que possibilita decompor uma aplicação monolítica a partir de funcionalidades e também definir o grau de granularidade dos microsserviços a serem gerados. Nesta pesquisa, a Monólise foi avaliada através de um estudo de caso. Tal avaliação consistiu na comparação da decomposição realizada pela Monólise com a decomposição executada por um especialista na aplicação-alvo utilizada no estudo de caso. Essa comparação permitiu avaliar a efetividade da Monólise através de oito cenários realísticos de decomposição. O resultado dessa avaliação permitiu verificar as semelhanças e diferenças ao decompor uma aplicação monolítica em microsserviços de forma manual e a partir de uma técnica semiautomática. O desenvolvimento deste trabalho demonstrou que a técnica de Monólise apresenta-se com uma grande potencialidade na área de Engenharia de Software referente à decomposição de aplicações. Além disso, as considerações do estudo evidenciaram que essa técnica poderá ser um motivador para encorajar desenvolvedores e arquitetos na jornada de modernização de suas aplicações monolíticas em microsserviços bem como diminuir possíveis erros cometidos nessa atividade por profissionais com pouca experiência em decomposição de aplicações.
id USIN_f4b81652c06f21d60bee9d20bb5d33a7
oai_identifier_str oai:www.repositorio.jesuita.org.br:UNISINOS/7489
network_acronym_str USIN
network_name_str Repositório Institucional da UNISINOS (RBDU Repositório Digital da Biblioteca da Unisinos)
repository_id_str
spelling 2018-12-21T15:54:25Z2018-12-21T15:54:25Z2018-09-17Submitted by JOSIANE SANTOS DE OLIVEIRA (josianeso) on 2018-12-21T15:54:25Z No. of bitstreams: 1 Diego Pereira da Rocha_.pdf: 4394542 bytes, checksum: c92aa948a9a1de248deed850d6c19d5b (MD5)Made available in DSpace on 2018-12-21T15:54:25Z (GMT). No. of bitstreams: 1 Diego Pereira da Rocha_.pdf: 4394542 bytes, checksum: c92aa948a9a1de248deed850d6c19d5b (MD5) Previous issue date: 2018-09-17A recorrente necessidade de as empresas entregarem seus softwares em curto espaço de tempo e de forma contínua, combinada ao alto nível de exigência dos usuários, está fazendo a indústria, de um modo geral, repensar como devem ser desenvolvidas as aplicações para o mercado atual. Nesse cenário, microsserviços é o estilo arquitetural utilizado para modernizar as aplicações monolíticas. No entanto, o processo para decompor uma aplicação monolítica em microsserviços é ainda um desafio que precisa ser investigado, já que, na indústria, atualmente, não há uma estrutura padronizada para fazer a decomposição das aplicações. Encontrar uma técnica que permita definir o grau de granularidade de um microsserviço também é um tema que desperta discussão na área de Engenharia de Software. Partindo dessas considerações, este trabalho propôs a Monólise, uma técnica que utiliza um algoritmo chamado Monobreak, que possibilita decompor uma aplicação monolítica a partir de funcionalidades e também definir o grau de granularidade dos microsserviços a serem gerados. Nesta pesquisa, a Monólise foi avaliada através de um estudo de caso. Tal avaliação consistiu na comparação da decomposição realizada pela Monólise com a decomposição executada por um especialista na aplicação-alvo utilizada no estudo de caso. Essa comparação permitiu avaliar a efetividade da Monólise através de oito cenários realísticos de decomposição. O resultado dessa avaliação permitiu verificar as semelhanças e diferenças ao decompor uma aplicação monolítica em microsserviços de forma manual e a partir de uma técnica semiautomática. O desenvolvimento deste trabalho demonstrou que a técnica de Monólise apresenta-se com uma grande potencialidade na área de Engenharia de Software referente à decomposição de aplicações. Além disso, as considerações do estudo evidenciaram que essa técnica poderá ser um motivador para encorajar desenvolvedores e arquitetos na jornada de modernização de suas aplicações monolíticas em microsserviços bem como diminuir possíveis erros cometidos nessa atividade por profissionais com pouca experiência em decomposição de aplicações.The recurring need for companies to deliver their software in a short time and on a continuous basis combined with the high level of demand of users is making the industry in general rethink how to develop the applications for the current market. In this scenario microservice is the architectural style used to modernize monolithic applications. However the process of decomposing a monolithic application into microservices is still a challenge that needs to be investigated since in industry there is currently no standardized framework for decomposing applications. Finding a technique that allows defining the degree of granularity of a microservice is also a topic that arouses discussion in the area of Software Engineering. Based on these considerations this work proposed the Monolise a technique that uses an algorithm called Mono- Break that allows to decompose a monolithic application from functionalities and also to define the degree of granularity of the microservices to be generated. In this research the Monolise was evaluated through a case study. Such evaluation consisted of comparing the decomposition performed by the Monolise with the decomposition performed by a specialist in the target application used in the case study. This comparison allowed to evaluate the effectiveness of the Monolise through eight realistic scenarios of decomposition. The result of this evaluation allowed to verify the similarities and differences in the decomposition of a monolithic application in microservices manually and from a semiautomatic technique. The development of this work demonstrated that the Monolise technique presents with great potentiality in the area of Software Engineering regarding the decomposition of applications. In addition the study’s considerations showed that this technique could be a motivator to encourage developers and architects in the modernization of their monolithic applications in microservices as well as to reduce possible mistakes made in this activity by professionals with little experience in decomposing applications.NenhumaRocha, Diego Pereira dahttp://lattes.cnpq.br/4999993923060127http://lattes.cnpq.br/2582456631204400Oliveira, Kleinner Silva Farias deUniversidade do Vale do Rio dos SinosPrograma de Pós-Graduação em Computação AplicadaUnisinosBrasilEscola PolitécnicaMonólise: Uma técnica para decomposição de aplicações monolíticas em microsserviçosACCNPQ::Ciências Exatas e da Terra::Ciência da ComputaçãoMicrosserviçosAplicação monolíticaDecomposição aplicaçãoGranularidade de microsserviçosMicroservicesMonolithic applicationApplication decompositionMicroservice granularityinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesishttp://www.repositorio.jesuita.org.br/handle/UNISINOS/7489info:eu-repo/semantics/openAccessporreponame:Repositório Institucional da UNISINOS (RBDU Repositório Digital da Biblioteca da Unisinos)instname:Universidade do Vale do Rio dos Sinos (UNISINOS)instacron:UNISINOSORIGINALDiego Pereira da Rocha_.pdfDiego Pereira da Rocha_.pdfapplication/pdf4394542http://repositorio.jesuita.org.br/bitstream/UNISINOS/7489/1/Diego+Pereira+da+Rocha_.pdfc92aa948a9a1de248deed850d6c19d5bMD51LICENSElicense.txtlicense.txttext/plain; charset=utf-82175http://repositorio.jesuita.org.br/bitstream/UNISINOS/7489/2/license.txt320e21f23402402ac4988605e1edd177MD52UNISINOS/74892018-12-21 13:56:50.701oai:www.repositorio.jesuita.org.br:UNISINOS/7489Ck5PVEE6IENPTE9RVUUgQVFVSSBBIFNVQSBQUsOTUFJJQSBMSUNFTsOHQQoKRXN0YSBsaWNlbsOnYSBkZSBleGVtcGxvIMOpIGZvcm5lY2lkYSBhcGVuYXMgcGFyYSBmaW5zIGluZm9ybWF0aXZvcy4KCkxpY2Vuw6dhIERFIERJU1RSSUJVScOHw4NPIE7Dg08tRVhDTFVTSVZBCgpDb20gYSBhcHJlc2VudGHDp8OjbyBkZXN0YSBsaWNlbsOnYSwgdm9jw6ogKG8gYXV0b3IgKGVzKSBvdSBvIHRpdHVsYXIgZG9zIGRpcmVpdG9zIGRlIGF1dG9yKSBjb25jZWRlIMOgIApVbml2ZXJzaWRhZGUgZG8gVmFsZSBkbyBSaW8gZG9zIFNpbm9zIChVTklTSU5PUykgbyBkaXJlaXRvIG7Do28tZXhjbHVzaXZvIGRlIHJlcHJvZHV6aXIsICB0cmFkdXppciAoY29uZm9ybWUgZGVmaW5pZG8gYWJhaXhvKSwgZS9vdSAKZGlzdHJpYnVpciBhIHN1YSB0ZXNlIG91IGRpc3NlcnRhw6fDo28gKGluY2x1aW5kbyBvIHJlc3VtbykgcG9yIHRvZG8gbyBtdW5kbyBubyBmb3JtYXRvIGltcHJlc3NvIGUgZWxldHLDtG5pY28gZSAKZW0gcXVhbHF1ZXIgbWVpbywgaW5jbHVpbmRvIG9zIGZvcm1hdG9zIMOhdWRpbyBvdSB2w61kZW8uCgpWb2PDqiBjb25jb3JkYSBxdWUgYSBTaWdsYSBkZSBVbml2ZXJzaWRhZGUgcG9kZSwgc2VtIGFsdGVyYXIgbyBjb250ZcO6ZG8sIHRyYW5zcG9yIGEgc3VhIHRlc2Ugb3UgZGlzc2VydGHDp8OjbyAKcGFyYSBxdWFscXVlciBtZWlvIG91IGZvcm1hdG8gcGFyYSBmaW5zIGRlIHByZXNlcnZhw6fDo28uCgpWb2PDqiB0YW1iw6ltIGNvbmNvcmRhIHF1ZSBhIFNpZ2xhIGRlIFVuaXZlcnNpZGFkZSBwb2RlIG1hbnRlciBtYWlzIGRlIHVtYSBjw7NwaWEgYSBzdWEgdGVzZSBvdSAKZGlzc2VydGHDp8OjbyBwYXJhIGZpbnMgZGUgc2VndXJhbsOnYSwgYmFjay11cCBlIHByZXNlcnZhw6fDo28uCgpWb2PDqiBkZWNsYXJhIHF1ZSBhIHN1YSB0ZXNlIG91IGRpc3NlcnRhw6fDo28gw6kgb3JpZ2luYWwgZSBxdWUgdm9jw6ogdGVtIG8gcG9kZXIgZGUgY29uY2VkZXIgb3MgZGlyZWl0b3MgY29udGlkb3MgCm5lc3RhIGxpY2Vuw6dhLiBWb2PDqiB0YW1iw6ltIGRlY2xhcmEgcXVlIG8gZGVww7NzaXRvIGRhIHN1YSB0ZXNlIG91IGRpc3NlcnRhw6fDo28gbsOjbywgcXVlIHNlamEgZGUgc2V1IApjb25oZWNpbWVudG8sIGluZnJpbmdlIGRpcmVpdG9zIGF1dG9yYWlzIGRlIG5pbmd1w6ltLgoKQ2FzbyBhIHN1YSB0ZXNlIG91IGRpc3NlcnRhw6fDo28gY29udGVuaGEgbWF0ZXJpYWwgcXVlIHZvY8OqIG7Do28gcG9zc3VpIGEgdGl0dWxhcmlkYWRlIGRvcyBkaXJlaXRvcyBhdXRvcmFpcywgdm9jw6ogCmRlY2xhcmEgcXVlIG9idGV2ZSBhIHBlcm1pc3PDo28gaXJyZXN0cml0YSBkbyBkZXRlbnRvciBkb3MgZGlyZWl0b3MgYXV0b3JhaXMgcGFyYSBjb25jZWRlciDDoCBTaWdsYSBkZSBVbml2ZXJzaWRhZGUgCm9zIGRpcmVpdG9zIGFwcmVzZW50YWRvcyBuZXN0YSBsaWNlbsOnYSwgZSBxdWUgZXNzZSBtYXRlcmlhbCBkZSBwcm9wcmllZGFkZSBkZSB0ZXJjZWlyb3MgZXN0w6EgY2xhcmFtZW50ZSAKaWRlbnRpZmljYWRvIGUgcmVjb25oZWNpZG8gbm8gdGV4dG8gb3Ugbm8gY29udGXDumRvIGRhIHRlc2Ugb3UgZGlzc2VydGHDp8OjbyBvcmEgZGVwb3NpdGFkYS4KCkNBU08gQSBURVNFIE9VIERJU1NFUlRBw4fDg08gT1JBIERFUE9TSVRBREEgVEVOSEEgU0lETyBSRVNVTFRBRE8gREUgVU0gUEFUUk9Dw41OSU8gT1UgCkFQT0lPIERFIFVNQSBBR8OKTkNJQSBERSBGT01FTlRPIE9VIE9VVFJPIE9SR0FOSVNNTyBRVUUgTsODTyBTRUpBIEEgU0lHTEEgREUgClVOSVZFUlNJREFERSwgVk9Dw4ogREVDTEFSQSBRVUUgUkVTUEVJVE9VIFRPRE9TIEUgUVVBSVNRVUVSIERJUkVJVE9TIERFIFJFVklTw4NPIENPTU8gClRBTULDiU0gQVMgREVNQUlTIE9CUklHQcOHw5VFUyBFWElHSURBUyBQT1IgQ09OVFJBVE8gT1UgQUNPUkRPLgoKQSBTaWdsYSBkZSBVbml2ZXJzaWRhZGUgc2UgY29tcHJvbWV0ZSBhIGlkZW50aWZpY2FyIGNsYXJhbWVudGUgbyBzZXUgbm9tZSAocykgb3UgbyhzKSBub21lKHMpIGRvKHMpIApkZXRlbnRvcihlcykgZG9zIGRpcmVpdG9zIGF1dG9yYWlzIGRhIHRlc2Ugb3UgZGlzc2VydGHDp8OjbywgZSBuw6NvIGZhcsOhIHF1YWxxdWVyIGFsdGVyYcOnw6NvLCBhbMOpbSBkYXF1ZWxhcyAKY29uY2VkaWRhcyBwb3IgZXN0YSBsaWNlbsOnYS4KBiblioteca Digital de Teses e Dissertaçõeshttp://www.repositorio.jesuita.org.br/oai/requestopendoar:2018-12-21T15:56:50Repositório Institucional da UNISINOS (RBDU Repositório Digital da Biblioteca da Unisinos) - Universidade do Vale do Rio dos Sinos (UNISINOS)false
dc.title.pt_BR.fl_str_mv Monólise: Uma técnica para decomposição de aplicações monolíticas em microsserviços
title Monólise: Uma técnica para decomposição de aplicações monolíticas em microsserviços
spellingShingle Monólise: Uma técnica para decomposição de aplicações monolíticas em microsserviços
Rocha, Diego Pereira da
ACCNPQ::Ciências Exatas e da Terra::Ciência da Computação
Microsserviços
Aplicação monolítica
Decomposição aplicação
Granularidade de microsserviços
Microservices
Monolithic application
Application decomposition
Microservice granularity
title_short Monólise: Uma técnica para decomposição de aplicações monolíticas em microsserviços
title_full Monólise: Uma técnica para decomposição de aplicações monolíticas em microsserviços
title_fullStr Monólise: Uma técnica para decomposição de aplicações monolíticas em microsserviços
title_full_unstemmed Monólise: Uma técnica para decomposição de aplicações monolíticas em microsserviços
title_sort Monólise: Uma técnica para decomposição de aplicações monolíticas em microsserviços
author Rocha, Diego Pereira da
author_facet Rocha, Diego Pereira da
author_role author
dc.contributor.authorLattes.pt_BR.fl_str_mv http://lattes.cnpq.br/4999993923060127
dc.contributor.advisorLattes.pt_BR.fl_str_mv http://lattes.cnpq.br/2582456631204400
dc.contributor.author.fl_str_mv Rocha, Diego Pereira da
dc.contributor.advisor1.fl_str_mv Oliveira, Kleinner Silva Farias de
contributor_str_mv Oliveira, Kleinner Silva Farias de
dc.subject.cnpq.fl_str_mv ACCNPQ::Ciências Exatas e da Terra::Ciência da Computação
topic ACCNPQ::Ciências Exatas e da Terra::Ciência da Computação
Microsserviços
Aplicação monolítica
Decomposição aplicação
Granularidade de microsserviços
Microservices
Monolithic application
Application decomposition
Microservice granularity
dc.subject.por.fl_str_mv Microsserviços
Aplicação monolítica
Decomposição aplicação
Granularidade de microsserviços
dc.subject.eng.fl_str_mv Microservices
Monolithic application
Application decomposition
Microservice granularity
description A recorrente necessidade de as empresas entregarem seus softwares em curto espaço de tempo e de forma contínua, combinada ao alto nível de exigência dos usuários, está fazendo a indústria, de um modo geral, repensar como devem ser desenvolvidas as aplicações para o mercado atual. Nesse cenário, microsserviços é o estilo arquitetural utilizado para modernizar as aplicações monolíticas. No entanto, o processo para decompor uma aplicação monolítica em microsserviços é ainda um desafio que precisa ser investigado, já que, na indústria, atualmente, não há uma estrutura padronizada para fazer a decomposição das aplicações. Encontrar uma técnica que permita definir o grau de granularidade de um microsserviço também é um tema que desperta discussão na área de Engenharia de Software. Partindo dessas considerações, este trabalho propôs a Monólise, uma técnica que utiliza um algoritmo chamado Monobreak, que possibilita decompor uma aplicação monolítica a partir de funcionalidades e também definir o grau de granularidade dos microsserviços a serem gerados. Nesta pesquisa, a Monólise foi avaliada através de um estudo de caso. Tal avaliação consistiu na comparação da decomposição realizada pela Monólise com a decomposição executada por um especialista na aplicação-alvo utilizada no estudo de caso. Essa comparação permitiu avaliar a efetividade da Monólise através de oito cenários realísticos de decomposição. O resultado dessa avaliação permitiu verificar as semelhanças e diferenças ao decompor uma aplicação monolítica em microsserviços de forma manual e a partir de uma técnica semiautomática. O desenvolvimento deste trabalho demonstrou que a técnica de Monólise apresenta-se com uma grande potencialidade na área de Engenharia de Software referente à decomposição de aplicações. Além disso, as considerações do estudo evidenciaram que essa técnica poderá ser um motivador para encorajar desenvolvedores e arquitetos na jornada de modernização de suas aplicações monolíticas em microsserviços bem como diminuir possíveis erros cometidos nessa atividade por profissionais com pouca experiência em decomposição de aplicações.
publishDate 2018
dc.date.accessioned.fl_str_mv 2018-12-21T15:54:25Z
dc.date.available.fl_str_mv 2018-12-21T15:54:25Z
dc.date.issued.fl_str_mv 2018-09-17
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 http://www.repositorio.jesuita.org.br/handle/UNISINOS/7489
url http://www.repositorio.jesuita.org.br/handle/UNISINOS/7489
dc.language.iso.fl_str_mv por
language por
dc.rights.driver.fl_str_mv info:eu-repo/semantics/openAccess
eu_rights_str_mv openAccess
dc.publisher.none.fl_str_mv Universidade do Vale do Rio dos Sinos
dc.publisher.program.fl_str_mv Programa de Pós-Graduação em Computação Aplicada
dc.publisher.initials.fl_str_mv Unisinos
dc.publisher.country.fl_str_mv Brasil
dc.publisher.department.fl_str_mv Escola Politécnica
publisher.none.fl_str_mv Universidade do Vale do Rio dos Sinos
dc.source.none.fl_str_mv reponame:Repositório Institucional da UNISINOS (RBDU Repositório Digital da Biblioteca da Unisinos)
instname:Universidade do Vale do Rio dos Sinos (UNISINOS)
instacron:UNISINOS
instname_str Universidade do Vale do Rio dos Sinos (UNISINOS)
instacron_str UNISINOS
institution UNISINOS
reponame_str Repositório Institucional da UNISINOS (RBDU Repositório Digital da Biblioteca da Unisinos)
collection Repositório Institucional da UNISINOS (RBDU Repositório Digital da Biblioteca da Unisinos)
bitstream.url.fl_str_mv http://repositorio.jesuita.org.br/bitstream/UNISINOS/7489/1/Diego+Pereira+da+Rocha_.pdf
http://repositorio.jesuita.org.br/bitstream/UNISINOS/7489/2/license.txt
bitstream.checksum.fl_str_mv c92aa948a9a1de248deed850d6c19d5b
320e21f23402402ac4988605e1edd177
bitstream.checksumAlgorithm.fl_str_mv MD5
MD5
repository.name.fl_str_mv Repositório Institucional da UNISINOS (RBDU Repositório Digital da Biblioteca da Unisinos) - Universidade do Vale do Rio dos Sinos (UNISINOS)
repository.mail.fl_str_mv
_version_ 1797219967908708352