Implementación de una app móvil para realizar deporte en casa - Memoria

Página creada Iván Agusti
 
SEGUIR LEYENDO
Implementación de una app móvil para realizar deporte en casa - Memoria
Implementación de una app móvil para
 realizar deporte en casa

 Memoria

 FACULTAD DE INFORMÁTICA DE BARCELONA - Q1 Curso 2020/2021
 Especialización en Ingeniería del Software

 Autor: Marc Obiols Rubio

 Directora: María José Casañ Guerrero
 Fecha: 22/01/2021
Implementación de una app móvil para realizar deporte en casa - Memoria
Implementación de una app móvil para realizar deporte en casa - Memoria
Resumen

Este proyecto consiste en diseñar y desarrollar una aplicación móvil que permita a los
usuarios planificar, controlar y gestionar su actividad física desde su casa. La App
contará con funcionalidades que posibilitaran al usuario el seguimiento y evolución de
su estado físico. Por otro lado, el usuario podrá hacer un seguimiento de su
alimentación, así como posibles cambios en ella a través de varias herramientas.

En primera instancia se define la problemática y se detallan los objetivos y requisitos.
Posteriormente, se elaboran los informes del alcance, planificación temporal,
presupuesto económico y sostenibilidad del proyecto. Finalmente, en las etapas de
diseño, arquitectura e implementación se desarrolla la aplicación, se especifican los
detalles técnicos y las decisiones tomadas en cada iteración.

 Resum

Aquest projecte consisteix a dissenyar i desenvolupar una aplicació mòbil que permeti
als usuaris planificar, controlar i gestionar la seva activitat física des de casa. L'App
comptarà amb funcionalitats que possibilitin a l'usuari el seguiment i evolució del seu
estat físic. D'altra banda, l’usuari podrà fer un seguiment de la seva alimentació, així
com possibles canvis en ella a través de vàries eines.

En primera instància es defineix la problemàtica i es detallen els objectius i requisits.
Posteriorment, s'elaboren els informes de l'abast, planificació temporal, pressupost
econòmic i sostenibilitat del projecte. Finalment, en les etapes de disseny, arquitectura
i implementació es desenvolupa l'aplicació, s'especifiquen els detalls tècnics i les
decisions preses en cada iteració.
Implementación de una app móvil para realizar deporte en casa - Memoria
Abstract

This project consists of designing and developing a mobile application that allows users
to plan, control and manage their physical activity from home. The App will have
functionalities that will enable the user to monitor and evolve their physical condition. On
the other hand, the user will be able to keep track of their feeding, as well as possible
changes in it through various tools.

In the first instance, the problem is defined and the objectives and requirements are
detailed. Subsequently, reports on the scope, time planning, economic budget and
sustainability of the project are prepared. Finally, in the design, architecture and
implementation stages, the application is developed, the technical details and the
decisions made in each iteration are specified.
Implementación de una app móvil para realizar deporte en casa - Memoria
Índice de contenido
1 Contextualización .................................................................................................. 10

 1.1 Introducción....................................................................................................... 10
 1.2 Definición de conceptos .................................................................................... 10
 1.2.1 Actividad física ............................................................................................ 10
 1.2.2 Dieta equilibrada ......................................................................................... 11
 1.2.3 Indicadores de la salud ............................................................................... 12
 1.3 Identificación del problema ................................................................................ 14
 1.4 Actores implicados ............................................................................................ 16
2 Justificación ........................................................................................................... 17

 2.1 Soluciones existentes ........................................................................................ 17
 2.2 Justificación de la elección ................................................................................ 19
3 Alcance ................................................................................................................... 20

 3.1 Objetivos ........................................................................................................... 20
 3.2 Requisitos no funcionales .................................................................................. 21
 3.3 Riesgos y obstáculos......................................................................................... 22
4 Metodología............................................................................................................ 23

 4.1 Herramientas de seguimiento ............................................................................ 23
5 Planificación proyecto ........................................................................................... 25

 5.1 Definición tareas................................................................................................ 25
 5.1.1 Gestión del proyecto ................................................................................... 26
 5.1.2 Iteración 1 ................................................................................................... 26
 5.1.3 Iteración 2 ................................................................................................... 27
 5.1.4 Iteración 3 ................................................................................................... 29
 5.1.5 Documentación final ................................................................................... 30
 5.2 Resumen tareas ................................................................................................ 31
6 Estimaciones y Diagrama de Gantt ..................................................................... 32

7 Gestión del riesgo: planes alternativos y obstáculos ......................................... 34

8 Presupuesto ........................................................................................................... 35

 8.1 Identificación de costes ..................................................................................... 35
 8.1.1 Costes personal .......................................................................................... 35
 8.1.2 Recursos materiales ................................................................................... 37
 8.1.3 Contingencias ............................................................................................. 37
Implementación de una app móvil para realizar deporte en casa - Memoria
8.1.4 Imprevistos ................................................................................................. 38
 8.1.5 Presupuesto final ........................................................................................ 38
 8.2 Control de gestión ............................................................................................. 38
9 Sostenibilidad ........................................................................................................ 40

 9.1 Autoevaluación .................................................................................................. 40
 9.2 Dimensión económica ....................................................................................... 40
 9.3 Dimensión ambiental ......................................................................................... 41
 9.4 Dimensión social ............................................................................................... 41
10 Definición requisitos ........................................................................................... 43

 10.1 Proceso de adquisición ................................................................................... 43
 10.2 Requisitos funcionales..................................................................................... 44
 10.2.1 Gestión de usuario .................................................................................... 44
 10.2.2 Gestión Rutinas ........................................................................................ 45
 10.2.3 Gestión Alimentación ................................................................................ 46
 10.2.4 Gestión dietas ........................................................................................... 47
 10.2.5 Gestión ejercicios...................................................................................... 47
 10.3 Requisitos no funcionales ................................................................................ 48
