aplicación web para la gestión de un gimnasio

48
Aplicación web para la gestión de un gimnasio MEMORIA PRESENTADA POR: Eduardo Robres Barro Director del proyecto: Pau Micó Convocatoria de defensa: Marzo de 2020 GRADO EN INGENIERÍA INFORMÁTICA

Upload: others

Post on 05-Jul-2022

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Aplicación web para la gestión de un gimnasio

Aplicación web para la gestión de un gimnasio

MEMORIA PRESENTADA POR: Eduardo Robres Barro

Director del proyecto: Pau Micó Convocatoria de defensa: Marzo de 2020

GRADO EN INGENIERÍA INFORMÁTICA

Page 2: Aplicación web para la gestión de un gimnasio

Trabajo Final de Grado

2/48

© E. Robres

Resumen

Dado que las responsabilidades laborales y familiares dejan poco tiempo para cuidar

de nuestro cuerpo, los gimnasios se han convertido en una herramienta cada vez más

útil para ello. Es por esto por lo que los clientes están dispuestos a pagar cierta cuota

para que los profesionales les aconsejen, enseñen y guíen en ese cuidado, y el pago

significa que también hay un alto grado de exigencia en los servicios contratados. Éste

es el motivo por el que resulta muy interesante la propuesta de un TFG que desarrolle

una aplicación web que facilite las tareas diarias que implican la gestión de un

gimnasio.

Summary

Since work and family responsibilities leave little time to take care of our body, gyms

have become an increasingly useful tool for this. This is why customers are willing to

pay a certain fee for professionals to advise, teach and guide them in that care, and the

payment means that there is also a high degree of demand on the contracted services.

This is the reason why the proposal of a TFG that develops a web application that

facilitates the daily tasks that involve the management of a gym is very interesting.

Page 3: Aplicación web para la gestión de un gimnasio

Trabajo Final de Grado

3/48

© E. Robres

Contenidos

1 Introducción .......................................................................................................................... 5

1.1 ANTECEDENTES ................................................................................................................. 5

1.2 OBJETIVOS......................................................................................................................... 5

1.3 REQUERIMIENTOS .............................................................................................................. 5

2 Anteproyecto ......................................................................................................................... 7

2.1 ESTADO DEL ARTE .............................................................................................................. 7

2.2 ENTORNOS DE DESARROLLO ............................................................................................ 7

2.2.1 IDE ............................................................................................................................. 7

2.2.2 Lenguajes de programación ....................................................................................... 8

2.2.3 Servidor de bases de datos ........................................................................................ 8

2.2.4 Servidor web .............................................................................................................. 8

2.3 ESTUDIO DE PROPUESTAS ................................................................................................... 8

2.3.1 Propuesta 1 ................................................................................................................ 8

2.3.2 Propuesta 2 ................................................................................................................ 8

2.4 JUSTIFICACIÓN ................................................................................................................... 9

3 Implementación ....................................................................................................................10

3.1 ENTORNO DE DESARROLLO ................................................................................................10

3.2 IMPLEMENTACIÓN PRÁCTICA ...............................................................................................11

3.2.1 Modelo de la base de datos ......................................................................................12

3.2.2 Maquetas ..................................................................................................................14

3.2.3 Diagramas de funcionamiento ...................................................................................17

3.3. Pruebas ..........................................................................................................................19

3.3.1 De sistema ................................................................................................................19

3.3.2 De integración de sistemas .......................................................................................19

3.3.3 De volumen ...............................................................................................................20

4 Resultados ...........................................................................................................................21

4.1 MIGRACIÓN AL ENTORNO DE PRODUCCIÓN .......................................................................21

4.2 INSTALACIÓN DE LA APLICACIÓN ......................................................................................21

5 Conclusiones .......................................................................................................................22

Page 4: Aplicación web para la gestión de un gimnasio

Trabajo Final de Grado

4/48

© E. Robres

5.1 CONCLUSIONES PERSONALES ............................................................................................22

5.2 FUTURAS LÍNEAS DE DESARROLLO ......................................................................................22

6 Bibliografía ...........................................................................................................................23

7 Anexos ..................................................................................................................................24

7.1 MANUAL DE USUARIO .........................................................................................................24

Page 5: Aplicación web para la gestión de un gimnasio

Trabajo Final de Grado

5/48

© E. Robres

1 Introducción

1.1 ANTECEDENTES

El proyecto se enmarca dentro del área de desarrollo de aplicaciones web, y el principal

motivo por el que se ha decidido realizarlo es por la observación de una carencia

existente de una aplicación en la que los usuarios de gimnasios puedan obtener

información en tiempo real sobre cuántas personas hay en un momento concreto en las

