Internet Banking - Desenvolvimento de aplicação em .NET

Detalhes bibliográficos
Autor(a) principal: Reis, Andreia Isabel Campos
Data de Publicação: 2022
Tipo de documento: Dissertação
Idioma: por
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/21315
Resumo: Este documento descreve o trabalho de desenvolvimento de funcionalidades para o projeto Installments. Installments é um projeto de Internet Banking que tem como objetivo fornecer funcionalidades de pagamentos fracionados aos utilizadores das aplicações móveis do banco. A solução de software na qual se baseia este projeto é composta por quatro camadas. As camadas são a aplicação móvel, o serviço Installments Experience, o serviço Installments Process, e o Sistema Central. O trabalho apresentado neste documento consiste no desenvolvimento de algumas funcionalidades nos microsserviços desenvolvidos em .NET Installments Experiece e Installments Process. As funcionalidades em causa são o desenvolvimento do novo caso de uso Pedir Contacto, e a realização de correções ao caso de uso Consultar Planos Correntes. Também devem ser feitos testes unitários a todos os casos de uso que integram os dois serviços mencionados. Para o design de todas as funcionalidades referidas, foi usada a metodologia iterativa Attribute-Driven Design, e o design foi dividido em duas iterações. A primeira iteração consiste no desenho e implementação dos casos de uso acima referidos. Para o desenvolvimento da primeira iteração foi tido em conta que que deveria ser utilizada cache para reduzir a sobrecarga do sistema central. Redis foi o armazenamento de cache utilizado. Também foi tido em conta que as três camadas do lado backend aplicam a abordagem API-led Connectivity, que estabelece responsabilidades bem definidas para as suas APIs que devem ser respeitadas de modo a aumentar a agilidade no desenvolvimento. A segunda iteração tem como objetivo aplicar os atributos de qualidade manutenibilidade e testabilidade definidos nos requisitos do projeto para todos os casos de uso. Para que o requisito de testabilidade fosse cumprido era necessário que o testes unitários tivessem uma determinada cobertura. E para que o requisito de manutenibilidade fosse cumprido era necessário diminuir os code smells até um determinado índice de dívida técnica. Tanto para monitorizar a cobertura como a testabilidade, foi utilizada a ferramenta SonarQube. E com a ajuda dessa ferramenta, os requisitos de testabilidade e manutenibilidade foram cumpridos em ambos os serviços. Com estes requisitos cumpridos, a aplicação pode passar aos testes de qualidade efetuados por outros stakeholders do projeto Installments.
id RCAP_afc7b3249a8148515986655c8b4c086b
oai_identifier_str oai:recipp.ipp.pt:10400.22/21315
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 Internet Banking - Desenvolvimento de aplicação em .NETInternet BankingAtributo de qualidadeEstilo arquiteturalAPI-led ConnectivityAttribute-Driven DesignSonarQubeQuality AttributeArchitectural StyleEste documento descreve o trabalho de desenvolvimento de funcionalidades para o projeto Installments. Installments é um projeto de Internet Banking que tem como objetivo fornecer funcionalidades de pagamentos fracionados aos utilizadores das aplicações móveis do banco. A solução de software na qual se baseia este projeto é composta por quatro camadas. As camadas são a aplicação móvel, o serviço Installments Experience, o serviço Installments Process, e o Sistema Central. O trabalho apresentado neste documento consiste no desenvolvimento de algumas funcionalidades nos microsserviços desenvolvidos em .NET Installments Experiece e Installments Process. As funcionalidades em causa são o desenvolvimento do novo caso de uso Pedir Contacto, e a realização de correções ao caso de uso Consultar Planos Correntes. Também devem ser feitos testes unitários a todos os casos de uso que integram os dois serviços mencionados. Para o design de todas as funcionalidades referidas, foi usada a metodologia iterativa Attribute-Driven Design, e o design foi dividido em duas iterações. A primeira iteração consiste no desenho e implementação dos casos de uso acima referidos. Para o desenvolvimento da primeira iteração foi tido em conta que que deveria ser utilizada cache para reduzir a sobrecarga do sistema central. Redis foi o armazenamento de cache utilizado. Também foi tido em conta que as três camadas do lado backend aplicam a abordagem API-led Connectivity, que estabelece responsabilidades bem definidas para as suas APIs que devem ser respeitadas de modo a aumentar a agilidade no desenvolvimento. A segunda iteração tem como objetivo aplicar os atributos de qualidade manutenibilidade e testabilidade definidos nos requisitos do projeto para todos os casos de uso. Para que o requisito de testabilidade fosse cumprido era necessário que o testes unitários tivessem uma determinada cobertura. E para que o requisito de manutenibilidade fosse cumprido era necessário diminuir os code smells até um determinado índice de dívida técnica. Tanto para monitorizar a cobertura como a testabilidade, foi utilizada a ferramenta SonarQube. E com a ajuda dessa ferramenta, os requisitos de testabilidade e manutenibilidade foram cumpridos em ambos os serviços. Com estes requisitos cumpridos, a aplicação pode passar aos testes de qualidade efetuados por outros stakeholders do projeto Installments.This document describes feature development work for the Installments project. Installments is an Internet Banking project that aims to provide Installments payment features to users of the bank's mobile applications. The software solution on which this project is based is composed of four layers. The layers are the mobile application, the Installments Experience service, the Installments Process service, and the Central System. The work presented in this document is the development of some functionalities in the microservices developed in .NET Installments Experience and Installments Process. The functionalities in question are the development of the new Request Contact use case, and corrections to the Consult Current Plans use case. Unit tests must also be carried out on all use cases that integrate the two services mentioned. For the design of all the functionalities, the iterative Attribute-Driven Design methodology was used, and the design was divided into two iterations. The first iteration consists of designing and implementing the use cases mentioned above. For the development of the first iteration, it was considered that cache should be used to reduce the overhead of the central system. Redis was the cache store used. It was also considered that the three layers of the backend side apply the API-led Connectivity approach, which establishes well-defined responsibilities for their APIs that must be respected in order to increase development agility. The second iteration aims to apply the maintainability and testability quality attributes defined in the project requirements to all use cases. For the testability requirement to be fulfilled, it was necessary that the unit tests had a certain coverage. And for the maintainability requirement to be fulfilled, it was necessary to reduce code smells to a certain technical debt index. To monitor both coverage and testability, the SonarQube tool was used. And with the help of this tool, testability and maintainability requirements were fulfilled in both services. With these requirements fulfilled, the application can pass the quality tests carried out by other stakeholders of the Installments project.Sampaio, Alberto Antonio ChalupaRepositório Científico do Instituto Politécnico do PortoReis, Andreia Isabel Campos2023-01-04T16:34:15Z20222022-01-01T00:00:00Zinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisapplication/pdfhttp://hdl.handle.net/10400.22/21315TID:203112199porinfo: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:17:09Zoai:recipp.ipp.pt:10400.22/21315Portal AgregadorONGhttps://www.rcaap.pt/oai/openaireopendoar:71602024-03-19T17:41:22.925248Repositó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 Internet Banking - Desenvolvimento de aplicação em .NET
title Internet Banking - Desenvolvimento de aplicação em .NET
spellingShingle Internet Banking - Desenvolvimento de aplicação em .NET
Reis, Andreia Isabel Campos
Internet Banking
Atributo de qualidade
Estilo arquitetural
API-led Connectivity
Attribute-Driven Design
SonarQube
Quality Attribute
Architectural Style
title_short Internet Banking - Desenvolvimento de aplicação em .NET
title_full Internet Banking - Desenvolvimento de aplicação em .NET
title_fullStr Internet Banking - Desenvolvimento de aplicação em .NET
title_full_unstemmed Internet Banking - Desenvolvimento de aplicação em .NET
title_sort Internet Banking - Desenvolvimento de aplicação em .NET
author Reis, Andreia Isabel Campos
author_facet Reis, Andreia Isabel Campos
author_role author
dc.contributor.none.fl_str_mv Sampaio, Alberto Antonio Chalupa
Repositório Científico do Instituto Politécnico do Porto
dc.contributor.author.fl_str_mv Reis, Andreia Isabel Campos
dc.subject.por.fl_str_mv Internet Banking
Atributo de qualidade
Estilo arquitetural
API-led Connectivity
Attribute-Driven Design
SonarQube
Quality Attribute
Architectural Style
topic Internet Banking
Atributo de qualidade
Estilo arquitetural
API-led Connectivity
Attribute-Driven Design
SonarQube
Quality Attribute
Architectural Style
description Este documento descreve o trabalho de desenvolvimento de funcionalidades para o projeto Installments. Installments é um projeto de Internet Banking que tem como objetivo fornecer funcionalidades de pagamentos fracionados aos utilizadores das aplicações móveis do banco. A solução de software na qual se baseia este projeto é composta por quatro camadas. As camadas são a aplicação móvel, o serviço Installments Experience, o serviço Installments Process, e o Sistema Central. O trabalho apresentado neste documento consiste no desenvolvimento de algumas funcionalidades nos microsserviços desenvolvidos em .NET Installments Experiece e Installments Process. As funcionalidades em causa são o desenvolvimento do novo caso de uso Pedir Contacto, e a realização de correções ao caso de uso Consultar Planos Correntes. Também devem ser feitos testes unitários a todos os casos de uso que integram os dois serviços mencionados. Para o design de todas as funcionalidades referidas, foi usada a metodologia iterativa Attribute-Driven Design, e o design foi dividido em duas iterações. A primeira iteração consiste no desenho e implementação dos casos de uso acima referidos. Para o desenvolvimento da primeira iteração foi tido em conta que que deveria ser utilizada cache para reduzir a sobrecarga do sistema central. Redis foi o armazenamento de cache utilizado. Também foi tido em conta que as três camadas do lado backend aplicam a abordagem API-led Connectivity, que estabelece responsabilidades bem definidas para as suas APIs que devem ser respeitadas de modo a aumentar a agilidade no desenvolvimento. A segunda iteração tem como objetivo aplicar os atributos de qualidade manutenibilidade e testabilidade definidos nos requisitos do projeto para todos os casos de uso. Para que o requisito de testabilidade fosse cumprido era necessário que o testes unitários tivessem uma determinada cobertura. E para que o requisito de manutenibilidade fosse cumprido era necessário diminuir os code smells até um determinado índice de dívida técnica. Tanto para monitorizar a cobertura como a testabilidade, foi utilizada a ferramenta SonarQube. E com a ajuda dessa ferramenta, os requisitos de testabilidade e manutenibilidade foram cumpridos em ambos os serviços. Com estes requisitos cumpridos, a aplicação pode passar aos testes de qualidade efetuados por outros stakeholders do projeto Installments.
publishDate 2022
dc.date.none.fl_str_mv 2022
2022-01-01T00:00:00Z
2023-01-04T16:34:15Z
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/21315
TID:203112199
url http://hdl.handle.net/10400.22/21315
identifier_str_mv TID:203112199
dc.language.iso.fl_str_mv por
language por
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_ 1799131501368967168