SportyRentalTime: Alquiler deportivo de instalaciones por tiempo

Ben Dohhou Laouini, Mohammed (2021). SportyRentalTime: Alquiler deportivo de instalaciones por tiempo. Thesis (Master thesis), E.T.S.I. de Sistemas Informáticos (UPM).

Description

Title: SportyRentalTime: Alquiler deportivo de instalaciones por tiempo
Author/s:
  • Ben Dohhou Laouini, Mohammed
Contributor/s:
  • Bernal Bermúdez, Jesús
Item Type: Thesis (Master thesis)
Masters title: Ingeniería Web
Date: July 2021
Subjects:
Freetext Keywords: Aplicación web; Arquitectura hexagonal
Faculty: E.T.S.I. de Sistemas Informáticos (UPM)
Department: Sistemas Informáticos
Creative Commons Licenses: Recognition - No derivative works - Non commercial

Full text

[img] PDF - Users in campus UPM only - Requires a PDF viewer, such as GSview, Xpdf or Adobe Acrobat Reader
Download (1MB)

Abstract

La idea es desarrollar una aplicación web SportyRentalTime aplicando la arquitectura hexagonal como estructura de proyecto, y además usando integración continua en la fase de implementación. El objetivo de la aplicación es reversar espacios deportivos con el fin de optimizar el rendimiento del centro o instalación deportiva, es decir la reserva se hará en función del tiempo que se desea empeñar en la práctica del deporte. Entonces, el sistema le proporcionará al usuario un tiempo de uso y el coste a la hora de realizar la petición de reserva. En cuanto a la tecnología del proyecto es integrar en la fase implementación la programación reactiva con Java 11 para la construcción de la capa servicios del backend. Este modo de programación permite al sistema realizar llamadas REST de forma asíncrona así el paso de mensajes es más fluido y eficiente. Por otro lado, el gestor de dependencias que incorpora el proyecto es Maven ya que nos sirve para adquirir las librerías de Spring y otras utilidades. Como todo sistema habrá que salvaguardar los datos en base datos para ello el almacenamiento de datos de usuario será mediante ProstgreSQL y otro tipo de datos con Mongo. También, hay que tener cuenta el nivel de flujo código en la fase de implementación para ello usaremos el gestor de control de versiones de Git que almacenara el rastreo de las historias en GitHub. Esta herramienta permite la integración continua mediante el método de Actions que nos ayuda a ver si la promoción de la historia en la rama de desarrollo fue con éxito o no, y en caso de fallo nos lanza una alerta con la herramienta de Slack. Por otro lado, otro aspecto importante es la mantenibilidad del software para ello en cada promoción en desarrollo o producción se lanzará una tarea de análisis en Sonar. Por otro lado, en la capa de presentación de la aplicación la implementación será mediante Angular que nos da programación sobre componentes así garantizar mejor rendimiento a la hora de consultar información y una estructura con modelo vista controlador MVC. Por último, respecto a las pruebas unitarias de la capa backend se usará JUnit en modo automático una vez promocionado la historia en el entorno de desarrollo o producción. Abstract: The idea is to develop a web application applying the hexagonal architecture as project structure, and it is also using continuous integration in the implementation of phase. The purpose of the application is to reverse sports spaces in order to optimize the performance of the sports center or facility, namely the reservation will be made based on the time that you want to spend the practice of sport. Then, the system will provide the user with usage time and cost when making the reservation request. Regarding the technology of the project, it is to integrate reactive programming with Java 11 for the implementation phase for the construction of backend services layer. This programming mode allows the system to make REST calls asynchronously so the message passing is more fluid and efficient. On the other hand, the dependency manager of project incorporates to is Maven since it helps us to acquire the Spring libraries and other utilities. Like any system, it will be necessary to safeguard the data in a database for the case of data storage with users, it will be through ProstgreSQL and other types of data with Mongo. Also, we must take into account the level of code flow in the implementation phase, for this case we will use the Git version control manager that will store the tracking of the stories in GitHub. This tool allows continuous integration through the Actions method that helps us to see if the promotion of the story in the development branch was successful or not, and in case of failure it launches an alert with the Slack tool. On the other hand, another important aspect is the maintainability of the software, since in each development under development or production an analysis task will be launched in Sonar. On the other hand, the presentation layer of application, the implementation will be through Angular, which gives us the characteristic of programming on components since it guarantees better performance when it comes to consulting information and structure with Model view controller MVC. Finally, regarding the unit tests of backend layer, we will have JUnit in automatic mode once the story has been promoted in the development environment or production.

More information

Item ID: 68024
DC Identifier: https://oa.upm.es/68024/
OAI Identifier: oai:oa.upm.es:68024
Deposited by: Biblioteca Universitaria Campus Sur
Deposited on: 27 Jul 2021 08:49
Last Modified: 27 Jul 2021 08:49
  • Logo InvestigaM (UPM)
  • Logo GEOUP4
  • Logo Open Access
  • Open Access
  • Logo Sherpa/Romeo
    Check whether the anglo-saxon journal in which you have published an article allows you to also publish it under open access.
  • Logo Dulcinea
    Check whether the spanish journal in which you have published an article allows you to also publish it under open access.
  • Logo de Recolecta
  • Logo del Observatorio I+D+i UPM
  • Logo de OpenCourseWare UPM