Proposal of a microservices architecture for a bank account opening application - Rocha, João Bruno Macedo da (2024)
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.