You are on page 1of 134

UNIVERSIDAD DE LAS AMÉRICAS

FACULTAD DE INGENIERÍA Y NEGOCIOS

CARRERA INGENIERÍA DE EJECUCIÓN EN INFORMÁTICA

“SISTEMA DE GESTIÓN PARA GIMNASIO POWERFULL”

Profesor guía: Iván Ayala Ayala.

GONZALO ANDRÉS DONOSO IBÁÑEZ

2018
1

1 Índice
1 Introducción .............................................................................................................. 9
2 Definiciones, Acrónimos y Abreviaturas ................................................................. 10
3 Referencias ............................................................................................................ 13
4 Antecedentes generales ......................................................................................... 14
4.1 Génesis de la idea......................................................................................... 14
4.2 Nombre del proyecto ..................................................................................... 14
4.3 Identificación del cliente ................................................................................ 14
5 Descripción de la situación actual .......................................................................... 16
6 Objetivos ................................................................................................................ 17
6.1 Objetivo general ............................................................................................ 17
6.2 Objetivos específicos .................................................................................... 17
7 Elementos del sistema ........................................................................................... 18
7.1 Servidor ......................................................................................................... 20
7.2 Sistema operativo servidor ............................................................................ 20
7.3 Sistema operativo para móviles .................................................................... 22
7.4 Servidor Web ................................................................................................ 23
7.5 Base de datos ............................................................................................... 24
8 Estudio de factibilidad y viabilidad .......................................................................... 25
8.1 Factibilidad operacional................................................................................. 25
8.2 Factibilidad técnica ........................................................................................ 26
8.3 Factibilidad legal............................................................................................ 29
8.4 Factibilidad económica .................................................................................. 31
8.5 Factibilidad financiera.................................................................................... 33
8.6 Análisis de viabilidad ..................................................................................... 34
9 Ámbito del sistema ................................................................................................. 35
10 Perspectiva del producto ..................................................................................... 36
10.1 Características de los usuarios ..................................................................... 36
10.2 Jerarquía de usuarios.................................................................................... 38
11 Restricciones básicas .......................................................................................... 39
11.1 Políticas reguladoras ..................................................................................... 39
11.2 Limitaciones del hardware............................................................................. 39
2

11.3 Interfaz con otras aplicaciones ...................................................................... 40


11.4 Funciones de control ..................................................................................... 40
11.5 Credibilidad de la aplicación.......................................................................... 40
11.6 Consideraciones acerca de la seguridad ...................................................... 40
12 Requisitos específicos ......................................................................................... 41
12.1 Requerimientos funcionales (RF) .................................................................. 41
12.2 Requerimientos no funcionales (RNF) .......................................................... 45
13 Carta Gantt .......................................................................................................... 49
14 Metodología de desarrollo ................................................................................... 51
15 Modelos y diagramas ........................................................................................... 54
15.1 Caso de Uso y diagramas ............................................................................. 54
15.1.1 Registro de nuevo socio ......................................................................... 54
15.1.2 Modificación datos socios o usuarios del sistema .................................. 55
15.1.3 Listado de socios .................................................................................... 56
15.1.4 Examinar ejercicios................................................................................. 57
16 Diagrama de Actividad......................................................................................... 59
16.1 Actividad solicitud de rutina de ejercicios ...................................................... 59
16.2 Actividad examinar ejercicio .......................................................................... 60
16.3 Actividad exhibir progreso ............................................................................. 61
17 Diagrama de Secuencia ...................................................................................... 62
17.1 Solicitud de rutina .......................................................................................... 62
17.2 Solicitud de rutina (Sin datos) ....................................................................... 62
17.3 Mostrar progreso ........................................................................................... 63
17.4 Mostrar progreso (Sin datos) ......................................................................... 63
17.5 Examinar ejercicio ......................................................................................... 64
18 Diseño lógico (Modelo relacional) ........................................................................ 65
18.1 Definición de clases ...................................................................................... 66
18.1.1 Socio....................................................................................................... 66
18.1.2 Socio_Rutina .......................................................................................... 66
18.1.3 Rutina ..................................................................................................... 67
18.1.4 Rutina_Ejercicio ...................................................................................... 67
18.1.5 Ejercicio .................................................................................................. 67
3

18.1.6 Instructor ................................................................................................. 68


18.1.7 Clase ...................................................................................................... 68
18.1.8 Horario .................................................................................................... 68
18.1.9 Días ........................................................................................................ 69
18.1.10 Historial................................................................................................... 69
19 Evaluación de riesgos.......................................................................................... 70
20 Criterios de evaluación de riesgos ....................................................................... 70
20.1 Identificación y evaluación de riesgos ........................................................... 76
20.2 Mapa térmico riesgos absolutos.................................................................... 80
21 Seguridad ............................................................................................................ 83
21.1 Conceptos de seguridad web ........................................................................ 83
21.1.1 Aseguramiento del servidor web............................................................. 83
21.1.2 Aseguramiento de la información en tránsito .......................................... 84
21.2 Aseguramiento página WEB ......................................................................... 85
21.2.1 Inyección (Injection) ................................................................................ 86
21.2.2 Cross Site Scripting (XSS)...................................................................... 87
21.2.3 Pérdida de autenticación (Broken Authentication) .................................. 87
21.2.4 Pérdida de autenticación (Orientado a sesiones) ................................... 88
21.2.5 Exposición de datos sensibles................................................................ 88
21.2.6 Pérdida de control de acceso ................................................................. 89
21.2.7 Configuración de seguridad incorrecta ................................................... 89
21.2.8 Registro y monitoreo insuficientes .......................................................... 90
21.3 Copias de seguridad ..................................................................................... 91
22 Aplicación Web .................................................................................................... 92
22.1 Usabilidad ..................................................................................................... 92
22.1.1 Espacio en pantalla ................................................................................ 94
22.1.2 Creación de contenidos .......................................................................... 94
22.1.3 Legibilidad del contenido ........................................................................ 96
23 Implementación ................................................................................................... 97
23.1 Vista visitante ................................................................................................ 97
23.2 Vista socio registrado .................................................................................... 98
23.3 Vista administrador........................................................................................ 99
4

23.4 Vista recepcionista ...................................................................................... 100


23.5 Vista entrenador .......................................................................................... 101
23.6 Estructura o componentes de una aplicación Android ................................ 102
24 Conclusión ......................................................................................................... 103
25 Bibliografía ......................................................................................................... 104
25.1 Fuentes electrónicas ................................................................................... 105
25.2 Fuentes literarias ......................................................................................... 104
26 Anexos ............................................................................................................... 106
26.1 Configuración Apache ................................................................................. 106
26.2 Aspecto página web .................................................................................... 112
26.3 Mantenedores vista usuario administrador.................................................. 116
26.4 Aspecto aplicación móvil ............................................................................. 122
5

Índice de figuras:

Figura N° 1: Diagrama petición de cliente web .............................................................. 18


Figura N° 2: Trabajo realizado por servidor web ante la petición del cliente web ......... 19
Figura N° 3: Inicio de sesión desde aplicación móvil. ................................................... 19
Figura N° 4: Posicionamiento de S.O. para servidores en el mercado. ........................ 21
Figura N° 5: Posicionamiento de S.O. para teléfonos en el mercado. .......................... 22
Figura N° 6: Posicionamiento de servidores web en el mercado.................................. 23
Figura N° 7: Posicionamiento de base de datos en el mercado. .................................. 24
Figura N° 8: Jerarquía de usuarios ............................................................................... 38
Figura N° 9: Plan de tareas Sistema de gestión para gimnasio.................................... 49
Figura N° 10: Vista calendario carta Gantt ................................................................... 50
Figura N° 11: Fases modelo RAD ................................................................................ 52
Figura N° 12: Diagrama de clases “Sistema de gestión para gimnasio” ....................... 65
Figura N° 13: Mapa térmico .......................................................................................... 72
Figura N° 14: Riesgo de seguridad en aplicaciones web.............................................. 86
Figura N° 15: Contenido. .............................................................................................. 95
Figura N° 16 Tipo de letra............................................................................................. 96
Figura N° 17: Vista usuario anónimo ............................................................................ 97
Figura N° 18: Vista usuario registrado .......................................................................... 98
Figura N° 19: Vista administración ............................................................................... 99
Figura N° 20: Vista recepción ..................................................................................... 100
Figura N° 21: Vista entrenador ................................................................................... 101
Figura N° 22: Captura acceso a página...................................................................... 106
Figura N° 23:Captura acceso a página 2 .................................................................... 107
Figura N° 24: Deshabilitar CGI ................................................................................... 107
Figura N° 25: Configuración archivos .htaccess ......................................................... 108
Figura N° 26: Acceso predeterminado........................................................................ 108
Figura N° 27: Configurar el bloque <VirtualHost> para el sitio con SSL ..................... 109
Figura N° 28: Usuario y grupo .................................................................................... 109
Figura N° 29: Explorar directorios (Desactivar) .......................................................... 110
6

Figura N° 30: Includes ................................................................................................ 110


Figura N° 31: Enlaces simbólicos ............................................................................... 110
Figura N° 32: Tiempo de espera................................................................................. 111
Figura N° 33: Imagen sitio web (Página principal) ...................................................... 112
Figura N° 34: Opción quienes somos ......................................................................... 113
Figura N° 35: Opción servicios ................................................................................... 113
Figura N° 36: Opción “Nuestros entrenadores” .......................................................... 114
Figura N° 37: Opción “Acceso socios” ........................................................................ 115
Figura N° 38: Opción “Horario” ................................................................................... 115
Figura N° 39: Vista mantenedor usuario administrador .............................................. 116
Figura N° 40: Mantenedor usuarios ............................................................................ 117
Figura N° 41: Mantenedor de noticias ........................................................................ 117
Figura N° 42: Mantenedor de entrenadores ............................................................... 118
Figura N° 43: Mantenedor de clases .......................................................................... 119
Figura N° 44: Mantenedor de ejercicios...................................................................... 120
Figura N° 45: Opción listar socios .............................................................................. 120
Figura N° 46: Inicio de sesión ..................................................................................... 123
Figura N° 47: Menú inicial........................................................................................... 124
Figura N° 48: Progreso ............................................................................................... 125
Figura N° 49 Rutinas .................................................................................................. 126
Figura N° 50: Mis rutinas ............................................................................................ 127
Figura N° 51: Ejercicios (Abdomen) ........................................................................... 128
Figura N° 52: Ejercicios (Brazos + Glúteos) ............................................................... 129
Figura N° 53: Ejercicios (Piernas + Espalda) .............................................................. 130
Figura N° 54: Horario.................................................................................................. 131
Figura N° 55: Mi cuerpo .............................................................................................. 132
Figura N° 56: Contacto ............................................................................................... 133
7

Índice de tablas

Tabla 1 - Definiciones .................................................................................................... 12


Tabla 2 - Referencias ................................................................................................... 13
Tabla 3 - Hardware desarrollo del sistema ................................................................... 26
Tabla 4 - Hardware operación del sistema ................................................................... 27
Tabla 5 - Software para el desarrollo del sistema ......................................................... 28
Tabla - 6 RRHH para el desarrollo del sistema ............................................................ 29
Tabla 7 - Factibilidad económica (Incluye software de licencia libre) ........................... 31
Tabla 8 - Factibilidad financiera .................................................................................... 33
Tabla 9 - Membresías ................................................................................................... 34
Tabla 10 - Perfiles y funcionalidad de usuarios ............................................................ 36
Tabla 11 - RF01 Autentificación de usuario .................................................................. 41
Tabla 12 - RF02 Registrar usuarios.............................................................................. 41
Tabla 13 - RF03 Consultar información ........................................................................ 42
Tabla 14 - RF04 Modificar ............................................................................................ 42
Tabla 15 - RF05 Gestionar reportes ............................................................................. 43
Tabla 16 - RF06 Evaluar............................................................................................... 43
Tabla 17 - RF07 Rutinas................................................................................................ 43
Tabla 18 - RF08 Horarios clases .................................................................................. 44
Tabla 19 - RF09 Inscripción.......................................................................................... 44
Tabla 20 - RNF01 Interfaz del sistema ......................................................................... 45
Tabla 21 - RNF02 Ayuda en el uso del sistema ........................................................... 45
Tabla 22 - RNF03 Desempeño ..................................................................................... 46
Tabla 23 - RNF04 Nivel de usuario .............................................................................. 46
Tabla 24 - RNF05 Seguridad en información ............................................................... 47
Tabla 25 - RNF06 Confiabilidad continua del sistema .................................................. 47
Tabla 26 - RNF07 Visualización e inscripción .............................................................. 48
Tabla 27 - Probabilidad Riesgo .................................................................................... 70
Tabla 28 - Impacto Riesgo............................................................................................ 71
Tabla 29 - Severidad Riesgo ........................................................................................ 71
Tabla 30 - Categorías de los riesgos ............................................................................ 73
8

Tabla 31 - Impacto riesgo gestión ................................................................................. 73


Tabla 32 - Impacto riesgo operación ............................................................................. 73
Tabla 33 - Impacto riesgo infraestructura ...................................................................... 74
Tabla 34 - Impacto riesgo seguridad ............................................................................. 75
Tabla 35 - Impacto riesgo RRHH................................................................................... 75
Tabla 36 - Evaluación riesgo ........................................................................................ 79
Tabla 37 - Bibliografía, fuentes electrónicas ............................................................... 105
9

1 Introducción

En la actualidad, y tras unas décadas de la creación de internet y su


estandarización por todo el mundo, se está viviendo una nueva revolución. Los
dispositivos móviles con conexión a internet están creciendo a un ritmo frenético e
internet es el lugar donde se busca la información, y también donde se realizan las
gestiones cotidianas, según la analista de internet Mary Meeker.

Todo esto viene debido al afán de poder visualizar la información requerida, sea
cual sea el sitio que se esté visualizando, a través de un Smartphone, Tablet,
Computador de escritorio o portátil. Esta situación es fundamental para los negocios
tradicionales, debido a que pueden disponer de un espacio virtual donde un potencial
cliente pueda visualizar toda esa información y establecer una comunicación virtual
hacia ellos. Con el objetivo de poder aprovechar esta revolución tecnológica, nace la
idea de ir más allá del desarrollo común de un sistema de gestión. El “Sistema de
gestión para el gimnasio PowerFull” propone centralizar toda la información y rutinas de
ejercicio en internet. De modo que los socios puedan visualizar a través de un
dispositivo móvil o computador, su progreso y actividades diarias a realizar dentro del
gimnasio.

Un gimnasio que utilice esta herramienta para gestionar sus actividades estará
ofreciendo a sus entrenadores y socios, un valor agregado al que pueden ofrecer otros
gimnasios sin una herramienta de gestión o con una menos versátil y accesible. La
seguridad es un factor imprescindible en todos los ámbitos profesionales y en la
informática, es especialmente importante porque es donde está almacenada la
información confidencial de cada uno de los socios. Hoy en día las vulnerabilidades en
las páginas web o aplicaciones móviles pueden representar problemas graves, por ello
es muy importante comprender los conceptos necesarios para combatirlos y evitar
posibles ataques a la información.

