Repository logo
 
No Thumbnail Available
Publication

Proposal of a microservices architecture for a bank account opening application

Use this identifier to reference this record.
Name:Description:Size:Format: 
Tese_5411.pdf3.85 MBAdobe PDF Download

Abstract(s)

This dissertation aims to propose a solution to increase the performance of an existing bank account opening application developed in the low-code platform Appian. This application faces challenges related to the growing complexity of technologies and the limitations of monolithic architectures. The investigation suggests that it might be the right time to reengineer the application, implementing a microservices architecture to increase the performance, scalability, maintainability, and ease of deployment of the application. The first phases of the investigation involved the understanding of the challenges associated with low-code applications and exploring migration challenges and strategies to improve application performance and facilitate proactive planning of the migration process. Afterward, it was done a study of the functional and non-functional requirements, as well as defining the use cases needed to replicate the functionalities of the original application. Based on this, a NoSQL data model was designed using MongoDB, and a microservices architecture was developed using the Spring Boot framework. When the development finished, evaluation tests were conducted to validate if the proposed solution actually can increase the performance and scalability of the real application. The evaluation tests included unit and integration tests, confirming that the final solution was well-developed according to the business use cases. Additionally, load tests using Apache JMeter, made on the student’s machine, assessed the application’s performance and scalability, showing a 10% improvement when microservices were scaled with two instances each. This demonstrates a robust alternative to the limitations of monolithic architectures.
Esta dissertação visa propor uma solução para a melhoria do desempenho de uma aplicação de abertura de conta bancária existente, desenvolvida na plataforma low-code, Appian. Esta aplicação enfrenta desafios relacionados à complexidade crescente das tecnologias e às limitações das arquiteturas monolíticas. A investigação realizada sugere que poderá ser o momento ideal para fazer a reengenharia da aplicação e adotar uma arquitetura de microserviços como estratégia para aumentar o desempenho e a escalabilidade da aplicação. As fases iniciais da investigação envolveram a compreensão dos desafios associados às aplicações de low-code e a exploração dos desafios e das estratégias de migração, visando melhorar o desempenho da aplicação e facilitar o planeamento proativo do processo de migração. Seguidamente, foi realizado um levantamento dos requisitos funcionais e não funcionais, bem como a definição dos casos de uso necessários para replicar as funcionalidades da aplicação original. Com base nisso, foi desenhado um modelo de dados NoSQL utilizando MongoDB e uma arquitetura de microserviços desenvolvida com a framework Spring Boot. Após a conclusão do desenvolvimento, foram conduzidos testes de avaliação para verificar se a solução proposta realmente pode melhorar o desempenho e a escalabilidade da aplicação real. Os testes de avaliação incluíram testes unitários e de integração, confirmando que a solução final foi corretamente desenvolvida conforme os casos de uso do negócio. Além disso, os testes de carga, utilizado o Apache JMeter, foram efetuados na máquina do estudante e avaliaram o desempenho e a escalabilidade da aplicação, mostrando uma melhoria de 10% quando os microserviços foram escalados com duas instâncias cada, demonstrando uma alternativa robusta às limitações das arquiteturas monolíticas.

Description

Keywords

Low-code Microservices architecture Reengineering Monolith to microser vices Performance optimization Re-engenharia Monolitos para microserviços Otimização da aplicação Microserviços

Citation

Research Projects

Organizational Units

Journal Issue

Publisher

CC License