instalaciones, así como, de tener la información correspondiente sobre su dieta

personal, rutinas de entrenamientos y clases dirigidas, sin necesidad de tener que

desplazarse hasta el gimnasio para comprobarlo, pues en la actualidad, tanto las

rutinas de entrenamiento como las dietas y las clases dirigidas están plasmadas en

papel, y por lo tanto, hay que acudir físicamente al gimnasio para obtener dicha

información.

1.2 OBJETIVOS

Su desarrollo se centrará en:

● Permitir a los usuarios del gimnasio conectarse a la aplicación para que puedan

ver sus dietas personalizadas, rutinas de entrenamiento, las clases dirigidas y

los usuarios que están utilizando en ese momento las instalaciones.

● Gestionar la asistencia a las clases de spinning (ya que hay aforo máximo).

1.3 REQUERIMIENTOS

Los requerimientos de cliente son los siguientes:

● Presentación de los distintos servicios: dieta, entrenamiento y clases dirigidas.

● Distintos perfiles de usuario que permitan realizar diferentes tareas según el

perfil:

○ cliente, con acceso de lectura sobre los distintos servicios.

○ administrador, con permiso de lectura y escritura para cursar las

altas/bajas de los clientes.

● Acceso a la aplicación securizado.

● Cuenteo en tiempo real del número de usuarios que están utilizando las

instalaciones.

● Personalización, seguimiento y control de rutinas y dietas.

● Envío de un email para recordar el comienzo de una clase de spinning a los

usuarios que hayan reservado bicicletas, antes del comienzo de la misma.

Page 6: Aplicación web para la gestión de un gimnasio

Trabajo Final de Grado

6/48

© E. Robres

Como requerimientos a nivel técnico para la implementación de la aplicación se

proponen:

● Arquitectura de capas basada en el estándar JEE.

● Capa web con JSF, HTML y CSS.

● Lógica de negocio con JPA y EJBs.

● Capa de datos con BBDD MySQL.

Page 7: Aplicación web para la gestión de un gimnasio

Trabajo Final de Grado

7/48

© E. Robres

2 Anteproyecto

2.1 ESTADO DEL ARTE

Existen numerosas aplicaciones que nos ayudan a entrenar, como, por ejemplo:

- Total Fitness, una app que proporciona rutinas de entrenamiento.

- Sworkit, una app en la que se elige entre diferentes ramas: estiramientos, yoga,

cardio, fuerza… Se selecciona el tiempo de entrenamiento y la aplicación va

guiando al usuario durante la realización de las rutinas.

- Fistar Personal Trainer, una app en la que las rutinas ya están descritas y el

usuario sólo debe seguirlas.

- Vientre plano, una app para hacer ejercicios de abdominales.

- Gym Fitness & Workout, una app con más de 300 ejercicios para aprender cómo

realizarlos y poder hacer diferentes rutinas en el gimnasio.

Todas estas aplicaciones ya tienen diseñadas las rutinas de entrenamiento sin importar

el usuario que las utilice y sin ningún tipo de control sobre ellas. En la actualidad, es

sabido que una misma rutina de entrenamiento no sirve para todo tipo de personas y es

por ello que cada persona debe tener una rutina personalizada y adaptada para

alcanzar sus objetivos propuestos.

Por eso se propone la creación de esta app web, en la que cada usuario del gimnasio

dispondrá de un entrenador personal que le planificará las mejores rutinas de

entrenamiento adecuadas para él. Además, estas rutinas estarán en constante cambio

según transcurra el tiempo, ya que al tener el seguimiento continuo de la persona, se

podrán adaptar nuevos ejercicios y rutinas.

2.2 ENTORNOS DE DESARROLLO

2.2.1 IDE

● NetBeans IDE 8.2: es un entorno de desarrollo integrado libre, escrito en el

lenguaje de programación Java. Nos servirá de framework entre la capa web y la

capa de datos.

Page 8: Aplicación web para la gestión de un gimnasio

Trabajo Final de Grado

8/48

© E. Robres

2.2.2 Lenguajes de programación

● XHTML: es un lenguaje de descripción de páginas web normalizado según las

reglas XML.

● CSS3: es un lenguaje usado para definir la presentación de un documento

estructurado escrito en HTML o XML.

● Java: es un lenguaje de programación.

2.2.3 Servidor de bases de datos

● MySQL Server: es un sistema de gestión de base de datos relacional.

2.2.4 Servidor web

● GlassFish: es la implementación del servidor desarrollado por Oracle para dar

soporte a las capas web y de lógica de negocio en su modelo de arquitectura de

capas JEE.

2.3 ESTUDIO DE PROPUESTAS

2.3.1 Propuesta 1

En esta propuesta se propone el desarrollo de una aplicación web, en la que mediante