11 Arquitectura y diseño del sistema ...................................................................... 50

 11.1 Componentes del sistema ............................................................................... 50
 11.2 Patrones utilizados .......................................................................................... 52
 11.2.1 Modelo Vista Controlador.......................................................................... 52
 11.2.2 Data transfer object (DTO) ........................................................................ 53
 11.2.3 Singleton ................................................................................................... 53
 11.2.4 Adaptador ................................................................................................. 53
 11.2.5 ViewHolder ............................................................................................... 54
 11.3 Diseño BackEnd .............................................................................................. 55
 11.4 Esquema base de datos .................................................................................. 56
 11.5 Interfaz gráfica................................................................................................. 58
 11.5.1 Pantallas de la aplicación .......................................................................... 58
 11.5.2 Popups ..................................................................................................... 62
12 Implementación.................................................................................................... 64

 12.1 Tecnologías utilizadas ..................................................................................... 64
 12.2 Desarrollo ........................................................................................................ 66
 12.2.1 Sprint 1 ..................................................................................................... 66
 12.2.2 Sprint 2 ..................................................................................................... 68
 12.2.3 Sprint 3 ..................................................................................................... 70
Implementación de una app móvil para realizar deporte en casa - Memoria
13 Testing .................................................................................................................. 71

 13.1 BackEnd .......................................................................................................... 71
 13.2 FrontEnd ......................................................................................................... 73
14 Planificación final ................................................................................................ 75

15 Conclusiones ....................................................................................................... 77

 15.1 Consolidación competencias técnicas ............................................................. 78
 15.2 Trabajo futuro .................................................................................................. 80
16 Referencias .......................................................................................................... 81

Índice figuras

Figura 1: Cálculo del TMB .......................................................................................... 13

Figura 2: Actividad física mujeres y hombres .............................................................. 14

Figura 3: Actividad física mujeres ............................................................................... 15
Figura 4: Actividad física hombres .............................................................................. 15

Figura 5: Captura pantalla Sworkit entrenador ............................................................ 18
Figura 6: Captura pantalla Lifesum ............................................................................. 18

Figura 7: Diagrama Gantt ........................................................................................... 33

Figura 8: Disponibilidad Heroku .................................................................................. 49

Figura 9: componentes del sistema ............................................................................ 50

Figura 10: Diagrama del patrón MVC.......................................................................... 52

Figura 11: Esquema base de datos ............................................................................ 56

Figura 12: Pantalla carga ............................................................................................ 58
Figura 13: Iniciar sesión .............................................................................................. 58
Figura 14: Registrarse ................................................................................................ 58

Figura 15: Menú principal .......................................................................................... 59
Figura 16: Datos usuario ............................................................................................ 59
Figura 17: Ejercicios .................................................................................................. 59

Figura 18: Información ejercicio ................................................................................. 59
Figura 19: Rutinas usuario ......................................................................................... 59
Figura 20: Rutinas Predeterminadas........................................................................... 59
Implementación de una app móvil para realizar deporte en casa - Memoria
Figura 21: Rutinas de otros usuarios .......................................................................... 60
Figura 22: Consultar ejercicios Rutina externa ............................................................ 60
Figura 23: Buscador alimentos ................................................................................... 60

Figura 24: Historial de alimentación ............................................................................ 60
Figura 25: Alimentos consumidos ............................................................................... 60
Figura 26: Dieta .......................................................................................................... 60

Figura 27: Consultar rutina propia ............................................................................... 61
Figura 28: Ejecución rutina ......................................................................................... 61
Figura 29: Alimentación actual .................................................................................... 61

Figura 30: Progreso usuario........................................................................................ 61
Figura 31: Información usuario ................................................................................... 61
Figura 32: Dietas ........................................................................................................ 61

Figura 33: Modificar datos usuario .............................................................................. 62
Figura 34: Consultar/añadir datos alimento................................................................. 62

Figura 35: Eliminar rutina…….. ................................................................................... 62
Figura 36: Eliminar alimento…. ................................................................................... 62

Figura 37: Filtrar ejercicios…… ................................................................................... 62
Figura 38: Gráfico de alimentación consumida ........................................................... 62

Figura 39: Filtrar rutinas externas……. ....................................................................... 63
Figura 40: Modificar ejercicio de rutina ....................................................................... 63

Figura 41: Añadir ejercicio a rutina……… ................................................................... 63
Figura 42: Crear/modificar rutina………. . .................................................................... 63

Figura 43: Emuladores utilizados en las pruebas ........................................................ 73
Implementación de una app móvil para realizar deporte en casa - Memoria
Índice tablas

Tabla 1: planificación temporal en etapas ................................................................... 25

Tabla 2: Resumen tareas ............................................................................................ 30

Tabla 3: Riesgos y planes alternativos ........................................................................ 34

Tabla 4: Costes por cada perfil del proyecto ............................................................... 35

Tabla 5: Coste personal por actividad ......................................................................... 36

Tabla 6: Costes materiales ......................................................................................... 37

Tabla 7: Costes software ............................................................................................ 37

Tabla 8: Costes con contingencias ............................................................................. 37

Tabla 9: Costes imprevistos ........................................................................................ 38

Tabla 10: Presupuesto proyecto ................................................................................. 38

Tabla 11: Resumen tareas final .................................................................................. 76
Implementación de una app móvil para realizar deporte en casa - Memoria
1 Contextualización

1.1 Introducción

Este trabajo final de grado corresponde a la especialidad de Ingeniería del Software
dentro del Grado en Ingeniería Informática, impartido por la Facultad de Informática de
Barcelona [1] (FIB).