https://blogthinkbig.com/internet-trends-mary-meeker-tendencias, accedido el día 20


de Agosto del 2018.
10

2 Definiciones, Acrónimos y Abreviaturas

Nombre Descripción
Usuario Persona que usará el sistema para gestionar procesos
Conjunto de programas y rutinas que permiten a los computadores
Software
realizar determinadas tareas
Elementos físicos que constituyen un computador y que serán
Hardware considerados necesarios para el correcto funcionamiento del
sistema.
Es un computador encargado de suministrar información a una serie
Servidor de clientes, que pueden ser tanto personas como otros dispositivos
conectados a él.
RF Requerimientos funcionales
RNF Requerimientos no funcionales
Conjunto de órdenes y programas que controlan los procesos
Sistema
básicos de un computador y permiten el funcionamiento de otros
operativo
programas.
JavaScript Es un lenguaje de programación, concurrente y orientado a objetos.
MYSQL Es un sistema de gestión de base de datos relacional
Conjunto de elementos de la pantalla que permiten al usuario
Interfaz realizar acciones sobre el programa o sitio web que se está
visitando.
Standard IEEE Standard para la especificación de requisitos.
830 - 1998
Es un informe o una noticia. Este tipo de documento puede ser:
Reporte
Impreso, digital o audiovisual.
Programa que busca profundizar el desarrollo de las habilidades
Standard Púlsar
transversales para el desempeño laboral.
Es un lenguaje de código abierto especialmente adecuado para el
PHP
desarrollo web y que puede ser incrustado en HTML.
11

Se enfoca en la protección de la infraestructura computacional y


Seguridad todo lo relacionado con esta. Especialmente la información
contenida en los servidores.
Conjunto de reglas de comunicación que rigen el intercambio de
Protocolos
información entre dos equipos o sistemas conectados entre sí.
Es el conjunto de información que contiene la definición de sus
Perfil
accesos.
Procesador Es la unidad central de procesamiento en un computador (CPU)
Memoria principal del computador, donde residen programas y
RAM datos. Sobre ella se pueden efectuar operaciones de lectura y
escritura.
Se puede interpretar como un documento de tipo electrónico, el cual
contiene información digital, la cual puede venir dada por datos
WEB
visuales y/o sonoros, a través de textos, imágenes, gráficos, audio o
videos y otros tantos materiales dinámicos o estáticos.
Un servidor web es el encargado de manejar las páginas web y
Servidor WEB enviarlas a través de la red a quienes lo requieran y tengan los
permisos para dichas páginas.
Es un intercambio de información interactiva semi-permanente,
también conocido como diálogo, una conversación o un encuentre,
Sesión
entre dos o más dispositivos de comunicación, o entre un ordenador
y usuario.
Hojas de estilo en cascada "Cascading Style Sheets" es un lenguaje
que describe la presentación de los documentos estructurados en
hojas de estilo para diferentes métodos de interpretación, es decir,
CSS
describe cómo se va a mostrar un documento en pantalla, por
impresora, por voz (cuando la información es pronunciada a través
de un dispositivo de lectura).
Es un lenguaje de programación que se utiliza para el desarrollo de
HTML
páginas de internet.
12

Se define como una técnica para el desarrollo de páginas web que


AJAX
implementan aplicaciones interactivas.
Programa o conjunto de programas informáticos que realizan un
Aplicación
trabajo específico, diseñado para el beneficio del usuario final.
Es un sistema operativo libre, multiplataforma, multiusuario y
Linux
multitarea.
Es el sistema operativo de Apple para sus computadores. MAC OS
Mac OS
son las siglas de "Macintosh Operating System".
Es una distribución de Linux, desarrollada y apoyada por una gran
CentOS comunidad que se basa en los paquetes fuentes de Red Hat
Enterprise.
Es el protocolo de transferencia de hipertexto (Hypertext Transfer
HTTP Protocol), es el protocolo de comunicación que permite las
transferencias de información en la World Wide Web.
Es el protocolo seguro de transferencia de hipertexto
HTTPS (HypertextTransportProtocolSecure), es un protocolo de aplicación
basado en HTTP, destinado a la transferencia segura de datos.
El protocolo SSL (Secure Sockets Layer) fue diseñado con el
SSL objetivo de proveer privacidad y confiabilidad a la comunicación
entre dos aplicaciones.
Apache Es un servidor web HTTP de código abierto.
RAD Rapid Application Development
BD Base de datos
SGGYM Sistema de gestión para gimnasio POWERFULL
Es una aplicación informática diseñada para ser ejecutada en teléfonos
Aplicación móvil
móviles o Tablet.
Tabla 1 - Definiciones
13

3 Referencias

Título del documento Referencia


Standard IEEE 830 - 1998 IEEE
Standard Púlsar UDLA
Formatos de proyecto de títulos compartidos por UDLA
profesor guía
Tabla 2 - Referencias
14

4 Antecedentes generales

Rojas & Rojas propiedades en su afán de desarrollar un sistema apropiado para su


proyecto denominado "PowerFull", se pone en marcha para establecer ideas y analizar
factibilidades técnicas del sistema que se tiene en mente.

4.1 Génesis de la idea

El surgimiento de esta idea de negocio fue un proceso que se sometió a estudios


de mercado y estudios de factibilidad por parte del cliente.

La idea del proyecto busca ofrecer algo novedoso y diferente a lo que


normalmente se ve en un gimnasio. En particular, busca proporcionar a los socios una
accesibilidad a la información adecuada a los tiempos actuales, buscando mantener
una información en línea y que se pueda visualizar cuando el socio lo estime
conveniente.

4.2 Nombre del proyecto

El proyecto lleva como nombre "Sistema de gestión para gimnasio POWERFULL"


y también nos referiremos a él de forma abreviada como SGGYM.

4.3 Identificación del cliente

Rojas&Rojas propiedades es una empresa de asesoría, gestión y corretaje de


propiedades, orientada a exclusivos sectores de la quinta región. Junto a su equipo
compuesto por profesionales con vasta experiencia en el ámbito inmobiliario y del
corretaje, ofrece servicios de asesoría inmobiliaria a clientes inversionistas del mercado
15

inmobiliario y también colabora en la gestión y desarrollo de nuevos proyectos


inmobiliarios.

Actualmente posee sus centros de operación en Canadá, ciudad de Vancouver.


16

5 Descripción de la situación actual

El evidente incremento de gimnasios privados que se observa en la ciudad de


Valparaíso, en los últimos diez años, da cuenta de la alta demanda que existe en este
tipo de servicios por parte de los consumidores.

Esta mayor demanda puede atribuirse al creciente interés de las personas por
incorporar en sus hábitos de vida alguna forma de actividad física regular, que les
ayude a mejorar su salud y calidad de vida, contrarrestando así los problemas
asociados al sedentarismo que caracteriza la vida urbana actual. Es por esto qué Rojas
& Rojas propiedades observo en este mercado en crecimiento una oportunidad de
negocio única y novedosa comparándola con sus proyectos más tradicionales.

Fuente: Investigación realizada por alumnos de universidad de Playa Ancha


denominada: “Estudio exploratorio del marketing deportivo en gimnasios de Valparaíso,
Viña del mar y Concón”. Publicado el mes de Septiembre del 2017.
17

6 Objetivos
6.1 Objetivo general

Desarrollar un sistema de gestión web y móvil para un gimnasio.

6.2 Objetivos específicos

 Crear interfaces amigables que faciliten a los usuarios el manejo y utilidad de la


aplicación web y móvil.
 Estructurar una base de datos que sea adecuada para almacenar de forma
eficiente la información que sea procesada por el gimnasio en sus servicios y
actividades diarias.
 Establecer una metodología capaz de asignar los permisos necesarios a cada
perfil de usuarios que se defina, que garanticen la integridad y seguridad de la
información procesada en la aplicación web y móvil.
 Proporcionar una herramienta que genere reportes que sean útiles para el
análisis y control de la información del gimnasio.
 Gestionar los entrenamientos de los socios a través de la página web y
aplicación móvil.
 Gestionar horario de clases, de acuerdo con actividades y demanda que estos
posean.
 Ofrecer contenido institucional relacionado con su estructura, organización y
objetivos.
 Ofrecer una plataforma tecnológica sobre las rutinas establecidas por los
entrenadores a través de un dispositivo móvil.
 Proporcionar un espacio dedicado a la actividad deportiva.
18

7 Elementos del sistema

En los elementos del sistema, se verá cómo será el esquema que se utilizará
para la implementación de este. Se pretende dar una visión general, puesto que en
posteriores secciones de este documento se tratará en profundidad cada uno de estos.

En primer lugar, y al tratarse de una aplicación web, se requiere de dos


elementos bien diferenciados entre sí. Por un lado, la propia aplicación web y por otro el
entorno en el que se ejecutará dicha aplicación. Este entorno estará compuesto por un
servidor en que se encontrará montado un servidor web que deberá ser capaz de
ejecutar la aplicación con los requisitos que esta necesite, de una forma segura, fiable y
eficiente.

En el diagrama se podrá ver el flujo que ocurre cada vez que un cliente/usuario
de la página web accede a ella a través de un navegador web:

Figura N°1: Diagrama petición de cliente web

Fuente: Buscador de imágenes Google.


19

Figura N° 2: Trabajo realizado por servidor web ante la petición del cliente

Fuente: Buscador de imágenes Google.

Figura N° 3: Inicio de sesión desde aplicación móvil.

Fuente: Buscador de imágenes Google.


20

7.1 Servidor

En todo el sistema que se va a desarrollar existe un elemento que va a tener una


importancia especial. Este elemento va a tener funciones distintas a cualquier otro, esto
por un lado significa que habrá que prestar especial atención a su configuración,
seguridad e integridad.

Este elemento entre las tareas que va a realizar, se encuentran todas las
operaciones computacionales, la gestión de los datos, almacenamiento de los distintos
archivos y modificación de los datos.

7.2 Sistema operativo servidor

El servidor que se pretende montar debe tener una serie de características para
realizar todas las tareas requeridas por la aplicación de forma estable y eficiente.
Además de estar preparado para soportar un gran flujo de carga, debido a que puede
existir gran cantidad de usuarios conectados al servidor realizando todo tipo de
operaciones.

En el mercado de los sistemas operativos domésticos existe un reducido número


de opciones disponibles a la hora de elegir uno adecuado para el proyecto en
desarrollo, básicamente estas opciones se reducen a 3: Windows, Linux y Mac OS. Es
posible utilizar algunos de estos sistemas operativos domésticos para el propósito, por
el simple hecho de que no son tan domésticos como parece. En primer lugar, se
descartará la opción de Windows, ya que el rendimiento y la estabilidad son muy bajos
para un entorno de producción a gran escala.

Linux y Mac OS comparten gran cantidad de características, por lo tanto, aunque


se haya clasificado a estos sistemas como domésticos, si pueden ser usados con
carácter profesional.
21

Para llevar a cabo el sistema de gestión se ha puesto interés en un sistema


operativo que sea fácilmente entendible, por lo que se recurrirá a un sistema operativo
de uso doméstico. De las opciones disponibles, se utilizará Linux, específicamente la
distribución CentOS por ser la más flexible en cuanto a la personalización de esta, su
libertad de uso sin necesidad de pagos, su orientación a servidores, su fiabilidad y
estabilidad.

Figura N° 4: Posicionamiento de S.O. para servidores en el mercado.

Fuente: Sitio web https://db-engines.com

El presente gráfico, nos permite visualizar cómo se comporta el mercado actual en


cuanto a sistemas operativos utilizados en servidores. Como se puede observar, este
es dominado ampliamente por sistemas operativos basados en Unix, lo que respalda y
aclara por qué se ha optado por una distribución de Linux.
22

7.3 Sistema operativo para móviles

Un sistema operativo móvil controla un dispositivo móvil al igual que los


computadores utilizan Windows o Linux, entre otros. Sin embargo, los sistemas
operativos móviles son mucho más simples y están más orientados a la conectividad
inalámbrica.

El sistema operativo de un teléfono realiza la interacción real con lo que podemos


hacer a partir de las capacidades del hardware que conforman un equipo. A manera de
traductor, esta plataforma interpreta lo que el usuario quiere que el teléfono realice y
cada vez lo ejecuta con mayor inteligencia. Una de las cualidades más atractivas de un
sistema operativo móvil es la rapidez con la que se desempeña.

Figura N° 5: Posicionamiento de S.O. para teléfonos en el mercado.

Fuente: Sitio webhttps://www.fayerwayer.com

El mercado actual es ampliamente dominado por los sistemas operativos Android e


IOS, los cuales serán soportados por la aplicación móvil a desarrollar.
23

7.4 Servidor Web

Pieza clave de todo el sistema de gestión, por lo que se debe prestar especial
atención tanto a la elección, como a la configuración de dicho elemento y al igual que
en el mercado de los sistemas operativos, se analizarán las opciones de las que se
puede disponer.

Figura N° 6: Posicionamiento de servidores web en el mercado.

Fuente: Sitio web https://db-engines.com

Los datos del gráfico hablan por sí solos, ya que la opción mayoritaria agrupa a
más de la mitad de los servidores web del mundo. La elección en esta oportunidad,
apunta a Apache que por muchos años ha sido el servidor web por excelencia, y lo
sigue siendo. La configuración no es trivial y hay tanta información en internet que hace
su configuración sea aún más sencilla. Su unión con PHP es su mayor fortaleza, y es
sin duda el servidor web que hay que utilizar cuando se programa en mencionado
lenguaje.
24

7.5 Base de datos

A la hora de realizar una aplicación o sitio web, una parte importante para el
desarrollo son las bases de datos. Existe una amplia gama en el mercado actual como,
por ejemplo: Oracle, MySQL, SQL Server, MongoDB, entre otras.

Existen una multitud de bases de datos que eventualmente podrían ser escogidas,
es por esto, que se enumerarán algunas de las razones más importantes para
inclinarse hacia MySQL:

1. Es multiplataforma, puede ser utilizada tanto en Windows, Linux y Mac, además


de los sistemas operativos móviles.
2. Es fácil de encontrar ayuda, al ser una base de datos que se utiliza en multitud
de aplicaciones web.
3. Es una base de datos ampliamente probada por distintos usuarios y empresas
con un alto éxito.
4. Finalmente, y una de las más importantes: El costo total de inicio es ampliamente
inferior al de Oracle o Microsoft SQL Server.

Figura N° 7: Posicionamiento de base de datos en el mercado.

Fuente: Sitio web https://db-engines.com


25

8 Estudio de factibilidad y viabilidad