usuario y contraseña y como perfil de usuario, los usuarios del gimnasio puedan

acceder a su perfil y recuperar sus datos personales, así como las rutinas de

entrenamiento, dietas (personalizadas para cada usuario) y clases dirigidas.

La arquitectura y las características técnicas de la propuesta 1 son las siguientes:

● IDEs: Eclipse.

● Lenguajes de programación: Bootstrap, HTML/XML, Java.

● Servidor de bases de datos: MySQL Server.

● Servidor web: Apache.

2.3.2 Propuesta 2

En esta propuesta se propone el desarrollo de una aplicación web, en la que mediante

usuario y contraseña y como perfil de usuario, los usuarios del gimnasio puedan

acceder a su perfil y recuperar tanto sus datos personales como las rutinas de

entrenamiento, dietas (personalizadas para cada usuario) y clases dirigidas.

También habrá un perfil de administrador, quien podrá modificar cualquier perfil de

usuario del gimnasio.

Page 9: Aplicación web para la gestión de un gimnasio

Trabajo Final de Grado

9/48

© E. Robres

La arquitectura y las características técnicas de la propuesta 2 son las siguientes:

● IDEs: NetBeans IDE 8.2.

● Lenguajes de programación: CSS3, HTML/XML, Java.

● Servidor de bases de datos: MySQL Server.

● Servidor web: GlassFish.

2.4 JUSTIFICACIÓN

Se elige desarrollar la propuesta 2 por ser más completa que la 1 y utilizar las

arquitecturas vistas a lo largo del Grado en Ingeniería Informática.

Page 10: Aplicación web para la gestión de un gimnasio

Trabajo Final de Grado

10/48

© E. Robres

3 Implementación

3.1 ENTORNO DE DESARROLLO

La programación por capas es un modelo de desarrollo software en el que el objetivo

primordial es la separación (desacoplamiento) de las partes que compone un sistema

software o también una arquitectura cliente-servidor:

- Capa de presentación.

- Capa de cliente.

- Capa de negocio.

- Capa de datos.

Capa de cliente: la capa de cliente está formada por la lógica de la aplicación a la que

el usuario final accede directamente mediante una interfaz de usuario.

Como capa de cliente, el navegador web que utilice cada usuario.

Capa de presentación o capa de usuario: está formada por la lógica de aplicación

que prepara datos para su envío a la capa de cliente y procesa solicitudes desde la

capa de cliente para su envío a la lógica de negocios del servidor.

La lógica en la capa de presentación está formada normalmente por componentes de

J2EE como, por ejemplo, Java Servlet o los componentes de JSP que preparan los

datos para enviarlos en formato HTML o XML o que reciben solicitudes para

procesarlas.

Capa de negocio: es donde residen los programas que se ejecutan, se reciben las

peticiones del usuario y se envían las respuestas tras el proceso. Se denomina capa de

negocio (e incluso de lógica del negocio) porque es aquí donde se establecen todas las

reglas que deben cumplirse. Esta capa se comunica con la capa de presentación para

recibir las solicitudes y presentar los resultados, y con la capa de datos para solicitar al

gestor de base de datos almacenar o recuperar datos de él. También se consideran

aquí los programas de aplicación.

Page 11: Aplicación web para la gestión de un gimnasio

Trabajo Final de Grado

11/48

© E. Robres

Como capa de negocio, servidor GlassFish.

Capa de datos: es donde residen los datos y es la encargada de acceder a los

mismos. Está formada por uno o más gestores de bases de datos que realizan todo el

almacenamiento de datos, reciben solicitudes de almacenamiento o recuperación de

información desde la capa de negocio.

Como capa de datos. base de datos MySQL.

3.2 IMPLEMENTACIÓN PRÁCTICA

Configuración del IDE de NetBeans 8.2: se deja por defecto.

Configuración del pool de conexiones y resource JDBC en GlassFish:

Un pool de conexiones es un conjunto limitado de conexiones a una base de datos que

es manejado por un servidor de aplicaciones de forma tal que dichas conexiones

pueden ser reutilizadas por los diferentes usuarios. Este pool es administrado por un

servidor de aplicaciones que va asignando las conexiones a medida que los clientes

van solicitando consultas o actualizaciones de datos.

La idea general de un pool de conexiones es que cada vez que un cliente necesita una

conexión (esto es, cada vez que prepara un cursor, lo ejecuta, ejecuta una sentencia

directamente, etc.) se la solicita al pool. Esta conexión pertenece al cliente hasta que

de algún modo se determina que no la necesita más, y en ese momento se le puede

asignar la conexión a otro cliente.

Si un cliente necesita una conexión y no existe ninguna disponible, se queda