El proyecto procura proporcionar una aplicación móvil para que el usuario pueda
alcanzar sus objetivos personales combinando algunos aspectos de su forma de vida
como hacer más actividad física y una dieta más equilibrada, sin la necesidad de estar
inscrito en ninguna instalación deportiva.

1.2 Definición de conceptos

1.2.1 Actividad física

Según la Organización Mundial de la Salud (OMS) [2] se considera actividad física
cualquier movimiento corporal producido por los músculos que exija gasto energético.
Estos movimientos corporales pueden ser de dos tipos aeróbicos o anaeróbicos, dos
conceptos que se refieren a la forma en que nuestro cuerpo obtiene la energía para
poder realizarlos.

El ejercicio aeróbico o de baja intensidad como dice la periodista experta en salud Eva
Salabert [3], es aquel que requiere la respiración para su práctica. Este tipo de actividad
física se suele realizar con el objetivo de quemar grasa y conseguir mayor resistencia.
Para calcular la intensidad del ejercicio aeróbico se miden las pulsaciones cardíacas por
minuto. Normalmente dicha intensidad suele tomar valores entre 70% y 80% del máximo
número de pulsaciones por minuto (NPM), 220 para el caso de los hombres y 210 para
mujeres. La duración de este tipo de ejercicios suele ser de largos periodos de tiempo.
Algunos de los beneficios que nos pueden aportar estos ejercicios son:

 ● Reducir la grasa corporal.
 ● Menor riesgo a fracturas.
 ● Disminuir la presión arterial y los niveles de colesterol (LDL).
 ● Aumentar la capacidad de resistencia.

 10
● Mejora del estado de ánimo.
 ● Mejora del sistema circulatorio y capacidad pulmonar.

Por otro lado, el ejercicio anaeróbico o de alta intensidad según la periodista experta en
salud Eva Salabert [4], es aquel que no requiere la respiración implícita para su práctica.
La duración de los ejercicios anaeróbicos es de pequeños plazos de tiempo, ya que se
ejecutan a intensidades superiores al 85% del NPM. Este tipo de ejercicios se utilizan
para adquirir fuerza y masa muscular provocando un fortalecimiento del sistema
musculoesquelético. A diferencia de los ejercicios aeróbicos los anaeróbicos nos
ofrecen otro tipo de beneficios como se muestra a continuación:

 ● Fortalece los músculos.
 ● Mejora del estado cardiorrespiratorio.
 ● Mejora la capacidad para combatir fatiga.

La cantidad de tiempo a la semana que debe aplicar una persona depende de varios
factores, como edad, enfermedades u objetivos personales. Según Sanitas [5] una
persona debería realizar ejercicio aeróbico con una intensidad moderada (60%-75% de
NPM) durante 150 minutos a la semana o 75 minutos semanales con una intensidad
vigorosa (75%-85% de NPM), combinándolo con ejercicios anaeróbicos que trabajen
tanto la parte superior como la inferior del cuerpo. La combinación de estos dos tipos de
ejercicios nos proporcionará un programa de entrenamiento equilibrado.

1.2.2 Dieta equilibrada

Una dieta equilibrada es aquella que contiene productos de los principales grupos
alimenticios en las proporciones correctas. Aunque una dieta debe ser personalizada
según las condiciones de cada individuo, debe cumplir unos requisitos básicos para
poder considerarse saludable y equilibrada.

 11
Según la OMS [6] una dieta equilibrada debe contemplar los siguientes requisitos. El
primero a cumplir es que las calorías ingeridas deben corresponderse con las gastadas,
es decir el gasto calórico debe ser 0. Los hidratos de carbono, fuente principal de energía
para el organismo, deben representar entre el 55% y 60% del valor calórico total. Por lo
que respecta a las proteínas se recomienda un 15% del valor calórico total, para ser
más precisos se debería consumir 0,7 gramos al día de proteína por cada kilogramo de
peso corporal. Los lípidos o grasas no deberían superar el 30% de la ingesta calórica
total, donde menos del 10% debe provenir de grasas saturadas y el resto de insaturadas
o saludables. La cantidad de sodio a consumir debería ser inferior a 5 gramos diarios.
Finalmente, en cuanto a las frutas y verduras consumir al menos 400 gramos al día,
equivalente al popular dato de las 5 piezas de fruta.

1.2.3 Indicadores de la salud

Los indicadores de salud representan medidas-resumen que capturan información
relevante sobre distintos atributos y dimensiones del estado de salud y del desempeño
del sistema de salud de un individuo. Los indicadores elegidos para el proyecto han sido
extraídos del documento Nutrición Humana 2017 [7] y son los siguientes:

 • IMC (índice de masa corporal): Es un sistema que se utiliza para estimar la
 cantidad de grasa corporal de una persona, y así poder saber si su peso está
 dentro del rango normal o, por el contrario, padece sobrepeso o delgadez. El
 IMC es el resultado de la relación entre el peso y la estatura, IMC = Peso (kg) /
 altura (m)2. Además, es utilizado para determinar el peso máximo, mínimo e ideal
 de una persona.

 • Peso máximo: Es el mayor peso dentro del rango de peso necesario para que
 una persona se encuentre en forma y saludable.

 • Peso ideal: Es el peso medio necesario dentro del rango de peso necesario para
 que una persona se encuentre en forma y saludable. Se llama peso ideal porque
 es el adecuado para la persona, logrando así prevenir múltiples enfermedades.

 • Peso mínimo: Es el menor peso dentro del rango de peso necesario para que
 una persona se encuentre en forma y saludable.

 12
