Internet Banking - Desenvolvimento de aplicação em .NET
Autor(a) principal: | |
---|---|
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 |