La factibilidad del proyecto, se enmarca en la disponibilidad de los recursos


necesarios para llevar a cabo los objetivos o metas señaladas, ya que el éxito del
proyecto está determinado por el grado de factibilidad de cada uno de los aspectos que
se evaluaran a continuación.

8.1 Factibilidad operacional

Cuando se habla de factibilidad operacional, se refiere principalmente a la


también llamada factibilidad humana y esta tiene relación directa con la capacidad del
personal que hará uso del sistema, para esto serán consideradas capacitaciones y
segmentación por perfiles de usuario. A su vez, deben existir usuarios finales
dispuestos a utilizar el sistema y aprovechar cada una de las funcionalidades que este
posee.

Para lograr que el sistema sea utilizado como corresponde, se instruirá de la


siguiente forma al personal:

 Usuario administrador tendrá constantes capacitaciones. En él recaerá la


responsabilidad de enrolar a los futuros usuarios del sistema y gestionar roles de
acceso.
 Se dispondrá de manuales de usuarios con las principales funciones de cada
uno de los servicios implementados.
 Se fomentará el uso del sistema a través de la página web y campañas
realizadas por correos electrónicos.
26

8.2 Factibilidad técnica

El sistema de gestión a desarrollar involucra el uso de tecnología informática


para dar solución a la propuesta entregada por el cliente. Por esto se analizarán los
siguientes aspectos.

Hardware:

 Hardware para el desarrollo del sistema de gestión (Página web y


aplicación móvil)

Componentes
Cantidad Descripción Ubicación
Nombre Características

AMD A12-9720P 2,7


Procesador
GHz hasta 3,6 GHz

Memoria 16 GB DDR4 de
SDRAM (2 DIMM)
HP Notebook
1 16 GB DDR4 de Uso remoto
Pavilion 15.6 Disco duro
SDRAM (2 DIMM)
Sistema operativo Windows 10 Home
2 x USB 3.1 Gen 1
1 x USB Type-C™
3.1 Gen 1 (datos
Puertos
hasta 5 Gb/s)
1 x HDMI
1 x RJ-45
Pantalla 15,6"
Tabla 3 - Hardware desarrollo del sistema
27

 Hardware para la operación del sistema de gestión

Cantida Componentes
Descripción Ubicación
d Nombre Características
Intel® Xeon® E3-1225 v5,
Procesador 3.3 GHz, 8M Cache, Quad
Core (80W)
8 GB 2133 MT /s DDR4
Memoria
Servidor Dell UDIMM
1 Sala servidores
Power Edge T30 Disco duro 1TB Sata 6
Sistema
CentOS 7.5
operativo
4 USB 2.0
Puertos
6 USB 3.0
Intel® Core™ i5-7400 3.0
Procesador
GHz
Memoria 4GB DDR4
Computadores de Disco duro 1TB Sata3 7200 rpm 1 en recepción y
4 escritorio Gear Sistema 3 en oficina de
Ubuntu 18.04.1 LTS
SLIM operativo evaluación
2 x USB 2.0
Puertos 2 x Mic/Audífono
1 x SD/MMC/MS
Bandeja 150 hojas
Impresora láser
1 Conectividad USB 2.0 Recepción
Brother HL-1202
Procesador 200 Mhz
Tamaño 18,5"
Retroiluminació 1 en recepción,
Monitor AOC n
5 LED 3 en oficina de
E970SWHEN
Widscreen Si evaluación y 1
Resolución 1366 x 768 en servidor
Tótem auto Altura 180 cms Ubicación a
2
consulta Pantalla 20" definir
1 en recepción,
Kit teclado / 3 en oficina de
5 Conectividad USB 2.0
mouse evaluación y 1
en servidor
N° de unidades 1
1 Disco Duro RED Sala servidores
Capacidad 8 TB
Tabla 4 - Hardware operación del sistema

Para el funcionamiento del sistema de gestión para el gimnasio y aplicación


móvil, estos computadores deberán estar en red con un arquitectura de cliente/servidor
28

con capacidad de manejar grandes volúmenes de información de manera eficiente; el


servidor que será utilizado como servidor WEB cumple a cabalidad esta exigencia ya
que posee un poder de procesamiento adecuado y una gran capacidad de
almacenamiento en disco duro.

Software

 Software para el desarrollo del sistema de gestión (Página WEB y


aplicación móvil)

Se utilizaran software de licencia libre con el objetivo de minimizar costos de


implementación.

Lenguajes de programación: Plataforma:


PHP Apache
HTML CentOS
CSS MySQL
Java Script Notepad ++
Jquery Android Suite
Ajax Bootstrap (Framework)
Java Eclipse
Xampp
Tabla 5 - Software para el desarrollo del sistema

 Software para la operación del sistema de gestión

Lo necesario para la correcta ejecución del sistema de gestión, es acceso a


internet y un navegador compatible, para el caso de este sistema se garantizará el
funcionamiento en los 4 navegadores de internet más populares del mercado actual:
Internet Explorer - Google Chrome - Mozilla Firefox y Opera.
29

Para el caso de la aplicación móvil esta será soportada por dispositivos con
sistema operativo Android e Iphone OS.

Recurso humano

 Recurso humano para el desarrollo del sistema de gestión (Página WEB y


aplicación móvil)

Nombre Gonzalo Donoso Ibáñez


Jefe de Proyecto
Rol
Analista de sistemas
Categoría profesional
Gestión de proyecto, Análisis de información, diseño y
Responsabilidad
programación.
gdonosoib@gmail.com
Información de contacto
Tabla - 6 RRHH para el desarrollo del sistema

 Recurso humano para la operación del sistema de gestión

Se asume que todos los empleados involucrados en los procesos que manejarán
el sistema de gestión y aplicación móvil, tienen conocimientos básicos del uso de
hardware y software por lo que bastará con realizar una capacitación sobre las
funcionalidades puntuales del sistema y aplicación móvil.

8.3 Factibilidad legal

El proyecto es legalmente factible, debido a que el sistema no vulnera o viola las


leyes vigentes del país, al observar las leyes y decretos vigentes se podrá tener una
claridad general que nos permitirá observar que no se incurre en infracciones,
violaciones u otros que podrían provocar la imposibilidad de poner en ejecución el
sistema, o su interrupción en algún momento de su operación rutinaria.
30

Las leyes/decretos por los cuales se regirá el sistema de gestión y que han sido
analizadas en profundidad son las siguientes:

 Ley 19.223 Delitos informáticos, se pondrá a disposición de los entes


reguladores, todo funcionamiento anómalo que tenga relación con accesos no
autorizados, vulneración de datos personales, entre otros.

 Ley 19.628 Protección de datos personales, en el sistema de gestión se


tendrá especial cuidado con la manipulación de datos personales, estos serán
modificados sólo por personal autorizado y cada vez que corresponda. Con
respecto a la seguridad de estos, se tomarán todas las medidas necesarias para
salvaguardar la información con estándares de seguridad adecuados a la
tecnología actual. Adicionalmente a lo anterior, cada usuario que se convierta en
un usuario registrado del sitio web o aplicación móvil, debe aceptar los términos
y condiciones de uso que serán aplicados en el sitio web.

 Ley 17.366 Propiedad intelectual, el sistema de gestión será desarrollado en su


totalidad bajo software de licenciamiento libre y se tendrá especial cuidado en
todo el material que se dispondrá en la página web, todos serán desarrollo propio
o libre de derechos de autor; logos, imágenes y promociones.
31

8.4 Factibilidad económica

Los gastos iníciales que deben ser considerados para lograr el desarrollo de este
sistema de gestión son los siguientes:

Componentes
Cantidad Descripción Costo
Nombre Características
Intel® Xeon® E3-1225 v5,
Procesador 3.3 GHz, 8M Cache, Quad
Core (80W)
Servidor Dell Power
1 8 GB 2133 MT /s DDR4 $ 453.590
Edge T30 Memoria
UDIMM
Disco duro 1TB Sata 6
Sistema operativo CentOS 7.5
Tamaño 18,5"
Retroiluminación LED
5 Pantalla $ 299.950
Widscreen Si
Resolución 1366 x 768
5 Kit teclado / mouse Conectividad USB 2.0 $ 42.450
AMD A12-9720P 2,7 GHz
Procesador
hasta 3,6 GHz
16 GB DDR4 de SDRAM
HP Notebook Pavilion Memoria
1 (2 DIMM) $ 449.990
15.6
Disco duro 1TB
Sistema operativo Windows 10 Home
Pantalla 15,6"
Característica Organizacional
Certificado de
1 SHA-256 $ 203.501
seguridad SSL Encriptación
RSA 2048
Horas de trabajo
diaria 4
Duración 5 Meses
Desarrollo de sistema Días trabajados 111 días hábiles
1 $ 6.660.000
de gestión
Cantidad de horas 444
Valor hora de $
trabajo 15.000
Altura 160 cms
2 Totém auto consulta $ 519.980
Pantalla 21"
Intel® Xeon® E3-1225 v5,
Procesador 3.3 GHz, 8M Cache, Quad
Computador de
4 Core (80W) $ 1.439.960
escritorio
Memoria 8GB
Disco duro 1TB
32

1 Disco duro RED Capacidad 8TB $ 298.570


1 Dominio .CL Dominio www.powerfullgym.cl $ 9.950
* Sofware Sistema operativo CentOS 7.5 $ -
* Servidor Web Nombre Apache $ -
* Base de datos Nombre MySQL $ -
* IDE Nombre Eclipse $ -
* Framework Nombre Bootstrap $ -
Lenguajes de PHP - HTML - CSS -
* Nombre $ -
programación Javascript - Ajax - Jquery

TOTAL $10.377.941
Software de licencia
* libre

Tabla 7 - Factibilidad económica (Incluye software de licencia libre)


33

8.5 Factibilidad financiera

La proyección en el tiempo que se puede obtener a partir de la factibilidad económica y


las mínimas membrecías esperadas están dadas por el siguiente recuadro:

Descripción AÑO 0 AÑO 1 AÑO 2 AÑO 3 AÑO 4 AÑO 5

Servidor Dell Power Edge T30 $ -453.590 $ - $ - $ - $ - $ -

Pantalla AOC 20" x5 $ -299.950 $ - $ - $ - $ - $ -

Kit teclado / mouse x5 $ -42.450 $ - $ - $ - $ - $ -

HP Notebook Pavilion 15.6" $ -449.990 $ - $ - $ - $ - $ -

Certificado de seguridad SSL $ -203.501 $ -183.150 $ -183.150 $ -183.150 $ -183.150 $ -183.150

Desarrollo de sistema de gestión $ -6.660.000 $ - $ - $ - $ - $ -

Tótem $ -519.980 $ - $ - $ - $ - $ -

Disco Duro RED $ -298.570 $ - $ - $ - $ - $ -

Dominio .CL $ -9.950 $ -9.950 $ -9.950 $ -9.950 $ -9.950 $ -9.950

Computador de escritorio x4 $ -1.439.960 $ - $ - $ - $ - $ -

$ - $ 720.000 $ 720.000 $ 720.000 $ 720.000 $ 720.000


Membresía mensual x20
$ - $ 2.960.000 $ 2.960.000 $ 2.960.000 $ 2.960.000 $ 2.960.000
Membresía semestral x20
$ - $ 1.990.000 $ 1.990.000 $ 1.990.000 $ 1.990.000 $ 1.990.000
Membresía trimestral x20
$ - $ 4.458.000 $ 4.458.000 $ 4.458.000 $ 4.458.000 $ 4.458.000
Membresía anual x20
$ - $ -77.970 $ -77.970 $ -77.970 $ -77.970 $ -77.970
Insumos computacionales
$ - $ -750.000 $ -750.000 $ -750.000 $ -750.000 $ -750.000
Servicio internet dedicado
FLUJO DE CAJA $ -10.377.941 $ 9.106.930 $ 9.106.930 $ 9.106.930 $ 9.106.930 $ 9.106.930

TASA 15%

TIR 83,54%

VAN $ 20.149.900,83 735,38 UF


*VAN: Valor Actual Neto
*TIR: Tasa Interna de Retorno

Tabla 8 - Factibilidad financiera


34

Tarifas de las diferentes membresías están dadas por los siguientes valores:

Tipo Costo
Membresía mensual $ 36.000
Membresía semestral $ 148.000
Membresía trimestral $ 99.500
Membresía anual $ 222.900
Tabla 9 - Membresías

El dinero invertido en este proyecto genera 83,54% de rentabilidad cada año.

8.6 Análisis de viabilidad

Luego de un análisis minucioso se determinó que técnicamente es factible el


desarrollo del sistema de gestión para el gimnasio POWERFULL, ya que existe tanto el
software, como el hardware y recurso humano necesario para el funcionamiento de
este. Adicionalmente se determina que operativamente también es factible por lo
siguiente:

 Cumple con las condiciones mínimas que el sistema necesita para su operación.
 Está confirmado el apoyo administrativo del cliente para el desarrollo de este.
 El recurso humano, tendrá los conocimientos informáticos que son necesarios
para el uso y manejo del sistema.

Dentro del ámbito legal, se tomarán las medidas necesarias para cumplir
principalmente las leyes 19.628 - 17.366 y 19.223. Para ello se crearan puntos de
control internos en el sistema (Log), se asegurará la información con las metodologías
actuales (Cifrado de contraseñas en Base de datos y encriptación de datos entre el
cliente y el servidor) y se utilizarán software de licenciamiento libre en su totalidad.
35

9 Ámbito del sistema

El sistema tendrá como nombre "Sistema de gestión para Gimnasio Powerfull" y


tendrá las siguientes funcionalidades:

 Permitirá un fácil acceso a los socios, de modo que puedan visualizar las
evaluaciones realizadas por el entrenador. Visualización podrá ser observada
luego de iniciar sesión en la página web o en la aplicación móvil.
 Permitirá realizar seguimiento sobre su progreso (Información histórica por
socios).
 Permitirá a los socios realizar inscripción de clases a través de la página web o
móvil.
 Será compatible con las versiones más recientes de los principales navegadores
de internet (Mozilla Firefox, Internet Explorer, Opera, Google Chrome).
 Permitirá la configuración de permisos sobre las distintas funciones de la
aplicación mediante la definición de perfiles de usuarios. De manera tal que un
perfil dado tiene acceso a la ejecución o no de cada función de la aplicación.
 Cumplirá las medidas de seguridad, atendiendo a la naturaleza de la información
tratada, necesarias para garantizar la confidencialidad y la integridad de la
información.
 Proporcionará un diseño, estructura de contenidos y funcionalidades adecuadas
a las tecnologías actuales del mercado.
 Permitirá la visualización de cualquier tipo de contenido multimedia.
 Permitirá organizar la información en secciones y subsecciones, dando así, una
estructura de contenidos clara y legible.
 Permitirá gestionar los contenidos por personal no técnico, es decir, sin