• TMB (tasa metabólica basal): Es la energía que necesita el cuerpo humano
 para sobrevivir realizando las funciones básicas, como respirar, bombear el
 corazón, filtrar la sangre, sintetizar hormonas o parpadear. El cálculo del TMB
 no es una tarea simple, ya que intervienen varios factores como la edad o el
 género como se muestra en la siguiente figura:

 Figura 1: Cálculo del TMB

 Pc: peso corporal
 Una vez se calcula la TMB es necesario añadir la energía empleada en la
 actividad física, mediante la siguiente fórmula: TMB = TMB + TMB * 7/10.

• Macronutrientes: Son nutrientes que se consumen en cantidades relativamente
 grandes, como las proteínas, los hidratos de carbono simples y complejos, y
 las grasas y ácidos grasos. El consumo de estos depende del TMB y su cálculo
 es el siguiente:
 ➢ Hidratos 62% del TMB.
 ➢ Proteínas 12 % del TMB.
 ➢ Grasas 22% del TMB.
 ➢ Fibra 4% del TMB.

 13
1.3 Identificación del problema

Este proyecto pretende desarrollar una aplicación móvil para planificar, controlar y
gestionar la actividad física de una persona sin necesidad de estar inscrito en ninguna
instalación deportiva y facilitar el seguimiento de una dieta equilibrada. Para ello, el
usuario podrá personalizar su entrenamiento de la semana seleccionando los ejercicios
que más se adecuen a sus gustos, en el caso de usuarios inexpertos se los ofrecerá la
posibilidad de entrenamientos predeterminados. La aplicación también proporcionará la
opción de observar el progreso físico y metas personales motivando al usuario a seguir
mejorando su estado de forma física. Por último, el seguimiento de la alimentación se
podrá realizar registrando la ingesta calórica diaria, comparándola con la ingesta
calórica ideal calculada previamente por el sistema, todo ello teniendo en cuenta la
condición física del individuo. Por lo tanto, los problemas a resolver son dos: mejorar la
forma física y la alimentación.

Según el estudio científico ANIBES [8] el 63,8% de la población española entre 18 y 75
años cumple con las recomendaciones de actividad moderada, y solo un 34,6% de la
población adulta realiza las recomendaciones de actividad vigorosa. Cabe destacar los
datos en el caso de la actividad física vigorosa.

 Figura 2: Actividad física mujeres y hombres

 14
En el caso de los hombres el 54,4% y 43,8% cumplen con las recomendaciones de
ejercicio moderado y vigoroso respectivamente. Podemos observar un incremento del
ejercicio con intensidad vigorosa, pero un decremento en la moderada. Por lo que
respecta a las mujeres sucede el caso contrario, hay una gran parte que cumple con las
recomendaciones de actividad física moderada, con un 72,5%, y pocas que cumplen las
recomendaciones de actividad física vigorosa, con solo un 26,0%.

 Figura 3: Actividad física mujeres Figura 4: Actividad física hombres

Son varios los motivos por los que las personas no cumplen con las recomendaciones
de actividad física. Dentro de estos motivos son comunes la escasez de tiempo, falta de
motivación e interés, o limitaciones económicas. Además, lamentablemente el Covid-19
también ha afectado al mundo del deporte, siendo un nuevo motivo más para no realizar
deporte y provocando un efecto negativo en otros mencionados como la carencia
económica.

En cuanto a la mala alimentación, según el artículo de Alimente [9] alrededor de 44.000
personas murieron en España en 2016 por enfermedades cardiovasculares derivadas
de una mala alimentación. Además, el 80% de los hombres y el 55% de las mujeres
tendrán obesidad en 2030, consecuencia en gran medida de una mala alimentación,
como indica la Revista de Cardiología Española [10], una tendencia que va en aumento
a lo largo de los años. La mala alimentación principalmente se debe al desconocimiento
sobre nutrición y escasez de tiempo para dedicar al tema.

 15
1.4 Actores implicados

A continuación, se listan los diferentes stakeholders implicados en el proyecto, ya sean
interesados, beneficiarios, afectados y participantes del proyecto.

 ● Directora: La directora del proyecto final de grado es Maria José Casañ
 Guerrero involucrada en supervisar y encarrilar el proyecto.

 ● Desarrollador: El desarrollador del proyecto es Marc Obiols Rubio, encargado
 de diseñar y desarrollar la aplicación móvil, documentar el proyecto y realizar las
 pertinentes pruebas de testing.

 ● Usuario final: Personas que quieran utilizar la aplicación móvil una vez esté
 finalizada en beneficio propio.

 ● Expertos en nutrición: Profesionales en el campo de la salud especializados
 en nutrición. Encargados de aportar feedback al proyecto para poder realizar un
 buen seguimiento de la alimentación de una persona.

 ● Expertos en ejercicio físico: Profesionales en el campo de la actividad física.
 Su rol es proporcionar feedback al desarrollador para que la aplicación tenga
 una variedad de ejercicios.

 16
2 Justificación

2.1 Soluciones existentes