esperando hasta que alguna conexión se libere.

Un recurso JDBC (fuente de datos) proporciona a las aplicaciones un medio para

conectarse a una base de datos. Por lo general, el administrador crea un recurso JDBC

para cada base de datos a la que acceden las aplicaciones implementadas en un

dominio.

Page 12: Aplicación web para la gestión de un gimnasio

Trabajo Final de Grado

12/48

© E. Robres

En este caso, este recurso será utilizado desde el IDE de NetBeans para establecer la

conexión.

Para crear un pool de conexiones:

- Hay que darle un nombre.

- Seleccionamos el tipo de recurso, que generalmente es javax.sql.DataSource.

- Seleccionamos cuál es el proveedor de nuestra base de datos. (En nuestro

caso, MySQL.)

En propiedades adicionales se rellenan los siguientes campos:

- Password (el password con el que se accede a la base de datos).

- URL y url (para acceder a la base de datos)

(jdbc:mysql://localhost:3306/gimnasio).

- ServerName: localhost.

- User (el usuario con el que se accede a la base de datos) (root).

Para crear un recurso JDBC:

- Hay que darle un nombre.

- Seleccionamos con qué pool de conexiones se asociará nuestro recurso JDBC.

3.2.1 Modelo de la base de datos

Page 13: Aplicación web para la gestión de un gimnasio

Trabajo Final de Grado

13/48

© E. Robres

Tabla usuario:

- Usuario: varchar(20) PK,NN

- Password: varchar(64), default: null

- EsAdmin: smallint (6) default:0

- Activo: smallint (6), default: 0

- Email: varchar(100), NN

La tabla usuario sirve para almacenar los datos de los nuevos clientes en la base de

datos.

Tabla bicicletas:

- Id_bicicleta: INT(11), PK, NN,AI

- Descripción: varchar(200)

La tabla bicicletas sirve para almacenar la descripción de la bicicleta, que

corresponderá a la marca de la bicicleta.

Tabla imágenes:

- Id_imagen: INT(11), PK,NN,AI

- Usuario: varchar(20), defult:null

- Tipo: varchar(20), default:null

- Página: varchar(200), default:null

La tabla imágenes sirve para almacenar la página a la que pertenece la imagen, el tipo

de la imagen y el usuario al que pertenece la imagen.

Tabla clase:

- Id_actividad: INT(11), PK,NN

- Fecha_hora: DATETIME, PK,NN

La tabla clase sirve para almacenar la fecha y la hora de la clase de spinning.

Tabla clase-bicicletas:

- Id_bicicleta: INT(11), PK,NN

- Id_actividad: INT(11), PK,NN

- Fecha_hora: DATETIME, PK,NN

- Id_usuario: varchar(20),MUL, NN

La tabla clase-bicicletas sirve para almacenar los usuarios que reservan una bicicleta

en una clase.

Page 14: Aplicación web para la gestión de un gimnasio

Trabajo Final de Grado

14/48

© E. Robres

3.2.2 Maquetas

A continuación se presentan las maquetas diseñadas para una implementación inicial

de la aplicación. A partir de estas maquetas y en una segunda toma de requerimientos

con el cliente, se decide la apariencia final de las vistas de usuario.

Figura 1. Maquetas para las vistas de inicio de sesión, buscador y perfil de usuario

Inicio de sesión: donde el usuario iniciará sesión en la aplicación.

Buscador: donde el administrador buscará el perfil de cualquier usuario.

Perfil de usuario: mostrará el perfil del usuario en la aplicación.

Figura 2. Maquetas para las vistas de dieta definición muscular y dieta masa muscular

Page 15: Aplicación web para la gestión de un gimnasio

Trabajo Final de Grado

15/48

© E. Robres

Dieta definición muscular: en esta vista se mostrará la dieta actual (si la tiene) del

usuario.

Dieta masa muscular: en esta vista se mostrará la dieta actual (si la tiene) del usuario.

Figura 3. Maquetas para las vistas de rutinas de entrenamiento de volumen, definición, fuerza y abdominales

Rutina de entrenamiento de volumen: en esta vista se mostrará la rutina de

entrenamiento de volumen del usuario.

Rutina de entrenamiento de definición: en esta vista se mostrará la rutina de

entrenamiento de definición del usuario.

Rutina de entrenamiento de fuerza: en esta vista se mostrará la rutina de

entrenamiento de fuerza del usuario.

Rutina de entrenamiento de abdominales: en esta vista se mostrará la rutina de

abdominales del usuario.

Page 16: Aplicación web para la gestión de un gimnasio

Trabajo Final de Grado

16/48

© E. Robres

Figura 4. Maquetas para las vistas de clases de spinning, croosfit, gap y pilates

Page 17: Aplicación web para la gestión de un gimnasio

Trabajo Final de Grado

17/48

© E. Robres

Clases de spinning: vista donde se mostrará un calendario con las clases de spinning

de la semana y en la que un usuario podrá reservar una bicicleta para esa clase.

Clases de crossfit: vista donde se mostrará el calendario de clases de croosfit de la

semana.

Clases de gap: vista donde se mostrará el calendario de clases de gap de la semana.

Clases de pilates: vista donde se mostrará el calendario de clases de pilates de la

semana.

3.2.3 Diagramas de funcionamiento

Usuario del gimnasio:

No

No

Iniciar sesión

¿Inicio

correcto?

Perfil de usuario

Clases dirigidas

Spinning Gap Pilates Croosfit

Dietas

Volumen Definición

Rutinas de

entrenamiento

Volumen Fuerza Definición Abominales

¿Cerrar

sesión?

Fín

Page 18: Aplicación web para la gestión de un gimnasio

Trabajo Final de Grado

18/48

© E. Robres

Administrador del gimnasio:

No

No

No

Iniciar sesión

¿Inicio

correcto?

Perfil de usuario

Clases dirigidas

Spinning Gap Pilates Croosfit

Dietas

Volumen Definición

Rutinas de

entrenamiento

Volumen Fuerza Definición Abominales

¿Cerrar

sesión?

Fín

Página buscador

¿Usuario

encontrado?

Page 19: Aplicación web para la gestión de un gimnasio

Trabajo Final de Grado

19/48

© E. Robres

3.3. Pruebas

3.3.1 De sistema

Pruebas capa de cliente:

Comprobar a través del navegador web que accede y que se ve la aplicación

correctamente.

Navegadores probados: Firefox, Google Chrome e Internet Explorer.

Pruebas capa de presentación o capa de usuario:

Comprobar que le comunica la información y captura la información del usuario

correctamente introduciendo datos del usuario en la aplicación.

Pruebas capa de negocio:

Comprobar que tras los datos introducidos por los usuarios, se comunica y devuelve los

resultados correctamente, así como la comunicación con la capa de datos.

Pruebas capa de datos:

Comprobar que se guardan, modifican y se recuperan los datos correctamente de la

base de datos.

3.3.2 De integración de sistemas

En modo administrador, se ha simulado que un nuevo usuario se ha hecho socio del

gimnasio, se le ha dado de alta en el sistema y se ha procedido a buscar su perfil de

usuario. Una vez encontrado, se le ha subido una imagen de una dieta de definición,

así como una imagen de una rutina de entrenamiento de definición personalizada para

ese usuario.

En modo usuario, se ha accedido a la aplicación con el usuario y contraseña

proporcionados por el gimnasio y se ha accedido al perfil del usuario, donde se pueden

ver las dietas, las rutinas de entrenamiento, clases dirigidas y los usuarios activos en

ese momento en el gimnasio.

Se ha accedido a la sección de dietas, en la que se muestra una imagen de una dieta

de definición para el usuario.

Se ha accedido a la sección de rutinas de entrenamiento, en la que se muestra una

imagen de una rutina de entrenamiento de definición para el usuario.

Se ha accedido a la sección de clases dirigidas, y en las clases de spinning se muestra

el calendario con los horarios que hay disponibles durante la semana, pudiéndose

realizar la reserva de una bicicleta.

Tanto en las clases de croosfit, gap y pilates se muestra el horario de dichas clases.

Page 20: Aplicación web para la gestión de un gimnasio

Trabajo Final de Grado

20/48

© E. Robres

3.3.3 De volumen

Este tipo de prueba se refiere a la capacidad máxima que tiene un servidor web para

atender a un conjunto de usuarios de manera simultánea.

Las pruebas en este caso consisten en simular una carga de trabajo similar y superior a

la que tendrá cuando la aplicación esté funcionando, con el fin de detectar si el

software instalado (programas y aplicaciones) cumple con los requerimientos de

muchos usuarios simultáneos y también si el hardware (servidor) es capaz de soportar

la cantidad de visitas esperadas.

Como en teoría el número de usuarios simultáneos no va a ser elevado, la prueba de

volumen se ha realizado con 3 usuarios simultáneos y ha funcionado correctamente.

Page 21: Aplicación web para la gestión de un gimnasio

Trabajo Final de Grado

21/48

© E. Robres

4 Resultados

4.1 MIGRACIÓN AL ENTORNO DE PRODUCCIÓN

Para pasar la aplicación al entorno de producción, se podría buscar un proveedor de

hosting, por ejemplo, anw webhosting and domains names. Este proveedor de hosting

proporciona un servidor GlassFish, así como una base de datos MySQL, en la que

podríamos alojar la aplicación web.

4.2 INSTALACIÓN DE LA APLICACIÓN

El usuario solamente tiene que disponer de un ordenador personal, conexión a internet

y un navegador web.

Page 22: Aplicación web para la gestión de un gimnasio

Trabajo Final de Grado

22/48

© E. Robres

5 Conclusiones

5.1 CONCLUSIONES PERSONALES

El desarrollo de este proyecto ha sido un reto en el que se han puesto en práctica los

conocimientos adquiridos a lo largo del Grado en Ingeniería Informática.

5.2 FUTURAS LÍNEAS DE DESARROLLO

Como futuros desarrollos de la aplicación, se podrían señalar que permitiese subir

archivos multimedia, así como dar de alta la aplicación en redes sociales.

Page 23: Aplicación web para la gestión de un gimnasio

Trabajo Final de Grado

23/48

© E. Robres

6 Bibliografía

COMUNIDAD MDN. MDN Web Docs, moz://lla. <https://developer.mozilla.org>

[Consulta: septiembre-noviembre de 2019]

CPD, Códigos para desarrolladores.

<https://codigosparadesarrolladores.blogspot.com> [Consulta:

septiembre-octubre de 2019]