conocimientos de programación, de forma fácil e intuitiva.
 Permitirá consultar la información de personal de cada socio, junto con las
rutinas y ejercicios asignados.
36

10 Perspectiva del producto

El sistema de gestión para el gimnasio Powerfull será un producto diseñado para


trabajar en entorno web / móvil, lo que permitirá su utilización en cualquier plataforma.

10.1 Características de los usuarios

Tipo de usuario Administrador


Control y manejo del sistema en general.
Actividades

Tipo de usuario Socio


Consulta y modifica información personal y rutinas (Desde
Actividades
aplicación móvil).

Tipo de usuario Entrenador


Registra, consulta y modifica información personal, de
Actividades
socios, rutinas y realiza evaluaciones físicas.

Tipo de usuario Recepción


Registra nuevos socios y modifica horarios de clases
Actividades

Tipo de usuario Visitante


Persona que interactuará continuamente con el sistema
Actividades
Tabla 10 - Perfiles y funcionalidad de usuarios
37

Administrador:

Es el encargado de manejar el sistema y en él recaerá la responsabilidad sobre


los roles y vigencia de los usuarios en el sistema. Supervisará vigencia de promociones
y noticias que serán publicadas en sitio web.

Socio:

Persona que interactuará de forma diaria con el sistema, a través del sitio web o
aplicación móvil, tendrá a su disposición un manual de usuario que le indicará la forma
correcta de operar la aplicación (Requiere estar creado en la base de datos).

Entrenador:

Usuario del sistema, cuya participación se ve limitada a la evaluación física de un


nuevo socio y a la asignación de un plan de ejercicios denominado rutina.

Recepción:

Es el encargado de gestionar el horario de clases, realizar la inscripción de


nuevos socios y asignación de claves.

Visitante:

Persona que interactuará continuamente con el sistema, y no debe tener una


capacitación. Con respecto al sistema, únicamente debe tener un conocimiento básico
sobre navegación en páginas web (No requiere estar creado en la base de datos).
38

10.2 Jerarquía de usuarios

De acuerdo con las definiciones establecidas en el sistema, la jerarquía de usuario


es la que se indica a continuación:

Figura N° 8: Jerarquía de usuarios

Fuente: Elaboración propia

Como se puede apreciar, el usuario administrador es quien posee la mayor


cantidad de privilegios dentro del sistema y de él depende el correcto uso de este,
debido a que es este usuario quien debe ingresar o enrolar al resto de los usuarios del
sistema, asignándole los roles según corresponda. En el caso del usuario visitante, este
no forma parte del sistema.
39

11 Restricciones básicas

11.1 Políticas reguladoras

El sistema se desarrollará mediante software de licencia libre por lo tanto no se


deberá pagar por el uso de: Servidor WEB (Apache), Sistema de gestión de base de
datos (MySQL), Lenguaje de programación (PHP), Sistema operativo (CentOS), por lo
tanto, la utilización de estos programas se hará mediante las políticas establecidas por
este tipo de licenciamiento.

11.2 Limitaciones del hardware

Para llevar a cabo este sistema será necesario un computador servidor en el cual
se instalará el servidor WEB apache, Sistema operativo CentOS, motor de base de
datos MySQL, lenguaje de programación PHP y se montará el sistema de gestión para
el gimnasio POWERFULL.

El dispositivo móvil en donde se ejecutará la aplicación para su correcto


funcionamiento deberá tener los siguientes requisitos mínimos, debido a que se
necesita velocidad de procesamiento al manejar una gran cantidad de información,
además será necesario almacenamiento para la base de datos local donde se
almacenará la información descargada.

 Procesador: 1 GHz dual Core


 Memoria RAM: 1 GB
 Almacenamiento: 30 MB disponibles.
 Pantalla de 4.5” pulgadas en adelante.
 Sistema operativo: Android 4.0 o superior.
40

11.3 Interfaz con otras aplicaciones

Debido a que no interactúa con otros sistemas y es autónomo no se


desarrollaran interfaces con otras aplicaciones. Las conexiones necesarias para la
utilización del servidor web, MySQL, PHP, se hará por medio de la configuración de
estos.

11.4 Funciones de control

El sistema debe controlar los permisos que tiene cada usuario para su
accesibilidad de una manera correcta, de tal forma que pueda acceder a la información
que le corresponde de acuerdo con su rol. Debe tener los controles adecuados para la
validación de datos y controlar las sesiones de usuarios de forma correcta.

11.5 Credibilidad de la aplicación

Para garantizar una buena credibilidad, el sistema deberá ser sometido a una
serie de pruebas para establecer que se encuentra acorde a los requerimientos que se
plasmarán en este documento. Asegurando así, la consistencia de datos, el rendimiento
de la aplicación y los tiempos de respuesta.

11.6 Consideraciones acerca de la seguridad

Cada usuario deberá autenticarse y su acceso será verificado de acuerdo con el


rol que se le haya especificado por el administrador del sistema. Todas las claves de
seguridad deberán estar protegidas y en su defecto encriptadas en la base de datos
para dar una buena seguridad al sistema y su información.
41

12 Requisitos específicos
12.1 Requerimientos funcionales (RF)

ID del
RF01
requerimiento:
Nombre
Autentificación de Usuario.
Requerimiento:
Características: Los usuarios deberán identificarse para acceder a cualquier
parte del sistema.
Descripción El sistema podrá ser consultado por cualquier usuario
Requerimiento: dependiendo su nivel de accesibilidad.
Prioridad
Alta
Requerimiento
Tabla 11 - RF01 Autentificación de usuario

ID del
RF02
requerimiento:
Nombre
Registrar Usuarios
Requerimiento:
Características: Los usuarios deben ser ingresados en el sistema para acceder
posteriormente a cualquier parte de este.
Descripción El sistema permitirá al usuario administrador registrar otros
Requerimiento: usuarios, según el perfil que se requiera. Se deben especificar
los siguientes datos: Usuario - Clave - Perfil.
Prioridad
Alta
Requerimiento
Tabla 12 - RF02 Registrar usuarios
42

ID del
RF03
requerimiento:
Nombre
Consultar información
Requerimiento:
Características: El sistema permitirá obtener información general acerca de los
socios.
Descripción El sistema permitirá a los perfiles de usuario administrador -
Requerimiento: entrenador, controlar y visualizar los socios que se encuentren
registrados en la base de datos.
Prioridad
Alta
Requerimiento
Tabla 13 - RF03 Consultar información

ID del
RF04
requerimiento:
Nombre
Modificar
Requerimiento:
Características: El sistema permitirá modificar los datos personales.
Descripción Permite a los diferentes tipos de usuarios modificar los datos
Requerimiento: básicos según jerarquía del perfil.
Prioridad
Alta
Requerimiento
Tabla 14 - RF04 Modificar
43

ID del
RF05
requerimiento:
Nombre
Gestionar reportes
Requerimiento:
Características: El sistema permitirá generar reportes
Descripción Permitirá al usuario administrador generar reportes de los
Requerimiento: socios activos, junto con el tipo de membrecía y vencimiento de
esta.
Prioridad
Alta
Requerimiento
Tabla 15 - RF05 Gestionar reportes

ID del
RF06
requerimiento:
Nombre
Evaluar
Requerimiento:
Características: Permite a los entrenadores evaluar nuevos socios.
Descripción Permitirá a los entrenadores registrar información básica de
Requerimiento: una evaluación física.
Prioridad
Alta
Requerimiento
Tabla 16 - RF06 Evaluar

ID del
RF07
requerimiento:
Nombre
Rutinas
Requerimiento:
Características: Permite a los entrenadores ingresar rutinas para nuevos socios.
Descripción Permitirá a los entrenadores crear - modificar y/o eliminar
Requerimiento: rutinas de ejercicios asignadas a los socios
Prioridad
Alta
Requerimiento
Tabla 17 - RF07 Rutinas
44

ID del
RF08
requerimiento:
Nombre
Horarios Clases
Requerimiento:
Características: Permite al administrar horario de clases
Descripción Permitirá al perfil de usuario recepción, ingresar - modifica y/o
Requerimiento: eliminar una clase.
Prioridad
Alta
Requerimiento
Tabla 18 - RF08 Horarios clases
ID del
RF09
requerimiento:
Nombre
Inscripción
Requerimiento:
Características: Permite inscripción en clases
Descripción Permitirá a los socios realizar inscripción en una clase a través
Requerimiento: de sitio web o aplicación móvil.
Prioridad
Alta
Requerimiento
Tabla 19 - RF09 Inscripción
45

12.2 Requerimientos no funcionales (RNF)

ID del
RNF01
requerimiento:
Nombre
Interfaz del sistema
Requerimiento:
Características: El sistema presentará una interfaz de usuario sencilla para que
sea de fácil manejo a los usuarios.
Descripción
El sistema debe tener una interfaz de uso intuitiva y sencilla
Requerimiento:
Prioridad
Alta
Requerimiento
Tabla 20 - RNF01 Interfaz del sistema

ID del
RNF02
requerimiento:
Nombre
Ayuda en el uso del sistema
Requerimiento:
Características: La interfaz del usuario deberá presentar un sistema de ayuda
para que a los usuarios se les facilite el trabajo en cuanto al
manejo de este.
Descripción La interfaz debe estar complementada con un buen sistema de
Requerimiento: ayuda (la administración puede recaer en personal con poca
experiencia en el uso de aplicaciones informáticas)
Prioridad
Alta
Requerimiento
Tabla 21 - RNF02 Ayuda en el uso del sistema
46

ID del
RNF03
requerimiento:
Nombre
Desempeño
Requerimiento:
Características: El sistema garantizará a los usuarios un desempeño en cuanto
a los datos almacenado en el sistema ofreciéndole una
confiabilidad a esta misma.
Descripción Garantizar el desempeño del sistema informático a los
Requerimiento: diferentes usuarios. En este sentido la información almacenada
o registros realizados podrán ser consultados y actualizados
permanentemente sin que se afecte el tiempo de respuesta.
Prioridad
Alta
Requerimiento
Tabla 22 - RNF03 Desempeño

ID del
RNF04
requerimiento:
Nombre
Nivel de usuario
Requerimiento:
Características: Garantizará al usuario el acceso de información de acuerdo con
el nivel que posee.
Descripción
Permitirá categorizar los usuarios según nivel de acceso.
Requerimiento:
Prioridad
Alta
Requerimiento
Tabla 23 - RNF04 Nivel de usuario
47

ID del
RNF05
requerimiento:
Nombre
Seguridad en información
Requerimiento:
Características: El sistema garantizará a los usuarios una seguridad en cuanto
a la información que se procesa y almacena en el sistema.
Descripción Garantizar la seguridad del sistema con respecto a la
Requerimiento: información y datos que se manejan tales sean información
personal, archivos y contraseñas.
Prioridad
Alta
Requerimiento
Tabla 24 - RNF05 Seguridad en información

ID del
RNF06
requerimiento:
Nombre
Confiabilidad continúa del sistema
Requerimiento:
Características: El sistema tendrá que estar en funcionamiento las 24 horas los
7 días de la semana.
Descripción La disponibilidad del sistema debe ser continua con un nivel de
Requerimiento: servicio para los usuarios de 7 días por 24 horas. Ante una
posible falla, se debe contar con una contingencia adecuada.
Prioridad
Alta
Requerimiento
Tabla 25 - RNF06 Confiabilidad continua del sistema
48

ID del
RNF07
requerimiento:
Nombre
Visualización e Inscripción
Requerimiento:
Características: El sistema deberá permitir acceder a través de tótem
autoservicio.
Descripción La disponibilidad del sistema debe ser continua y debe permitir
Requerimiento: a usuarios acceder o consultar información relevante a través
de tótem autoservicio que se encontrarán disponible dentro del
gimnasio.
Prioridad
Alta
Requerimiento
Tabla 26 - RNF07 Visualización e inscripción
49

13 Carta Gantt

Para visualizar las actividades o tareas con las que será abordado este sistema, se
define la carta Gantt, en ella se podrá apreciar la durabilidad estimada con la que fue
planificado el desarrollo del sistema junto con la duración de cada uno de los hitos más
relevantes que esta posee.

Figura N° 9: Plan de tareas Sistema de gestión para gimnasio

Fuente: Elaboración propia


50

La vista calendario de la carta Gantt, permite visualizar cuales son las actividades que
se realizan en forma paralela y cuáles deben ser abordadas de forma secuencial.

Figura N° 10: Vista calendario carta Gantt

Fuente: Elaboración propia


51

14 Metodología de desarrollo

El tiempo con que se debe lidiar en este proyecto es reducido y solo se


encuentra acotado a un par de meses de duración, por lo tanto se opta por la
metodología "Desarrollo rápido de aplicaciones (RAD - Rapid Application
Development)". El objetivo de esta metodología como su nombre lo indica es otorgar
resultados rápidos, pero además está diseñado para aumentar la viabilidad de todo el
procedimiento de desarrollo de software para resaltar la participación de un usuario
activo.

El desarrollo rápido de aplicaciones, es un modelo de proceso del desarrollo de


software lineal secuencial que enfatiza un ciclo de desarrollo extremadamente corto,
esto se logra utilizando un enfoque de construcción basado en componentes o
módulos. Si se comprenden bien los requisitos (Considerando que estos son sólidos y
no sufrirán cambios en el tiempo) y se limita el ámbito del proyecto, el modelo permite
desarrollar un sistema completamente funcional dentro de periodos cortos de tiempo.

Dicho esto, algunas de las ventajas que podemos destacar en la elección de esta
metodología de desarrollo son las siguientes:

 Este modelo es útil cuando el cliente conoce los objetivos generales para el
software, pero no identifica los requisitos detallados de entrada, procesamiento o
salida.
 Alienta la retroalimentación de los clientes para su mejora.
 Visibilidad del sistema o software temprana.
 Mayor involucramiento de los usuarios. Esta ventaja es de especial importancia,
considerando que el cliente actualmente se encuentra ubicado fuera del país y
las reuniones y avances deben ser tratados a través de internet (Skype).
 Ciclos de desarrollo más pequeños.
52

Cuando esta metodología es tratada en aplicaciones que tienen relación con los
sistemas de información, el enfoque del RAD (Rapid Application Development)
comprende las siguientes fases:

Figura N° 11: Fases modelo RAD

Fuente: Elaboración propia

Modelado de gestión

El flujo de información entre las funciones de gestión se modela de forma que


responda las necesidades de la información que genera, quien la genera y a donde va a
ir esa información.

Modelado de datos

El flujo de información definido como parte de la fase de modelado de gestión se


refina como un conjunto de objetos de datos necesarios. Se definen las características
(Atributos) de cada uno de los objetos y las relaciones entre ellos.
53

Modelado de procesos

Los objetos de datos definidos en la fase de modelado de datos quedan