Siendo la actividad física y la dieta equilibrada dos aspectos fundamentales en la vida
de las personas, ya existen varias aplicaciones que ofrecen soluciones parciales
parecidas a las planteadas en este proyecto. Sin embargo, ninguna de ellas es capaz
de combinar los dos conceptos (ejercicio físico y alimentación saludable) para que el
usuario pueda realizar un buen seguimiento. A continuación, se muestran las más
completas:

 ● MyFitnessPal [11]: La más completa. Es un contador de calorías con una base
 de datos de alimentos para que el usuario pueda ser consciente de las
 características nutricionales de los alimentos que consume. También, cuenta
 con una base de datos de ejercicios físicos para saber el número de calorías que
 consume el cuerpo humano al realizarlos. Sin embargo, no se ofrece información
 de cómo realizar los ejercicios, el número de ejercicios es escueto y no cuenta
 con ninguna herramienta para que el usuario pueda diseñar y gestionar su
 actividad física. Por lo que respecta a la interfaz puede ser compleja para
 usuarios principiantes.

 ● Ejercicios Caseros [12]: Dedicada para realizar ejercicios desde casa. Cuenta
 con una gran variedad de ejercicios bien documentados aportando imágenes de
 ejemplo para que el usuario pueda realizarlos correctamente. También, ofrece
 alarmas para programar los entrenamientos. La verdad es que es una aplicación
 completa para realizar deporte desde casa, pero no cuenta con ejercicios de
 calentamiento (fase esencial para evitar lesiones) y ningún tipo de funcionalidad
 para tener un seguimiento de la alimentación.

 ● Lifesum [13]: Ofrece varias dietas adaptadas según los objetivos y gustos
 alimenticios del usuario. También, cuenta con un contador de calorías como
 MyFitnessPal pero entrando más en detalle en las características nutricionales
 de los alimentos. A pesar de todo, no tiene en cuenta la actividad física, el mismo
 problema que sucedía con Ejercicios Caseros con la nutrición. Además, la
 versión gratuita no ofrece ninguna funcionalidad útil para el usuario obligándolo
 a pagar dinero para ser aprovechada.

 17
● Sworkit entrenador [14]: Dirigido a un público más experimentado en el mundo
 del fitness, Sworkit entrenador permite personalizar, con una gran variedad de
 parámetros, el plan de entrenamiento del usuario. Además, añade la opción de
 comunicarse con un entrenador personal para consultar dudas al respecto.
 Como parte negativa es que para un usuario inexperto utilizar Sworkit entrenador
 pueda resultar una tarea complicada y la opción del entrenador personal es de
 pago, como era de esperar.

Figura 5: Captura pantalla Sworkit entrenador Figura 6: Captura pantalla Lifesum

 18
2.2 Justificación de la elección

Todas las aplicaciones mencionadas anteriormente ofrecen un buen servicio al usuario,
pero ninguna de ellas consigue combinar los conceptos de actividad física y dieta
equilibrada, provocando que las personas interesadas en estos ámbitos tengan que
utilizar más de una aplicación para alcanzar sus objetivos. Por este motivo pensamos
en desarrollar una aplicación que considere ambos campos (ejercicio físico y
alimentación saludable) para facilitar el cumplimiento de los objetivos de los usuarios.

Además, ninguna aplicación tiene en cuenta el factor de la motivación originado por la
realización de deporte y dieta equilibrada que pueden producir que la persona se sienta
mejor, con lo cual sería interesante proporcionar al usuario alguna herramienta que le
permita alcanzar esta motivación.

 19
3 Alcance

A continuación, se tratarán los objetivos principales del proyecto, los requisitos no
funcionales y posibles obstáculos y riesgos que puedan surgir en el desarrollo de la
aplicación.

3.1 Objetivos

Los objetivos descritos a continuación permitirán resolver el problema inicial explicado
anteriormente. Cada uno de ellos se divide en diferentes sub-objetivos que se han de
cumplir para alcanzarlos.

 ● Permitir a los usuarios la gestión de su sesión

 ➢ Registro login y logout a los usuarios para acceder a su información.
 ➢ Los usuarios utilizarán un apodo como identificación.
 ➢ Verificación de los perfiles de los usuarios vía Gmail.
 ➢ Los usuarios podrán modificar la información de su perfil.

 ● Permitir a los usuarios gestionar sus entrenamientos personalizados

 ➢ Los usuarios podrán crear entrenamientos según sus condiciones y
 gustos.
 ➢ Los usuarios podrán seleccionar entrenamientos predeterminados.
 ➢ Los usuarios podrán añadir ejercicios de calentamiento a sus
 entrenamientos.
 ➢ Los usuarios podrán modificar sus entrenamientos.
 ➢ Los usuarios podrán eliminar los entrenamientos que ya no necesiten.
 ➢ Los usuarios podrán hacer públicos sus entrenamientos.
 ➢ Los usuarios podrán consultar entrenamientos públicos de otros
 usuarios.

 20
● Permitir a los usuarios el seguimiento de su actividad calórica

 ➢ Los usuarios podrán consultar las características nutricionales de los
 alimentos
 ➢ Los usuarios podrán seleccionar los alimentos consumidos durante el
 día.
 ➢ Los usuarios podrán modificar sus objetivos nutricionales.
 ➢ Los usuarios podrán observar su ingesta calórica diaria.
 ➢ Los usuarios podrán consultar el número de calorías quemadas al día.
 ➢ Los usuarios podrán consultar sus metas nutricionales.

3.2 Requisitos no funcionales

Además de los objetivos, hay que tener en cuenta otros aspectos como los requisitos
no funcionales, ya que aportan valor de mercado a nuestra aplicación.

 ● Usabilidad: La aplicación ha de ser usable para cualquier tipo de usuario, desde
 los adolescentes hasta adultos menos experimentados.
 ● Escalabilidad: La aplicación permitirá un incremento de usuarios respecto a los
 iniciales.
 ● Disponibilidad: El sistema tiene que estar el máximo de tiempo operativo.
 ● Seguridad: La aplicación solo permitirá acceder a los datos a las personas con
 permisos para acceder.
 ● Legalidad: La aplicación debe cumplir con las leyes descritas por el RGPD [15].
 ● Adaptabilidad: El sistema debe permitir su utilización en la mayoría de
 dispositivos Android.

 21
3.3 Riesgos y obstáculos