CUERVO, V. Línea de Código. <http://lineadecodigo.com> [Consulta:

septiembre-noviembre de 2019]

DROSOPOULOU, E. et al. Java Code Geeks (JCGs). Java 2 Java developers

resource center. <https://examples.javacodegeeks.com> [Consulta:

septiembre-noviembre de 2019]

ORACLE CORPORATION. Documentation. En: Oracle Help Center.

<https://docs.oracle.com> [Consulta: septiembre de 2019-enero de 2020]

ORACLE CORPORATION Y/O SUS FILIALES. Developer zone. En: MySQL.

<https://dev.mysql.com> [Consulta: septiembre de 2019–enero de 2020]

REFSNES DATA. W3Schools.com. The world’s largest web developer site.

<https://www.w3schools.com> [Consulta: octubre–diciembre de 2019]

SALAS, I. Programando o Intentándolo.

<https://programandoointentandolo.com> [Consulta: octubre–diciembre de

2019]

Stack Overflow. <https://stackoverflow.com> [Consulta: octubre–

noviembre de 2019]

Wikipedia. La enciclopedia libre. <https://es.wikipedia.org> [Consulta:

diciembre de 2019]

Page 24: Aplicación web para la gestión de un gimnasio

Trabajo Final de Grado

24/48

© E. Robres