transformados para lograr el flujo de información necesario para implementar una
función de gestión. Las descripciones del proceso se crean para añadir, modificar,
suprimir, o recuperar un objeto de datos.

Generación de aplicaciones

El proceso DRA (Desarrollo rápido de aplicaciones) trabaja para volver a utilizar


componentes de programas ya existentes (Cuando es posible) o a crear componentes
reutilizables (cuando sea necesario). En todos los casos se utilizan herramientas para
facilitar la construcción del software.

Pruebas y entrega

El proceso de desarrollo finaliza realizando pruebas de calidad del software


diseñado y posteriormente se realiza la implementación de la aplicación. Como el
proceso DRA enfatiza la reutilización, ya se han comprobado muchos de los
componentes del sistema de gestión. Esto reduce considerablemente el tiempo de
pruebas. Sin embargo, se deben probar todos los componentes / módulos nuevos y se
deben revisar todas las interfaces a fondo.
54

15 Modelos y diagramas
15.1 Caso de Uso y diagramas
15.1.1 Registro de nuevo socio

Propósito Agregar un nuevo socio a la BD


Precondiciones Usuario recepcionista debe estar con la sesión iniciada
Activación Solicitud de ingreso como socio realizada por un “Cliente”
Flujo principal 1. Usuario inicia sesión como recepcionista.
2. Recepcionista selecciona opción “Ingresar socio”.
3. Recepcionista solicita información al “Cliente” y la ingresa en el
sistema.
4. El sistema verifica los datos.
5. El sistema añade los registros a la BD.
6. Sistema confirma la creación del socio.

Variaciones 4a. Si los datos están correctos, se crea la cuenta del socio.
4b.En caso de no ser correctos, el sistema los solicita.
55

15.1.2 Modificación datos socios o usuarios del sistema

Propósito Edición de las cuentas de socios o usuarios


Precondiciones Administrador debe iniciar sesión y debe existir el socio o usuario
Activación Cuando el administrador inicie sesión con credenciales válidas.
Flujo principal 1. Usuario inicia sesión como administrador.
2. Administrador selecciona opción modificar socio o usuario.
3. Administrador consulta BD y lista los socios o usuarios.
4. El administrador modifica o elimina la cuenta según
corresponda.
5. Sistema verifica si desea realizar la acción.
6. Se realiza la operación modificando / eliminando desde la BD.
7. Sistema muestra nueva lista después de realizada alguna
operación.
Variaciones 4a. En caso de no existir socios o usuarios, el listado se muestra
vacío.
4b. Si existen socios o usuarios, el administrador escoge cual desea
modificar o eliminar.
56

15.1.3 Listado de socios

Propósito Mostrar un listado de los socios activos al entrenador.


Precondiciones Entrenador debe iniciar sesión en sistema.
Activación Monitoreo de los socios.
Flujo principal 1. Usuario se identifica como entrenador.
2. Entrenador selecciona opción listar clientes.
3. Sistema consulta base de datos para listar los socios activos en
sistema.
4. Entrenador selecciona socio para ver su progreso.
5. Sistema consulta base de datos para mostrar los progresos del
socio seleccionado.
6. Sistema muestra progreso del cliente.
Variaciones 3a. Si no existen socios se muestra lista en blanco.
3b. En caso contrario, se listan socios activos del sistema.
5a. En caso de no existir registros, el sistema no muestra
progresos.
5b. En caso contrario, sistema muestra progreso del socio
seleccionado.
57

15.1.4 Examinar ejercicios

Propósito Socio pueda visualizar los ejercicios disponibles para realizar.


Precondiciones Cliente debe estar registrado en el sistema y debe haber iniciado
sesión.
Activación Este caso de uso inicia cuando el cliente requiere información
acerca de un ejercicio seleccionando la opción “Guía de ejercicios”
Flujo principal 1. El sistema requiere que el usuario haya iniciado sesión.
2. Luego de iniciar sesión el socio debe seleccionar opción
“Guía de ejercicios”.
3. El sistema mostrará una nueva ventana donde podrá escoger
el ejercicio que desea realizar, por varios métodos de
búsqueda.
4. El socio selecciona método de búsqueda.
5. Si el cliente selecciona búsqueda por carácter, se habilitará
el ingreso de datos para la búsqueda.
6. Si el socio selecciona búsqueda por navegación el sistema
muestra las categorías.
7. El sistema mostrará ejercicios según el método de
búsqueda.
Variaciones 5ª. El sistema verificará que los caracteres sean válidos, de lo
contrario no mostrará nada.
6ª. Se habilitaran las categorías y el cliente deberá buscar el
ejercicio que desea realizar navegando entre las opciones que
aparecen según la categoría seleccionada.
58
59

16 Diagrama de Actividad
16.1 Actividad solicitud de rutina de ejercicios
60

16.2 Actividad examinar ejercicio


61

16.3 Actividad exhibir progreso


62

17 Diagrama de Secuencia
17.1 Solicitud de rutina

17.2 Solicitud de rutina (Sin datos)


63

17.3 Mostrar progreso

17.4 Mostrar progreso (Sin datos)


64

17.5 Examinar ejercicio


65

18 Diseño lógico (Modelo relacional)

Figura N° 12: Diagrama de clases “Sistema de gestión para gimnasio”

Fuente: Elaboración propia


66

18.1 Definición de clases


18.1.1 Socio

Descripción: Es la encargada de almacenar todos los usuarios del sistema web / móvil.

 idSocio:[Clave Primaria] [Clave Foránea, tabla Socio_Rutina] [Clave Foránea,


tabla Historial]; identificador del socio (Rut)
 NomSoc: Campo que representa el nombre del nuevo socio
 ApSoc: Campo apellido paterno del nuevo socio
 AmSoc: Campo apellido materno del nuevo socio
 CorreoSoc: Registra el correo electrónico del socio
 Fecha_Ini: Campo fecha, registra la fecha de la inscripción del nuevo socio en el
gimnasio.
 Fecha_Fin: Campo fecha, registra la fecha de término de la membrecía de un
socio en particular.
 Edad: Registra la edad del socio.
 Peso: Registra el peso del socio.
 Altura: Registra altura del socio
 Estado: Estado indica si es un socio vigente en el sistema o si corresponde a
uno cuya membrecía esta caducada.

18.1.2 Socio_Rutina

Descripción: Encargada de enlazar al socio con una rutina determinada.

 idSocio_Rutina: [Clave Primaria], identificador de enlace entre tablas Socio y


Rutina.
 IDSocio: [Clave Foránea, tabla Socio], identificador del socio (Rut).
 IDRutina: [Clave Foránea, tabla Rutina], identificador de la rutina asignada.
67

18.1.3 Rutina
Descripción: Encargada de registrar todas las rutinas asignadas a los socios del
gimnasio.

 idRutina: [Clave Primaria], identificador de la rutina.


 NomRutina: Campo encargado de registrar el nombre asignado a la rutina de
ejercicios para un socio en particular.

18.1.4 Rutina_Ejercicio

Descripción: Encargada de enlazar una rutina determinada con los ejercicios definidos
por el instructor.

 idRutina_Ejercicio: [Clave Primaria], identificador de rutina con una lista de


ejercicios.
 idRutina: [Clave Foránea, tabla Rutina], identificador de la rutina.
 idEjercicio: [Clave Foránea, tabla Ejercicio], identificador del ejercicio.
 CantSeries: Indica número de series de repeticiones que debe tener un ejercicio
determinado.
 Repeticiones: Indica número de repeticiones que debe tener un ejercicio
determinado.

18.1.5 Ejercicio

Descripción: Encargada de contener todos los ejercicios disponibles para ser asignados
a un socio en particular.

 idEjercicio: [Clave Primaria], identificador del ejercicio.


 NombreEjer: Registra nombre del ejercicio, el cual va asignado con un
identificador único.
68

18.1.6 Instructor

Descripción: Encargada de registrar a los instructores activos en el sistema.

 idInstructor: [Clave Primaria], identificador único de un instructor / entrenador


(Rut).
 NomIns: Registra nombre del instructor / entrenador.
 ApIns: Registra apellido paterno del instructor / entrenador.
 AmIns: Registra apellido materno del instructor / entrenador.
 CorreoIns: Registra correo institucional / personal del instructor / entrenador.

18.1.7 Clase

Descripción: Encargada de registrar las clases que se impartirán en el gimnasio, estas


deben ser ingresadas previamente por un usuario administrador.

 idclase: [Clave Primaria], identificador único de una clase en particular.


 NombreClas: Registra nombre de clase que se impartirá en el gimnasio.
 IdIns: [Clave Foránea, tabla Instructor], contiene enlace de clase con instructor.
Permite identificar que instructor / entrenador imparte una clase en particular.
 IdHorario: [Clave Foránea, tabla horario], permite identificar horario en que es
realizada una clase.

18.1.8 Horario

Descripción: Encargada de registrar horario semanal de una clase en particular, este


permitirá registrar hora y día en que se impartirá.

 idHorario: [Clave Primaria], identificador único del horario.


 idDia: [Clave Foránea, tabla días], permite identificar día en que es realizada una
clase.
69

 Hora: Campo encargado de registrar hora en que se realiza una clase.

18.1.9 Días

Descripción: Encargada de registrar los días válidos que se podrán registrar en el


sistema.

 idDias]: [Clave Primaria], identificador único de días posibles a registrar.


 NomDia: Nombre del día o "Control" que se desee añadir, este podría ser:
Mensual, anual, trimestral, etc.

18.1.10 Historial

Descripción: Encargada de registrar información histórica de un socio, de modo de


poder realizar un seguimiento a lo largo de su membrecía en el gimnasio.

 idHistorial: [Clave Primaria], identificador único de información histórica.


 PesoHist: Campo peso, encargado de registrar peso del socio y variación en el
tiempo.
 AlturaHist: Campo altura, encargado de registrar altura del socio y variación en
el tiempo en caso de existir.
 idSocio: [Clave Foránea, tabla socio], encargada de enlazar información del
socio del gimnasio.
70

19 Evaluación de riesgos

20 Criterios de evaluación de riesgos

Para la evaluación de riesgos se utilizará, la calificación de impacto y


probabilidad de cada riesgo. Para ambos casos se utilizaran tablas de 5 valores con las
equivalencias que se señalarán a continuación. A partir de esos valores se calculará el
nivel de exposición y la severidad de los riesgos representándolos en el mapa térmico.

Para clasificar los riesgos se utilizarán 5 categorías asociadas con el origen del
riesgo. Se utilizarán criterios de referencia específicos para cada categoría con el
propósito de facilitar la evaluación de impacto para cada riesgo.

Calificación de la probabilidad

Para la calificación de la probabilidad de los riesgos se utilizará una tabla de 5 valores:

Probabilidad

P Significado

5 Casi seguro
4 Muy probable
3 Probable
2 Poco probable
1 Cercano a nulo
Tabla 27 - Probabilidad Riesgo
71

Calificación del impacto

Para calificar el impacto se utilizará una tabla general de referencia con 5


valores; adicionalmente se utilizarán tablas específicas donde se describirán los
criterios para asignar la calificación de impacto según la categoría de cada riesgo:

Impacto

I Significado

5 Mayor
4 Importante
3 Significativo
2 Regular
1 Menor
Tabla 28 - Impacto Riesgo
Severidad del riesgo

Para medir la severidad del riesgo se utilizarán 4 valores que se determina según
la calificación del impacto y la probabilidad, es decir, el nivel de exposición:

Severidad

S Significado

4 Extrema
3 Alta
2 Moderada
1 Baja
Tabla 29 - Severidad Riesgo
72

Mapa térmico

En la siguiente figura se presenta el modelo para el mapa térmico donde según


la calificación de impacto y probabilidad, el riesgo es calificado por color en su nivel de
severidad. El color rojo representa severidad extrema, el color naranja severidad alta, el
color amarillo claro severidad moderada y el color verde claro severidad baja:

Figura N° 13: Mapa térmico

Fuente: Elaboración propia

Categorías de los riesgos

Las categorías que serán utilizadas son las siguientes:

Categoría Descripción

Riesgos relacionados con la ausencia o aplicación


Gestión
incorrecta de métodos de gestión de las tecnologías.
Incumplimiento de procedimientos o metodologías definidas
Operación
para los procesos operativos (Funcionamiento de sistema).
Riesgos relacionados con las posibles fallas en la
Infraestructura
infraestructura tecnológica utilizada por el gimnasio.
Eventos que atentan contra la confidencialidad, integridad y
Seguridad
disponibilidad de la información.
73

Relacionado con el desempeño y regularidad de los


Recurso humano
recursos humanos.
Tabla 30 - Categorías de los riesgos

Impacto de los riesgos según su categoría

Gestión

I Significado Criterios de calificación

5 Mayor Evento que impedirá el logro de los objetivos.


El logro de objetivos se ve afectado de manera
4 Importante
importante.
Evento que representará un retraso significativo en el
3 Significativo
logro de objetivos.
2 Regular El evento afecta levemente el logro de objetivos.
Evento que afecta la gestión del gimnasio sin llegar a
1 Menor
impactar en el logro de objetivos.
Tabla 31 - Impacto riesgo gestión
Operación

I Significado Criterios de calificación

Evento que paraliza la prestación de servicios, afectando


5 Mayor
al gimnasio de manera considerable.
Evento que provoca la interrupción parcial de los
4 Importante
servicios.
3 Significativo Evento que provoca interrupciones intermitentes
Evento que provoca la interrupción momentánea de los
2 Regular servicios. Este evento provoca una disminución en los
tiempos de respuesta que experimentan los usuarios.
1 Menor Evento que afecta sólo las operaciones.
Tabla 32 - Impacto riesgo operación
74

Infraestructura

I Significado Criterios de calificación

Falla severa en un componente vital de la infraestructura


5 Mayor tecnológica que impide la operación normal (Aplicable a
sistema de gestión y aplicación móvil).
Falla en un componente de la infraestructura tecnológica
4 Importante
que afecta parcialmente la prestación de servicios.
Falla en un componente de la infraestructura tecnológica
que afecta de manera intermitente la prestación de
3 Significativo
servicios (Aplicable a sistema de gestión y aplicación
móvil).
Falla en un equipo en particular que no afecta a la
2 Regular
totalidad del sistema de gestión.
Falla en un componente tecnológico que puede ser
1 Menor
sustituido de inmediato.
Tabla 33 - Impacto riesgo infraestructura
Seguridad

I Significado Criterios de calificación

5 Mayor La seguridad es vulnerada y se desconocen sus efectos, esto


debido a que un ente no autorizado tiene acceso a información
confidencial.
4 Importante Un ente no autorizado tiene acceso a información sensible,
provocando una interrupción de más de 1 día hábil en la
disponibilidad de la información.
3 Significativo Un funcionario de la institución tiene acceso a información a la
cual no está autorizado, provocando perdida de datos que se
pueden restaurar desde los respaldos.
2 Regular Entes no autorizados tienen acceso a información parcial en
modo consulta. Interrupción de un par de horas en la
75