Finalmente, existen diferentes riesgos que podrían dificultar el desarrollo de la aplicación
y por lo tanto reducir su valor.

 ● Inexperiencia: El hecho de la utilización de tecnologías de las cuales el
 desarrollador del proyecto no es experto y en algunos casos no ha utilizado
 nunca, como la implementación del back de una aplicación, añade un tiempo de
 aprendizaje que alargará el desarrollo del sistema.

 ● Desconocimiento: El desarrollador de la aplicación no tiene ningún tipo de
 formación en el ámbito de la salud/nutrición y los conocimientos acerca del
 mundo del fitness son básicos. Por lo tanto, el tiempo de aprendizaje será más
 alto alargando el desarrollo de la aplicación

 ● Fecha de entrega: Tener una fecha de entrega fija provoca poco margen de
 fallo, ya que en el caso de que suceda algún contratiempo en alguna fase del
 proyecto puede resultar en el incumplimiento de algún objetivo planteado
 anteriormente y la aplicación se vería afectada negativamente en su valor.

 ● Derechos de copyright: La utilización de imágenes como descripción de los
 ejercicios requiere la compra de sus derechos de autor, ya que el desarrollador
 no dispone del tiempo y conocimientos del desarrollo de las imágenes.

 ● Permiso denegado Base de datos de alimentos: Desarrollar completamente
 la funcionalidad para que el usuario pueda seguir su ingesta calórica requiere de
 una base de datos de alimentos con sus características nutricionales. En este
 proyecto por falta de tiempo y recursos no se implementará una propia, y como
 consecuencia es necesario el servicio de alguna base de datos de alimentos de
 terceros, pero dicho servicio puede ser denegado.

 22
4 Metodología

La metodología a utilizar para el desarrollo de este proyecto será Agile [16]. Agile, es
una metodología utilizada principalmente para el desarrollo software. Es un proceso en
el que se aplican iteraciones de duración corta (1-3 semanas), conocidas como Sprints,
donde se implementan las funcionalidades establecidas previamente en el backlog por
el equipo de trabajo. El equipo se divide en roles, pero en el caso de este proyecto todos
recaerán sobre el desarrollador.

El backlog es un tablero donde se apuntan las historias de usuario que debe cumplir el
proyecto, además cada una es puntuada según la dificultad de implementación. Las
historias de usuario corresponden con las funcionalidades del sistema. En cada sprint
se escogen las historias de usuario a realizar y se asignan a los diferentes miembros
del equipo, las cuales deberán estar finalizadas al final del sprint.

4.1 Herramientas de seguimiento

A continuación, se comentarán el conjunto de herramientas de seguimiento que se
utilizarán por el desarrollador para el desarrollo del proyecto.

 ● Git [17]: Es un sistema de control de versiones gratuito y de código abierto.
 Utilizado por la mayoría de desarrolladores de software, permite compartir código
 y gestionar las versiones a través de repositorios y ramas.

 ● Github [18]: Es un programa que permite gestionar los repositorios de Git.
 Además, ofrece otras funcionalidades como la integración continua.

 ● Taiga [19]: Es una plataforma gratuita para la gestión de proyectos. Incorpora
 funcionalidades como el tratamiento de issues, gestionar historias de usuario o
 gestionar el backlog.

 ● Integración continua: Es una práctica que consiste en hacer integraciones
 automáticas de código para poder detectar posibles fallos. Para su práctica se
 ha utilizado GitHub.

 23
● Google meet: es un servicio de videotelefonía proporcionado por Google.
 Utilizado para las reuniones con la tutora.

 24
5 Planificación proyecto

La duración del proyecto es de aproximadamente 4 meses, con fecha de inicio el 21 de
septiembre de 2020 y con fecha de finalización el 25 de enero de 2021. Al utilizar una
metodología Agile el proyecto se divide en diferentes etapas, las cuales son: gestión del
proyecto, iteraciones y documentación final.

La fase inicial, gestión del proyecto, supondrá la etapa de incepción del trabajo con una
duración de 80 horas y 20 horas de carga semanal. Esta fase se inicia el 21 de
septiembre y finaliza el 19 de octubre.

En cuanto a las iteraciones el proyecto contará con 3 iteraciones con una duración de 3
semanas cada una. La suma de horas de trabajo será de aproximadamente 405, con
una carga de trabajo semanal de 44 horas. Las iteraciones se iniciarán el 20 de octubre
y acabarán el 21 de diciembre.

Finalmente, en la última etapa, documentación final, se acabará la redacción de la
memoria empezando el 22 de diciembre y finalizando el 25 de enero de 2021.

 Etapa Inicio Final Tiempo
 Gestión del 21 de setiembre de 2020 19 de octubre de 80 h
 proyecto 2020
 Sprint 1 20 de octubre de 2020 9 de noviembre de 135 h
 2020
 Sprint 2 10 de noviembre de 2020 30 de noviembre de 135 h
 2020
 Sprint 3 1 de diciembre de 2020 21 de diciembre de 135 h
 2020
 Documentación 22 de diciembre de 2020 25 de enero de 2021 30 h
 memoria
 Total 515 h
 Tabla 1: planificación temporal en etapas

5.1 Definición tareas

Las diferentes tareas identificadas a continuación, están divididas en gestión del
proyecto (GP), Desarrollo (DS), Documentación (DC) y Validación (VD).

 25
