Show simple item record

dc.contributor.authorBecker, Alex Malmann
dc.date.accessioned2019-10-22T19:45:29Z
dc.date.available2019-10-22T19:45:29Z
dc.date.issued2019-08-20
dc.identifier.citationBECKER, Alex Malmann. O impacto do uso de micro serviços na evolução de uma linha de produto de software. 2019. Dissertação (Mestrado em Ciência da Computação) – Universidade Federal de São Carlos, São Carlos, 2019. Disponível em: https://repositorio.ufscar.br/handle/ufscar/11978.*
dc.identifier.urihttps://repositorio.ufscar.br/handle/ufscar/11978
dc.description.abstractDue to the high demand for software as a service, more and more companies are forced to modernize their applications to the digital world. However, this modernization needs to be very well designed to be able to follow the customers needs and also to have low operation cost, especially in applications that have a great deal of functionality variability for their customers. In this context, one of the faced problems is related to the management of multiple versions of ``similar'' systems and software evolution. To solve this issue, the SPL approach is used, while the Micro Services architectural style is a way to make the evolution process lighter, since it can be performed only in the specific micro-services being updated. However, despite being an important subject and widely used by the software industry, in the academy we did not find a large number of papers dealing with micro services and SPL. In the survey carried out in this work, only two papers were found that used micro services and SPL, one of them directly related to this work, applying the micro-services architecture and a SPL process, and the other work which used micro services and SPL to improve the flexibility of product family variability. However, the articles briefly discuss the process of how services were designed, and so this point needs more research. In addition, the main focus of the evaluation was on maintenance tasks, not evolution, as we investigated in this research. Therefore, this work aims to evaluate the evolution (both in the addition of new features and in the maintenance of existing features) of a SPL through the use of micro services in order to be able to affirm if the impact of micro services really improved the task of evolution. In order to reach the expected objective, this work had the partnership of a company based in Rio Grande do Sul, which has a ERP in its product portfolio, implemented as a product line. Based on this, a case study was carried out in two scenarios (one with micro services and the other without micro services), which allowed us to evaluate that the use of micro services brings great benefits in the evolution of a software product line, mainly in adaptive maintenance tasks. Finally, in addition to evaluating the impact of the use of micro services in the evolution of a product line, this work contributes with the lessons learned from the migration of a project developed in the traditional approach to the use of micro services, using data from a real experiment with focus on software engineering.eng
dc.description.sponsorshipCoordenação de Aperfeiçoamento de Pessoal de Nível Superior (CAPES)por
dc.language.isoporpor
dc.publisherUniversidade Federal de São Carlospor
dc.rightsAttribution 3.0 Brazil*
dc.rights.urihttp://creativecommons.org/licenses/by/3.0/br/*
dc.subjectSPLpor
dc.subjectMicro Serviçospor
dc.subjectEvoluçãopor
dc.subjectMicroserviceseng
dc.subjectEvolutioneng
dc.titleO impacto do uso de micro serviços na evolução de uma linha de produto de softwarepor
dc.title.alternativeThe impact of using micro services on the evolution of a software product lineeng
dc.typeDissertaçãopor
dc.contributor.advisor1Lucrédio, Daniel
dc.contributor.advisor1Latteshttp://lattes.cnpq.br/9090396559596221por
dc.description.resumoCom o avanço das tecnologias atuais e a alta demanda de software como serviço, cada vez mais as empresas estão se vendo obrigadas a modernizar suas aplicações para o mundo digital. No entanto, essa modernização precisa ser muito bem projetada para conseguir acompanhar as necessidades dos clientes e também manter um custo baixo de operação para a empresa, principalmente em aplicações que possuem uma grande variabilidade de funcionalidades para seus clientes. Nesse contexto, um dos problemas enfrentados é em relação ao gerenciamento de múltiplas versões de sistemas ``semelhantes'' e da evolução do software. Para resolver a questão do gerenciamento de múltiplas versões utiliza-se a abordagem de Linha de Produto de Software (SPL), enquanto que o estilo arquitetural de Micro Serviço é uma forma de conseguir deixar o processo de evolução mais leve, uma vez que é necessário realizar apenas a atualização do micro serviço específico. Todavia, apesar de ser um tema importante e bastante utilizado pela indústria de software e considerando que os benefícios da arquitetura de micro serviços são bem conhecidos em termos de operação e implantação, seu uso em linha de produtos não é objeto de muitos estudos na literatura, do ponto de vista da Engenharia de Software. No levantamento teórico realizado neste trabalho, foram encontrados apenas dois trabalhos que utilizaram micro serviços e SPL, sendo um deles, diretamente relacionado a este trabalho, pois também evoluiu uma aplicação utilizando o estilo arquitetural de micro serviços e um processo de SPL, e o outro que utilizou micro serviços e SPL para melhorar a flexibilidade da variabilidade da família do produto. Entretanto, os artigos abordam de forma resumida o processo de como foram projetados os serviços, e com isso este ponto precisa de mais investigação. Além disso, o principal foco da avaliação foi em tarefas de manutenção, e não evolução, como investigado nesta pesquisa. Portanto, este trabalho teve como objetivo avaliar a evolução (tanto na adição de novas features, como na manutenção de features existentes) de uma SPL, através da utilização de micro serviços, para no final poder afirmar se o impacto de micro serviços realmente melhorou a tarefa de evolução. Para conseguir chegar ao objetivo esperado, este trabalho teve a parceria de uma empresa sediada no Rio Grande do Sul e que possui em seu portfólio de produtos um Sistema de Gestão Empresarial (ERP), o qual é implementado em uma linha de produto. Com base nisso, foi executado um estudo de caso em dois cenários (um com micro serviço e outro sem micro serviço), o que nos permitiu avaliar que a utilização de micro serviços traz grandes benefícios na evolução de uma linha de produto de software, principalmente nas tarefas de manutenção adaptativas. Por fim, além da avaliação do impacto do uso de micro serviços na evolução de uma linha de produto, este trabalho contribui com as lições aprendidas da migração de um projeto desenvolvido na abordagem tradicional para o uso de micro serviços, utilizando dados de um experimento real com foco na Engenharia de Software.por
dc.publisher.initialsUFSCarpor
dc.publisher.programPrograma de Pós-Graduação em Ciência da Computação - PPGCCpor
dc.subject.cnpqCIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::METODOLOGIA E TECNICAS DA COMPUTACAOpor
dc.subject.cnpqCIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAOpor
dc.subject.cnpqCIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::METODOLOGIA E TECNICAS DA COMPUTACAO::ENGENHARIA DE SOFTWAREpor
dc.description.sponsorshipIdCAPES: Código de Financiamento 001por
dc.publisher.addressCâmpus São Carlospor
dc.contributor.authorlatteshttp://lattes.cnpq.br/0344572435157471por


Files in this item

Thumbnail
Thumbnail
Thumbnail

This item appears in the following Collection(s)

Show simple item record

Attribution 3.0 Brazil
Except where otherwise noted, this item's license is described as Attribution 3.0 Brazil