A Guide for Microservices in Greenfield Projects
Autor(a) principal: | |
---|---|
Data de Publicação: | 2021 |
Tipo de documento: | Dissertação |
Idioma: | eng |
Título da fonte: | Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) |
Texto Completo: | http://hdl.handle.net/10400.22/18307 |
Resumo: | Microservice-based architecture usage is growing, but most of the involved applications are monoliths then migrated to microservices. Although this approach has been considered the conventional wisdom, it is still unclear if an application based on microservices can be built from scratch or must start as a monolithic application to be broken into smaller blocks later in its lifecycle. More unconventional approaches, such as starting with microservices, are not sufficiently explored, and reported experiences lack to guide the entire process. Thus, the problem to be addressed in this work is how to start with microservices from scratch. A guide was proposed to allow obtaining successful microservices solutions in greenfield projects. Following the Technical Action Research method, this set of guidelines was used to implement a microservices-based application without migrations. The solution was evaluated using the Quantitative Evaluation Framework and the results were analyzed. The most important aspect for that type of architecture was accomplished, such as improved development organization, the quicker release of new features and fixes, lower cost on growing the system, and increased performance and resilience. The application of the guide resulted in a value of 74% for the global quality of the system using the mentioned framework, and a score of 76 by applying the Microservices Architecture Assessment Platform. |
id |
RCAP_724bb262303e76fc4f2bfe162c84b113 |
---|---|
oai_identifier_str |
oai:recipp.ipp.pt:10400.22/18307 |
network_acronym_str |
RCAP |
network_name_str |
Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) |
repository_id_str |
7160 |
spelling |
A Guide for Microservices in Greenfield ProjectsMicroservicesGreenfield ProjectsDevelopment GuidelinesMicroserviçosProjetos GreenfieldDiretrizes de desenvolvimentoMicroservice-based architecture usage is growing, but most of the involved applications are monoliths then migrated to microservices. Although this approach has been considered the conventional wisdom, it is still unclear if an application based on microservices can be built from scratch or must start as a monolithic application to be broken into smaller blocks later in its lifecycle. More unconventional approaches, such as starting with microservices, are not sufficiently explored, and reported experiences lack to guide the entire process. Thus, the problem to be addressed in this work is how to start with microservices from scratch. A guide was proposed to allow obtaining successful microservices solutions in greenfield projects. Following the Technical Action Research method, this set of guidelines was used to implement a microservices-based application without migrations. The solution was evaluated using the Quantitative Evaluation Framework and the results were analyzed. The most important aspect for that type of architecture was accomplished, such as improved development organization, the quicker release of new features and fixes, lower cost on growing the system, and increased performance and resilience. The application of the guide resulted in a value of 74% for the global quality of the system using the mentioned framework, and a score of 76 by applying the Microservices Architecture Assessment Platform.A utilização de arquiteturas baseadas em microserviços tem vindo a crescer, no entanto a maioria das aplicações envolvidas são monólitos que foram posteriormente migrados para microserviços. Este tem sido considerado o método convencional, apesar de que uma questão que ainda não possui uma resposta consensual é se uma aplicação baseada em microserviços deva ser construída de raiz ou começar como uma aplicação monolítica que é mais tarde partida em blocos mais pequenos. Abordagens menos convencionais como começar com microserviços desde o início do projeto ainda não foram suficientemente explorados, e as experiências existentes pecam por não guiarem o processo completo. Por este motivo o problema a ser endereçado neste trabalho é como desenvolver uma aplicação baseada em microserviços desde o seu começo. Será possível seguir um conjunto de diretrizes no desenvolvimento de um projeto greenfield de forma a obter uma solução baseada em microserviços bem-sucedida? Esta questão foi encarada como uma oportunidade e definida como o objetivo a ser explorado nesta tese. Seguindo o método Technical Action Research (TAR), foi desenvolvido um conjunto de diretrizes para implementar uma aplicação baseada em microserviços desde o seu início, sendo posteriormente aplicado a um protótipo de forma a ser melhorado e avaliado. A solução desenvolvida foi avaliada usando o método Quantitative Evaluation Framework (QEF) e os resultados indicam que, seguindo as diretrizes criadas, é possível alcançar com sucesso uma solução baseada em microserviços. A avaliação permite afirmar que os aspetos mais importantes deste tipo de arquitetura tal como melhoria da organização no desenvolvimento, entrega mais rápida de novas funcionalidades e correções, custo mais baixo na manutenção e crescimento do sistema, e melhoria do desempenho e resiliência são cumpridos. A utilização do guia para desenvolver o protótipo resultou num valor de qualidade global do sistema de 74% aplicando o QEF, e uma pontuação de 76 ao utilizar a Microservices Architecture Assessment Platform.Azevedo, Isabel de Fátima SilvaRepositório Científico do Instituto Politécnico do PortoCardoso, João Pedro Santos2021-09-03T14:43:55Z20212021-01-01T00:00:00Zinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisapplication/pdfhttp://hdl.handle.net/10400.22/18307TID:202812855enginfo:eu-repo/semantics/openAccessreponame:Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)instname:Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informaçãoinstacron:RCAAP2023-03-13T13:10:05Zoai:recipp.ipp.pt:10400.22/18307Portal AgregadorONGhttps://www.rcaap.pt/oai/openaireopendoar:71602024-03-19T17:37:58.742037Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) - Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informaçãofalse |
dc.title.none.fl_str_mv |
A Guide for Microservices in Greenfield Projects |
title |
A Guide for Microservices in Greenfield Projects |
spellingShingle |
A Guide for Microservices in Greenfield Projects Cardoso, João Pedro Santos Microservices Greenfield Projects Development Guidelines Microserviços Projetos Greenfield Diretrizes de desenvolvimento |
title_short |
A Guide for Microservices in Greenfield Projects |
title_full |
A Guide for Microservices in Greenfield Projects |
title_fullStr |
A Guide for Microservices in Greenfield Projects |
title_full_unstemmed |
A Guide for Microservices in Greenfield Projects |
title_sort |
A Guide for Microservices in Greenfield Projects |
author |
Cardoso, João Pedro Santos |
author_facet |
Cardoso, João Pedro Santos |
author_role |
author |
dc.contributor.none.fl_str_mv |
Azevedo, Isabel de Fátima Silva Repositório Científico do Instituto Politécnico do Porto |
dc.contributor.author.fl_str_mv |
Cardoso, João Pedro Santos |
dc.subject.por.fl_str_mv |
Microservices Greenfield Projects Development Guidelines Microserviços Projetos Greenfield Diretrizes de desenvolvimento |
topic |
Microservices Greenfield Projects Development Guidelines Microserviços Projetos Greenfield Diretrizes de desenvolvimento |
description |
Microservice-based architecture usage is growing, but most of the involved applications are monoliths then migrated to microservices. Although this approach has been considered the conventional wisdom, it is still unclear if an application based on microservices can be built from scratch or must start as a monolithic application to be broken into smaller blocks later in its lifecycle. More unconventional approaches, such as starting with microservices, are not sufficiently explored, and reported experiences lack to guide the entire process. Thus, the problem to be addressed in this work is how to start with microservices from scratch. A guide was proposed to allow obtaining successful microservices solutions in greenfield projects. Following the Technical Action Research method, this set of guidelines was used to implement a microservices-based application without migrations. The solution was evaluated using the Quantitative Evaluation Framework and the results were analyzed. The most important aspect for that type of architecture was accomplished, such as improved development organization, the quicker release of new features and fixes, lower cost on growing the system, and increased performance and resilience. The application of the guide resulted in a value of 74% for the global quality of the system using the mentioned framework, and a score of 76 by applying the Microservices Architecture Assessment Platform. |
publishDate |
2021 |
dc.date.none.fl_str_mv |
2021-09-03T14:43:55Z 2021 2021-01-01T00:00:00Z |
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://hdl.handle.net/10400.22/18307 TID:202812855 |
url |
http://hdl.handle.net/10400.22/18307 |
identifier_str_mv |
TID:202812855 |
dc.language.iso.fl_str_mv |
eng |
language |
eng |
dc.rights.driver.fl_str_mv |
info:eu-repo/semantics/openAccess |
eu_rights_str_mv |
openAccess |
dc.format.none.fl_str_mv |
application/pdf |
dc.source.none.fl_str_mv |
reponame:Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) instname:Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação instacron:RCAAP |
instname_str |
Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação |
instacron_str |
RCAAP |
institution |
RCAAP |
reponame_str |
Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) |
collection |
Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) |
repository.name.fl_str_mv |
Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) - Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação |
repository.mail.fl_str_mv |
|
_version_ |
1799131469169295360 |