5.1.1 Gestión del proyecto

 • GP1 - Documentación contextualización y alcance: Definir el contexto y
 determinar el alcance del proyecto.
 Duración: 25 horas
 Dependencias: -
 Recursos humanos: Jefe proyecto
 Recursos materiales: Ordenador con internet, Microsoft Office Word

 • GP2 - Planificación temporal: Definición de tareas y planificación temporal.
 Duración: 17.5 horas
 Dependencias: Documentación contextualización y alcance
 Recursos humanos: Jefe proyecto
 Recursos materiales: Ordenador con internet, Microsoft Office Word,
 Lucidchart

 • GP3 - Gestión económica y sostenibilidad: Definición del plan económico e
 informe de sostenibilidad.
 Duración: 17.5 horas
 Dependencias: Planificación temporal
 Recursos humanos: Jefe proyecto
 Recursos materiales: Ordenador con internet, Microsoft Office Word, Microsoft
 Office Excel

 • GP4 - Documento final: Juntar los documentos anteriores y arreglar posibles
 errores, para alcanzar una buena definición del proyecto.
 Duración: 15 horas
 Dependencias: Gestión económica y sostenibilidad
 Recursos humanos: Jefe proyecto
 Recursos materiales: Ordenador con internet, Microsoft Office Word

 • GP5 - Historias de usuario: Definir las historias de usuario del sistema.
 Duración: 5 horas
 Dependencias: Documento final
 Recursos humanos: Jefe proyecto
 Recursos materiales: Ordenador con internet, Taiga

5.1.2 Iteración 1

 • DS1 - Preparación del desarrollo: Preparación del entorno de trabajo para la
 creación del proyecto. Descarga y aprendizaje de los programas y librerías a
 utilizar. Además, el diseño de la base de datos.
 Duración: 35 horas
 Dependencias: -
 Recursos humanos: Desarrollador
 Recursos materiales: Ordenador con internet, Github, editor de texto

 26
• DS2 - Buscar información: Informarse sobre conceptos relacionados con la
 nutrición y el deporte, para poder implementar una aplicación funcional.
 Duración: 10 horas
 Dependencias: -
 Recursos humanos: Desarrollador
 Recursos materiales: Ordenador con internet

 • DS3 - Registro y autentificación del usuario: Desarrollar las funcionalidades
 de registro e inicio de sesión del usuario, diseño de pantallas pertinentes y
 cifrado de datos personales.
 Duración: 35 horas
 Dependencias: Preparación del desarrollo
 Recursos humanos: Desarrollador
 Recursos materiales: Ordenador con internet, editor de texto, Github

 • DS4 - Calculo automático metas usuario: Desarrollar el programa capaz de
 calcular los objetivos nutricionales y físicos del usuario. También, diseñar las
 pantallas para mostrar y modificar (en algunos campos) la información y
 progresión del usuario.
 Duración: 40 horas
 Dependencias: Preparación del desarrollo, Registro y autentificación del
 usuario, Buscar información
 Recursos humanos: Desarrollador
 Recursos materiales: Ordenador con internet, editor texto, Github

 • GP6 - Retrospectiva iteración 1: Valorar el trabajo realizado durante la iteración
 1 y, identificar y solucionar problemas que han ocurrido durante la iteración.
 Duración: 5 horas
 Dependencias: Preparación del desarrollo, Registro y autentificación del
 usuario, Buscar información
 Recursos humanos: Jefe del proyecto
 Recursos materiales: Ordenador con internet, Taiga, Microsoft Office Word

 • DC1 - Documentación iteración 1: Redacción de la documentación relacionada
 con la iteración 1.
 Duración: 10 horas
 Dependencias: -
 Recursos humanos: Jefe del proyecto
 Recursos materiales: Ordenador con internet, Microsoft Office Word

5.1.3 Iteración 2

 • DS5 - Gestión ejercicios - Backend: Añadir a la base datos ejercicios con sus
 respectivos parámetros. También, desarrollar la parte de Backend de las
 funcionalidades de listar y filtrar los ejercicios del sistema.
 Duración: 35 horas
 Dependencias: Iteración 1
 Recursos humanos: Desarrollador
 Recursos materiales: Ordenador con internet, editor de texto, Github

 27
• DS6 - Gestión entrenamiento - Backend: Desarrollar la parte de Backend de
 las funcionalidades crear, planificar y editar entrenamientos, y añadir a la BD
 entrenamientos predeterminados.
 Duración: 35 horas
 Dependencias: Gestión ejercicios - Backend
 Recursos humanos: Desarrollador
 Recursos materiales: Ordenador con internet, editor de texto, Github

• DS7 - Gestión ejercicios - Frontend: Desarrollar las pantallas para poder listar
 y filtrar ejercicios, y consultar los parámetros de un ejercicio en concreto.
 Duración: 25 horas
 Dependencias: Gestión ejercicios - Backend
 Recursos humanos: Desarrollador
 Recursos materiales: Ordenador con internet, editor de texto, Github

• DS8 - Gestión entrenamiento - Frontend: Desarrollar las pantallas de crear,
 planificar y editar entrenamientos. Además de poder consultar los
 entrenamientos personales y predeterminados ya creados.
 Duración: 25 horas
 Dependencias: Gestión entrenamiento – Backend, Gestión ejercicios - Frontend
 Recursos humanos: Desarrollador
 Recursos materiales: Ordenador con internet, editor de texto, Github

• GP7 - Retrospectiva iteración 2: Valorar el trabajo realizado durante la iteración
 2, identificar y solucionar problemas que han ocurrido durante la iteración.
 Duración: 5 horas
 Dependencias: Gestión ejercicios - Backend, Gestión entrenamiento –
 Backend, Gestión ejercicios – Frontend, Gestión entrenamiento – Frontend
 Recursos humanos: Jefe del proyecto
 Recursos materiales: Ordenador con internet, Taiga, Microsoft Office Word

• DC2 - Documentación iteración 2: Redacción de la documentación relacionada
 con la iteración 2.
 Duración: 10 horas
 Dependencias: iteración 1
 Recursos humanos: Jefe del proyecto
 Recursos materiales: Ordenador con internet, Microsoft Office Word

 28