disponibilidad de la información.
1 Menor Hay intentos de acceso a la información, provocando una
interrupción momentánea en la disponibilidad de la información.
Tabla 34 - Impacto riesgo seguridad
Recurso Humano

I Significado Criterios de calificación

Se prescinde de una persona con un rol importante en el


5 Mayor
desarrollo del sistema de gestión o en el uso de este.
No se tiene participación del patrocinador del proyecto para el
4 Importante
logro adecuado de los objetivos.
Se tiene participación intermitente del patrocinador del proyecto
3 Significativo
para el logro adecuado de los objetivos.
2 Regular Evento que afecta de manera temporal y no mayor a 4 horas.
Se asignan objetivos adicionales que afectan levemente la carga
1 Menor
de trabajo.
Tabla 35 - Impacto riesgo RRHH
76

20.1 Identificación y evaluación de riesgos

La identificación de riesgos corresponde a la confección de una lista de los


posibles eventos que pueden afectar las operaciones y los servicios ofrecidos y la
calificación se realiza utilizando los dos criterios primarios que son la probabilidad (P) y
el impacto (I) de cada riesgos, de estos valores se deriva el nivel de exposición (P * I) y
la severidad de los riesgos (Se utiliza la escala de colores del mapa térmico para su
representación):

ID Descripción del riesgo Mitigación del riesgo Categoría P I S


Se debe a especificación
Desarrollar un producto que de requerimientos no
1 no cumple con las adecuada. Establecer en Gestión 3 3 9
especificaciones. lo posible requerimientos
fijos.
Desarrollar un módulo
Implementar validaciones
2 basado en requerimientos Gestión 2 4 8
por módulos.
incorrectos.
Establecer política de
Equipo dañado no puede mantenimiento de
3 Operación 3 3 9
ser reparado. equipamiento
computacional.
Daño físico en los equipos Establecer políticas de uso
4 de la plataforma y cuidado de equipamiento Operación 3 4 12
tecnológica. computacional.
Generar manual de
No existe guía de usuario usuario con principales
5 Gestión 3 3 9
para el uso del sistema. servicios que el sistema
ofrece.
No contar con la Establecer políticas de
6 Operación 3 4 12
metodología y control de cambios en el
77

procedimientos necesarios sistema.


para la administración de
los cambios.
Generar política de uso de
Libertad en el uso de
7 componentes tecnológicos Gestión 3 3 9
componentes tecnológicos.
(Buenas prácticas).
Incumplimiento de las Establecer controles
8 políticas de seguridad internos para garantizar el Gestión 3 3 9
definidas. cumplimiento de estas.
Los recursos de la Se contará con servidor
infraestructura tecnológica web que sobrepasa con
9 no son suficientes para creces las Gestión 3 4 12
atender las demandas de especificaciones de
servicios. hardware recomendadas.
Evaluar posibilidad de
Suspensión de servicio de
10 contar con un enlace de IFRA 3 4 12
internet.
respaldo.
Fallas en los equipos de Evaluar contar con
11 IFRA 2 5 10
comunicaciones. equipos de respaldos.
Evaluar contar con
12 Falla en los servidores. IFRA 2 5 10
servidor de respaldo.
Establecer políticas de
Equipos de usuarios
13 instalación de software de Seguridad 4 3 12
inseguros.
terceros (restringir)
Ausencia de controles
cruzados que comprueben
la integridad de la Establecer controles de
14 Seguridad 2 4 8
información y el revisión periódicos.
funcionamiento correcto de
las aplicaciones.
15 Errores en la creación de Establecer revisiones Seguridad 3 4 12
78

usuarios y en la asignación mensuales sobre perfiles


de roles de acceso. de usuarios y súper
usuarios.
El personal no cuenta con el
tiempo suficiente para
Establecer cargas de
16 recibir de manera completa, RRHH 2 3 6
trabajo balanceadas.
la capacitación
correspondiente.
Los usuarios no están
Difundir de manera
informados sobre los
mensual lectura y
17 procedimientos que se Gestión 2 3 6
comprensión de políticas
deben seguir para reportar
internas.
los incidentes.
Establecer una base de
No se documentan las datos de conocimientos
18 soluciones aplicadas a los con el origen del problema Operación 2 2 4
problemas. y la solución
implementada.
Generar política de
Alteración o pérdida de la respaldos que nos
19 información registrada en la permitirá recuperar la Seguridad 2 4 8
base de datos o equipos. información en su
totalidad.
Instalaciones físicas mal Seguir patrones de
diseñadas que pongan en construcción y disposición
20 Gestión 2 3 6
peligro la integridad de los de los equipos
equipos y servidores. tecnológicos.
Acceso no autorizado a sala Establecer zonas de
21 Seguridad 3 3 9
de servidores. acceso restringido.
No aplicación de las Establecer políticas de
22 Operación 3 4 12
políticas para la generación revisión que nos
79

de respaldos. garanticen que los


respaldos están utilizables.
Generar planificaciones
Exceder el tiempo
con holgura, que nos
23 planificado para la ejecución Operación 4 3 12
garanticen un margen de
del proyecto.
error.
Requerimientos adicionales,
Establecer en lo posible
24 no contemplado en las Gestión 3 5 15
requerimientos fijos.
etapas anteriores.
Se recomienda tener otro
Falla en el hardware del
equipo equipado con el
25 equipo utilizado para el IFRA 2 3 6
mismo software requerido
desarrollo de software.
para la programación.
Generar alternativas para
Ausencia del cliente para
este tipo de situaciones.
26 reuniones programadas Gestión 4 3 12
Cuestionarios por email,
(Remotas).
llamados telefónicos, etc.
Tener actualizado el
27 Ataque de virus antivirus y realizar análisis Seguridad 2 2 4
semanales.
Existe la posibilidad de que
Mantener respaldos en
un desastre natural
modo imagen, fuera de la
28 destruya el lugar de trabajo Operación 1 5 5
ubicación física donde se
o los equipos
trabaja (Nube).
computacionales.
Se dispondrá de UPS que
permitan extender el
29 Corte de energía eléctrica. IFRA 2 2 4
tiempo de apagado del
equipo,
Tabla 36 - Evaluación riesgo
P: Probabilidad, I: Impacto, S: Severidad, IFRA: Infraestructura
80

20.2 Mapa térmico riesgos absolutos

En base a lo descrito en el punto anterior, se establecen los siguientes mapas


térmicos que nos permitirán identificar donde se concentran aquellos riesgos más
relevantes en nuestro sistema de gestión.

Gestión

24
5

2 9
4

Impacto 17-20 1-5-7-8 26


3

1
1 2 3 4 5

Probabilidad

Operación

28
5

4,6,22
4

Impacto 3 23
3

18
2

1
1 2 3 4 5
Probabilidad
81

Infraestructura

11,12
5

10
4

Impacto 25
3

29
2

1
1 2 3 4 5

Probabilidad

Seguridad

14,19 15
4

Impacto 21 13
3

27
2

1
1 2 3 4 5

Probabilidad
82

Recursos humanos

Impacto 16
3

1
1 2 3 4 5

Probabilidad

Luego del análisis realizado es importante recordar que el riesgo es el impacto


negativo en el ejercicio de la vulnerabilidad de un sistema y considerala probabilidad e
impacto.Por tanto, se podrá deducir a grandes rasgos que la administración de los
riesgos expuestos corresponde al proceso de identificación, evaluación y toma de
decisiones para reducir el riesgo a un nivel aceptable.
83

21 Seguridad

Cuando una aplicación debe manejar datos de tanta importancia como son los
datos personales de sus socios, es importante tener especial cuidado con el trato que
se les da a estos. Esto tanto para mantener la continuidad del negocio y la
confidencialidad de la información almacenada. En Chile actualmente existen una serie
de leyes/Decretos que menciona las normas específicas que se debe tener al manejar
este tipo de datos y que fueron expuestas en sección "Factibilidad legal".

21.1 Conceptos de seguridad web

Para mantener y asegurar un nivel adecuado de seguridad del sistema, se deben


considerar 3 elementos de vital importancia en las tecnologías de la información:

 Confidencialidad: Garantía de que la información va a ser revelada únicamente


por los usuarios adecuados
 Integridad: Asegura que la información en tránsito es completamente segura y
no puede ser modificada por gente no autorizada.
 Disponibilidad: Garantiza que la información debe ser accesible en el momento
en que ésta sea solicitada.

21.1.1 Aseguramiento del servidor web

Apache es el servidor web con mayor presencia en el mercado mundial, tal como
se indica en la sección "8.3 Servidor web” y aunque su configuración es relativamente
sencilla, fortalecer sus condiciones de seguridad implica entender y aplicar un conjunto
de reglas generales conocidas, aceptadas y disponibles en internet.

Por otra parte, a pesar de ser un tema aparentemente resuelto, la seguridad en


los servidores HTTP constituye un problema en aumento, y no todas las empresas o
84

sitios de internet lo toman en serio. Es por esto que en el anexo se visualizará parte de
la configuración esencial que el servidor debe tener.

21.1.2 Aseguramiento de la información en tránsito

Una parte importante para solucionar o al menos garantizar una seguridad


mínima son las técnicas criptográficas que se utilizan en la conexión que se mantiene
entre el cliente y el servidor. De forma estándar se utiliza el protocolo HTTP que
funciona por el puerto 80, pero este protocolo no es demasiado seguro cuando se trata
de enviar datos personales o contraseñas. Para solucionar este tema, se puede utilizar
el protocolo HTTPS que funciona por el puerto 443 y que sirve precisamente para
asegurar los datos que viajan entre el servidor y el cliente, utilizando para ello
protocolos SSL o TLS.

Para el sistema de gestión se utilizará un certificado SSL del tipo de


organización, estos entregan confirmación inmediata de la identidad, y protección SSL
para sitios web. Estos son certificados organizacionales validados que entregan al sitio
web mayor credibilidad que el SSL más simple que es de validación de dominio. La
diferencia radica en que a través de este certificado podemos asegurar que el sitio web
es operado por una empresa legítima y no es un sitio fraudulento.

Dentro de las características principales del certificado a utilizar tenemos las siguientes:

 SSL de dominio: Certificado SSL de 2048 bits


 RSA: Es uno de los sistemas de cifrado asimétrico más exitosos de la actualidad.
A diferencia de los sistemas tradicionales de cifrado simétrico, RSA trabaja con
dos claves diferentes: una pública y una privada. Ambos trabajan siendo
complementarios entre sí, lo que significa que un mensaje cifrado con uno de
ellos sólo puede ser descifrado por su contraparte. Dado que la clave privada no
puede calcularse a partir de la clave pública, ésta generalmente se encuentra
disponible para el público.
85

 SHA-2: Es un algoritmo matemático que transforma cualquier bloque arbitrario


de datos en una nueva serie de caracteres con una longitud fija.
Independientemente de la longitud de los datos de entrada, el valor de salida
tendrá siempre la misma longitud.

21.2 Aseguramiento página WEB

Para el aseguramiento de la página web se ha hecho hincapié en el proyecto


abierto de seguridad de las aplicaciones web (OWASP), la cual es una comunidad
abierta, dedicada a permitir a las organizaciones o personas naturales realizar el
desarrollo, adquisición y mantenimiento de aplicaciones. Todas las herramientas,
documentos, fotos y aplicaciones del OWASP son libres y abiertas a cualquier
interesado en mejorar la seguridad de las aplicaciones web en las cuales trabaja o haya
trabajado en algún momento.

Esta fundación dispone de gran cantidad de información actualizada disponible


en su sitio web sobre los riesgos que se deben tener en cuenta sobre la seguridad de
aplicaciones web. Tanto la documentación, como el software que se puede encontrar
en su web son totalmente gratuitos y libres, bajo una licencia de software libre. Con
cierta frecuencia esta fundación pública una lista de los 10 mayores riesgos a los que
están expuestas las aplicaciones web. Para cada uno de estos riesgos se hace un
informe en el cual se explica cuál es el grado de dificultad para ser llevado a cabo, el
impacto que pueda tener, la capacidad para ser detectado, las formas de evitarlos,
ejemplos, entre otros aspectos.

Como mención especial, se destaca que este listado, denominado "OWASP Top
10 Application Security Risks" es actualmente el documento más importante en temas
de seguridad de aplicaciones web.

En la siguiente imagen, se podrá visualizar de forma gráfica la manera en que los


atacantes pueden utilizar diferentes rutas a través de la aplicación para perjudicar su
negocio u organización. Cada uno de estos caminos representa un riesgo e incluso
existiendo los controles adecuados, estamos expuestos a ellos.
86

Figura N° 14: Riesgo de seguridad en aplicaciones web

Fuente: Documento "OWASP Top 10 Application Security Risks 2017"

Riesgos publicados por OWASP

A continuación se señalaran los últimos riesgos publicados por OWASP más


relevantes y que serán tomados en cuenta a la hora de montar nuestro servidor web:

21.2.1 Inyección (Injection)

Es una vulnerabilidad que permite al atacante enviar o "inyectar" instrucciones


SQL de forma maliciosa y malintencionada dentro del código SQL programado para la
manipulación de bases de datos, de esta forma todos los datos almacenados estarían
en peligro. La finalidad de este ataque es poder modificar el comportamiento de
nuestras consultas a través de parámetros no deseados, pudiendo así falsificar
identidades, obtener y divulgar información de la base de datos (contraseñas, correos,
información relevante, entre otros), borrar la base de datos, cambiar el nombre a las
tablas, anular transacciones, o incluso el atacante puede convertirse en administrador
de la base de datos.
87

Recomendaciones:

 Validar los datos de entrada usando listas blancas y expresiones regulares.


 Seguir el principio de mínimo privilegio en las conexiones con bases de datos y
otros componentes.
 Evitar el uso de intérpretes siempre que sea posible. En caso de resultar
necesario, utilizar APIs seguras.

21.2.2 Cross Site Scripting (XSS)

Es un ataque de inyección de código malicioso para su posterior ejecución que


puede realizarse a sitios web e incluso al propio navegador. Este tipo de
vulnerabilidades ocurren cuando la aplicación incluye en la respuesta los mismos datos
que se ha suministrado el usuario con anterioridad sin haber sido validados
correctamente.

Recomendaciones:

 Existen complementos para los navegadores que se encargan de bloquear este


tipo de scripts en sitios web. Uno de ellos es NoScript, que permite realizar
configuraciones personalizadas y además es gratuito.
 Programar explícitamente la forma de la salida que se devuelve al cliente.

21.2.3 Pérdida de autenticación (Broken Authentication)

Este ataque permite obtener contraseñas de los clientes o identificadores de