7 Anexos

7.1 MANUAL DE USUARIO

Funcionamiento de la app:

Modo administrador

Iniciar sesión como administrador:

El administrador del gimnasio accederá al sistema con su nombre de usuario y

contraseña.

Page 25: Aplicación web para la gestión de un gimnasio

Trabajo Final de Grado

25/48

© E. Robres

Crear un usuario:

El administrador del gimnasio pedirá unos datos al cliente para darlo de alta en el

sistema.

Datos a rellenar:

- Nombre de usuario.

- Contraseña.

- E-mail.

Buscar un usuario:

Se introducirá el nombre del usuario a buscar para acceder a su perfil personal.

Borrar un usuario:

Se introducirá el nombre del usuario a borrar para darlo de baja en el sistema.

Página del perfil de usuario buscado:

Page 26: Aplicación web para la gestión de un gimnasio

Trabajo Final de Grado

26/48

© E. Robres

Crear una dieta de definición muscular:

Se pulsará en el botón “examinar”, se elegirá la imagen de la dieta a subir y se pulsará

en el botón subir. A continuación se mostrará la imagen de la dieta subida en la página.

Borrar una dieta:

- Se pulsará en el botón “borrar imagen”.

Volver a la página del buscador:

- Se pulsará en el botón “volver al buscador”.

Volver a la página del perfil del usuario:

- Se pulsará en el botón “perfil”.

Page 27: Aplicación web para la gestión de un gimnasio

Trabajo Final de Grado

27/48

© E. Robres

Crear una dieta de masa muscular:

Se pulsará en el botón “examinar”, se elegirá la imagen de la dieta a subir y se pulsará

en el botón subir. A continuación se mostrará la imagen de la dieta subida en la página.

Borrar una dieta:

- Se pulsará en el botón “borrar imagen”.

Volver a la página del buscador:

- Se pulsará en el botón “volver al buscador”.

Volver a la página del perfil del usuario:

- Se pulsará en el botón “perfil”.

Page 28: Aplicación web para la gestión de un gimnasio

Trabajo Final de Grado

28/48

© E. Robres

Crear una rutina de entrenamiento de volumen:

Se pulsará en el botón “examinar”, se elegirá la imagen de la rutina de entrenamiento a

subir y se pulsará en el botón subir. A continuación se mostrará la imagen de la rutina

de entrenamiento subida en la página.

Borrar una rutina de entrenamiento:

- Se pulsará en el botón “borrar imagen”.

Volver a la página del buscador:

- Se pulsará en el botón “volver al buscador”.

Volver a la página del perfil del usuario:

- Se pulsará en el botón “perfil”.

Page 29: Aplicación web para la gestión de un gimnasio

Trabajo Final de Grado

29/48

© E. Robres

Crear una rutina de entrenamiento de definición:

Se pulsará en el botón “examinar”, se elegirá la imagen de la rutina de entrenamiento a

subir y se pulsará en el botón subir. A continuación se mostrará la imagen de la rutina

de entrenamiento subida en la página.

Borrar una rutina de entrenamiento:

- Se pulsará en el botón “borrar imagen”.

Volver a la página del buscador:

- Se pulsará en el botón “volver al buscador”.

Volver a la página del perfil del usuario:

- Se pulsará en el botón “perfil”.

Page 30: Aplicación web para la gestión de un gimnasio

Trabajo Final de Grado

30/48

© E. Robres

Crear una rutina de entrenamiento de fuerza:

Se pulsará en el botón “examinar”, se elegirá la imagen de la rutina de entrenamiento a

subir y se pulsará en el botón subir. A continuación se mostrará la imagen de la rutina

de entrenamiento subida en la página.

Borrar una rutina de entrenamiento:

- Se pulsará en el botón “borrar imagen”.

Volver a la página del buscador:

- Se pulsará en el botón “volver al buscador”.

Volver a la página del perfil del usuario:

- Se pulsará en el botón “perfil”.

Page 31: Aplicación web para la gestión de un gimnasio

Trabajo Final de Grado

31/48

© E. Robres

Crear una rutina de entrenamiento de abdominales:

Se pulsará en el botón “examinar”, se elegirá la imagen de la rutina de entrenamiento a

subir y se pulsará en el botón subir. A continuación se mostrará la imagen de la rutina

de entrenamiento subida en la página.

Borrar una rutina de entrenamiento:

- Se pulsará en el botón “borrar imagen”.

Volver a la página del buscador:

- Se pulsará en el botón “volver al buscador”.

Volver a la página del perfil del usuario:

- Se pulsará en el botón “perfil”.

Page 32: Aplicación web para la gestión de un gimnasio

Trabajo Final de Grado

32/48

© E. Robres

Crear una clase dirigida de spinning:

En el menú desplegable, se elegirá la semana en la que se quiere poner la clase de

spinning y en la tabla se elegirá el día y la hora pulsando sobre el recuadro.

Una vez se haya pulsado, se pondrá de color verde, informando de que se ha puesto

una clase de spinning para ese día y hora.

También se podrá dar de alta y baja una bicicleta. Para ello, se escribirá la marca de la

bicicleta y se pulsará sobre los botones “Añadir bicicleta” o “Borrar bicicleta”.

Volver a la página del buscador:

- Se pulsará en el botón “volver al buscador”.

Volver a la página del perfil del usuario:

- Se pulsará en el botón “perfil”.

Page 33: Aplicación web para la gestión de un gimnasio

Trabajo Final de Grado

33/48

© E. Robres

Crear un horario para las clases de croosfit:

Se pulsará en el botón “examinar”, se elegirá la imagen del horario de la clase de

croosfit y se pulsará en el botón subir. A continuación se mostrará la imagen del horario

de croosfit.

Borrar un horario de la clase de croosfit:

- Se pulsará en el botón “borrar imagen”.

Volver a la página del buscador:

- Se pulsará en el botón “volver al buscador”.

Volver a la página del perfil del usuario:

- Se pulsará en el botón “perfil”.

Page 34: Aplicación web para la gestión de un gimnasio

Trabajo Final de Grado

34/48

© E. Robres

Crear un horario de la clase de gap:

Se pulsará en el botón “examinar”, se elegirá la imagen del horario de la clase de gap y

se pulsará en el botón subir. A continuación se mostrará la imagen del horario de gap.

Borrar un horario de la clase de gap:

- Se pulsará en el botón “borrar imagen”.

Volver a la página del buscador:

- Se pulsará en el botón “volver al buscador”.

Volver a la página del perfil del usuario:

- Se pulsará en el botón “perfil”.

Page 35: Aplicación web para la gestión de un gimnasio

Trabajo Final de Grado

35/48

© E. Robres

Crear un horario de la clase de pilates:

Se pulsará en el botón “examinar”, se elegirá la imagen del horario de la clase de