5.1.4 Iteración 3

 • DS9 - Gestión Dietas: Desarrollar las funcionalidades para listar y mostrar las
 dietas del sistema al usuario. También añadir a la BD dietas para poder listarlas
 y comunicar el sistema con alguna API para consultar las características
 nutricionales de cada alimento.
 Duración: 45 horas
 Dependencias: Iteración 2
 Recursos humanos: Desarrollador
 Recursos materiales: Ordenador con internet, editor de texto, Github

 • DS10 - Consultar usuarios: Desarrollar la funcionalidad para consultar
 entrenamientos públicos de otros usuarios y poder añadirlos a tus
 entrenamientos.
 Duración: 25 horas
 Dependencias: iteración 2
 Recursos humanos: Desarrollador
 Recursos materiales: Ordenador con internet, editor de texto, Github

 • DS11 - Mejora interfaz gráfica: Mejorar la interfaz gráfica y usabilidad de la
 aplicación.
 Duración: 30 horas
 Dependencias: gestión dietas, consultar usuarios
 Recursos humanos: Jefe del proyecto
 Recursos materiales: Ordenador con internet, editor de texto, Github

 • VD1 - Validación proyecto: Verificar si la aplicación cumple con los objetivos y
 requisitos planteados en la fase de incepción.
 Duración: 20 horas
 Dependencias: mejora interfaz gráfica
 Recursos humanos: Desarrollador
 Recursos materiales: Ordenador con internet, Github, editor de texto

 • GP8 - Retrospectiva iteración 3: Valorar el trabajo realizado durante la iteración
 3, identificar y solucionar problemas que han ocurrido durante la iteración.
 Duración: 5 horas
 Dependencias: validación proyecto, mejora interfaz gráfica, gestión dietas,
 consultar usuarios
 Recursos humanos: Jefe del proyecto
 Recursos materiales: Ordenador con internet, Taiga, Microsoft Office Word

 • DOC3 - Documentación iteración 3: Redacción de la documentación
 relacionada con la iteración 3.
 Duración: 10 horas
 Dependencias: iteración 2
 Recursos humanos: Jefe del proyecto
 Recursos materiales: Ordenador con internet, Microsoft Office Word

 29
5.1.5 Documentación final

 • DC4 - Documentar memoria: Finalización de la memoria y preparación para
 lectura del proyecto.
 Duración: 30 horas
 Dependencias: Iteración 3
 Recursos humanos: Jefe del proyecto
 Recursos materiales: Ordenador con internet, Microsoft Office Word

 30
5.2 Resumen tareas

A continuación, en la tabla 1 se muestra un resumen de las tareas descritas previamente
y la duración individual de cada una. También, se indica la duración de cada etapa.
Como resultado de la planificación temporal obtenemos un total de 515 horas de trabajo.

 Horas Horas
 Etapa proyecto Tarea tarea etapa

 GP1 25
 GP2 17.5
 Gestión del proyecto 80
 GP3 17.5
 GP4 15
 GP5 5
 DS1 35
 DS2 10
 135
 DS3 35
 Iteración 1
 DS4 40
 GP6 5
 DC1 10
 DS5 35
 DS6 35
 135
 DS7 25
 Iteración 2
 DS8 25
 GP7 5
 DC2 10
 DS9 45
 DS10 25
 135
 DS11 30
 Iteración 3
 VD1 20
 GP8 5
 DC3 10
 Documentación final DC4 30 30

 Total 515

 Tabla 2: Resumen tareas

 31
6 Estimaciones y Diagrama de Gantt

En la figura 1 se puede observar el diagrama Gantt del proyecto mostrando el reparto
temporal de las tareas. Cada etapa del proyecto es diferenciada por un color diferente.
El eje temporal se inicia el 21 de septiembre de 2020 y finaliza el 25 de enero de 2021.
En cuanto a las tareas de documentación de las iteraciones se ha optado a realizarlas
de manera concurrente a todas las demás tareas de la iteración. En cambio, las tareas
de desarrollo no son concurrentes entre ellas, ya que existen dependencias que
dificultarían la concurrencia.

En el siguiente enlace se puede acceder al diseño original del diagrama de Gantt para
obtener una mayor calidad de imagen: https://lucid.app/invitations/accept/e649d5be-
4e57-4c6a-806a-63d1cb597ab3

 32
Figura 7: Diagrama Gantt

 33
7 Gestión del riesgo: planes alternativos y
obstáculos
En la siguiente tabla se comentan los diferentes riesgos y obstáculos que pueden
suceder en el transcurso del proyecto, indicando su impacto, probabilidad de que
sucedan y por último un plan alternativo para mitigarlos.

 Riesgo Impacto Probabilidad Plan alternativo

 Se han añadido tareas para el
 Inexperiencia con aprendizaje y preparación de estas
 tecnologías Alto Alta tecnologías. Además, las primeras
 tareas que implican el uso de
 tecnologías de las que no soy
 experto han sido sobreestimadas en
 cuanto tiempo.

 La última etapa del proyecto tiene
 una duración de un mes donde no
 Planificación solo se realizará la redacción de la
 temporal incorrecta Bajo Media memoria, sino que se acabarán
 posibles tareas atrasadas de las
 iteraciones. Además, al utilizar
 metodología agile las tareas
 inacabadas de una iteración se
 trasladarán a la siguiente.
 En la iteración 1 se ha añadido una
 tarea pensada para buscar
 Desconocimiento del Medio Media información sobre la temática de la
 tema aplicación. También estoy en
 contacto con un experto en nutrición
 que aportará mayor valor al
 proyecto.
 Utilizar imágenes sin derechos de
 autor o asumir el coste económico
 Derechos de Medio Alto de los derechos de dichas
 copyright imágenes.

 Se añadirían más y mejores dietas
 predeterminadas relacionadas con
 Permiso denegado Alto Alto el deporte. También, se mejoraría la
 API alimentos gestión de ejercicios y
 entrenamiento.

 Tabla 3: Riesgos y planes alternativos

 34
También puede leer