Descarga la aplicación para disfrutar aún más
Vista previa del material en texto
E s c u e la P o lit é c n ic a S u p e ri o r d e J a é n Universidad de Jaén Escuela Politécnica Superior de Jaén Departamento de Informática Trabajo Fin de Grado Trabajo Fin de Grado UJA GYM: APLICACIÓN PERSONAL DE RUTINAS DEPORTIVAS Alumno: Jose Conejo Anguita Tutor: Miguel Ángel García Cumbreras Dpto: Departamento de Informática Julio, 2020 Jose Conejo Anguita UJA GYM 1 Escuela Politécnica Superior de Jaén Universidad de Jaén Escuela Politécnica Superior de Jaén Departamento de Informática Don Miguel Ángel García Cumbreras , tutor del Proyecto Fin de Carrera titulado: UjaGym: aplicación personal de rutinas deportivas, que presenta Jose Conejo Anguita, autoriza su presentación para defensa y evaluación en la Escuela Politécnica Superior de Jaén. Jaén, Julio de 2020 El alumno: Los tutores: Jose Conejo Anguita Miguel Ángel García Cumbreras Jose Conejo Anguita UJA GYM 2 Escuela Politécnica Superior de Jaén 1 Índice 1. Introducción .................................................................................................................... 9 1.1. Aspectos generales y motivación ............................................................................ 9 1.2. Proposito del proyecto ............................................................................................. 9 1.3. Objetivos ................................................................................................................10 1.4. Estructura del proyecto ..........................................................................................10 2. Estudio previo ...............................................................................................................13 Conceptos básicos .................................................................................................13 Aplicaciones similares ............................................................................................14 3. Requisitos del proyecto .................................................................................................24 Planificación del proyecto .......................................................................................24 3.1.1 Estimación de tiempo ......................................................................................24 3.1.2 Estimación de costes ......................................................................................25 Análisis...................................................................................................................28 3.2.1 Modelo en cascada .........................................................................................28 3.2.2 Requisitos funcionales ....................................................................................29 3.2.3 Requisitos no funcionales ...............................................................................31 3.2.4 Casos de uso ..................................................................................................31 Diseño ....................................................................................................................44 3.3.1 Metáforas ........................................................................................................44 3.3.2 Storyboard ......................................................................................................50 3.3.3 Modelado de datos. .........................................................................................56 4. Tecnologias ...................................................................................................................59 Aplicaciones nativas ...............................................................................................59 Aplicaciones web ...................................................................................................60 Aplicaciones hibridas ..............................................................................................61 Marco tecnológico ..................................................................................................62 4.4.1 Angular ...........................................................................................................63 4.4.2 Firebase ..........................................................................................................66 4.4.3 Cordova ..........................................................................................................67 4.4.4 Justificación de las tecnologías utilizadas .......................................................68 5. Implementación .............................................................................................................70 Estructura de Proyecto ...........................................................................................70 Implementación con Cordova. ................................................................................75 Firebase .................................................................................................................77 6. Pruebas de validación y usabilidad ...............................................................................80 Jose Conejo Anguita UJA GYM 3 Escuela Politécnica Superior de Jaén Validación ..............................................................................................................80 Usabilidad ..............................................................................................................83 7 Conclusiones .................................................................................................................86 Mejoras y trabajo futuro ..........................................................................................87 Referencias ..........................................................................................................................88 Anexo I: Guía de instalación .................................................................................................90 Instalación de Node .......................................................................................................90 Instalación de Cordova ..................................................................................................91 Instalación de Angular ...................................................................................................92 Android Studio ...............................................................................................................92 Compilación del proyecto ..............................................................................................93 Anexo II: Manual de usuario .................................................................................................98 Jose Conejo Anguita UJA GYM 4 Escuela Politécnica Superior de Jaén Tabla 1 Comparativa de aplicaciones de gestión de entrenamientos en gimnasios ..............21 Tabla 2 Estimación de tiempos .............................................................................................25 Tabla 3: Estimación de costes: Recursos Humanos .............................................................26 Tabla 4 Estimación de costes: Software y Hardware ............................................................27 Tabla 5 Estimación de costes: Otros gastos .........................................................................28 Tabla 6: Descripción caso de uso dar de alta Entrenador .....................................................32 Tabla 7: Descripción caso de uso Login ...............................................................................33 Tabla 8: Descripción caso de uso consultar datos usuario ...................................................33 Tabla9 Descripción caso de uso Registrarse .......................................................................35 Tabla 10: Descripción caso de uso Login .............................................................................35 Tabla 11: Descripción caso de uso Gestionar rutina .............................................................36 Tabla 12: Descripción caso de uso Crear rutina ...................................................................36 Tabla 13: Descripción caso de uso Modificar rutina ..............................................................37 Tabla 14: Descripción caso de uso Eliminar rutina ...............................................................37 Tabla 15: Descripción caso de uso Marcar principal .............................................................38 Tabla 16: Descripción caso de uso Añadir ejercicio ..............................................................38 Tabla 17: Descripción caso de uso Ver historial ...................................................................39 Tabla 18: Descripción caso de uso Ver progreso peso .........................................................39 Tabla 19: Descripción caso de uso Añadir meta ...................................................................40 Tabla 20: Descripción caso de uso Añadir peso ...................................................................40 Tabla 21: Descripción caso de uso Gestionar ejercicios .......................................................40 Tabla 22: Descripción caso de uso Crear ejercicio ...............................................................41 Tabla 23: Descripción caso de uso Modificar ejercicio .........................................................41 Tabla 24: Descripción caso de uso Eliminar ejercicio ...........................................................42 Tabla 25: Descripción caso de uso Consultar progreso ........................................................42 Tabla 26: Descripción caso de uso Ejecutar rutina ...............................................................43 Tabla 27: Ventajas y desventajas de las aplicaciones nativas ..............................................60 Tabla 28: Ventajas y desventajas de las aplicaciones web ...................................................61 Tabla 29: Ventajas y desventajas de las aplicación hibridas ................................................62 Jose Conejo Anguita UJA GYM 5 Escuela Politécnica Superior de Jaén 2 Índice de ilustraciones Ilustración 1: Día de entrenamiento ......................................................................................15 Ilustración 2: Filtrado de ejercicio .........................................................................................15 Ilustración 3: Historial ...........................................................................................................16 Ilustración 4: Añadir carga y repetición .................................................................................16 Ilustración 5: Filtrado Ejercicios ............................................................................................17 Ilustración 6: Mediciones de Cuerpo.....................................................................................17 Ilustración 7: Historial ...........................................................................................................17 Ilustración 8: : Día de entrenamiento ....................................................................................17 Ilustración 9: Menú ...............................................................................................................18 Ilustración 10: Rutinas Predefinidas .....................................................................................18 Ilustración 11: Nutrición ........................................................................................................19 Ilustración 12:Herramientas ..................................................................................................19 Ilustración 13: Menú .............................................................................................................20 Ilustración 14:Filtro ejercicios ...............................................................................................20 Ilustración 15: Nutrición ........................................................................................................20 Ilustración 16: Planificación de tiempo ..................................................................................25 Ilustración 17: Modelo en cascada .......................................................................................29 Ilustración 18: Figuras Caso de uso .....................................................................................31 Ilustración 19: Caso de uso Administrador ...........................................................................32 Ilustración 20: Caso de uso Entrenador ................................................................................32 Ilustración 21: Caso de uso Usuario .....................................................................................34 Ilustración 22: Color 2 ..........................................................................................................44 Ilustración 23: Color 1 ..........................................................................................................44 Ilustración 24: Metáfora Menú ..............................................................................................45 Ilustración 25: Metáfora Add .................................................................................................45 Ilustración 26: Metáfora Eliminar ..........................................................................................45 Ilustración 27: Metáfora Cancelar .........................................................................................46 Ilustración 28: Metáfora Papelera .........................................................................................46 Ilustración 29: Metáfora Guardar ..........................................................................................46 Ilustración 30: Metáfora Editar ..............................................................................................47 Ilustración 31: Metáfora Marcar como principal ....................................................................47 Ilustración 32: Metáfora Información .....................................................................................47 Ilustración 33: Metáfora Superserie ......................................................................................47 Ilustración 34: Metáfora Peso ...............................................................................................48 Ilustración 35: Metáfora Meta ...............................................................................................48 Ilustración 36: Músculo Abdomen .........................................................................................48 Ilustración 37: Músculo Bíceps .............................................................................................48 Ilustración 38: Músculo Espalda ...........................................................................................48 Ilustración 39: Músculo Hombro ...........................................................................................49 Ilustración 40: Músculo Oblicuos ..........................................................................................49 Ilustración 41: Músculo Pecho ..............................................................................................49 Ilustración 42: Músculo Tríceps ............................................................................................49 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270897file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270898 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270899 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270900 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270901 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270902 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270903 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270904 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270905 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270906 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270907 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270908 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270909 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270910 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270911 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270912 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270913 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270914 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270915 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270916 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270917 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270918 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270919 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270928 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270932 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270933 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270934 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270935 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270936 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270937 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270938 Jose Conejo Anguita UJA GYM 6 Escuela Politécnica Superior de Jaén Ilustración 43: Músculo Pierna Inferiores ..............................................................................49 Ilustración 44: Músculo Piernas Superiores ..........................................................................49 Ilustración 45: Cardio Elíptica ...............................................................................................49 Ilustración 46: Cardio Bicicleta .............................................................................................49 Ilustración 47: Cardio Cinta de Correr ..................................................................................49 Ilustración 48: Vista Cambio Contraseña ..............................................................................51 Ilustración 49: Vista Login ....................................................................................................51 Ilustración 50: Vista Menú ....................................................................................................51 Ilustración 51: Vista Registro ................................................................................................51 Ilustración 52:Vista Principal ................................................................................................52 Ilustración 53:Vista Mis Rutinas ............................................................................................52 Ilustración 54: Vista Historial ................................................................................................52 Ilustración 55: Vista Ejercicios ..............................................................................................52 Ilustración 56 Vista Peso-1 ...................................................................................................53 Ilustración 57: Vista Peso .....................................................................................................53 Ilustración 58: Vista Editar Meta ...........................................................................................53 Ilustración 59: Vista Añadir Peso ..........................................................................................53 Ilustración 60: Vista Nueva Rutina ........................................................................................54 Ilustración 61: Vista Consultar Progreso ...............................................................................54 Ilustración 62: Vista Ejecución Día .......................................................................................54 Ilustración 63:Vista Día Entrenamiento .................................................................................54 Ilustración 64:Vista Editar/Crear Rutina ................................................................................55 Ilustración 65 : Vista Consultar Rutina ..................................................................................55 Ilustración 66: Vista Añadir Ejercicio Rutina .........................................................................55 Ilustración 67: Vista Entrenador ............................................................................................56 Ilustración 68: Modelo de datos ............................................................................................56 Ilustración 69: Plataformas móviles y sus lenguajes de programación .................................59 Ilustración 70:Comparativa del tipo de aplicaciones móviles ................................................61 Ilustración 71: Logo Angular .................................................................................................63 Ilustración 72: Arquitectura Angular ......................................................................................63 Ilustración 73 : Logo Firebase ..............................................................................................66 Ilustración 74: Logo Cordova ................................................................................................67 Ilustración 75: Estructura del proyecto ..................................................................................70 Ilustración 76: Componente ..................................................................................................72 Ilustración 77: Servicios ........................................................................................................72 Ilustración 78: App ................................................................................................................73 Ilustración 79: App.guard ......................................................................................................73 Ilustración 80: App-routing.module .......................................................................................74 Ilustración 81: App.component.html......................................................................................74 Ilustración 82: Package.json-Parte 1 ....................................................................................75 Ilustración 83: Package.json-Parte 2 ....................................................................................76 Ilustración 84: Angular.json ..................................................................................................76 Ilustración 85: Reglas Firebase ............................................................................................77 Ilustración 86:Código conexión Firebase ..............................................................................78 Ilustración 87: Conexión Angular con Firebase ....................................................................78 Ilustración 88: Comprobación Login .....................................................................................80 Ilustración 89: Fallo creación rutina ......................................................................................81 Ilustración 90: Eliminación Rutina .........................................................................................82 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270939 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270940file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270941 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270942 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270943 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270944 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270945 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270946 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270947 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270948 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270949 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270950 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270951 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270952 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270953 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270954 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270955 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270956 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270957 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270958 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270959 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270960 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270961 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270962 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270964 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270965 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270967 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270968 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270970 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270971 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270972 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270973 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270974 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270975 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270976 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270977 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270978 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270979 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270980 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270981 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270982 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270983 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270984 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270985 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270986 Jose Conejo Anguita UJA GYM 7 Escuela Politécnica Superior de Jaén Ilustración 91: Eliminación Ejercicios ....................................................................................82 Ilustración 92: Preguntas Usabilidad ....................................................................................83 Ilustración 93: Respuestas Usabilidad ..................................................................................84 Ilustración 94: Logo Node .....................................................................................................90 Ilustración 95: Instalación Node ............................................................................................90 Ilustración 96: Logo Cordova ................................................................................................91 Ilustración 97: Instalación Cordova .......................................................................................91 Ilustración 98 :Logo Angular .................................................................................................92 Ilustración 99: Logo Android Studio ......................................................................................92 Ilustración 100: Ruta del proyecto ........................................................................................93 Ilustración 101: Generar Apk ................................................................................................93 Ilustración 102: Abrir proyecto Android .................................................................................94 Ilustración 103: Abrir AndroidManifest.xml ............................................................................94 Ilustración 104: Insertar línea ...............................................................................................95 Ilustración 105: Generar APK con Android Studio ................................................................96 Ilustración 106: Generación de APK .....................................................................................96 Ilustración 107: Cambio Contraseña.....................................................................................98 Ilustración 108: Login ...........................................................................................................98 Ilustración 109: Registro .......................................................................................................98 Ilustración 110: Ejercicios .....................................................................................................99 Ilustración 111: Mis rutinas ...................................................................................................99 Ilustración 112: Rutina Actual ...............................................................................................99 Ilustración 113: Menú ...........................................................................................................99 Ilustración 114: Historial .......................................................................................................99 Ilustración 115: Peso ............................................................................................................99 Ilustración 116: Ejecución Superserie ...................................................................................99 Ilustración 117: Ejecutar Día Rutina .....................................................................................99 Ilustración 118: Ver Rutina ...................................................................................................99 Ilustración 119: Nueva Rutina...............................................................................................99 Ilustración 120: Mostrar Historial Carga ................................................................................99 Ilustración 121: Crear/Modificar Rutina .................................................................................99 Ilustración 122: Historial parte 2 ...........................................................................................99 Ilustración 123: Ver Ejercicio ................................................................................................99 Ilustración 124:Crear Ejercicio ..............................................................................................99 Ilustración 125: Añadir Ejercicio Rutina ................................................................................99 Ilustración 126: Modificar Meta .............................................................................................99 Ilustración 127: Añadir peso .................................................................................................99 Ilustración 128: Peso botón más ..........................................................................................99 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270987 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270989 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270990 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270991 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270992 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270994 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270995 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270996 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46270998file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46271003 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46271004 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46271005 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46271006 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46271007 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46271008 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46271009 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46271010 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46271011 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46271012 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46271013 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46271014 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46271015 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46271016 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46271017 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46271018 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46271019 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46271020 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46271021 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46271022 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46271023 file:///D:/conej/Documents/TFG/doc/TFG.docx%23_Toc46271024 Jose Conejo Anguita UJA GYM 8 Escuela Politécnica Superior de Jaén Capitulo 1: Introducción Jose Conejo Anguita UJA GYM 9 Escuela Politécnica Superior de Jaén 1. Introducción En este capítulo se introduce el tema de este Trabajo Fin de Grado, así como la motivación por la que se va a desarrollar el proyecto, los objetivos y la estructura de la memoria. 1.1. Aspectos generales y motivación En un gimnasio el funcionamiento más habitual es aquel en el que entrenador te suele dar una rutina de entrenamiento adaptada a tus necesidades y tus restricciones, si tienes alguna lesión o algún problema médico, la rutina que te suele dar el entrenador suele tener una duración en semanas y suele estas dividida en los días que la persona va a ir a entrenar. Este proyecto surge por la necesidad de poder gestionar tus propias rutinas del gimnasio sin necesidad de papel adaptándolo a las nuevas tecnologías. Existen actualmente multitud de aplicaciones donde podemos encontrar aplicaciones específicas, pero viendo que la gente que suele ir al gimnasio la mayoría de ellos no suele utilizar este tipo de aplicaciones, suelen estar con sus rutinas a papel o consultándola mediante una foto desde el móvil. Esto me llego a preguntarme porqué, yo como usuario que consultaba la rutina mediante una foto empecé a investigar las aplicaciones que había y llegue a probar varias de ellas, el problema que encontré fue que muchas de ellas no permitían trasladar una rutina creada por un entrenador a la aplicación, porque se basaban en ejercicios ya propuestos muchos de estos problemas lo comentare en el Capítulo 2. Por este motivo surgió la idea de este proyecto. 1.2. Proposito del proyecto El objetivo principal del proyecto es implementar una aplicación hibrida para que los usuarios puedan llevar la gestión de sus rutinas en el móvil. Una aplicación que se centre que cualquier usuario pueda traspasar sus rutinas a la apelación y tenerlas para consultarlas en cualquier momento, que sea simple de Jose Conejo Anguita UJA GYM 10 Escuela Politécnica Superior de Jaén utilizar e incluso si un entrenador te proporciona una rutina puedas de forma simple traspasarla a la aplicación. Que puedas meter cualquier tipo de ejercicio sin restricciones, poder llevar un progreso de evaluación, anotar la carga utilizada en cada ejercicio como si fuere su diario de entrenamiento. Proporcionar una parte administrador para el entrenador y que pueda ver la evolución y el seguimiento de los entrenamientos realizados por el usuario. 1.3. Objetivos Los objetivos detallados a seguir para completar el proyecto son los siguientes: 1. Planificación del desarrollo del prototipo de la aplicación 2. Estudio de las distintas plataformas programables 3. Diseño de la estructura de la aplicación 4. Desarrollo de la aplicación 5. Pruebas de validación y usabilidad 6. Redactar la memoria del proyecto 7. Redactar manual de la aplicación 1.4. Estructura del proyecto La estructura de esta memoria está dividida en seis capítulos. A lo largo de estos se describirá el proceso de realización del proyecto, detallado desde la concepción de la idea hasta la finalización de este. Capítulo 1: Introducción En el primer capítulo como hemos visto sirve de introducción del proyecto que se quiere realizar, se definen los objetivos y la estructura del proyecto en la que trabajaremos a lo largo del proyecto Jose Conejo Anguita UJA GYM 11 Escuela Politécnica Superior de Jaén Capítulo 2: Estudio Previo Este capítulo está dedicado a la investigación previa realizada antes de comenzar el desarrollo e implementación de la aplicación. Se describe conceptos básicos para llegar a comprender el funcionamiento del proyecto. Capítulo 3: Requisitos del proyecto En este apartado veremos la estructura que tendrá el proyecto, tanto la planificación del tiempo y coste, el análisis con los requisitos y casos de uso de la aplicación y diseño, sin tener en cuenta las tecnologías a utilizar. Capítulo 4: Tecnologías usadas. En esta sección veremos una descripción detallada de las distintas tecnologías que existen para desarrollar este tipo de aplicaciones y que tecnologías se utilizaran para desarrollar el proyecto. Capítulo 5: Implementación En esta parte está dedicada a la descripción de la implementación del código de la aplicación Capítulo 6: Pruebas de validación y usabilidad En este apartado veremos las pruebas de validación de validación y usabilidad del proyecto. Capítulo 7: Conclusión En este último apartado veremos las conclusiones finales sobre el proyecto y las distintas opciones de mejora que podríamos realizar en el futuro Jose Conejo Anguita UJA GYM 12 Escuela Politécnica Superior de Jaén Capítulo 2: Estudio previo Jose Conejo Anguita UJA GYM 13 Escuela Politécnica Superior de Jaén 2. Estudio previo Como se ha comentado en la introducción, el propósito principal de este TFG es implementar una aplicación hibrida para que los usuarios puedan llevar la gestión de sus rutinas en el móvil y para ello necesitamos conocer algunos conceptos antes de analizar las aplicaciones existentes de este tipo. Conceptos básicos Rutina Una rutina es una costumbre o habito que adquiere al repetir una misma tarea o actividad muchas veces. En el ámbito del fitness, se habla de rutina de ejercicios físicos [1]. Una rutina de ejercicios está compuesta por ejercicios compuesto por serie y repeticiones. Las repeticiones definen el número de veces en que trabajamos en contra de una carga al realizar un ejercicio, por ejemplo, haces 12 movimientos de Extensión de cuádriceps, esos 12 movimientos que se realiza se denominan 12 repeticiones de Extensión de cuádriceps [2]. Las series se refiere a cuantas veces repetirás un ejercicio determinado por el número de repeticiones, por ejemplo, hemos realizado 12 repeticiones de Extensión de cuádriceps y después hemos descansado 30 segundos, tras ello, realzamos otras 12 repeticiones más. A esa secuencia se le llama, realizar 2 series de 12 repeticiones. En conclusión, las series son los bloques de repeticiones que realizas separadas por un periodo de descanso [2]. Hay varios tipos de superseries, que se describen a continuación [3]. Superseries: Incluye la realización de 2 ejercicios distintos sin descanso. Tras la serie, se hará un descanso y se volverá a repetir la siguiente serie. Este tipo de series permite trabajar un musculo mientras el otro descansa. Piramidales: Pueden ser ascendentes o descendientes. En las primerasla idea es ir reduciendo el número de repeticiones y aumento del peso a Jose Conejo Anguita UJA GYM 14 Escuela Politécnica Superior de Jaén utilizar en la máquina/ejercicio. En el caso de la pirámide descendente sucede justo lo contrario: se empieza por menos repeticiones y más peso y se va aumentando repeticiones y reduciendo peso en cada serie. Biseries y triseries: Se trata de encadenar una secuencia de diferentes ejercicios que trabaje el mismo grupo muscula y sin descanso entre ellos. Si se realizan 2 ejercicios seguidos hablamos de biserie y si son 3, triseries. Diario de entrenamiento Un diario de entrenamiento se podría decir que es un documento escrito a papel o en formato digital que sirve como instrumento de registro de la actividad diaria de un deportista Un diario de entrenamiento puede ayudar a registrar algunas de las variables más importantes como la selección de ejercicios, cantidad de series y repeticiones por sesión o por semana, peso utilizado, duración del entrenamiento, pérdida de peso, etc. De esta forma no solo se puede medir el progreso sino también identificar lo que te funciona y lo que no o incluso en el peor de los casos detectar que cambio realizaste en el entrenamiento que pudo haber provocado una lesión [4]. Aplicaciones similares En esta parte analizaremos las diferentes aplicaciones existentes que hay en el mercado para este tipo de proyectos. Se han desarrollado aplicaciones móviles que van desde mostrar la mayor cantidad de ejercicios posibles para cada uno de los grupos musculares, hasta la utilización de sensores que permiten ir tomando el ritmo cardiaco de la persona. Gym Wp [5] Gym Wp es una de las aplicaciones más completas que he visto, a la hora de añadir algún ejercicio predeterminado puedes filtrar por musculo, puedes también crear tus propios ejercicios, puede añadir la carga cuando estas realizando la rutina, una vez realizado el entrenamiento se guarda, para tener un seguimiento de los días Jose Conejo Anguita UJA GYM 15 Escuela Politécnica Superior de Jaén que ha entrenado, pero para acceder a muchas de estas cosas está limitada si no paga. La aplicación es muy completa pero no me ha terminado de agradar porque muchos ejercicios que tenía en mi rutina no están en la base de datos y he tenido que crearlos y no es muy intuitiva para crear ejercicios es compleja en ese sentido y la otra pega que le he encontrado ha sido que no puede marcar varios ejercicios como una superserie. Ilustración 2: Filtrado de ejercicio Ilustración 1: Día de entrenamiento Jose Conejo Anguita UJA GYM 16 Escuela Politécnica Superior de Jaén GymRun [6] GymRun es una aplicación que tiene por defecto unas rutinas ya predefinidas para un principiante, los ejercicios los tiene divididos por musculo, uno de los puntos fuertes de esta aplicación que tiene un apartado para ir guardando progresivamente las mediciones del cuerpo e incluso si tiene la versión premium puede hacer un fotolibro que es cada cierto tiempo añadir una foto para ver el progreso. Esta aplicación como la anterior no se puede añadir varios ejercicios en una superserie, también al realizar el entrenamiento lo guarda para tener un progreso, pero son funciones de pago. Ilustración 4: Añadir carga y repetición Ilustración 3: Historial Jose Conejo Anguita UJA GYM 17 Escuela Politécnica Superior de Jaén Ilustración 6: Mediciones de Cuerpo Ilustración 5: Filtrado Ejercicios Ilustración 8: : Día de entrenamiento Ilustración 7: Historial Jose Conejo Anguita UJA GYM 18 Escuela Politécnica Superior de Jaén GYM Generation [7] GYM Generation es una aplicación que se centra más en guiar a la persona a realizar los ejercicios de forma correcta, o proporcionándole herramientas para hacer algunos cálculos, ofrece una guía de rutinas predefinidas. En esta aplicación no puedes crear rutinas ni ejercicios propios. También tiene un gran apartado de nutrición que es el punto fuerte de esta aplicación. Ilustración 10: Rutinas Predefinidas Ilustración 9: Menú Jose Conejo Anguita UJA GYM 19 Escuela Politécnica Superior de Jaén Gym Fitness Workout [8] Gym Fitness Workout es una aplicación muy parecida a las anteriores. Proporciona unas rutinas, ejercicios predefinidos puedes crear desde cero una rutina, pero no puede añadir ejercicios nuevos. Como todas las anteriores no deja añadir varios ejercicios como en superserie y tampoco tiene historial de entrenamiento. Contiene un apartado de nutrición y es una aplicación más completa uniendo el apartado de entrenamiento y nutrición, aunque le faltaría el poder añadir ejercicios propios e incluso un apartado para ver el progreso diario. Ilustración 12:Herramientas Ilustración 11: Nutrición Jose Conejo Anguita UJA GYM 20 Escuela Politécnica Superior de Jaén Varias de estas aplicaciones ofrecen rutinas ya predefinidas dependiendo de los datos ingresados como el peso, altura, sexo y si has practicado deporte o llevas una vida sedentaria y a partir de esos datos te suelen generar una rutina adaptada o te muestran rutinas predefinidas por ellos. También la mayoría de estas aplicaciones tienen un problema. Si quieres poder crear tu propia rutina te tienes que basar en los ejercicios que tienen predefinidos y no puedes crear ejercicios propios e incluso tienen servicios extras, por los cuales hay que pagar un costo adicional y aun así no suelen centrarse en el usuario. Ilustración 13: Menú Ilustración 15: Nutrición Ilustración 14:Filtro ejercicios Jose Conejo Anguita UJA GYM 21 Escuela Politécnica Superior de Jaén Otras, solo ofrecen rutinas predefinidas, sin tener en cuenta los elementos que pueda tener un usuario en dicho lugar ni las restricciones medicas del individuo y puede llegar a lesionarse. En la siguiente tabla (Tabla 1 Comparativa) mostramos una comparativas con las distintas aplicaciones analizadas. Criterio Gym Wp [5] GymRun [6] Gym Generation [7] Gym Fitness Workout [8] Muestra ejercicios por musculo Si Si Si Si ¿Tiene rutinas predefinidas? Si Si Si Si ¿Lleva historial de entrenamiento? Si No No No ¿Puedes añadir superseries? No No No No ¿Puedes personalizar tu propia rutina? Si Si No Si ¿Puedes añadir tus propias ejercicios? Si Si No No ¿Es intuitiva? No Si Si Si ¿Es gratis? Limitado Limitado Limitado Limitado Tabla 1 Comparativa de aplicaciones de gestión de entrenamientos en gimnasios Mi proyecto de aplicación es centrarme en el usuario y que pueda trasladar cualquier tipo de rutina echa por un entrenador o por el mismo a la aplicación, que pueda consultar la rutina, en cualquier momento. Una aplicación simple, intuitiva fácil de utilizar. Debe cumplir algunas características, como por ejemplo que el usuario tenga la posibilidad de poder tener un seguimiento de los entrenamientos realizados, un seguimiento de la evolución del peso corporal, que pueda crear cualquier tipo de rutina e incluso añadir ejercicios personalizados dependiendo del tipo de musculo a ejercitar Jose Conejo Anguita UJA GYM 22 Escuela Politécnica Superior de Jaén e incluso a la hora de iniciar un entrenamiento tengas la opción de insertar la carga de ese ejercicio y repeticiones guardándolo para posibles consultar y tener un seguimiento de las carga utilizadas en días anteriores que haya ejecutado ese ejercicio. También es deseable proporcionar una parte administrador para el entrenador y que pueda ver la evolución y seguimiento de los entrenamientos realizados por el usuario en el último mes. Jose Conejo Anguita UJA GYM 23 Escuela Politécnica Superior de Jaén Capítulo3 Requisitos del proyecto Jose Conejo Anguita UJA GYM 24 Escuela Politécnica Superior de Jaén 3. Requisitos del proyecto En este apartado hablaremos de la planificación del proyecto que es una de las etapas más importantes, a la hora de realizar el proyecto dado que marcará la orientación que debe seguir en el desarrollo del proyecto, tanto la planificación del tiempo y coste, el análisis con los requisitos y casos de uso y el diseño de la aplicación. Planificación del proyecto La planificación consiste en la división del proyecto en diversas tareas, a las que se les asignan recursos, como son el tiempo y dinero. Para ello se va a dividir el proceso de planificación en la estimación de tiempo y estimación de coste. 3.1.1 Estimación de tiempo Las tareas que se tienen que desarrollar para alcanzar el objetivo principal son las siguientes. 1. Búsqueda de información 2. Estudio de aplicaciones similares 3. Estudio de las tecnologías disponibles 4. Análisis 5. Diseño 6. Implementación 7. Pruebas 8. Redacción de la memoria 9. Redacción de manual usuario Una vez desglosado las tareas a realizar durante el proyecto, el siguiente paso será determinar el tiempo que va a llevar ejecutar cada una de ellas. En la siguiente tabla (Tabla 2. Estimación de Tiempos) se muestra la estimación temporal de cada tarea. Jose Conejo Anguita UJA GYM 25 Escuela Politécnica Superior de Jaén El tiempo estimado que se ha tenido en cuenta ha sido de un trabajo diario de 5 horas. Nombre de la tarea Estimación temporal Búsqueda de información 9 días Estudio de aplicaciones similares 6 días Estudio tecnologías disponibles 16 días Análisis 6 días Diseño 6 días Implementación 35 días Pruebas 10 días Redacción de la memoria 20 días Redacción del manual de usuario 4 días Tabla 2 Estimación de tiempos En la siguiente ilustración (Ilustración 16) se muestra el diagrama de Gantt que es una herramienta para planificar y programar tareas o actividades en un periodo de tiempo determinado. Como se puede observar, la planificación total de horas es de 470, desde el inicio previsto el día 14 de enero de 2020 hasta el día 21 de mayo de 2020. 3.1.2 Estimación de costes En esta sección se va a detallar los recursos que van a ser necesarios para poder llevar a cabo el proyecto, acompañados de una estimación de sus costes, como recursos humanos, software y hardware para poder desarrollar el proyecto Ilustración 16: Planificación de tiempo Jose Conejo Anguita UJA GYM 26 Escuela Politécnica Superior de Jaén El coste de los recursos humanos se va a calcular en base al precio por hora y la cantidad de horas en las que se trabajara en el proyecto. El salario ha sido consultado en la página de LinkedIn1. El precio por hora se ha estimado con un salario anual bruto de 18.000€, dando un total de 1500€ brutos al mes. Teniendo en cuenta una jornada de trabajo de 40 horas a la semana, y 160 horas al mes, el precio por hora es de 10€/h brutos. El cálculo anterior se ha realizado siguiendo los pasos consultados en la siguiente página2. En la tabla siguiente (Tabla 3. Estimación de costes: Recursos Humanos) se expresa por diferentes tareas el cómputo total de horas, recordando que cada día supone una jornada laboral de 5 horas. Tareas Horas Coste Búsqueda de información 35 horas 350 € Estudio aplicaciones similares 30 horas 300 € Estudio de tecnologías disponibles 80 horas 800 € Análisis 30 horas 300 € Diseño 30 horas 300 € Implementación 175 horas 1750 € Pruebas 50 horas 500 € Redacción de memoria 50 horas 500 € Redacción del manual 20 horas 200 € Total 470 horas 4.700€ Tabla 3: Estimación de costes: Recursos Humanos El coste de recursos humanos para el proyecto será de 4.700€ 1 LinkedIn https://www.linkedin.com/salary/explorer?countryCode=xx&geoId=105646813&industryGroupCode=8 &maxYearsExperience=0&minYearsExperience=0&titleId=9 2 https://www.iberley.es/practicos/caso-practico-calculo-valor-hora-ordinaria-trabajo-7191 https://www.linkedin.com/salary/explorer?countryCode=xx&geoId=105646813&industryGroupCode=8&maxYearsExperience=0&minYearsExperience=0&titleId=9 https://www.linkedin.com/salary/explorer?countryCode=xx&geoId=105646813&industryGroupCode=8&maxYearsExperience=0&minYearsExperience=0&titleId=9 https://www.iberley.es/practicos/caso-practico-calculo-valor-hora-ordinaria-trabajo-7191 Jose Conejo Anguita UJA GYM 27 Escuela Politécnica Superior de Jaén Hay que añadir los costes derivados del hardware y software utilizados para el proyecto [9]. El coste de las licencias utilizadas que solo tendremos que añadir la licencia de Windows 10, porque todos los IDEs de programación y el framework que se van a utilizar son de licencias gratuitas. Teniendo en cuenta que un producto software tiene un periodo de amortización de 6 años (72 meses) y que el periodo de amortización de hardware es de 8 años (96 meses), podemos calcular el coste del software los meses que va a ser usado en el proyecto. Software Licencia Coste Software Coste amortizado Windows 10 Pro 230€ 12,78€ Hardware Tipo Modelo Coste hardware Coste amortizado Procesador AMD Ryzen 5 2600 3.4Ghz 139,90€ 5,83€ Placa base Gygabite B450M DS3H 72,99€ 3,04€ Memoria RAM Corsair DDR4 3000 2x8GB CL15 90€ 3,75€ Ventilador CPU Cooler Master Hyper 212 Led Turbo 41,99€ 1,74€ Disco duro WD Blue 3D Nand SSD 1 TB 123€ 5,13€ Caja Owlotech StarCase 29.98€ 1,25€ Fuente alimentación Corsair CV Series CV650 6650W 80 Plus 64€ 2,66€ Tarjeta grafica MSI GTX 1050 Ti 4GB GDDR5 142,90€ 5,95€ Monitor Samsung LS24D332HSO 24” 99,99€ 4,16€ Teclado y Ratón L-Link Kit Tecaldo y Raton 5,99€ 0,25€ Adaptador Wifi Asus PCE-AC51 Adaptador Inalámbrico PCI-e AC750 27,99€ 1,16€ Total 1.068,73 € 47,70€ Tabla 4 Estimación de costes: Software y Hardware Jose Conejo Anguita UJA GYM 28 Escuela Politécnica Superior de Jaén La estimación del coste del software y hardware necesario para desarrollar el proyecto, teniendo en cuenta la planificación temporal que indica el proyecto se va a desarrollar aproximadamente en 4 meses, es de 47,70€. Gasto Coste Alta conexión Vodafone 0€ Conexión Vodafone 5 meses 204,95€ Luz 35 € Total 239.95€ Tabla 5 Estimación de costes: Otros gastos En resumen, después de detallar todos los recursos necesarios el proyecto podemos obtener una estimación del presupuesto de un total de: 4.987,65 €. Análisis A partir de aquí comienza la parte técnica del proyecto, que debe estar compuesto por cuatro fases principales, el análisis, diseño, implementación y prueba del producto. Esta parte está dedicada al análisis del problema, desde un punto conceptual sin pensar en las posibles soluciones de desarrollo o como el uso de tecnologías. El análisis de requisitos trata de capturar y describir detalladamente los requerimientos de funcionalidad y de calidad del servicio que se desarrolla para poder resolver algún problema. 3.2.1 Modelo en cascada La metodología a seguir en este proyecto es el modelo en cascada, que es un proceso de desarrollo secuencial, en el que el desarrollo de software se concibe como un conjunto de etapas que se ejecutan una tras otra. Se le denomina así por las posiciones que ocupan las diferentes fases que componen el proyecto, colocadas una encima de otra, y siguiendo un flujo de ejecución de arriba hacia abajo, como una cascada [10]. El modelo en cascada se divide en las siguientes etapas: Jose Conejo Anguita UJA GYM 29 Escuela Politécnica Superior de Jaén Comunicación: En esta fase se inicializa el proyecto para determinar los requisitos, y se especifica todo lo que debe hacer el sistema sin entrar en detalles técnicos. Planificación: En esta fase se hacela estimación del tiempo y costes del proyecto. Modelado: En esta fase se lleva a cabo el análisis y diseño de nuestro proyecto. Construcción: En esta fase se lleva a cabo la implementación del código y las pruebas. Despliegue: Es la fase de instalación y mantenimiento. Este método sigue siendo aplicado a proyectos con metas y requisitos claros cuando el proyecto no es muy grande. 3.2.2 Requisitos funcionales Definen las funcionalidades del sistema, de la manera en que este debe reaccionar a entradas particulares y de cómo se debe comportar en situaciones particulares. En algunos casos, los requerimientos funcionales de los sistemas pueden declarar explícitamente lo que el sistema no debe hacer [11]. Ilustración 17: Modelo en cascada Jose Conejo Anguita UJA GYM 30 Escuela Politécnica Superior de Jaén El usuario podrá registrarse y loguearse en la aplicación. Podrá registrar su rutina que las características principales estará compuesta por el nombre, duración en semanas y los días de entrenamiento que el usuario entrenará a la semana. El usuario podrá añadir a esos días de entrenamiento los ejercicios que desee realizar en ese día especifico, creando nuevos ejercicios o escogiendo los ejercicios que ya tenga creados. El ejercicio que inserta en la rutina está compuesto por un nombre que el usuario introducirá, el tipo de musculo a ejercitar, el número de series y repeticiones a realizar, con una descripción que el usuario pueda meter para saber poder saber cómo se realiza el ejercicio. Evitar la duplicidad de campos mediante un botón de acción que tendrá en cuenta que al introducir las repeticiones del ejercicio puede ser que se repita la misma repetición por serie. El usuario mientras este añadiendo los ejercicios podrá poner, que varios ejercicios se tengan que ejecutar en superserie. Una vez terminado de crear la rutina se guardará como rutina principal hasta el momento que la cambie. El usuario a la hora de hacer su entrenamiento podrá ir introduciendo los pesos utilizados en los ejercicios por cada serie. Si el usuario en una nueva rutina mete un ejercicio que ya ha sido añadido anteriormente cuando entrene podrá consultar los pesos añadidos anteriormente. El usuario tendrá un apartado que podrá ver las rutinas creadas por él y podrá añadir nuevas rutinas. El usuario una vez finalizado el entrenamiento se guardará en el historial de entrenamiento con la duración que ha tardado en realizarlo. El usuario podrá añadir manualmente le ejecución de un día de entrenamiento. También tendrá un apartado para poder llevar la evolución del peso corporal, pudiendo añadir una meta para alcanzar. Jose Conejo Anguita UJA GYM 31 Escuela Politécnica Superior de Jaén Además, tendrá un apartado donde podrá ver todos los ejercicios que tiene guardado y podrá añadir más. El usuario podrá eliminar y modificar los ejercicios y rutinas creados. 3.2.3 Requisitos no funcionales Son restricciones de los servicios, pueden incluir restricciones de tiempo, estándares. Tienen que ver con las características que de una u otra forma puedan limitar el sistema. Describen una restricción sobre el sistema que limita nuestra elección en la construcción de una solución [11]. La interfaz de la aplicación tiene que ser sencilla de utilizar para los usuarios. La aplicación se deberá de ajustar correctamente a cualquier resolución de móvil con la que se acceda a ella. La aplicación debe de ir fluida y no tardar mucho en la transición de vistas. El usuario debe disponer de un dispositivo móvil con Android 10. 3.2.4 Casos de uso Un tipo excelente de modelo para captar el análisis es el diagrama de casos de uso. La finalidad de un caso de uso es describir la manera en que se usará un sistema y describir sus funcionalidades esenciales. La finalidad de los diagramas de casos de uso es captar en forma visual las funcionalidades esenciales. Los diagramas de casos de uso constan de figuras (actor), líneas (conectores) y óvalos (casos de uso). Los actores representan los diferentes perfiles de usuario que actúa sobre el sistema. En el desarrollo de software, los actores son personas u otro software que actúa sobre el sistema [12]. Ilustración 18: Figuras Caso de uso Jose Conejo Anguita UJA GYM 32 Escuela Politécnica Superior de Jaén En nuestro caso tenemos 3 actores Administrador: Encargado de gestionar las altas de entrenadores en nuestra base de datos. Entrenador: Podrá consultar los datos de sus usuarios. Usuario final: Podrá añadir, eliminar y modificar sus datos Descripción de caso de uso es una operación o tarea específica que se realiza tras una orden o algún agente externo, sea desde una petición de un actor o bien desde la invocación desde otro caso de uso Caso de uso Dar de alta Entrenador Actor Administrador Descripción Crea un nuevo perfil de entrenador en la base de datos Tabla 6: Descripción caso de uso dar de alta Entrenador Ilustración 19: Caso de uso Administrador Ilustración 20: Caso de uso Entrenador Jose Conejo Anguita UJA GYM 33 Escuela Politécnica Superior de Jaén Caso de uso Login Actor Entrenador Descripción El entrenador introduce un correo y una contraseña para loguearse, administrada por el administrador Escenario principal 1. El entrenador introduce el correo electrónico y contraseña y pulsa el botón Login. 2. El sistema comprueba si los datos son correctos. 3. El sistema le muestra la vista principal. Escenario alternos Comprueba datos: 4 1. Si algún campo no es correcto, avisa al entrenador que vuelva a introducir los datos. Tabla 7: Descripción caso de uso Login Caso de uso Consultar Datos Usuario Actor Entrenador Descripción Mostrará una vista que le permitirá al entrenador consultar mediante estadísticas del usuario el progreso del último mes. Precondición El usuario debe de estar registrado. Tabla 8: Descripción caso de uso consultar datos usuario Jose Conejo Anguita UJA GYM 34 Escuela Politécnica Superior de Jaén Ilustración 21: Caso de uso Usuario Jose Conejo Anguita UJA GYM 35 Escuela Politécnica Superior de Jaén Caso de uso Registrase Actor Usuario Descripción Permite que el usuario se registre en la aplicación. Escenario principal 1. El usuario pulsa el botón de Registrarse. 2. El sistema le muestra una nueva vista para introducir los datos. 3. El usuario introduce los datos necesarios y pulsa el botón para enviar los datos y registrarse. 4. El sistema comprueba si los datos son correctos. 5. El sistema le muestra la vista para loguearse. Escenario alternos Comprueba datos: 4 1. Si algún campo no es correcto, avisa al usuario que vuelva a introducir los datos. Tabla 9 Descripción caso de uso Registrarse Caso de uso Login Actor Usuario Descripción El usuario introduce un correo y una contraseña para loguearse con su perfil. Escenario principal 1. El usuario introduce el correo electrónico. 2. El usuario introduce la contraseña. 3. El usuario pulsa el botón Login. 4. El sistema comprueba si los datos son correctos. 5. El sistema le muestra la vista principal. Escenario alternos Comprueba datos: 4 2. Si algún campo no es correcto, avisa al usuario que vuelva a introducir los datos. Tabla 10: Descripción caso de uso Login Jose Conejo Anguita UJA GYM 36 Escuela Politécnica Superior de Jaén Caso de uso Gestionar Rutina Actor Usuario Descripción El usuario podrá crear, modificar, eliminar rutina. Precondición El usuario debe de estar registrado. Tabla 11: Descripción caso de uso Gestionar rutina Caso de uso Crear Rutina Actor Usuario Casos relacionados Gestionar Rutina Descripción El usuario podrá crear una nuevarutina Precondición El usuario debe de estar registrado Escenario principal 1. El usuario pulsa el botón de crear rutina. 2. El sistema le muestra un formulario. 3. El usuario introduce el nombre, duración y días a entrenar de la rutina. 4. El sistema comprueba que todos los campos están completos. 5. El sistema le muestra una vista con los días. 6. El usuario puede cambiar el título de cada día. 7. El usuario puede añadir nuevos ejercicios. 8. El usuario puede añadir varios ejercicios como una superserie. 9. Una vez terminado pulsa el botón guardar. 10. El sistema guarda los datos y le muestra la rutina completa. Escenario alternativos Comprueba datos: 4 1. Si no está completo todos los datos avisa al usuario de que le falta algún datos que introducir. Tabla 12: Descripción caso de uso Crear rutina Jose Conejo Anguita UJA GYM 37 Escuela Politécnica Superior de Jaén Caso de uso Modificar Rutina Actor Usuario Casos relacionados Gestionar Rutina Descripción El usuario puede modificar los ejercicios añadidos a la rutina, e puede añadir más días o quitar algún día Precondición El usuario debe de estar registrado Escenario principal 1. El usuario pulsa sobre una rutina 2. El sistema le muestra una vista de la rutina completa y todos sus días. 3. El usuario pincha en el botón editar para poder modificarla. 4. El sistema le muestra una botones para poder hacer los cambios necesarios. Tabla 13: Descripción caso de uso Modificar rutina Caso de uso Eliminar Rutina Actor Usuario Casos relacionados Gestionar Rutina Descripción El usuario podrá eliminar cualquier rutina creada Precondición El usuario debe de estar registrado Escenario principal 1. El usuario pulsa el botón eliminar 2. El sistema mostrara por cada rutina un cuadrado para seleccionar esa rutina. 3. El usuario selecciona ese cuadro y pulsa el botón eliminar. 4. El sistema le mostrara un mensaje si está seguro. 5. El usuario le indica que si. 6. El sistema elimina la rutina y le muestra las rutinas que le queda . Tabla 14: Descripción caso de uso Eliminar rutina Jose Conejo Anguita UJA GYM 38 Escuela Politécnica Superior de Jaén Caso de uso Marcar Principal Actor Usuario Casos relacionados Gestionar Rutina Descripción El usuario marca como rutina principal Precondición El usuario debe de estar registrado Escenario principal 1. El usuario selecciona una rutina. 2. El sistema le muestra la rutina. 3. El usuario pulsa el botón de principal. 4. El sistema la marca como principal y le añade a la vista principal de la aplicación como rutina principal. Tabla 15: Descripción caso de uso Marcar principal Caso de uso Añadir Ejercicio Actor Usuario Casos relacionados Gestionar Rutina Descripción El usuario podrá añadir ejercicios a la rutina, si el ejercicio no se encuentra podrá crearlo de la misma manera que en la gestión de Ejercicios. Precondición El usuario debe de estar registrado. Escenario principal 1. El usuario pincha en el botón de añadir ejercicio 2. El sistema le muestra una vista con todos los ejercicios que tiene creados. 3. El usuario selecciona uno de ellos. 4. El sistema le muestra un formulario. 5. El usuario inserta el número de serie y las repeticiones de ese ejercicio y pulsa en añadir. 6. El sistema lo redirige a la vista de creación de rutina y añade ese ejercicio con los datos introducidos. Tabla 16: Descripción caso de uso Añadir ejercicio Jose Conejo Anguita UJA GYM 39 Escuela Politécnica Superior de Jaén Caso de uso Ver historial Actor Usuario Descripción Permite al usuario consultar su historial de actividad Precondición El usuario debe de estar registrado Escenario principal 1. El usuario accede al historial. 2. El sistema recibe la solicitud y busca los datos en la base de datos. 3. El sistema le muestra los entrenamientos realizados. 4. El usuario desde la vista historial puede añadir un peso nuevo. Tabla 17: Descripción caso de uso Ver historial Caso de uso Ver progreso peso Actor Usuario Descripción Permite al usuario consultar un gráfico de su progreso Precondición El usuario debe de estar registrado Escenario principal 1. El usuario accede a la vista. 2. El sistema recibe la solicitud y busca los datos en la base de datos. 3. El sistema le muestra los datos de los entrenamientos realzados. Tabla 18: Descripción caso de uso Ver progreso peso Caso de uso Añadir meta Actor Usuario Casos relacionados Ver progreso peso Descripción El usuario puede añadir o modificar la meta a existente Precondición El usuario debe de estar registrado. Escenario principal 1. El usuario pincha en añadir meta. 2. El sistema comprueba si existe una meta. 3. El sistema despliega una ventana emergente. Jose Conejo Anguita UJA GYM 40 Escuela Politécnica Superior de Jaén 4. El usuario introduce los datos. 5. El sistema actualiza la base de datos. 6. El sistema actualiza la vista. Escenarios alternativos Comprobar Meta: 2 1. Si existe, el sistema modifica la meta existente. 2. Si no existe el sistema crea una nueva meta. Tabla 19: Descripción caso de uso Añadir meta Caso de uso Añadir peso Actor Usuario Casos relacionados Ver progreso peso y Ver historial. Descripción El usuario puede añadir un nuevo peso. Precondición El usuario debe de estar registrado. Escenario principal 1. El usuario pincha en añadir peso. 2. El sistema despliega una ventana emergente. 3. El usuario inserta un nuevo peso y descripción. 4. El sistema actualiza los datos y actualiza la vista ver progreso peso. Tabla 20: Descripción caso de uso Añadir peso Caso de uso Gestionar Ejercicios Actor Usuario Descripción El usuario podrá eliminar, modificar, crear y consultar el historial de los ejercicios Precondición El usuario debe de estar registrado Tabla 21: Descripción caso de uso Gestionar ejercicios Jose Conejo Anguita UJA GYM 41 Escuela Politécnica Superior de Jaén Caso de uso Crear Ejercicio Actor Usuario Casos relacionados Gestionar Ejercicios Descripción El usuario podrá crear ejercicios. Precondición El usuario debe de estar registrado Escenario principal 1. El usuario pulsa el botón de añadir nuevo ejercicio. 2. El sistema le muestra un formulario. 3. El usuario inserta el nombre, elige el tipo de musculo a entrenar y si quiere puede añadir una descripción. Tabla 22: Descripción caso de uso Crear ejercicio Caso de uso Modificar Ejercicio Actor Usuario Casos relacionados Gestionar Ejercicios Descripción El usuario podrá modificar el ejercicio Precondición El usuario debe de estar registrado Escenario principal 1. El usuario picha sobre el ejercicio 2. El sistema le mostrara una vista modal con los datos del ejercicio y el usuario pincha sobre el botón modificar. 3. El usuario podrá modificar cualquier campo del ejercicio. Tabla 23: Descripción caso de uso Modificar ejercicio Caso de uso Eliminar Ejercicio Actor Usuario Casos relacionados Gestionar Ejercicios Descripción El usuario podrá eliminar ejercicios Precondición El usuario debe de estar registrado Jose Conejo Anguita UJA GYM 42 Escuela Politécnica Superior de Jaén Escenario principal 1. El usuario pincha el botón de eliminar. 2. El sistema muestra por cada ejercicio un botón check para poder seleccionar los ejercicios que quiera eliminar. 3. El usuario pincha en alguno de ellos y pulsa el botón eliminar. 4. El sistema muestra un mensaje de si está seguro. 5. El usuario pincha de que si y el sistema elimina los ejercicios. Tabla 24: Descripción caso de uso Eliminar ejercicio Caso de uso Consultar progreso Actor Usuario Casos relacionados Gestionar Ejercicios Descripción El usuario podrá consultar el progreso de cada ejercicioPrecondición El usuario debe de estar registrado Escenario principal 1. El usuario pincha sobre un ejercicio en concreto 2. El sistema le muestra los datos del ejercicio. 3. El usuario pincha en el botón historial. 4. El sistema le muestra el progreso del ejercicio. Tabla 25: Descripción caso de uso Consultar progreso Caso de uso Ejecutar Rutina Actor Usuario Descripción Encargada de ejecutar el día que queremos cuando iniciamos un entrenamiento. Precondición El usuario debe de estar registrado Escenario principal 1. Selecciona de la rutina principal el entrenamiento que queremos inicial. Jose Conejo Anguita UJA GYM 43 Escuela Politécnica Superior de Jaén 2. El sistema le muestra la rutina de ese entrenamiento. 3. El usuario pincha en el botón empezar. 4. El usuario pincha en uno de los ejercicios/ superserie. 5. El sistema le muestra una vista con el ejercicio/s que ha seleccionado. 6. El usuario inserta la carga de cada ejercicio y pulsa siguiente. 7. El sistema vuelve a cargar la misma vista indicándole la repetición que le toca hacer y el usuario vuelve a insertar la carga. 8. Una vez finalizado el sistema guarda el progreso y vuelve a la vista de la rutina y le muestra los ejercicios que le quedan por hacer. 9. Al finalizar todos los ejercicios el sistema guarda el tiempo que ha tardado en realizar el entrenamiento en el historial. Tabla 26: Descripción caso de uso Ejecutar rutina Jose Conejo Anguita UJA GYM 44 Escuela Politécnica Superior de Jaén Diseño La etapa de diseño permite refinar el modelo del análisis hasta obtener un diseño del sistema adecuado, considerando los requisitos no funcionales y restricciones del entorno, para después pasar a la implementación. Además, esta etapa, permite tener una idea más clara del sistema, ya que elimina parte de la abstracción de la etapa anterior. Para el diseño de la aplicación se ha escogido utilizar y combinar los siguientes colores. 3.3.1 Metáforas Una metáfora es el empleo de un objeto o imagen con un significado dentro de un contexto diferente al habitual. Es decir, cuando queremos comunicar un concepto abstracto de una manera más familiar y accesible utilizamos las metáforas. En el diseño de las interfaces graficas las metáforas tienen un papel importante, ya que permite al usuario comprender de forma más intuitiva las diversas tareas. El uso de las metáforas puede asistir a los desarrolladores en conseguir maneras más eficientes y efectivas de desarrollar programas que permitan ser usado por comunidades de usuarios más diversas [13]. En la aplicación se han utilizado las siguientes metáforas, alguna de ellas no se encuentra en el diseño preliminar, ya que se han diseñado junto con la implementación. Ilustración 23: Color 1 Ilustración 22: Color 2 Jose Conejo Anguita UJA GYM 45 Escuela Politécnica Superior de Jaén Icono Menú Ilustración 24: Metáfora Menú La metáfora de la hamburguesa es uno de los más utilizado en el diseño de aplicaciones móviles, sirve para desplegar el menú de navegación. Icono Add Ilustración 25: Metáfora Add Esta metáfora aparece mucho en el diseño de la aplicación y significa añadir. Icono menos Ilustración 26: Metáfora Eliminar Esta metáfora también aparece mucho igual que la anterior y su significado es quitar cualquier elemento de la interfaz. Jose Conejo Anguita UJA GYM 46 Escuela Politécnica Superior de Jaén Icono X Ilustración 27: Metáfora Cancelar El significado de esta metáfora es el poder cancelar alguna acción de la interfaz Icono papelera Ilustración 28: Metáfora Papelera La metáfora de la papelera simboliza el poder eliminar algún elemento definitivamente. Icono Guardar Ilustración 29: Metáfora Guardar La metáfora del disquete representa la funcionalidad de guardar los elementos. Jose Conejo Anguita UJA GYM 47 Escuela Politécnica Superior de Jaén Icono Editar Ilustración 30: Metáfora Editar Esta metáfora representa el poder editar algún elemento de nuestra interfaz. Icono Check Ilustración 31: Metáfora Marcar como principal Esta metáfora indica que marca como principal la rutina, porque puede tener varias y esto simboliza cual está en ese instante como principal. Icono información Esta metáfora su significado es de información, informar sobre algo. Icono Superserie Ilustración 33: Metáfora Superserie Esta metáfora indica superserie, es decir que al pulsar sobre él estas indicando que el ejercicio se va a ejecutar en superserie. Ilustración 32: Metáfora Información Jose Conejo Anguita UJA GYM 48 Escuela Politécnica Superior de Jaén Icono Peso Ilustración 34: Metáfora Peso Esta metáfora significa el añadir peso. Icono Meta Ilustración 35: Metáfora Meta Esta metáfora significa la meta, es decir el objetivo a conseguir. Los siguientes iconos indica el tipo de musculo a ejercitar y los tres últimos seria el cardio a realizar si lo realiza en bicicleta, cinta de correr o elíptica. Ilustración 36: Músculo Abdomen Ilustración 37: Músculo Bíceps Ilustración 38: Músculo Espalda Jose Conejo Anguita UJA GYM 49 Escuela Politécnica Superior de Jaén Ilustración 39: Músculo Hombro Ilustración 3.3.1-14: Músculo Oblicuos Ilustración 40: Músculo Oblicuos Ilustración 41: Músculo Pecho Ilustración 42: Músculo Tríceps Ilustración 43: Músculo Pierna Inferiores Ilustración 44: Músculo Piernas Superiores Ilustración 45: Cardio Elíptica Ilustración 46: Cardio Bicicleta Ilustración 47: Cardio Cinta de Correr Jose Conejo Anguita UJA GYM 50 Escuela Politécnica Superior de Jaén 3.3.2 Storyboard Un storyboard es una representación aparente de una parte concreta o en su totalidad de una idea. Es una simulación que incorpora los elementos básicos y que refleja cómo se quedaría nuestro diseño de la aplicación. Durante la fase de diseño, para la creación del Storyboard con el fin de garantizar la usabilidad ha sido elaborados utilizando la herramienta Axure3.Es una herramienta de la industria del software orientada a diseñar wireframes y generar prototipos básicos o avanzados de forma fácil. Una vez creado el storyboar, Axuree permite emular el resultado online y compartirlo. Permite descargar el proyecto completo en formato comprimido Zip, con la funcionalidad propia, aunque con contenidos estáticos. A continuación, se muestra el prototipo realizado. 3 https://www.axure.com/ https://www.axure.com/ Jose Conejo Anguita UJA GYM 51 Escuela Politécnica Superior de Jaén 1 2 3 4 5 6 7 8 9 1 11 1 3 4 2 Ilustración 48: Vista Cambio Contraseña Ilustración 51: Vista Registro Ilustración 49: Vista Login Ilustración 50: Vista Menú Jose Conejo Anguita UJA GYM 52 Escuela Politécnica Superior de Jaén 1 3 1 9 1 1 7 8 5 6 1 8 7 1 5 Ilustración 52:Vista Principal Ilustración 53:Vista Mis Rutinas Ilustración 54: Vista Historial Ilustración 55: Vista Ejercicios Jose Conejo Anguita UJA GYM 53 Escuela Politécnica Superior de Jaén 9 11 12 10 1 0 1 1 1 2 Ilustración 57: Vista Peso Ilustración 56 Vista Peso-1 Ilustración 59: Vista Añadir Peso Ilustración 58: Vista Editar Meta Jose Conejo Anguita UJA GYM 54 Escuela Politécnica Superior de Jaén 13 15 16 14 1 4 1 7 1 5 Ilustración 63:Vista Día Entrenamiento Ilustración 62: Vista Ejecución Día Ilustración 61: Vista Consultar Progreso Ilustración
Compartir