sesión, con el objetivo de suplantar la identidad de otro usuario. Los atacantes pueden
ser usuarios anónimos que intentan acceder a la aplicación, usuarios con cuentas que
intentar robar cuentas de los demás para obtener más privilegios, o aquellos que
desean ocultar sus acciones.
88

Recomendaciones:

 Las credenciales de usuarios deben viajar por canales de comunicación seguros


(SSL) y almacenados de forma cifrada.
 Implementar correctamente la función de logout en cada página.
 Utilizar time-out por inactividad que posibiliten la caducidad de la sesión.

21.2.4 Pérdida de autenticación (Orientado a sesiones)

Las funciones de la aplicación relacionadas a autenticación y gestión de sesiones


son implementadas incorrectamente, permitiendo a los atacantes comprometer usuarios
y contraseñas, token de sesiones, o explotar otras fallas de implementación para asumir
la identidad de otros (Temporal o permanentemente).

Recomendaciones:

 No utilizar credenciales por defecto, particularmente en el caso de las cuentas de


administradores.
 Implementar controles contra contraseñas débiles. cuando el usuario ingrese una
nueva clave, verificar con una lista de contraseñas no recomendadas.
 Establecer políticas de longitud, complejidad y rotación de las contraseñas.
 Limitar o incrementar el tiempo de respuesta de cada intento fallido de inicio de
sesión.

21.2.5 Exposición de datos sensibles

Los atacantes pueden robar o modificar datos protegidos inadecuadamente para


llevar a cabo fraudes con tarjetas de crédito, robos de identidad u otros delitos. Los
datos sensibles requieren métodos de protección adicionales, como el cifrado en
almacenamiento y tránsito.
89

Recomendaciones:

 Cifrar todos los datos sensibles cuando sean almacenados.


 Cifrar todos los datos en tránsito utilizando protocolos seguros como SSL o TLS.
 Deshabilitar el almacenamiento en cache de datos sensibles.

21.2.6 Pérdida de control de acceso

Las restricciones sobre lo que los usuarios autenticados pueden hacer no se


aplican correctamente. Los atacantes pueden explotar estos defectos para acceder, de
forma no autorizada, a funcionalidades y/o datos, cuentas de otros usuarios, ver
archivos sensibles, modificar datos, cambiar derechos de acceso y permisos, entre
otros.

Recomendaciones:

 Incluir pruebas de control de acceso en pruebas unitarias y de integración.


 Registrar errores de control de acceso y alertar a los administradores cuando
corresponda (Por ejemplo: fallas de acceso reiteradas con un usuario).

21.2.7 Configuración de seguridad incorrecta

La configuración de seguridad incorrecta es un problema muy común y se debe


por establecer la configuración de forma manual, o por omisión (O directamente por la
falta de configuración). Por ejemplo: Cabeceras HTTP mal configuradas, mensajes de
error con contenido sensible, falta de parches y actualizaciones, dependencias y
componentes desactualizados, entre otros.
90

Recomendaciones:

 Utilizar una plataforma minimalista sin funcionalidades innecesarias,


componentes, documentación o ejemplos. Elimine o no instale frameworks y
funcionalidades no utilizadas.
 La aplicación debe tener una arquitectura segmentada que proporcione una
separación efectiva y segura entre componentes y acceso a terceros (Establecer
listas de acceso).

21.2.8 Registro y monitoreo insuficientes

El registro y monitoreo insuficiente, junto a la falta de respuesta ante incidentes


permiten a los atacantes mantener el ataque en el tiempo, pivotear a otros sistemas y
manipular, extraer o destruir datos. Los estudios muestran que el tiempo de detección
de una brecha de seguridad es mayor a 200 días, siendo típicamente detectado por
terceros en lugar de por procesos internos.

Recomendaciones:

 Asegurarse de que las transacciones de alto impacto tengan una pista de


auditoría con controles de integridad para prevenir alteraciones o eliminaciones
(Logs).
 Establecer una monitorización y alerta efectivas, de tal manera que las
actividades sospechosas sean detectadas y respondidas dentro de periodos de
tiempo aceptables.
 Asegurarse de que todos los errores de inicio de sesión, de control de acceso y
de validación de entradas de datos del lado del servidor se puedan registrar para
identificar las cuentas sospechosas (Logs).
91

21.3 Copias de seguridad

Un tema importante e imprescindible para mantener la integridad del sistema de


gestión ante posibles errores imprevisibles, son las copias de seguridad que se puedan
implementar en él. En este caso, los directorios que se deben respaldar son, por un
lado, el de apache donde se incluyen documentos html, php, imágenes, entre otros. Por
otro lado, se debe respaldar la base de datos completa, ya que realmente es ahí donde
se encuentran almacenado los datos que utiliza la aplicación y son los que requieren
mayor cuidado y seguridad en su manipulación.

Estas copias de seguridad serán efectuadas diariamente de forma automática y serán


almacenadas en un disco duro en red, únicamente dedicado a respaldo del sistema de
gestión.
92

22 Aplicación Web

La aplicación web tendrá las siguientes características, las cuales serán de gran
utilidad para los usuarios visitantes, como también para aquellos que poseen cuentas
creadas en él. En el siguiente diagrama se visualizará la estructura de información que
contendrá el sitio web en cada uno de sus opciones:

Entrenadores Actividades

Promociones Horarios

Instalaciones Noticias

Gestión de Quienes
Socios
Gimnasio somos

22.1 Usabilidad

Cuando se refiere a la usabilidad que se brindará a los usuarios, se debe partir


de la base que los usuarios pueden ser o no expertos en la navegación por internet, por
lo tanto, se debe trabajar en facilitar el uso de esta.

De esta forma se tratará de aumentar la intuición, permitiendo al usuario una


mejor experiencia en la aplicación y transmitir así una mayor confianza.

En primer lugar, se tendrá que tener en cuenta que el objetivo del sitio es llamar
la atención sobre los principales servicios que ofrece el gimnasio, que se pueda
93

encontrar información sobre ellos y que sea sencillo aclarar dudas o gestionar
consultas. Desde ese punto de vista, se debe tener una página de inicio clara que
permita localizar al usuario de forma clara dónde se encuentran las distintas secciones
dentro de nuestra web.

Para captar nuevos socios o eventuales socios, es importante que se distingan


tres tipos de perfiles de usuarios en la aplicación:

1. Visitantes que ingresan por primera vez y no tienen muy claro lo que se van a
encontrar; El objetivo para estos usuarios es captar su atención y evitar que se
conviertan en un "usuario rebote" abandonando la página web. Para ellos se
debe tener preparado datos abundantes, con importante carga visual que ayude
a crear una mejor imagen sobre las instalaciones y los servicios ofertados.
2. Visitantes que vienen buscando algún tipo de información, novedad u oferta,
pero no es seguro que contrate algún servicio; Para ello se debe mostrar
claramente todas aquellas secciones a las que se puede acceder, intentando
captar su atención sobre instalaciones y servicios que le puedan ser de interés.
3. Visitantes que vienen directos a hacer una reserva; Este tipo de usuario tiene
claro que es lo que busca y necesita perder el menor tiempo posible en el sitio
web. Por lo tanto, se debe señalar un camino sencillo para encontrar lo que
busca, evitándole clics innecesarios.
94

22.1.1 Espacio en pantalla

En pantalla hay gran cantidad de elementos imprescindibles que aportan cierto


valor al sitio, pero sin duda, el elemento más importante de la pantalla debe ser la
información, por lo que el resto se debe intentar evitar en la medida de lo posible.

Otros puntos importantes dentro de la página son: el logo, sin uno la página
perdería totalmente la identidad y confundiría al usuario sobre dónde está exactamente,
sin enlaces no se podría navegar a otros contenidos o a otros espacios de la web, sin
espacios en blanco no se podría estructurar de forma clara la información.

Como muchas otras cosas, se trata de buscar un término medio que permita
aprovechar las ventajas, sin caer en los problemas que pueden traer los excesos. Por
un lado, si se intenta que todo sea información, los usuarios se sentirán muy incómodos
en el sitio, ya que le será muy difícil encontrar la información que necesita. Por otro
lado, si se decide que ese contenido sea secundario, probablemente se estaría
sentenciando las futuras visitas de los usuarios, ya que si no encuentran contenido útil
no tendrá sentido que vuelvan a visitar la página.

22.1.2 Creación de contenidos

Si hay algo que hay que tener claro en cuanto al usuario, es que va a leer lo
mínimo que sea posible para recolectar la información que estaba buscando. Partiendo
de esta premisa, se debe simplificar la visibilidad del sitio web, para hacer más rápida la
extracción de esta información, evitando hacer perder tiempo a los usuarios. Para llevar
esto a cabo se ha alimentado el sitio web con imágenes y una pequeña reseña la cual
será breve y contundente, permitiendo así al usuario o visitante del sitio captar la idea
de forma directa y sin mayor lectura.

Para hacer atractiva la lectura del contenido que se ofrece en el sitio web, es
importante prestar especial interés al contraste visual que se crea entre los diferentes
elementos. Entre estos elementos se encuentran los bloques de textos, imágenes,
95

menús, enlaces y títulos. Si se pusiera en el sitio únicamente un texto con suma


monotonía visual, sería fácil que la mayoría de los usuarios rechazara leerlo. En primer
lugar, porque es necesario que el usuario sea capaz de diferenciar las distintas partes
del contenido para facilitar así el acceso a la parte de la información de la que
realmente está interesado.

A continuación, se visualizará una muestra de contenido bien y mal organizado:

Figura N° 15: Contenido.

Fuente: Buscador de imágenes Google


96

22.1.3 Legibilidad del contenido

Uno de los aspectos más importantes a la hora de ofrecer un contenido a los


usuarios, es ofrecerlos en un formato lo más coherente posible, con el objetivo de
reducir al mínimo el esfuerzo que debe hacer el usuario a la hora de leer el contenido.
El tipo de letra es uno de los factores más importantes para aumentar la legibilidad del
contenido del sitio web. Aquí se debe tener en cuenta que el sitio web puede ser
accedido a través de diversos medios. Por lo tanto hay que matizar que para cada caso
puede ser más interesante usar una tipografía, ya que unas mejoran la lectura más que
otras.

En el caso de la legibilidad en la pantalla se utilizará un tipo de letra cuyo tamaño


sea adecuado para lectura en pantalla y sea suficientemente regular. El tipo de letra
más adecuado son las llamadas "Sans-Serif", estas carecen de los pequeños remates
que se encuentran en las terminaciones de las letras. Un ejemplo claro son Verdana y
Arial. Como se verá en la representación gráfica, este tipo de tipografías son muy
regulares, que es precisamente lo que se pretende. En cuanto al tamaño, Verdana es
una opción muy válida, ya que su espaciado es aceptable para la lectura en pantalla:

Figura N° 16 Tipo de letra

Fuente: Elaboración propia


97

23 Implementación
23.1 Vista visitante

La vista visitante será aquella que permite consultar la mayor parte de la


información que es pública en el sitio web, como las actividades, noticias, promociones,
entre otras. Para esta vista no será necesario ningún tipo de registro de usuario,
aunque se dará la opción de insertar un usuario y contraseña para poder acceder a la
vista registrado.

El menú superior será el encargado de crear la conexión entre las distintas vistas, ya
que permitirá navegar en cualquiera de ellas. Este menú no se ha sobrecargado con
demasiada información u opciones, sino que con los ítems de más relevancias del sitio
web.

Figura N° 17: Vista usuario anónimo

Fuente: Elaboración propia


98

23.2 Vista socio registrado

A la vista de socio registrado se accederá una vez que el visitante ingrese sus
credenciales validas en el sitio web. Está vista le permitirá realizar más acciones que un
usuario visitante, como por ejemplo: Visualizar datos personales - Visualizar rutina de
ejercicios asignada - Gestionar reservas a clases –entre otras funcionalidades.

Figura N° 18: Vista usuario registrado

Fuente: Elaboración propia

La acción logout permite al socio cerrar su sesión y volver a ser un usuario


visitante (anónimo). Para volver a visualizar / actualizar sus datos personales deberá
hacer login nuevamente con su usuario y contraseña.
99

23.3 Vista administrador

A la vista administrador se accederá cuando se haya iniciado sesión con las


credenciales válidas y cuando se disponga de privilegios de administrador en el
sistema. El método de acceso es el mismo que el usuario registrado común:

Figura N° 19: Vista administración

Fuente: Elaboración propia

La vista administrador contiene un conjunto de actividades propias de una cuenta


de administración y que serán de gran utilidad a la hora de añadir/modificar contenido
del sitio web. Algunas de las acciones que podrá realizar serán la inserción,
modificación, eliminación y listar en los diferentes mantenedores disponibles. La acción
logout permite al usuario administrador cerrar su sesión y volver a ser un usuario
visitante (anónimo). Para volver a realizar operaciones de administración deberá hacer
login nuevamente con su usuario y contraseña.
100

23.4 Vista recepcionista

A la vista recepcionista se accederá cuando se haya iniciado sesión con las


credenciales válidas, este usuario tendrá las facultades de ingresar un nuevo socio al
sistema, administrar los horarios de clases, entre otros.

Figura N° 20: Vista recepción

Fuente: Elaboración propia

La acción logout permite al usuario cerrar su sesión y volver a ser un usuario


visitante (anónimo). Para volver a realizar sus operaciones asignadas deberá hacer
login nuevamente con su usuario y contraseña.
101

23.5 Vista entrenador

A la vista entrenador se accederá cuando se haya iniciado sesión con las


credenciales validas, la persona con este perfil de usuario tendrá la tarea de evaluar
físicamente al nuevo socio e ingresar los datos obtenidos en el sistema. Entre sus
principales funciones están: Ingresar - Modificar - Eliminar - Listar ejercicios, gestionar
rutinas de socios.

Figura N° 21: Vista entrenador

Fuente: Elaboración propia

La acción logout permite al usuario cerrar su sesión y volver a ser un usuario


visitante (anónimo). Para volver a realizar operaciones sus operaciones asignadas
deberán hacer clic en login nuevamente con su usuario y contraseña.
102

23.6 Estructura o componentes de una aplicación Android

Las aplicaciones en Android están basadas en componentes y son los elementos


básicos con los que se construye un proyecto. Una aplicación Android será una
combinación de uno o más de estos componentes, los cuales deben ser declarados en
el archivo AndroidManifest.xml donde se definen todos los componentes de la
aplicación así como los permisos que requiere, o los recursos y librerías que utiliza.

Activity: Es el componente visual de una aplicación, es decir, son las pantallas o


ventanas que ve el usuario.

Service: Son componentes sin interfaz gráfica, se ejecutan en segundo plano y realizan
múltiples acciones.

Content provider: Es la forma que tiene Android de compartir datos entre aplicaciones,
compartiendo datos sin la necesidad de dar detalles sobre su almacenamiento.

Broadcast reciver: Este componente se encarga de detectar y reaccionar a los


