Por favor, use este identificador para citar o enlazar este ítem:
https://ri.ufs.br/jspui/handle/riufs/19471
Tipo de Documento: | Dissertação |
Título : | Recommendation of microservices patterns throught information retrieval |
Autor : | Moura, Álex dos Santos |
Fecha de publicación : | 1-dic-2023 |
Director(a): | Soares, Michel dos Santos |
Co-Director(a): | Santos, Michel dos |
Resumen: | O desenvolvimento de software envolve inerentemente a solução de problemas de projeto recorrentes, que podem afetar negativamente os atributos de qualidade de um sistema. Esses problemas são comumente resolvidos por meio da aplicação de padrões de projeto – soluções comprovadas e forjadas por desenvolvedores experientes. A arquitetura de microsserviços, uma variante da Arquitetura Orientada a Serviços, está em ascensão, com gigantes como Amazon, eBay e Netflix adotando essa arquitetura. Neste estilo de arquitetura, os sistemas são compostos por microsserviços que se comunicam por meio de mensagens. Cada microsserviço tem uma responsabilidade específica e é implantado, dimensionado e testado de forma independente. Os padrões de projeto usados para resolver problemas de projeto presentes em sistemas baseados em microsserviços são chamados de padrões de microsserviços. Resolver problemas de projeto é teoricamente simples, o desenvolvedor só precisa selecionar padrões de projeto e aplicá-los. Porém, na prática, tanto desenvolvedores iniciantes quanto experientes têm dificuldade em selecionar padrões de projeto, as razões para essa dificuldade são o número substancial de padrões de projeto e o conhecimento limitado. Assim, o objetivo geral deste trabalho é fornecer uma maneira de ajudar desenvolvedores a selecionar o padrão de microsserviços correto para resolver um determinado problema de projeto. Este trabalho foi desenvolvido usando a metodologia de pesquisa denominada Design Science Research, que propõe o desenvolvimento de artefatos de Tecnologia da Informação para solucionar problemas do mundo real. Inicialmente, foi proposta uma abordagem de recomendação baseada em Recuperação de Informação para fazer recomendações de padrões de microsserviços, onde o desenvolvedor pode relatar um problema de projeto, em linguagem natural (texto), e receber recomendações de padrões de microsserviços que possam resolver o problema de projeto relatado. No geral, os testes utilizando um conjunto de problemas de projeto mostraram que a abordagem de recomendação foi capaz de resolver 60% dos problemas de projeto e que há espaço para melhorias, uma vez que 40% dos problemas de projeto não foram resolvidos. Essa abordagem foi então usada em uma ferramenta chamada Floc. Essa ferramenta possui uma interface de usuário amigável onde o desenvolvedor pode gerenciar problemas de projeto e obter recomendações de padrões de microsserviços. A ferramenta foi avaliada utilizando problemas de projeto em uma empresa que atua na área de Segurança de Software e demonstrou resultados promissores. Entrevistas realizadas com desenvolvedores da indústria corroboraram a eficácia e praticidade da ferramenta de recomendação. |
Resumen : | Software development inherently involves solving recurring design problems, which can negatively affect the quality attributes of a system. These problems are commonly solved through the application of design patterns – proven solutions forged by experienced developers. Microservices architecture, a variant of Service-Oriented Architecture, is on the rise, given that giants like Amazon, eBay and Netflix are adopting this architecture. In this architectural style, systems are composed of microservices that communicate through messages. Each microservice has a specific responsibility and is deployed, scaled, and tested independently. Design patterns used to solve design problems present in microservices-based systems are called microservices patterns. Solving design problems is theoretically simple, the developer only needs to select design patterns and apply them. However, in practice, both beginners and experienced developers have difficulty selecting design patterns, the reasons for this difficulty are the substantial number of design patterns and limited knowledge. Thus, the overall goal of this work is to provide a way to help developers select the right microservices pattern to solve a given design problem. This work was developed by using the research methodology named Design Science Research, which proposes the development of Information Technology artifacts to solve real-world problems. Initially, a recommendation approach based on Information Retrieval was proposed to make recommendations for microservices patterns, where the developer can report a design problem, in natural language (text), and receive recommendations for microservices patterns that can solve the design problem reported. Overall, testing using a set of toy design problems showed that the recommendation approach was able to solve 60% of design problems and that there is room for improvement as 40% of design problems were not solved. This approach was then used in a tool called Floc. This tool has a friendly user interface where the developer can manage design problems and get microservices pattern recommendations for them. The tool was evaluated using industrial design problems and demonstrated promising results. Furthermore, interviews with industry developers corroborated the effectiveness and practicality of the recommendation tool. |
Palabras clave : | Computação Arquitetura orientada a serviços (computador) Recuperação da informação Microsserviços Recomendação Padrões de projeto Padrões de microsserviços Microservices Recommendation Design patterns Information retrieval Microservices patterns |
Área CNPQ: | CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO |
Idioma : | por |
Institución: | Universidade Federal de Sergipe (UFS) |
Programa de Posgrado: | Pós-Graduação em Ciência da Computação |
Citación : | MOURA, Álex dos Santos. Recommendation of microservices patterns throught information retrieval. 2023. 82 f. Dissertação (Mestrado em Ciência da Computação) – Universidade Federal de Sergipe, São Cristóvão, 2023. |
URI : | https://ri.ufs.br/jspui/handle/riufs/19471 |
Aparece en las colecciones: | Mestrado em Ciência da Computação |
Ficheros en este ítem:
Fichero | Descripción | Tamaño | Formato | |
---|---|---|---|---|
ALEX_SANTOS_MOURA.pdf | 2,25 MB | Adobe PDF | ![]() Visualizar/Abrir |
Los ítems de DSpace están protegidos por copyright, con todos los derechos reservados, a menos que se indique lo contrario.