pilates y se pulsará en el botón subir. A continuación se mostrará la imagen del horario

de pilates.

Borrar un horario de la clase de pilates:

- Se pulsará en el botón “borrar imagen”.

Volver a la página del buscador:

- Se pulsará en el botón “volver al buscador”.

Volver a la página del perfil del usuario:

- Se pulsará en el botón “perfil”.

Page 36: Aplicación web para la gestión de un gimnasio

Trabajo Final de Grado

36/48

© E. Robres

Cerrar sesión en modo administrador:

Se accederá a la pantalla del perfil de usuario y se pulsará sobre el botón rojo de cerrar

sesión.

Page 37: Aplicación web para la gestión de un gimnasio

Trabajo Final de Grado

37/48

© E. Robres

Modo usuario

Iniciar sesión en modo usuario:

El usuario del gimnasio accederá al sistema con su nombre de usuario y contraseña.

Página de perfil del usuario:

Page 38: Aplicación web para la gestión de un gimnasio

Trabajo Final de Grado

38/48

© E. Robres

Consultar una dieta de definición muscular:

Si el usuario tiene una dieta de definición muscular asignada, se mostrará en pantalla.

Volver al perfil del usuario:

- Se pulsará en el botón “volver al perfil”.

Page 39: Aplicación web para la gestión de un gimnasio

Trabajo Final de Grado

39/48

© E. Robres

Consultar una dieta de masa muscular:

Si el usuario tiene una dieta de masa muscular asignada, se mostrará en pantalla.

Volver al perfil del usuario:

- Se pulsará en el botón “volver al perfil”.

Page 40: Aplicación web para la gestión de un gimnasio

Trabajo Final de Grado

40/48

© E. Robres

Consultar una rutina de entrenamiento de volumen:

Si el usuario tiene una rutina de entrenamiento de volumen asignada, se mostrará en

pantalla.

Volver al perfil del usuario:

- Se pulsará en el botón “volver al perfil”.

Page 41: Aplicación web para la gestión de un gimnasio

Trabajo Final de Grado

41/48

© E. Robres

Consultar una rutina de entrenamiento de definición muscular:

Si el usuario tiene una rutina de entrenamiento de definición muscular asignada, se

mostrará en pantalla.

Volver al perfil del usuario:

- Se pulsará en el botón “volver al perfil”.

Page 42: Aplicación web para la gestión de un gimnasio

Trabajo Final de Grado

42/48

© E. Robres

Consultar una rutina de entrenamiento de fuerza:

Si el usuario tiene una rutina de entrenamiento de fuerza asignada, se mostrará en

pantalla.

Volver al perfil del usuario:

- Se pulsará en el botón “volver al perfil”.

Page 43: Aplicación web para la gestión de un gimnasio

Trabajo Final de Grado

43/48

© E. Robres

Consultar una rutina de entrenamiento de abdominales:

Si el usuario tiene una rutina de entrenamiento de abdominales asignada, se mostrará

en pantalla.

Volver al perfil del usuario:

- Se pulsará en el botón “volver al perfil”.

Page 44: Aplicación web para la gestión de un gimnasio

Trabajo Final de Grado

44/48

© E. Robres

Consultar clases de spinning:

- El usuario seleccionará la semana correspondiente para ver las clases de

spinning disponibles.

- Se mostrará la semana correspondiente con las clases activas en verde.

- El usuario podrá reservar una bicicleta pulsando sobre el recuadro verde.

Volver al perfil de usuario:

- Se pulsará en el botón “volver al perfil”.

Page 45: Aplicación web para la gestión de un gimnasio

Trabajo Final de Grado

45/48

© E. Robres

Consultar clases de croosfit:

En la página de croosfit se mostrará una imagen con los horarios establecidos para

esas clases.

Volver al perfil de usuario:

- Se pulsará en el botón “volver al perfil”.

Page 46: Aplicación web para la gestión de un gimnasio

Trabajo Final de Grado

46/48

© E. Robres

Consultar clases de gap:

En la página de gap se mostrará una imagen con los horarios establecidos para esas

clases.

Volver al perfil de usuario:

- Se pulsará en el botón “volver al perfil”.

Page 47: Aplicación web para la gestión de un gimnasio

Trabajo Final de Grado

47/48

© E. Robres

Consultar clases de pilates:

En la página de pilates se mostrará una imagen con los horarios establecidos para

esas clases.

Volver al perfil de usuario:

- Se pulsará en el botón “volver al perfil”.

Page 48: Aplicación web para la gestión de un gimnasio

Trabajo Final de Grado

48/48

© E. Robres

Cerrar sesión en modo usuario:

Se accederá a la pantalla de perfil de usuario y se pulsará sobre el botón rojo de cerrar

sesión.