eventos generales como pueden ser: batería baja, entrada de llamada, es decir, es el
encargado de recibir las llamadas que son enviados a cualquier aplicación que este en
modo de “escucha”.
103

24 Conclusión

Luego de que se analizara detenidamente las diferentes fases de este proyecto, se


llega a la conclusión de que este es factible, ya que se cuenta con el apoyo del cliente y
la administración, además podremos destacar los siguientes motivos:

Operativamente se determina lo siguiente:

• Cumple las condiciones mínimas que el sistema necesita para su operación

• Apoyo administrativo para el desarrollo del sistema.

• RRHH tendrá conocimientos informáticos que son necesarios para el uso y


manejo del sistema

Técnicamente se dispone de los recursos de software, hardware y RRHH necesarios


para ser llevado a cabo.

Legalmente se cumple todos los artículos y decretos expuestos en las leyes citadas en
este documento.

En cuanto al desarrollo de la aplicación en Android al ser un sistema operativo open


source, brindó la libertad de adquirirlo y usarlo en total libertad. Se puede concluir que
fue mucho más fácil la implementación en este sistema operativo, ya que permite
desarrollar aplicaciones con herramientas gratuitas y potentes como Eclipse y el SDK
de Android (Suite Android) que fue de gran utilidad.
104

25 Bibliografía

25.1 Fuentes literarias

PRESSMAN, Ingeniería del Software Un enfoque Práctico, 5ª Edición. McGraw Hill.


Administración de riesgos y auditoría interna, SennMantelli.
Ingeniería de software, SommervilleIan.
Utilización de UML en ingeniería del software con objetos y componentes, Stevens
Perdita.
Contabilidad y finanzas para no financieros 2° Edición
105

25.2 Fuentes electrónicas

Página web Fecha de acceso


https://db-engines.com 18-08-2018
https://docs.bluehosting.cl/tutoriales/servidores/como-instalar-y- 22-08-2018
configurar-apache-en-centos.html
https://httpd.apache.org 22-08-2018
https://www.owasp.org/index.php/Main_Page 28-08-2018
http://www.leychile.cl 02-09-2018
https://pixabay.com/es/ 18-08-2018
http://php.net/ Todo el tiempo
https://getbootstrap.com/docs/4.1/examples/ Todo el tiempo
https://openclassrooms.com/en/courses/4990961-planea-tu- 19-08-2018
proyecto-con-uml/4996511-diagramas-de-casos-de-uso
https://finanzasyproyectos.net 14-09-2018
https://www.camara.cl 02-09-2018
www.google.cl Todo el tiempo
https://www.mysql.com/ Todo el tiempo
https://www.centos.org/ 18-08-2018
https://www.pcfactory.cl/ 14-09-2018
https://developer.android.com/studio/intro/ 01-10-2018

Tabla 37 - Bibliografía, fuentes electrónicas


106

26 Anexos
26.1 Configuración Apache

Dentro la configuración que se aplicará en el servidor web para garantizar un


funcionamiento acorde a las vulnerabilidades encontradas a lo largo de los años, se
hará hincapié en el documento "Buenas prácticas" en la configuración de apache
publicada por el sitio web oficial: " https://httpd.apache.org".

Ocultar la información de la página predeterminada

Al instalar Apache y conectarse usando su navegador, se podrá observar la


página predeterminada de Apache indicando que el servidor está funcionando (¡It
Works!). Sin embargo, al tratar de visitar la siguiente dirección:
powerfull.cl/paginadesconocida.php y su configuración no es la adecuada, se
visualizará lo siguiente:

Figura N° 22: Captura acceso a página

Fuente: Buscador de imágenes de Google

Evidentemente, esta página representa una gran brecha de seguridad. Un


eventual atacante podría saber que se utiliza un servidor web Apache, sabría la versión
exacta, el puerto sobre el cual lo está utilizando, sistema operativo y la dirección IP del
servidor.
107

Para normalizar la situación antes descrita, se deben llevar a cabo los siguientes
cambios en el archivo de configuración HTTPD.CONF:

 ServerSignature Off (Configura la información que se muestra al fondo de las


páginas o documentos que son generados por el servidor)
 ServerTokens Prod (Configura la cabecera de respuesta HTTP)

Luego de reiniciar el servidor Apache, se ingresa nuevamente al sitio y se podrá


observar que la información expuesta anteriormente, ya no está disponible.

Figura N° 23: Captura acceso a página 2

Fuente: Buscador de imágenes de Google

Desactivar la ejecución CGI

La ejecución CGI (Common Gateway Interface, o Interfaz de Entrada Común) es


una tecnología que define la interacción entre un cliente y un servidor, este último
interactuando con generadores de contenido llamados CGI o CGI scripts. En otras
palabras, es otra forma de crear contenido dinámico. Para desactivar estos contenidos,
lo debemos realizar a través del archivo de configuración:

Figura N° 24: Deshabilitar CGI

Fuente: Elaboración propia


108

Uso de archivos .htaccess

Continuando con la tercera buena práctica recomendada por Apache, tenemos la


prohibición a que los usuarios configuren archivos .htaccess, ya que estos pueden
anular o sobrescribir las características de seguridad que se han establecido en los
archivos de configuración.

Figura N° 25: Configuración archivos .htaccess

Fuente: Buscador de imágenes de Google

Deshabilitar el acceso predeterminado en los archivos del servidor

A menos que se hagan cambios necesarios, el servidor Apache puede encontrar


la ruta a un archivo y mostrarlo a los clientes a través de las reglas de mapeo URL. Esto
representa un riesgo, ya que un cliente podría tener acceso completo a su sistema de
archivos (Por ejemplo: http://localhost/~root). Se soluciona ingresando la siguiente
directiva:

Figura N° 26: Acceso predeterminado

Fuente: Buscador de imágenes de Google


109

Configurar SSL en Apache

Para configurar el SSL en el servidor web, se debe ubicar dentro del archivo de
configuración Apache el bloque <VirtualHost> del sitio web en el cual se desea activar
el SSL. Si deseamos que nuestro sitio sea accedido por conexión no segura (HTTP) y
segura (HTTPS), se necesita un servidor virtual para cada tipo de conexión.

Figura N° 27: Configurar el bloque <VirtualHost> para el sitio con SSL

Fuente: Sitio web https://www.digicert.com/es/instalar-certificado-ssl-apache.htm

Cuenta de usuario y grupo de usuario

Algunas versiones de Apache corren bajo el usuario nobody, esto compromete


mucho su seguridad por lo tanto se debe realizar lo siguiente:

Figura N° 28: Usuario y grupo

Fuente: Elaboración propia


110

Desactivar las opciones para explorar directorios

Esto se puede realizar con las opciones de directiva dentro de la etiqueta


directorio, y posee dos tipos posibles de valores: none o indexes.

Figura N° 29: Explorar directorios (Desactivar)

Fuente: Elaboración propia

Desactivar los includes del lado del servidor

Figura N° 30: Includes

Fuente: Elaboración propia

No permitir que apache siga enlaces simbólicos

FollowSymLinks es una directiva de los servidores http de Apache, la cual tiene


la función de seguir los enlaces simbólicos de un directorio o carpeta. Es un
componente fundamental de las opciones de directorios y permisos de apache. Para
negar los enlaces simbólicos, se realiza de la siguiente forma:

Figura N° 31: Enlaces simbólicos

Fuente: Elaboración propia


111

Disminuir el tiempo de espera

Por defecto el tiempo de espera es de 300 segundos. Por seguridad y para


prevenir cualquier ataque lo podemos disminuir de la siguiente manera:

Figura N° 32: Tiempo de espera

Fuente: Elaboración propia


112

26.2 Aspecto página web

A continuación, se podrá apreciar mediante capturas de pantalla, el aspecto de


las diferentes secciones de la página web y mostrando así, la forma en que es
entregada la información a los visitantes de esta:

 Página principal de sitio web, donde aparecerán las principales promociones e


información acerca del gimnasio.

Figura N° 33: Imagen sitio web (Página principal)

Fuente: Elaboración propia

 Opción "Quienes somos", es la encargada de presentar el gimnasio a los


visitantes del sitio web, en él, se podrá apreciar la misión, visión y una
descripción general de este mismo.
113

Figura N° 34: Opción quienes somos

Fuente: Elaboración propia

 Opción "Servicios" es la encargada de mostrar a los visitantes todos los servicios


que dispone el gimnasio, los cuales son; Nutrición & dietética, Halterofilia,
Localizado, Crossfit, Pilates, Entrenador personal, entre otras.

Figura N° 35: Opción servicios

Fuente: Elaboración propia


114

 Opción "Nuestros entrenadores" busca informar a los visitantes y comunidad del


gimnasio, acerca de los entrenadores con datos tales como: nombres, estudios y
correo electrónico. Además permite realizar contacto a través de redes sociales del
gimnasio.

Figura N° 36: Opción “Nuestros entrenadores”

Fuente: Elaboración propia (Nombres establecidos de forma ficticia)

 Opción "Iniciar sesión", permite a los socios o usuarios del sistema establecer
una conexión segura de acuerdo al perfil previamente establecido. Esta opción
será capaz de validar la información ingresada con la base de datos.
115

Figura N° 37: Opción “Acceso socios”

Fuente: Elaboración propia

 Opción "Horario", permitirá visualizar en línea los horarios de las respectivas


clases a las que pueden acceder los socios inscritos en el gimnasio.

Figura N° 38: Opción “Horario”

Fuente: Elaboración propia


116

26.3 Mantenedores vista usuario administrador

Pantalla principal de administración del sistema de gestión, en ella el administrador


podrá ingresar, modificar o eliminar a través de los respectivos menús la información
según corresponda. Los usuarios que posean este nivel de privilegios podrán realizar
las mantenciones a los apartados de:
 Usuarios
 Noticias
 Entrenadores
 Clases
 Ejercicios
 Horario

Figura N° 39: Vista mantenedor usuario administrador

Fuente: Elaboración propia


117

Usuarios:
Permitirá al administrador del sistema, mantener la información sobre los usuarios y sus
respectivos roles mediante las acciones agregar - modificar o eliminar.

Figura N° 40: Mantenedor usuarios

Fuente: Elaboración propia

Noticias:

Permitirá al usuario con rol de administrador o recepción agregar, modificar o eliminar


una determinada noticia acerca del gimnasio o el ámbito deportivo en general.

Figura N° 41: Mantenedor de noticias

Fuente: Elaboración propia


118

Entrenador:
Permitirá a los usuarios con rol de administrador realizar mantención sobre los
entrenadores que pertenecen/pertenecerán al gimnasio a través de las opciones
agregar – modificar o eliminar.

Figura N° 42: Mantenedor de entrenadores

Fuente: Elaboración propia


119

Clases:
Permitirá a los usuarios con rol de administrador, recepción o entrenador realizar
mantención sobre las clases que brinda el gimnasio a sus socios. De este modo podrán
agregar – modificar o eliminar una clase determinada.

Figura N° 43: Mantenedor de clases

Fuente: Elaboración propia


120

Ejercicios:

Permitirá a los usuarios con rol de administrador y entrenador realizar mantención


acerca de los ejercicios que son asignados a los socios como rutina diaria / semanal /
mensual.

Figura N° 44: Mantenedor de ejercicios

Fuente: Elaboración propia

Socios:

Permitirá a los usuarios con rol de administrador y recepción, realizar consultas sobre
los socios que se encuentran vigentes en el sistema de gestión con su respectiva
membresía.

Figura N° 45: Opción listar socios

Fuente: Elaboración propia


121
122

26.4 Aspecto aplicación móvil

La aplicación móvil tiene por objetivo, mantener a disposición de los socios toda la
información que se necesita durante la estadía en el gimnasio. Junto con ello, el socio
podrá realizar / consultar lo siguiente:

 Permitirá acceder a un menú con información personal, a través de un login con


clave privada.
 Permitirá consultar el progreso que se ha registrado en los últimos meses, esta
información será alimentada a través de controles mensuales que serán
efectuados a cada socio.
 Permitirá visualizar rutinas predefinidas por la aplicación.
 Permitirá a los socios consultar sobre las rutinas de ejercicios que fueron
asignadas por el entrenador.
 Permitirá agregar y personalizar rutinas propias.
 Permitirá consultar una guía acerca de todos los ejercicios que fueron asignados.
 Visualizar los horarios de clases que se imparten en el gimnasio Powerfull.
123

Inicio de sesión:

Permite a los usuarios del sistema autenticarse con credenciales válidas y hacer
ingreso al menú principal del sistema móvil.

Figura N° 46: Inicio de sesión

Fuente: Elaboración propia


124

Menú inicial:
Menú que desplegara cada una de las opciones por las cuales un usuario de la
aplicación podrá navegar.
Figura N° 47: Menú inicial

Fuente: Elaboración propia


125

Progreso:

Permite a los usuarios acceder y visualizar el progreso que han obtenido en el último
tiempo, información será alimentada con controles mensuales que se efectuarán a los
socios (Información histórica), además permitirá establecer un "Peso meta" que servirá
para graficar cual ha sido el avance o retroceso en el gimnasio.

Figura N° 48: Progreso

Fuente: Elaboración propia


126

Rutinas:
Permite a los socios ingresar y visualizar la rutina que el entrenador ha definido para su
realización diaria o visualizar otras combinaciones de rutinas disponibles.

Figura N° 49 Rutinas

Fuente: Elaboración propia


127

Mis rutinas
Permite a los socios visualizar las rutinas de ejercicios que han sido asignadas por el
entrenador evaluador y además da la opción de agregar una nueva rutina de ejercicios
personalizada por el mismo socio que hace uso de la aplicación.

Figura N° 50: Mis rutinas

Fuente: Elaboración propia


128

Ejercicios:

Permite a los socios visualizar los ejercicios asignados en la rutina. En esta opción se
podrá obtener una descripción general sobre el ejercicio.

Figura N° 51: Ejercicios (Abdomen)

Fuente: Elaboración propia


129

Figura N° 52: Ejercicios (Brazos + Glúteos)

Fuente: Elaboración propia


130

Figura N° 53: Ejercicios (Piernas + Espalda)

Fuente: Elaboración propia


131

Horario:
Permite a los socios visualizar el horario de clases y consultar cual se está impartiendo
en el momento de la consulta.
Figura N° 54: Horario

Fuente: Elaboración propia


132

Mi cuerpo:
Permite a los socios visualizar de forma gráfica sus datos personales en cuando a:
Sexo, Edad, Estatura y Peso. Junto con esto se podrá visualizar de acuerdo a la
estatura, cual es el peso idea, tasa de gordura, peso mínimo y peso máximo.

Figura N° 55: Mi cuerpo

Fuente: Elaboración propia


133

Contacto:
Permite contactar a través de correo electrónico o redes sociales al entrenador que
realizo la evaluación y asigno rutinas correspondientes.

Figura N° 56: Contacto

Fuente: Elaboración propia