[en] In this project, a web application has been developed to manage sports court reservations. The application consists of a platform that acts as an intermediary between the clients who are going to reserve the sports courts and the owners of the sports centers that own the sports courts. We must distinguish between three types of users in the application. The client users are the ones who can search for and reserve the sports courts. To make the reservation, you must previously register in the application. On the other hand, there are business users, who are in charge of managing a sports center and its sports courts. To register you must indicate the data of the company that owns your sports center. They can edit the data of their sports center. They can also create and edit their sports tracks. When the tracks are created and enabled, they can manage the reservations made on them. Finally, there is the administrator user, which represents the people in charge of managing the application. He is responsible for verifying the information provided by business users who have registered. The architecture used is that of a layered client-server application, which is composed of a backend (a REST API and a model layer) and a frontend (a SPA application). In the backend it has been developed with the Java language, using the Spring framework ecosystem. In the frontend, the JavaScript language has been used using the React and Redux libraries. The development of the project consists of the following phases: analysis, design, implementation and testing. These phases were carried out iteratively and incrementally, adding one or more functionalities in each iteration. For this process I have made an adaptation of the Scrum framework.

[es] En este proyecto se ha desarrollado una aplicación web para gestionar las reservas de pistas deportivas. La aplicación consiste en una plataforma que hace de intermediaria entre los clientes que van a reservar las pistas deportivas y propietarios de los centros deportivos que poseen las pistas deportivas. Hay que distinguir entre tres tipos de usuarios en la aplicación. Los usuarios cliente son los que pueden buscar y reservar las pistas deportivas. Para hacer la reserva, previamente tienen que registrarse en la aplicación. Por otro lado están los usuarios empresa, que son los encargados de gestionar un centro deportivo y sus pistas deportivas. Para registrarse deben indicar los datos de la empresa propietaria de su centro deportivo. Pueden editar los datos de su centro deportivo. También pueden crear y editar sus pistas deportivas. Cuando las pistas estén creadas y habilitadas, pueden gestionar las reservas que se realicen sobre ellas. Por último está el usuario administrador, que representa a las personas encargadas de gestionar la aplicación. Se encarga de verificar la información facilitada por los usuarios empresa que se hayan registrado. La arquitectura utilizada es la de una aplicación cliente-servidor dividida en capas, que está compuesta por un backend (una API REST y una capa modelo) y un frontend (una aplicación SPA). En el backend se ha desarrollado con el lenguaje Java, utilizando el ecosistema del framework Spring. En el frontend se ha utilizado el lenguaje JavaScript utilizando las bibliotecas React y Redux. El desarrollo del proyecto consta de las siguientes fases: análisis, diseño, implementación y pruebas. Estas fases se realizaron de manera iterativa e incremental, añadiendo una o más funcionalidades en cada iteración. Para este proceso he realizado una adaptación del marco de trabajo Scrum.