Está en la página 1de 140

Implementación de una solución web y móvil para la atención de alertas y gestión de

procesos en la prestación del servicio de mantenimiento en ascensores

Juan Pablo Moreno Ortiz

Oscar Leonardo Sarmiento

Proyecto “Implementación de una solución web y móvil para la atención de alertas y


gestión de procesos en la prestación del servicio de mantenimiento en ascensores”
Presentado para obtener el título de Ingeniero de Sistemas

Trabajo de grado dirigido por:

Luis Eduardo Orjuela Endo

Ingeniero de Sistemas

Universidad De Cundinamarca

Programa de Ingeniería de Sistemas

Fusagasugá Cundinamarca

2020
Implementación de una solución web y móvil para la atención de alertas y gestión de
procesos en la prestación del servicio de mantenimiento en ascensores

Juan Pablo Moreno Ortiz

Oscar Leonardo Sarmiento

Proyecto “Implementación de una solución web y móvil para la atención de alertas y


gestión de procesos en la prestación del servicio de mantenimiento en ascensores”
Presentado para obtener el título de Ingeniero de Sistemas

Universidad De Cundinamarca

Programa de Ingeniería de Sistemas

Fusagasugá Cundinamarca

2020
Dedicatoria

Dedicamos este trabajo principalmente a Dios por habernos dado la vida, la voluntad y la
oportunidad de estudiar. A nuestros padres por confiar y creer en nuestros sueños, por los
principios y valores que nos han inculcado, por acompañarnos en cada paso tomado y su
amor incondicional, sin ellos nada de esto hubiera sido posible. A nuestros hermanos que
han estado siempre presentes, acompañándonos y apoyándonos. Y a todas las personas
que han creído en nosotros.
Agradecimientos

Agradecemos a nuestros padres quienes han sido los principales promotores de nuestros
sueños, por su esfuerzo, dedicación, paciencia y confianza, por brindarnos todo su amor y
apoyo a lo largo de la carrera. A nuestros hermanos quienes estuvieron para darnos
consejo. A nuestro tutor Luis Eduardo Orjuela Endo, por guiarnos y brindarnos su
conocimiento para la realización de este proyecto. A la Universidad De Cundinamarca
por abrirnos sus puertas y permitirnos formarnos como profesionales.

Tabla de contenido
1. Introducción................................................................................................................11
2. Marco Teórico............................................................................................................13
2.1. Antecedentes.......................................................................................................13
3. Planteamiento del problema.......................................................................................14
4. Justificación................................................................................................................15
5. Objetivos.....................................................................................................................16
5.1. Objetivo General.................................................................................................16
5.2. Objetivos Específicos..........................................................................................16
6. Fundamento Teórico...................................................................................................17
6.1. Herramientas.......................................................................................................17
7. Metodología de Desarrollo.........................................................................................18
8. Fase 1: Análisis de requerimientos.............................................................................19
8.1. recolección de requerimientos.............................................................................19
8.2. Establecimiento y selección de usuarios a entrevistar........................................19
8.3. Establecimiento de desarrollo de la entrevista....................................................20
8.4. Recolección y documentación de los resultados de la aplicación de entrevistas 20
8.5. Módulo de administración:.................................................................................20
8.6. Módulo de mantenimientos:................................................................................21
8.7. Módulo de Alertas:..............................................................................................22
8.8. Requerimientos Funcionales...............................................................................23
8.9. Requerimientos no funcionales...........................................................................35
8.10. Modelo Objetos de Dominio...........................................................................38
8.11. Modelo Casos de Uso......................................................................................38
8.11.2. Casos de uso....................................................................................................39
8.12. Prototipo de Interfaz........................................................................................42
9. Fase 2 Análisis y Diseño Preliminar..........................................................................80
9.1. Descripción Casos de Uso...................................................................................80
9.1.1. Gestión de personal.........................................................................................80
9.1.2. Gestión mantenimientos..................................................................................83
9.1.3. Gestión de alertas............................................................................................85
9.1.4. Gestión de garantías........................................................................................87
9.1.5. Mantenimientos...............................................................................................88
9.1.6. Alertas..............................................................................................................91
9.2. Diagramas de robustez........................................................................................93
9.2.1. Modulo administración:...................................................................................93
9.2.2. Modulo mantenimientos..................................................................................99
9.2.3. Modulo Alertas..............................................................................................103
9.3. Diagrama de Clases...........................................................................................105
10. Fase 3 Implementación.........................................................................................106
10.1. Arquitectura...................................................................................................106
10.2. Estándares de programación..........................................................................107
10.4. Base de datos aplicación................................................................................110
10.7. Codificación..................................................................................................115
Tabla de Ilustraciones

Ilustración 1 modelo caso de dominio simple...................................................................37


Ilustración 2 Caso de uso Registro de Personal.................................................................38
Ilustración 3 caso de uso gestión de mantenimientos........................................................39
Ilustración 4 caso de uso gestión de garantías...................................................................39
Ilustración 5 Caso de uso gestión de alertas......................................................................40
Ilustración 6 Caso de uso Mantenimientos........................................................................40
Ilustración 7 Caso de uso Generar Alerta..........................................................................41
Ilustración 8 Caso de Uso Atender Alerta.........................................................................41
Ilustración 9 Prototipo interfaz inicio de sesión................................................................43
Ilustración 10 Prototipo de interfaz Perfiles......................................................................44
Ilustración 11 Prototipo de interfaz Edificio......................................................................45
Ilustración 12 Prototipo de Interfaz perfil Edificio............................................................46
Ilustración 13 Prototipo de Interfaz generar Alerta...........................................................47
Ilustración 14 Prototipo de interfaz generar Alerta elevador vacio...................................48
Ilustración 15 Prototipo de interfaz Nosotros....................................................................49
Ilustración 16 Prototipo de interfaz Técnico......................................................................50
Ilustración 17 Prototipo de interfaz Perfil Edificio............................................................51
Ilustración 18 Prototipo de interfaz Registro Mantenimiento 1........................................52
Ilustración 19 Prototipo de Interfaz Registro mantenimiento 2.........................................53
Ilustración 20 Mantenimiento Cabina................................................................................54
Ilustración 21 mantenimiento hall.....................................................................................55
Ilustración 22 Mantenimiento encima de la cabina...........................................................56
Ilustración 23 Mantenimiento cuarto de maquinas............................................................57
Ilustración 24 Mantenimiento Cuarto de maquinas...........................................................58
Ilustración 25 Mantenimiento Observaciones...................................................................59
Ilustración 26 Mantenimiento Garantías............................................................................60
Ilustración 27 Pieza Garantía.............................................................................................61
Ilustración 28 Errores Comunes........................................................................................62
Ilustración 29 home Administrador...................................................................................63
Ilustración 30 Gestión de edificios....................................................................................64
Ilustración 31 Perfil técnico...............................................................................................65
Ilustración 32 Agregar Edificio.........................................................................................66
Ilustración 33 Gestión técnicos..........................................................................................67
Ilustración 34 Perfil técnico...............................................................................................68
Ilustración 35 Agregar técnico...........................................................................................69
Ilustración 36 Gestión mantenimientos.............................................................................70
Ilustración 37 Buscar mantenimiento por edificio.............................................................71
Ilustración 38 lista mantenimientos edificio......................................................................72
Ilustración 39 Mantenimiento............................................................................................73
Ilustración 40 Buscar mantenimiento por técnico.............................................................75
Ilustración 41 Mantenimientos técnico..............................................................................76
Ilustración 42 Mantenimiento técnico...............................................................................77
Ilustración 43 Gestión Alertas...........................................................................................78
Ilustración 44 Alertas-Administrador................................................................................79
Ilustración 45 Diagrama de robustez, modulo administración: Inicio de sesión...............93
Ilustración 46 Diagrama de robustez, modulo administración: Gestión edificios.............94
Ilustración 47Diagrama de robustez, modulo administración: Gestión técnicos...............95
Ilustración 4847Diagrama de robustez, modulo administración: Gestión mantenimientos
...........................................................................................................................................96
Ilustración 49 47Diagrama de robustez, modulo administración: Gestión alertas............97
Ilustración 50 Diagrama de robustez, modulo administración: Gestión garantías............98
Ilustración 51Diagrama de robustez, modulo mantenimientos: iniciar sesión..................99
Ilustración 52 Diagrama de robustez, modulo mantenimiento: Registro mantenimiento100
Ilustración 53 Diagrama de robustez, modulo mantenimiento: Historial mantenimientos
.........................................................................................................................................101
Ilustración 54 Diagrama de robustez, modulo mantenimiento: Errores comunes...........102
Ilustración 55 Diagrama de robustez, modulo alertas: Generar alerta.............................103
Ilustración 56 Diagrama de robustez, modulo alertas: Atender alerta.............................104
Ilustración 57 Diagrama de clases...................................................................................105
Ilustración 58 Creación del proyecto...............................................................................115
Ilustración 59 Proyecto Elevator......................................................................................116
Ilustración 60 Modelo vista presentador proyecto...........................................................116
Lista de tablas

Tabla 1 Requerimiento funcional 01.................................................................................23


Tabla 2 Requerimientos funcionales 02.............................................................................24
Tabla 3 Requerimiento funcional 03.................................................................................24
Tabla 4 requerimientos funcionales 04..............................................................................25
Tabla 5 Requerimientos funcionales 05.............................................................................25
Tabla 6 Requerimientos funcionales 06.............................................................................26
Tabla 7 Requerimientos funcionales 07.............................................................................27
Tabla 8 Requerimientos funcionales 08.............................................................................27
Tabla 9Requerimientos funcionales 09..............................................................................28
Tabla 10 Requerimientos funcionales 10...........................................................................28
Tabla 11 Requerimientos funcionales 11...........................................................................29
Tabla 12 Requerimientos funcionales 12...........................................................................29
Tabla 13 Requerimientos funcionales 13...........................................................................30
Tabla 14 Requerimientos funcionales 14...........................................................................30
Tabla 15Requerimientos funcionales 15............................................................................31
Tabla 16 Requerimientos funcionales 16...........................................................................32
Tabla 17 Requerimientos funcionales 17...........................................................................33
Tabla 18 Requerimientos funcionales 18...........................................................................34
Tabla 19 Requerimientos no funcionales 01......................................................................34
Tabla 20 Requerimientos no funcionales 02......................................................................35
Tabla 21 Requerimientos no funcionales 03.....................................................................35
Tabla 22 Requerimientos no funcionales 04......................................................................36
Tabla 23 Requerimientos no funcionales 05.....................................................................36
Tabla 24 Descripción casos de uso: Gestión de personal..................................................81
Tabla 25 Descripción casos de uso: Gestión mantenimientos...........................................84
Tabla 26 Descripción casos de uso: Gestión de alertas.....................................................85
Tabla 27 Descripción casos de uso: Gestión de garantías.................................................87
Tabla 28 Descripción casos de uso: Mantenimientos........................................................90
Tabla 29 Descripción casos de uso: Alertas.....................................................................91
Lista de anexos
Resumen

El presente proyecto esta guiado a presentar una solución para la gestión de los
mantenimientos y alertas por fallas en elevadores para la empresa Elevadores Integral
S.A. A través de una aplicación móvil Android, considerando que la empresa no cuenta
con sistema de información digital si no por el contrario con un sistema físico, con el que
por medio de fichas de papel cartón registran los mantenimientos y las alertas se
gestionan por medio de un Call Center, la aplicación permitirá a los técnicos registrar
cada fase del mantenimiento en un elevador y revisar el historial de los mantenimientos
efectuados en este, así como también tener un detalle de las fallas comunes que presenta.
Al encargado del edificio le permitirá generar una alerta cuando alguno de los elevadores
del edificio falle, dicha alerta será notificada al técnico para que el la atienda. Al
administrador le permitirá gestionar usuarios y garantías, visualizar mantenimientos y
alertas. Buscando optimizar el proceso de mantenimientos y la atención de fallas en los
ascensores.

Hemos decidido desarrollar la aplicación en Android, el sistema operativo que esta


instalado en la mayoría de los dispositivos existentes en el mercado y la metodología a
seguir es Iconix, que nos permite tener un control riguroso sobre todo el ciclo de vida de
la aplicación a desarrollar, y facilita el uso dinámico del UML. Como patrón de
arquitectura se ha decidido implementar el modelo vista presentador (MVP), que es una
derivación del modelo vista, controlador (MVC), ya que al dividir la interfaz de usuario
de la lógica se logra obtener mantenibilidad y escalabilidad optima a la hora de agregar
interfaces, facilitando realizar pruebas unitarias para confirmar el correcto
funcionamiento de la aplicación.
1. Introducción

La empresa Elevadores Integral S.A. dedicada a ofrecer servicios integrales en


todo lo relacionado con sistemas de transporte vertical, tiene aproximadamente 90
elevadores instalados en Fusagasugá, a los que les presta el servicio de
mantenimiento y atención de alertas por fallas, actualmente la empresa lleva los
registros de forma física, en el caso de los mantenimientos por medio de
tarjetones con un formulario que el técnico debe ir llenando a medida que realiza
el mantenimiento, además las alertas por fallas las gestionan por medio de un Call
Center, buscando optimizar los procesos se ha decidido crear un sistema de
información para el registro de los mantenimientos y la gestión de las alertas por
fallas.

El teléfono celular se ha convertido en una herramienta imprescindible para las


personas en su diario vivir, ya que este dispositivo nos ofrece un sinfín de
posibilidades gracias a las aplicaciones que aprovechan su potencial. Existe una
gran variedad de aplicaciones móviles que brindan múltiples servicios y satisfacen
las necesidades de los usuarios en diferentes ámbitos, pero no encontramos
ninguna que permita gestionar mantenimientos y, o alertas por fallas de
ascensores en Colombia, por lo que se ha decidido ofrecer una solución por medio
de una aplicación móvil, para la gestión de los mantenimientos y las alertas por
fallas, buscando optimizar los procesos y logrando llevar un control detallado de
cada mantenimiento efectuado en los elevadores, reemplazando el uso del papel y
el consumo de recursos naturales que este conlleva, disminuyendo el tiempo de
respuesta ante las alertas por fallas.
2. Marco Teórico
2.1. Antecedentes

Desde su existencia se presentan fallas en los ascensores, ya que no se puede asegurar


con certeza de que funcionen correctamente, debido a que este depende de factores
externos para su funcionamiento, por lo cual un corte en el fluido eléctrico puede
ocasionar que el ascensor falle, y aunque existen medidas de prevención no se puede
afirmar que los usuarios no se verán afectados.

Existen reportes de personas que sufren de claustrofobia y otras que lo descubren al


quedar dentro de un ascensor cuando este permanece varado, lo cual ocasiona que las
personas que sufren de este tipo de fobia se sientan sofocadas y con dificultad al respirar
además de presentar trastorno de pánico lo que puede afectar a los demás usuarios.

En la actualidad ninguna empresa colombiana asociada con la prestación de servicios de


ascensores cuenta con una aplicación dedicada a llevar un control de los mantenimientos
efectuados en un ascensor, las fallas comunes que estos presentan como tampoco a
gestionar las alertas entre los encargados de las edificaciones y el equipo técnico de la
empresa prestadora de servicio.
3. Planteamiento del problema

Actualmente la empresa Ascensores Integral S.A.S cuenta con alrededor de 90


ascensores instalados en edificaciones de Fusagasugá, los cuales generan reportes
por fallas aproximadamente 3 veces al día por diferentes causas, ya sean
eléctricas, técnicas o mecánicas.
En la actualidad la forma en que gestionan las alertas por fallas es por medio de
un call center, el administrador o vigilante del edificio donde se encuentra el
ascensor llama al call center y este a su vez llama al técnico, razón por la cual el
tiempo de respuesta suele ser alto, teniendo en cuenta que personas pueden quedar
atrapadas en el ascensor y que alguna de estas personas pueda sufrir de
claustrofobia u otros problemas; además la empresa no cuenta con un registro
especifico de mantenimientos, como también las fallas comunes que presenta cada
uno de los ascensores, haciendo que sea ineficiente el proceso de asistencia para
solucionar las situaciones presentadas, incrementando por consiguiente los costos
operacionales de la empresa.
4. Justificación

Actualmente en el mercado de software no existe una solución a la problemática


planteada, y la misma organización tampoco cuenta con una solución para llevar a
cabo la trazabilidad del seguimiento que se debe tener a cada uno de estos
aparatos.
Se busca optimizar los procesos de cómo se gestionan las alertas por fallas
ocurridas en cada uno de los ascensores así como también tener registro de cada
mantenimiento efectuado en dichos ascensores y las fallas más comunes que
presentan, para esto la aplicación móvil tendrá un apartado en donde el encargado
del edificio podrá generar la alerta y esta alerta llegara directamente al equipo
técnico disminuyendo así el tiempo de respuesta, a su vez se creara una hoja de
vida de cada ascensor en donde se detallara de forma precisa los componentes que
lo conforman, además de tener un registro minucioso de cada mantenimiento
efectuado, también habrá un apartado con antecedentes de las fallas comunes que
presenta cada ascensor.
5. Objetivos

5.1. Objetivo General

 Desarrollar una aplicación móvil para optimizar los procesos de atención


de alertas y mantenimientos de elevadores en la empresa elevadores
Integral S.A.

5.2. Objetivos Específicos

 Desarrollar un sistema de información que almacene la información acerca


de los mantenimientos de cada uno de los componentes de un elevador.

 Reducir el tiempo de respuesta ante una alerta por falla.

 Reducir el tiempo que ocupa un mantenimiento.

 Crear una interfaz intuitiva, sencilla y de fácil comprensión.

 Tener un mayor control de cada elevador.


6. Fundamento Teórico

6.1. Herramientas

Kotlin
Como lenguaje de programación se optó por kotlin debido a que consume poco código
para realizar aplicaciones lo cual lo hace más ligero y escalable.

Android Studio
Como entorno de desarrollo se opto por el IDE de desarrollo nativo de Android.

Cloud Store
Como base de datos no relacional se optó por el uso de Cloud Store Fire Store debido a
que se requiere que los datos estén en tiempo real.

Adobe Xd
Se utilizo para el diseño preliminar de la interfaz de usuario y el prototipado de la
aplicación.

Firebase
Se opto por utilizar la herramienta de desarrollo de aplicaciones Firebase de Google
debido a que nos permite gestionar diferentes aspectos en el desarrollo de nuestra
aplicación utilizando librerías propias siendo fácil de integrar con una amplia
documentación y que nos permite ahorrar líneas de código.
7. Metodología de Desarrollo

La metodología aplicada para la elaboración de este proyecto es Iconix debido a


que su principal objetivo es el control del ciclo de vida del producto, nos permite
desarrollar por partes y hacer revisiones periódicas para la mejora del proyecto,
los pasos a realizados serán definidos por requisitos previamente establecidos
además de poder utilizar el Lenguaje Unificado de Modelado.
8. Fase 1: Análisis de requerimientos

8.1. recolección de requerimientos

Para la recolección de los requerimientos de este proyecto se emplearon la entrevista y


observación directa

8.2. Establecimiento y selección de usuarios a entrevistar

Con el fin de obtener información precisa y veraz de los procesos de gestión de alertas y
mantenimientos en la empresa Elevadores Integral S.A.S se decide entrevistar al siguiente
personal:

Alberto Moreno Gerente

Fredy Fuqueme Ingeniero de sistemas

John Fredy Sossa Técnico

Mauricio Rodríguez Técnico

Oscar López Administrador edificio

Fernando Rosas Administrador edificio

8.3. Establecimiento de desarrollo de la entrevista

En principio el entrevistado describe en breves rasgos la labor que desempeña al


momento en que ocurre una alerta por fallas en un ascensor, y en el caso del técnico
como realiza el mantenimiento al mismo.
Una vez entendido como se gestionan las alertas y los mantenimientos se procederá a
realizar entrevistas más técnicas con el conocimiento adecuado, enfatizando en
automatizar cada proceso, procurando que el entrevistado emita opiniones y
recomendaciones.

8.4. Recolección y documentación de los resultados de la aplicación de


entrevistas

Luego de analizar la información obtenida de ha logro identificar varios procesos,


descritos a continuación:

8.5. Módulo de administración:

8.5.1. Gestión de usuarios:

Con el fin de limitar el acceso a la aplicación el administrador es el único con privilegios


para crear un usuario, es necesario un registro con usuario y contraseña.

Así mismo el administrador podrá modificar los datos de los usuarios como también
eliminarlos.

8.5.2. Gestión de mantenimientos:

El administrador requiere llevar un control de los mantenimientos efectuados por los


técnicos de la empresa en los elevadores, para esto tendrá acceso a el historial detallado
de todos los mantenimientos realizados en los mismos.
8.5.3. Gestión de garantías

El administrador podrá visualizar en detalle las piezas que el técnico solicito cambio por
garantía cuando realizo el mantenimiento en un elevador de un edificio.

8.5.4. Gestión de alertas

El administrador tendrá a disposición un detalle de las alertas generadas por fallas en


elevadores en los edificios y quien las atendió.

8.6. Módulo de mantenimientos:

8.6.1. Registro de mantenimientos:

El técnico necesita registrar los mantenimientos integrales y preventivos que realiza en


cada ascensor, para lo cual será necesario crear una base de datos que registre los
mantenimientos efectuados por cada técnico

8.6.2. Historial:

El técnico requiere visualizar los mantenimientos anteriormente efectuados y las fallas


comunes presentadas.

8.6.3. Garantías:

Con el fin de poder cumplir con la garantía que la empresa les da a ciertas piezas, el
mecánico necesita visualizar las piezas que tienen garantía, por lo cual en la base de datos
se debe registrar fecha de inicio y de fin de la garantía de cada una de las piezas, además
si se le hizo algún cambio.

8.6.4. Errores comunes:

Con el fin de optimizar el proceso de los mantenimientos el técnico requiere visualizar


los errores comunes que presenta el elevador al que se le está haciendo el mantenimiento
o atendiendo la alerta.

8.7. Módulo de Alertas:

8.7.1. Generar Alerta:

El administrador o encargado del edificio genera una alerta cuando a un ascensor le


ocurre una falla y/o queda atascado, la cual le llega al técnico de turno disponible

8.7.2. Alerta:

El técnico de turno que esté disponible en el momento recibirá una alerta informándole la
falla, nombre del edificio y lugar.

8.8. Requerimientos Funcionales

Identificación del requerimiento: RF01


Nombre del requerimiento: Registro Usuarios.
Características Los usuarios deben estar registrados en
la aplicación previamente por parte del
administrador para poder evitar el
registro de personas ajenas a la
empresa, los usuarios podrán iniciar
sesión en la aplicación con su correo
personal y numero de cedula como
contraseña.

Descripción Cuando un usuario inicia sesión por


primera vez la aplicación, debe pedir
al que cambie su contraseña. La
aplicación enviara un correo
electrónico de confirmación al usuario
una vez haya cambiado su contraseña.
El sistema se encargará de modificar
en la base de datos la contraseña del
usuario.
La aplicación mostrará un mensaje de
bienvenida al usuario y redirigirá a la
pantalla principal.
Prioridad del requerimiento: Alta
Tabla 1 Requerimiento funcional 01

Fuente: elaboración propia

Identificación del requerimiento: RF02


Nombre del requerimiento: Identificación Usuarios.
Características: Para iniciar sesión el usuario deberá
ingresar su correo y contraseña
previamente establecida. En el caso de
haber iniciado sesión con anterioridad
el inicio será automático al iniciar la
aplicación.
Descripción: El sistema se encargará de permitir,
validar o denegar el acceso a la
aplicación. La aplicación mostrara un
mensaje de error en caso de que la
autenticación no sea correcta.
Si la autenticación del usuario es
correcta, se le mostrará un mensaje de
bienvenida y redirigirá a la pantalla
principal
Prioridad del requerimiento: Alta
Tabla 2 Requerimientos funcionales 02

Fuente: elaboración propia

Identificación del requerimiento: RF03


Nombre del requerimiento: Cierre de Sesión
Características: Cualquier usuario que haya iniciado
sesión en la aplicación debe poder
cerrar sesión mediante un botón que
indique “Cierre de sesión”.
Descripción: En el caso de que el usuario halla
pulsado en el botón de cerrar de
sesión, la aplicación mostrara un
mensaje para reafirmar la decisión de
cerrar la sesión permitiendo aceptar o
cancelar.
El usuario será redirigido a la pantalla
principal sin estar logado
Prioridad del requerimiento: Alta
Tabla 3 Requerimiento funcional 03

Fuente: elaboración propia

Identificación del requerimiento: RF04


Nombre del requerimiento: Cuenta de usuario
Características: Debe existir en la aplicación una
pantalla que le permita al usuario
consultar los datos de su cuenta
Descripción: La pantalla de cuenta de usuario
contara con un botón para cerrar
sesión
Prioridad del requerimiento: Alta
Tabla 4 requerimientos funcionales 04

Fuente: elaboración propia

Identificación del requerimiento: RF05


Nombre del requerimiento: Administración Edificios.
Características: El sistema permitirá listar, agregar,
modificar o eliminar edificios en la
aplicación.
Descripción: En el caso de que el administrador
desee registrar un edificio la aplicación
desplegara un formulario para el
registro.
En el caso de que el administrador
halla pulsado el botón editar la
aplicación desplegara un formulario
editable con la información del
edificio.
En el caso de que el administrador
halla pulsado el botón eliminar el
sistema se encargara de cambiar su
estado a inactivo.
Prioridad del requerimiento: Alta
Tabla 5 Requerimientos funcionales 05

Fuente: elaboración propia

Identificación del requerimiento: RF06


Nombre del requerimiento: Administración Tecnicos.
Características: El sistema permitirá listar agregar,
modificar o eliminar técnicos en la
aplicación.
Descripción: En el caso de que el administrador
desee registrar un técnico la aplicación
desplegara un formulario para el
registro.
En el caso de que el administrador
halla pulsado el botón editar, la
aplicación desplegara un formulario
editable con la información del
técnico.
En el caso de que el administrador
halla pulsado el botón eliminar el
sistema se encargara de cambiar su
estado a inactivo.
Prioridad del requerimiento: Alta
Tabla 6 Requerimientos funcionales 06

Fuente: elaboración propia

Identificación del requerimiento: RF07


Nombre del requerimiento: Administración Mantenimientos
Características: El sistema permitirá visualizar los
mantenimientos realizados por los
técnicos.
Descripción: La aplicación desplegara una pantalla
con la posibilidad de buscar los
mantenimientos por técnicos y por
edificios

Prioridad del requerimiento: Alta


Tabla 7 Requerimientos funcionales 07

Fuente: elaboración propia

Identificación del requerimiento: RF08


Nombre del requerimiento: Administración Garantias
Características: El sistema permitirá visualizar las
piezas que se cambiaron los técnicos
por garantía
Descripción: La aplicación desplegara una pantalla
con una lista en la cual está el nombre
de la pieza fecha de pedido y el
Tecnico que realizo el pedido
Prioridad del requerimiento: Alta
Tabla 8 Requerimientos funcionales 08

Fuente: elaboración propia

Identificación del requerimiento: RF09


Nombre del requerimiento: Administrar Alertas
Características:
Descripción: La aplicación desplegara una pantalla
con una lista en la cual está el nombre
de la pieza fecha de pedido y el
Tecnico que realizo el pedido
Prioridad del requerimiento: Alta
Tabla 9Requerimientos funcionales 09

Fuente: elaboración propia

Identificación del requerimiento: RF10


Nombre del requerimiento: Registrar mantenimiento
Características: La aplicación permitirá al técnico
registrar el mantenimiento efectuado
en el ascensor
Descripción: El registro del mantenimiento se hará
mediante un check list y estará
dividido en 7 componentes (cabina,
hall, cuarto de máquinas, encima de la
cabina, mrl-vvvf/maquina/control,
pozo, y observaciones) , el
mantenimiento no podrá ser editado
una vez se suba a la base de datos
Prioridad del requerimiento: Alta
Tabla 10 Requerimientos funcionales 10

Fuente: elaboración propia

Identificación del requerimiento: RF11


Nombre del requerimiento: Historial mantenimiento
Características: La aplicación permitirá al técnico
visualizar los mantenimientos
anteriormente efectuados en el
ascensor
Descripción: La aplicación mostrara una pantalla
con una lista de los mantenimientos
con fecha y hora efectuados por
técnico.
Prioridad del requerimiento: Alta
Tabla 11 Requerimientos funcionales 11

Fuente: elaboración propia


Identificación del requerimiento: RF12
Nombre del requerimiento: Garantias.
Características: La aplicación permitirá al técnico
visualizar las piezas a la que la
empresa les da garantía.
Descripción: La aplicación permitirá que el técnico
visualice las piezas que tienen
garantía, también permitirá generar
una solicitud de garantía por dicha
pieza
Prioridad del requerimiento: Alta
Tabla 12 Requerimientos funcionales 12

Fuente: elaboración propia

Identificación del requerimiento: RF13


Nombre del requerimiento: Generar Alerta.
Características: La aplicación permitirá encargado del
edificio generar una alerta para que un
técnico la atienda.
Descripción: La aplicación desplegara una pantalla
en donde el encargado debe
seleccionar una de dos opciones
(elevador vacío o personas en el
elevador) para luego pulsar el botón de
alerta y esta se genere
Prioridad del requerimiento: Alta
Tabla 13 Requerimientos funcionales 13

Fuente: elaboración propia

Identificación del requerimiento: RF14


Nombre del requerimiento: Alerta.
Características: La aplicación permitirá al técnico
recibir la alerta de un edificio cuando
un ascensor falla.
Descripción: La aplicación desplegará una pantalla
en donde el técnico podrá visualizar la
falla, el edificio en donde ocurrió, si el
elevador esta vacío o no y la ubicación
en tiempo real por medio de Google
maps.
Prioridad del requerimiento: Alta
Tabla 14 Requerimientos funcionales 14

Fuente: elaboración propia

Identificación del requerimiento: RF15


Nombre del requerimiento: Pantalla principal administrador.
Características: La pantalla principal del administrador
constara de tres botones para la
interacción con la aplicación.
Descripción: Botón edificios: La aplicación
desplegara una pantalla donde se
podrán registrar, visualizar y eliminar
edificios.
Botón Tecnicos: La aplicación
desplegara una pantalla donde se
podrán registrar, visualizar y eliminar
técnicos
Botón mantenimientos: La aplicación
desplegará una pantalla que le
permitirá al administrador buscar los
mantenimientos efectuados por los
técnicos, permitiendo realizar la
búsqueda por edificios o técnicos
Botón Garantias: La aplicación
desplegará una pantalla con una lista
de las piezas que se han cambiado por
garantía, especificando el nombre de la
pieza, edificio, elevador y técnico que
genero la garantía.
Botón alerta: La aplicación desplegara
una pantalla con una lista en la cual
está el nombre de la pieza fecha de
pedido y el Tecnico que realizo el
pedido.
Prioridad del requerimiento: Alta
Tabla 15Requerimientos funcionales 15

Fuente: elaboración propia

Identificación del requerimiento: RF16


Nombre del requerimiento: Pantalla principal edificio.
Características: La pantalla principal del edificio
constara de tres botones para la
interacción con la aplicación.
Descripción: Botón Perfil: la aplicación desplegara
una pantalla con la información del
técnico, esta pantalla contara con un
botón de cerrar sesión
Botón alerta: La aplicación desplegara
una pantalla con la información y
ubicación en tiempo real del edificio
en donde ocurre la falla
Botón mantenimientos: la aplicación
mostrara la opción de ingresar un
mantenimiento.
Prioridad del requerimiento: Alta
Tabla 16 Requerimientos funcionales 16

Fuente: elaboración propia

Identificación del requerimiento: RF17


Nombre del requerimiento: Pantalla principal Tecnico
Características: La pantalla principal del técnico
constara de tres botones para la
interacción con la aplicación.
Descripción: Botón Perfil: la aplicación desplegara
una pantalla con la información del
edificio, esta pantalla contara con un
botón de cerrar sesión
Botón Generar alerta: La aplicación
desplegara una pantalla con la con dos
opciones permitiendo indicar si el
elevador esta vacío o con personas
antes de generar la alerta
Botón nosotros: la aplicación
desplegara una pantalla con toda la
información referente a la empresa
Elevadores Integral S.A.
Prioridad del requerimiento: Alta
Tabla 17 Requerimientos funcionales 17

Fuente: elaboración propia

Identificación del requerimiento: RF18


Nombre del requerimiento: Notificaciones
Características: La aplicación debe lanzar
notificaciones al técnico cuando el
encargado del edificio genera una
alerta por falla en un elevador
Descripción: Botón Perfil: la aplicación desplegara
una pantalla con la información del
edificio, esta pantalla contara con un
botón de cerrar sesión
Botón Generar alerta: La aplicación
desplegara una pantalla con la con dos
opciones permitiendo indicar si el
elevador está vacío o con personas
antes de generar la alerta
Botón nosotros: la aplicación
desplegara una pantalla con toda la
información referente a la empresa
Elevadores Integral S.A.
Prioridad del requerimiento: Alta
Tabla 18 Requerimientos funcionales 18

Fuente: elaboración propia

8.9. Requerimientos no funcionales

Identificación del requerimiento: RF01


Nombre del requerimiento: Documentación
Características: La aplicación debe tener un manual de
usuario y la codificación del sistema
deberá ser clara y estar documentada
de manera que algún programador
pueda agregar funcionalidad
posteriormente, procurando seguir los
estándares de programación Android
Prioridad del requerimiento: Alta
Tabla 19 Requerimientos no funcionales 01

Fuente: elaboración propia

Identificación del requerimiento: RF02


Nombre del requerimiento: Seguridad
Características: El administrador es el único que puede
agregar, editar o eliminar usuarios, los
usuarios tendrán permisos específicos
y los datos de los usuarios estarán
cifrados.
Prioridad del requerimiento: Alta
Tabla 20 Requerimientos no funcionales 02

Fuente elaboración propia

Identificación del requerimiento: RF03


Nombre del requerimiento: Mantenibilidad y portabilidad
Características: Disponibilidad para dispositivos
Android, en versiones 5.0 o superiores,
Sera necesario disponer de una
conexión a internet ya sea por wifi o
datos móviles, será necesario habilitar
el GPS en el dispositivo móvil.
Prioridad del requerimiento: Alta
Tabla 21 Requerimientos no funcionales 03

Fuente: elaboración propia

Identificación del requerimiento: RF04


Nombre del requerimiento: Interfaz y usabilidad
Características: La aplicación estará conformada de
una interfaz sencilla, atractiva e
intuitiva, de modo que no suponga
esfuerzo para su uso, la introducción
de datos debe ser estructurada
procurando evitar errores.
Prioridad del requerimiento: Alta
Tabla 22 Requerimientos no funcionales 04

Fuente: elaboración propia

Identificación del requerimiento: RF05


Nombre del requerimiento: Rendimiento
Características: Se esperan tiempos de respuesta no
superiores a un minuto en las
peticiones al servidor y menor en las
consultas con la base de datos, el
consumo de la aplicación no supone
demasiada carga para el dispositivo,
por lo que el rendimiento será optimo.
Prioridad del requerimiento: Alta
Tabla 23 Requerimientos no funcionales 05

Fuente: elaboración propia

8.10. Modelo Objetos de Dominio


El modelo de objetos de domino constituye en descubrir los objetos que intervienen
en los procesos del sistema que se está desarrollando, estos representan cosas y
conceptos del mundo real

Ilustración 1 modelo caso de dominio simple

8.11. Modelo Casos de Uso

8.11.1. Actores del sistema.

Administrador: Actor principal encargado de registrar a los demás usuarios y supervisar


alertas, Garantias y mantenimientos.

Mecánico: Actor principal encargado de atender las alertas y registrar los mantenimientos
en el sistema

Encargado edificio: Actor principal encargado de emitir la alerta cuando un elevador le


ocurre alguna falla.
8.11.2. Casos de uso

Ilustración 2 Caso de uso Registro de Personal

Creación en Lucid chart: https://app.lucidchart.com/documents

Ilustración 3 caso de uso gestión de mantenimientos

Creación en Lucid chart: https://app.lucidchart.com/documents


Ilustración 4 caso de uso gestión de garantías

Creación en Lucid chart: https://app.lucidchart.com/documents

Ilustración 5 Caso de uso gestión de alertas

Creación en Lucid chart: https://app.lucidchart.com/documents


Ilustración 6 Caso de uso Mantenimientos

Creación en Lucid chart: https://app.lucidchart.com/documents

Ilustración 7 Caso de uso Generar Alerta

Creación en Lucid chart: https://app.lucidchart.com/documents


Ilustración 8 Caso de Uso Atender Alerta

Creación en Lucid chart: https://app.lucidchart.com/documents

8.12. Prototipo de Interfaz

Para la creación y diseño de las interfaces de usuarios utilizamos la herramienta


Adobe XD (Adobe Experience Design). Ya que no solo nos permite crear
interfaces, sino que también un prototipo que nos permite simular la experiencia
del usuario al navegar ente las interfaces.
Ilustración 9 Prototipo interfaz inicio de sesión

Creado en Adobe Xd
Ilustración 10 Prototipo de interfaz Perfiles

Creado en adobe Xd
Ilustración 11 Prototipo de interfaz Edificio

Creado en adobe Xd
Ilustración 12 Prototipo de Interfaz perfil Edificio

Creado en Adobe Xd
Ilustración 13 Prototipo de Interfaz generar Alerta

Creado en Adobe Xd
Ilustración 14 Prototipo de interfaz generar Alerta elevador vacio

Creado en Adobe Xd
Ilustración 15 Prototipo de interfaz Nosotros

Creado en adobe Xd
Ilustración 16 Prototipo de interfaz Técnico

Creado en Adobe Xd
Ilustración 17 Prototipo de interfaz Perfil Edificio

Creado en adobe Xd
Ilustración 18 Prototipo de interfaz Registro Mantenimiento 1.

Creado en Adobe Xd
Ilustración 19 Prototipo de Interfaz Registro mantenimiento 2.

Creado en adobe Xd
Ilustración 20 Mantenimiento Cabina
Creado en adobe Xd
Ilustración 21 mantenimiento hall
Creado en Adobe Xd
Ilustración 22 Mantenimiento encima de la cabina
Creado en adobe Xd
Ilustración 23 Mantenimiento cuarto de maquinas
Creado en Adobe Xd
Ilustración 24 Mantenimiento Cuarto de maquinas
Creado en Adobe Xd
Ilustración 25 Mantenimiento Observaciones
Creado en Adobe Xd
Ilustración 26 Mantenimiento Garantías
Creado en Adobe Xd
Ilustración 27 Pieza Garantía
Creado en Adobe Xd
Ilustración 28 Errores Comunes
Creado en Adobe Xd
Ilustración 29 home Administrador
Creado en Adobe Xd
Ilustración 30 Gestión de edificios
Creado en Adobe Xd
Ilustración 31 Perfil técnico.
Creado en Adobe Xd
Ilustración 32 Agregar Edificio
Creado en Adobe Xd
Ilustración 33 Gestión técnicos.
Creado en Adobe Xd
Ilustración 34 Perfil técnico
Creado en Adobe Xd
Ilustración 35 Agregar técnico
Creado en Adobe Xd
Ilustración 36 Gestión mantenimientos
Creado en Adobe Xd
Ilustración 37 Buscar mantenimiento por edificio.
Creado en Adobe Xd
Ilustración 38 lista mantenimientos edificio.
Creado en Adobe Xd
Ilustración 39 Mantenimiento.
Creado en Adobe Xd
Creado en Adobe Xd
Ilustración 40 Buscar mantenimiento por técnico
Creado en Adobe Xd
Ilustración 41 Mantenimientos técnico
Creado en Adobe Xd
Ilustración 42 Mantenimiento técnico.
Creado en Adobe Xd
Ilustración 43 Gestión Alertas.
Creado en Adobe Xd
Ilustración 44 Alertas-Administrador.
Creado en adobe Xd
9. Fase 2 Análisis y Diseño Preliminar

9.1. Descripción Casos de Uso

9.1.1. Gestión de personal

Gestión de personal

Código: 1.1
Casos de uso: Registrar personal, modificar personal,
eliminar personal
Actores: Administrador
Resumen: El administrador inicia la aplicación e
ingresa a las pantallas de edificios o técnicos
y agrega, elimina o modifica a uno de estos
usuarios
Tipo: Primario
Precondiciones: Haber ingresado al sistema mediante usuario
y contraseña.

Curso normal de eventos

Acción del actor Respuesta del sistema


1. Este caso de uso se inicia en el
momento en que el administrador requiera
gestionar personal.

2. El administrador se dirige a Pantalla de


edificios o técnicos según sea el caso,
pulsando el botón con el mismo nombre.
3.la aplicación presenta una pantalla donde
se muestra la opción de agregar usuario y un
formulario con el personal ya ingresado mas
las opciones de detalles, modificar y
eliminar en cada registro

4.El administrador selecciona la opción


agregar usuario.
5.la aplicación presenta un formulario donde
se pide toda la información referente al
personal como nombres, cédula, dirección,
teléfono, correo electrónico, usuario y
contraseña
6.El administrador completa el formulario
con la información requerida y procede a
guardar.

7. La aplicación verifica la información


ingresada y la guarda.
8. El administrador pulsa uno de los
registros mostrados en la pantalla.

9.La aplicación muestra un formulario con


toda la información de ese registro en modo
10.El administrador pulsa la opción de lectura.
modificar un registro de los mostrados en
el formulario.
11. La aplicación presenta un formulario
donde se muestra toda la información del
12.El administrador modifica la registro, permitiendo que sean modificados.
información del registro y procede a
guardarla.

13.La aplicación verifica y comprueba la


información ingresada y la guarda.
14.EL administrador pulsa la opción
eliminar en un registro mostrado en el
formulario.

15.La aplicación procede a cambiar el


estado general del registro de activo a
inactivo
Curso alterno de eventos
6.1 Datos mal ingresados o campos
obligatorios vacíos

12.1 Datos mal ingresados o campos


obligatorios vacíos

Tabla 24 Descripción casos de uso: Gestión de personal


Fuente: Creación propia
9.1.2. Gestión mantenimientos

Gestión de mantenimientos

Código: 2.1
Casos de uso: Buscar mantenimientos por técnico, buscar
por edificio
Actores: Administrador
Resumen: El administrador inicia la aplicación e
ingresa a las pantallas de mantenimientos
para tener un control de los mantenimientos
efectuados por los técnicos en los
ascensores.
TIPO: Primario
Precondiciones: Haber ingresado al sistema mediante usuario
y contraseña.

Curso normal de eventos

Acción del actor Respuesta del sistema


1. Este caso de uso se inicia en el
momento en que el administrador
requiera visualizar los mantenimientos
efectuados por el técnico en los
ascensores

2. El administrador se dirige a la
pantalla de mantenimientos pulsando el 3.la aplicación presenta una pantalla donde
botón del mismo nombre se muestra la opción de buscar los
mantenimientos ya sea por edificio o
técnico.

4.El administrador pulsa el botón buscar


por técnico
5.la aplicación presenta una pantalla con la
lista de técnicos registrados, con la opción
de buscar a uno en especifico

6.El administrador pulsa en uno de los


técnicos. 7. La aplicación muestra una pantalla con
una lista de los edificios a los que el técnico
realiza los mantenimientos.

8. El administrador pulsa uno de los


edificios mostrados en la pantalla. 9.La aplicación muestra un formulario con
toda la información de ese registro en modo
lectura.

10.El administrador pulsa la opción de


Volver.
11. La aplicación lo redirige a la pantalla
donde se buscan los mantenimientos.

12.El administrador pulsa el botón de


buscar por edificio.
13.La aplicación muestra una pantalla para
seleccionar el edificio y el elevador al que se
le hizo el mantenimiento.

14.EL administrador selecciona uno de


los edificios con su correspondiente 15.La aplicación muestra un formulario con
ascensor. toda la información de ese mantenimiento
en modo lectura.
Curso alterno de eventos

Tabla 25 Descripción casos de uso: Gestión mantenimientos.


Fuente: Creación propia

9.1.3. Gestión de alertas

Gestión de alertas

Código: 3.1
Casos de uso: Gestión de alertas

Actores: Administrador
Resumen: El administrador inicia la aplicación, ingresa
a la pantalla de alertas en donde encuentra
un listado con las alertas generadas y que
técnico
Las atendió.
Tipo: Primario
Precondiciones: Haber ingresado al sistema mediante usuario
y contraseña.
Curso normal de eventos

Acción del actor Respuesta del sistema


1. Este caso de uso se inicia en el
momento en que el administrador
requiera gestionar las alertas

2. El administrador pulsa el botón de


Alertas
3.la aplicación presenta una pantalla donde
se muestra una lista de las alertas generadas
por los edificios junto con el técnico que
atendió la alerta.
4.El administrador pulsa sobre una
alerta. 5. La aplicación despliega una pantalla con
información detallada de la alerta

Curso alterno de eventos


6.1 Datos mal ingresados o campos
obligatorios vacíos

12.1 Datos mal ingresados o campos


obligatorios vacíos

Tabla 26 Descripción casos de uso: Gestión de alertas.


Fuente: Elaboración propia.
9.1.4. Gestión de garantías
Gestión de garantías

Código: 3.1
Casos de uso: Buscar garantías

Actores: Administrador
Resumen: El administrador inicia la aplicación, pulsa
el botón de garantías, se despliega una lista
con el nombre de la pieza, elevador, edificio
y técnico.
TIPO: Primario
Precondiciones: Haber ingresado al sistema mediante usuario
y contraseña.

Curso normal de eventos

Acción del actor Respuesta del sistema


1. Este caso de uso se inicia en el
momento en que el administrador
requiera gestionar las garantías.

2. El administrador pulsa el botón de


Garantias.
3.la aplicación presenta una pantalla donde
se muestra una lista de las Garantias
generadas junto a información referente a la
garantía, pieza, edificio, elevador y técnico
4.El administrador pulsa sobre un
registro.
5. La aplicación despliega una pantalla con
información detallada de la garantía

Curso alterno de eventos


6.1 Datos mal ingresados o campos
obligatorios vacíos

12.1 Datos mal ingresados o campos


obligatorios vacíos

Tabla 27 Descripción casos de uso: Gestión de garantías


Fuente: Elaboración propia
9.1.5. Mantenimientos

Mantenimientos

Código: 2.1
Casos de uso: Registrar mantenimientos, revisar historial
de mantenimientos, revisar errores comunes
Actores: Mecánico
Resumen: El mecánico ingresa a la aplicación pulsa el
botón de mantenimientos, donde accede a
registrar, revisar historial y errores comunes
de cada mantenimiento y el estado de
garantía de las piezas a las que la empresa le
da.
TIPO: Primario
Precondiciones: Haber ingresado al sistema mediante usuario
y contraseña.

Curso normal de eventos

Acción del actor Respuesta del sistema


1. Este caso de uso se inicia en el
momento en que el mecánico requiera
realizar el mantenimiento a un ascensor.

2. El administrador se dirige a la
pantalla de mantenimientos

3.La aplicación presenta una pantalla donde


puede registrar el mantenimiento a cada una
de las partes que conforman al ascensor, y
cada parte tiene su respectivo botón como lo
son: cabina, hall, cuarto de máquinas,
encima de la cabina, MRRL-VVF, maquina,
control, pozo y garantías
4.El mecánico selecciona cada uno de
los botones en la pantalla de
mantenimientos y procede a registrar el
mantenimiento.

5.La aplicación muestra en una pantalla un


formulario para cada uno de los botones que
se encuentran en la pantalla de
mantenimientos donde se encuentra un
check list que el mecánico debe llenar para
registrar el mantenimiento
6.El administrador completa el
formulario con la información requerida
y procede a guardar.

7. El sistema verifica la información


ingresada y la guarda.
8. El mecánico pulsa en el botón
historial

9.la aplicación muestra un formulario con


10. El mecánico pulsa en el botón de toda la información de los mantenimientos y
errores comunes garantías en modo lectura.

11.la aplicación presenta un formulario


donde se muestra toda la información acerca
12. el mecánico pulsa el botón ok. de los errores comunes que presenta el
ascensor.
14.El mecánico pulsa el botón ok. 13.La aplicación lo redirige a la pantalla
principal.
Curso alterno de eventos
6.1 Datos mal ingresados o campos
obligatorios vacíos
Tabla 28 Descripción casos de uso: Mantenimientos
Fuente: Elaboración propia
9.1.6. Alertas

Alertas

Código: 3.1
Casos de uso: Generar alerta, atender alerta, realizar
mantenimiento por alerta.
Actores: Encargado edificio, Mecánico
Resumen: El encargado pulsa el botón de alerta en la
pantalla principal, al mecánico le llega una
notificación donde le informa de la alerta
del edificio con ubicación y número de
teléfono
TIPO: Primario
Precondiciones: Haber ingresado al sistema mediante usuario
y contraseña.

Curso normal de eventos

Acción del actor Respuesta del sistema


1. Este caso de uso se inicia en el
momento en que un ascensor presente
una falla y el encargado del edificio
regenere una alerta por medio de la
aplicación y esta misma le notificara al
mecánico de la falla

2. El encargado del edificio inicia la


aplicación, luego pulsa el botón de 3.La aplicación genera una notificación al
alerta. técnico disponible, con la ubicación
y número de teléfono.

4.El mecánico recibe la notificación de


la alerta

5. El mecánico se dirige al edificio en


donde ocurrió la falla y procede a
solucionarla.

Curso alterno de eventos


4.El mecánico no cuente con ningún
tipo de conexión a internet
Tabla 29 Descripción casos de uso: Alertas
Fuente: Elaboración propia

9.2. Diagramas de robustez.

9.2.1. Modulo administración:


Inicio de sesión

Ilustración 45 Diagrama de robustez, modulo administración: Inicio de sesión


Creación en Lucid chart: https://app.lucidchart.com/documents

Gestión edificios:
Ilustración 46 Diagrama de robustez, modulo administración: Gestión edificios.
Creación en Lucid chart: https://app.lucidchart.com/documents

Gestión Tecnicos
Ilustración 47Diagrama de robustez, modulo administración: Gestión técnicos.
Creación en Lucid chart: https://app.lucidchart.com/documents

Gestión Mantenimientos
Ilustración 4847Diagrama de robustez, modulo administración: Gestión mantenimientos
Creación en Lucid chart: https://app.lucidchart.com/documents

Gestión alertas
Ilustración 49 47Diagrama de robustez, modulo administración: Gestión alertas
Creación en Lucid chart: https://app.lucidchart.com/documents

Gestión Garantias
Ilustración 50 Diagrama de robustez, modulo administración: Gestión garantías
Creación en Lucid chart: https://app.lucidchart.com/documents

9.2.2. Modulo mantenimientos

Iniciar Sesión
Ilustración 51Diagrama de robustez, modulo mantenimientos: iniciar sesión
Creación en Lucid chart: https://app.lucidchart.com/documents

Registro de mantenimientos
Ilustración 52 Diagrama de robustez, modulo mantenimiento: Registro mantenimiento
Creación en Lucid chart: https://app.lucidchart.com/documents

Historial Mantenimientos
Ilustración 53 Diagrama de robustez, modulo mantenimiento: Historial mantenimientos
Creación en Lucid chart: https://app.lucidchart.com/documents

Errores comunes
Ilustración 54 Diagrama de robustez, modulo mantenimiento: Errores comunes
Creación en Lucid chart: https://app.lucidchart.com/documents

9.2.3. Modulo Alertas


Generar alerta

Ilustración 55 Diagrama de robustez, modulo alertas: Generar alerta.


Creación en Lucid chart: https://app.lucidchart.com/documents

Atender alerta
Ilustración 56 Diagrama de robustez, modulo alertas: Atender alerta
Creación en Lucid chart: https://app.lucidchart.com/documents

9.3. Diagrama de Clases


Ilustración 57 Diagrama de clases
Creación en Lucid chart: https://app.lucidchart.com/documents

9.4. Diagramas de secuencia

Inicio de sesión
Ilustración 58 Diagrama de secuencia inicio de sesión

Creación en Visual Paradigm: https://online.visual-paradigm.com/app/diagrams

Agregar Usuarios
Ilustración 59 Diagrama de secuencia agregar usuarios

Creación en Visual Paradigm: https://online.visual-paradigm.com/app/diagrams

Registro Mantenimiento

Ilustración 60 Diagrama de secuencia registro mantenimiento

Creación en Visual Paradigm: https://online.visual-paradigm.com/app/diagrams

Generar Alerta
Ilustración 61 Diagrama de secuencia Alerta

Creación en Visual Paradigm: https://online.visual-paradigm.com/app/diagrams

10. Fase 3 Implementación

10.1. Arquitectura

“Una arquitectura de software define la forma de trabajar en un sistema, como construir


nuevos módulos, pero también debe dejar intuir el tipo de aplicación que describe”
(Robert C. Martin)

Modelo vista presentador (MVP)

Para este proyecto se ha elegido seguir el patrón de arquitectura modelo vista


presentador, que es un derivado del modelo vista controlador, y que permite separar
nuestras vistas de la lógica de la aplicación, con el fin de mantener un proyecto limpio,
fácil de mantener y escalable.

Capas MVP
Modelo: En esta capa se gestionan los datos. Se encuentran las clases que contienen la
lógica de negocio.

Vista: En esta capa se muestran los datos. Se encuentran los diseños, fragmentos y vistas
de la aplicación.

Presentador: En esta capa se sitúa el modelo y la vista que permite conectar la interfaz
gráfica con los datos.

10.2. Estándares de programación

Para el desarrollo de esta aplicación es imperante y necesario seguir los estándares de


codificación Android creados por Google para código fuente en el lenguaje de
programación Kotlin.

10.3. Base de datos


Bases de datos SQL

Según la publicación web (AWAS, relational database)” Una base de datos


relacional es una recopilación de elementos de datos con relaciones predefinidas
entre ellos. Estos elementos se organizan como un conjunto de tablas con columnas y
filas. Las tablas se utilizan para guardar información sobre los objetos que se van a
representar en la base de datos. Cada columna de una tabla guarda un determinado
tipo de datos y un campo almacena el valor real de un atributo. Las filas de la tabla
representan una recopilación de valores relacionados de un objeto o una entidad.
Cada fila de una tabla podría marcarse con un identificador único denominado clave
principal, mientras que filas de varias tablas pueden relacionarse con claves
extranjeras. Se puede obtener acceso a estos datos de muchas formas distintas sin
reorganizar las propias tablas de la base de datos.”

Bases de datos NoSQL

Según la publicación web (AWAS, nosql)” Las bases de datos NoSQL están
diseñadas específicamente para modelos de datos específicos y tienen esquemas
flexibles para crear aplicaciones modernas. Las bases de datos NoSQL son
ampliamente reconocidas porque son fáciles de desarrollar, por su funcionalidad y el
rendimiento a escala.”.

10.3.1. Cloud Firestore

“Cloud Firestore es una base de datos flexible y escalable para la programación en


servidores, dispositivos móviles y la Web desde Firebase y Google Cloud Platform.
Al igual que Firebase Realtime Database, mantiene tus datos sincronizados entre
apps cliente a través de agentes de escucha en tiempo real y ofrece asistencia sin
conexión para dispositivos móviles y la Web, por lo que puedes compilar apps con
capacidad de respuesta que funcionan sin importar la latencia de la red ni la
conectividad a Internet.

A partir del modelo de datos NoSQL de Cloud Firestore, almacenas los datos en
documentos que contienen campos que se asignan a valores. Estos documentos se
almacenan en colecciones, que son contenedores para tus documentos y que puedes
usar para organizar tus datos y compilar consultas. Los documentos admiten varios
tipos de datos diferentes, desde strings y números simples, hasta objetos anidados
complejos. También puedes crear subcolecciones dentro de documentos y crear
estructuras de datos jerárquicas que se ajustan a escala a medida que tu base de
datos crece. El modelo de datos de Cloud Firestore admite cualquier estructura de
datos que funcione mejor con tu aplicación.

Además, las consultas de Cloud Firestore son expresivas, eficientes y flexibles. Crea
consultas superficiales para recuperar datos en el nivel del documento, sin la
necesidad de recuperar la colección completa ni las subcolecciones anidadas.
Agrega criterios de orden, filtros y límites a tus consultas o cursores para paginar
los resultados. Para mantener actualizados los datos de tus apps sin tener que
recuperar toda la base de datos cada vez que haya una actualización, agrega agentes
de escucha en tiempo real. Estos te notifican con una instantánea de los datos cada
vez que los datos de tus apps cliente escuchan para detectar cambios y recuperan
solo los cambios nuevos.”(Firebase, s,f,).

Debido a los requerimientos de la empresa Elevadores Integral S.A. se ha decidido


implementar una base de datos NoSQL, se eligieron los servicios de Fire Base ya que
no solo nos permite gestionar los permisos de autenticación para acceso seguro de los
usuarios, sino que también nos permite administrar bases de datos en tiempo real.
10.4. Implementación de la base de datos

Se ha decidido alojar la base de datos en Cloud Firestore que es una base de datos
NoSQL que nos permite mantener nuestros datos en tiempo real además de
proporcionar seguridad.

Colección Users
Colección Mantenimientos

Colección Garantias
Colección Edificio

Colección Alerta
10.5. PROYECTO

El proyecto tiene como nombre Elevator y está compuesto por una sola aplicación
dividida en los siguientes módulos : modelo, presentador, vista.

El modelo es una interfaz que define los datos que se mostrará o no actuado en la
interfaz de usuario.

El presentador actúa sobre el modelo y la vista. Recupera datos de los repositorios (el
modelo), y los formatea para mostrarlos en la vista.

La vista es una interfaz pasiva que exhibe datos (el modelo) y órdenes de usuario de
las rutas (eventos) al presentador para actuar sobre los datos.

10.6. CONCEPTOS BASICOS

ANDROID STUDIO

“Android Studio es el entorno de desarrollo integrado (IDE) oficial para el


desarrollo de apps para Android, basado en IntelliJ IDEA. Además del potente editor
de códigos y las herramientas para desarrolladores de IntelliJ, Android Studio ofrece
incluso más funciones que aumentan tu productividad cuando desarrollas apps para
Android.”(Android, s,f)

ADOBE XD

Adobe xD es una herramienta desarrollada por adobe, la cual nos permite crear
prototipos de interfaz digitales interactivos.

FIREBASE

Firebase de Google es una plataforma en la nube para desarrollar aplicaciones web y


móviles desarrollada por Google. Que nos permite utilizar muchas de sus funciones
las cuales describiremos a continuación:

CLOUDSTORE
“Cloud Storage para Firebase es un servicio de almacenamiento de objetos potente,
simple y rentable construido para la escala de Google. Los SDK de Firebase para
Cloud Storage agregan la seguridad de Google a las operaciones de carga y
descarga de archivos para tus apps de Firebase, sin importar la calidad de la red.
Puedes usar nuestros SDK para almacenar imágenes, audio, video y otros tipos de
contenido generado por el usuario. En el servidor, puedes usar Google Cloud
Storage para acceder a los mismos archivos.”(Firebase, Cloud Storage)

AUTHENTICATION

“La mayoría de las apps necesitan identificar a los usuarios. Conocer la identidad de
un usuario permite que una app guarde sus datos en la nube de forma segura y
proporcione la misma experiencia personalizada en todos los dispositivos del
usuario.

Firebase Authentication proporciona servicios de backend, SDK fáciles de usar y


bibliotecas de IU ya elaboradas para autenticar a los usuarios en tu app. Admite la
autenticación mediante contraseñas, números de teléfono, proveedores de identidad
federada populares, como Google, Facebook y Twitter, y mucho más.”(Firebase,
Autentication)

Firebase Crashlytics

“Firebase Crashlytics es una herramienta liviana que permite informar fallas en


tiempo real, hacer un seguimiento de los problemas de estabilidad que afectan la
calidad de tu app, priorizarlos y corregirlos. Crashlytics agrupa las fallas de forma
inteligente y destaca las circunstancias en las que se produjeron, lo que te permite
ahorrar tiempo en la solución de problemas.
Descubre si una falla específica afecta a muchos usuarios. Recibe alertas cuando la
gravedad de un problema aumenta repentinamente. Determina qué líneas de código
están provocando fallas” (Firebase, Crashlytics)

10.7. Codificación

El proyecto se establece de una manera estructural y organizada por medio de


Android Studio, está dividido según el patrón de programación modelo vista
presentador.
10.8. Construcción del proyecto

Ilustración 62 Creación del proyecto


Android Studio

Ilustración 63 Proyecto Elevator


Android Studio
10.9. Estructuración patrón modelo vista presentador

Ilustración 64 Modelo vista presentador proyecto


Android Studio
10.10. Seguridad Google Authentication

Para la seguridad de acceso a usuarios en la aplicación se implementó Firebase


Authentication de Google que nos permite autenticar usuarios con diferentes
métodos, para esto Implementamos la librería de Authentication y luego nos
dirigimos a la consola de Firebase y en la sección de autenticación habilitamos los
servicios de correo electrónico y contraseña

Ilustración 65 Implementación Firebase Authentication

Android Studio

Ilustración 66 Firebase Authentication

Consola Firebase Authentication : https://console.firebase.google.com/project/elevator-


4683f/authentication/providers
10.11. Comunicación con los servicios web

Para este proyecto se utiliza se utilizan los servicios web de Google, llamados
Firebase, se utilizan para la autenticación y el uso de la base de datos de Cloud
Firestore, para esto descargamos un archivo Json que debemos alojar en el proyecto.

Ilustración 67 Json Firebase Android Studio

Android Studio
Retrofit:
“Retrofit es un cliente HTTP de tipo seguro para Android y Java. Retrofit hace sencillo
conectar a un servicio web REST traduciendo la API a interfaces Java. En este tutorial,
te mostraré cómo usar una de las librerías HTTP más populares y frecuentemente
recomendada disponible para Android.

Esta poderosa librería hace sencillo consumir datos JSON o XML, que después es
analizado en Objetos Java (Plain Old Java Objects, POJOs). Todas las peticiones GET,
POST, PUT, PATCH, and DELETE pueden ser ejecutadas”. (Chike Mgbemena,
Tutsplus).
Para poder implementar Retrofit a nuestro proyecto implementamos la librería de
Retrofit, además fue necesario implementar Gson para poder convertir los datos y
enviarlos a Firebase.

Ilustración 68 Implementación Retrofit

Android Studio

10.12. Api

Debido a que el SDK de Firebase es de modo cliente no nos permite otorgar permisos
de administrador, para esto se ha decidido usar Functions de Firebase que nos permite
hacer solicitudes HTTP a una Api en donde el rol de administrador puede agregar
nuevos usuarios para la aplicación.
Ilustración 69 Functions Firebase

Consola Firebase Functions :


https://console.firebase.google.com/project/elevator-4683f/functions/list

Para crear las funciones para agregar técnicos y edificios utilizamos Sublime Text con
lenguaje JavaScript.

Ilustración 70 Función para agregar técnicos

Sublime Text
Ilustración 71 Función para agregar edificios

Sublime Text

10.13. Pruebas

10.13.1. Pruebas Unitarias

Se realizaron una serie de pruebas para validar los métodos y funciones más básicas
del sistema.
Nombre: Acceso al Sistema N°
PRUN
1
Responsable: Equipo de desarrollo
Precondiciones Conexión a internet
Descripción de acciones  Ingresar a la aplicación
 Autenticarse
 Esperar que el usuario sea
autenticado
Resultado Esperado Se espera que el usuario pueda
ingresar correctamente a la
aplicación.
Resultado Obtenido El resultado de la prueba fue
satisfactorio ya que el usuario se
autentico y pudo ingresar al sistema
Tabla 30 Prueba Unitaria Acceso al Sistema

Fuente: Elaboración propia

Nombre: Registrar Mantenimiento. N°


PRUN 2
Responsable: Equipo de desarrollo
Precondiciones  Conexión a internet
 El técnico debe ingresar a la
aplicación
Descripción de pasos  El técnico se debe dirigir a
Mantenimientos
 Debe buscar el edificio y
seleccionar el elevador
 Pulsar ok
 Pulsa el botón registrar
 Llena los formularios de
mantenimiento
 Pulsar botón Guardar
Resultado Esperado Se espera que el administrador pueda
registrar el mantenimiento
correctamente.
Resultado Obtenido El resultado de la prueba fue satisfactorio
ya que el técnico pudo registrar
correctamente los mantenimientos en la
aplicación.
Tabla 31 Prueba unitaria Registrar Mantenimiento
Fuente: Elaboración propia

Nombre: Errores comunes. N°


PRUN 3
Responsable: Equipo de desarrollo
Precondiciones  Conexión a internet
 El técnico debe ingresar a la
aplicación
Descripción de pasos  El técnico se debe dirigir a
Mantenimientos
 Debe buscar el edificio y
seleccionar el elevador
 Pulsar ok
 Pulsa el botón errores comunes
 La aplicación muestra un listado
con los errores comunes
 Pulsar botón Ok
Resultado Esperado Se espera que el técnico pueda obtener un
listado de los errores comunes.
Resultado Obtenido El resultado de la prueba fue satisfactorio
ya que el técnico pudo obtener un listado
de los errores comunes correctamente en
la aplicación.
Tabla 32 Prueba unitaria Errores Comunes

Fuente: Elaboración propia

Nombre: Historial Mantenimiento. N°


PRUN 4
Responsable: Equipo de desarrollo
Precondiciones  Conexión a internet
 El técnico debe ingresar a la
aplicación
Descripción de pasos  El técnico se debe dirigir a
Mantenimientos
 Debe buscar el edificio y
seleccionar el elevador
 Pulsar ok
 Pulsa el botón historial
 La aplicación muestra un listado
de los mantenimientos efectuados
en el elevador
 Pulsar botón Ok
Resultado Esperado Se espera que el técnico pueda obtener un
listado de los errores comunes.
Resultado Obtenido El resultado de la prueba fue satisfactorio
ya que el técnico pudo obtener un listado
de los errores comunes correctamente en
la aplicación.
Tabla 33 Prueba unitaria Historial Mantenimiento

Fuente: Elaboración propia

Nombre: Generar Alerta N°


PRUN 5
Responsable: Equipo de desarrollo
Precondiciones  Conexión a internet
 El edificio debe ingresar a la
aplicación
Descripción de pasos  El encargado del edificio se debe
dirigir a alertas
 Debe indicar cual elevador
presenta la falla y si está vacío o
con personas dentro
 Pulsar botón Generar
Resultado Esperado Se espera que el encargado del edificio
pueda generar una alerta correctamente.
Resultado Obtenido El resultado de la prueba fue satisfactorio
ya que el encargado del edificio pudo
generar la alerta correctamente en la
aplicación.
Tabla 34 Prueba unitaria Generar Alerta

Fuente: Elaboración propia

Nombre: Atender alerta N°


PRUN 6
Responsable: Equipo de desarrollo
Precondiciones  Conexión a internet
 El Tecnico debe mantener la sesión
iniciada en la aplicación
Descripción de pasos  Al técnico le llega una notificación
al teléfono celular.
 Pulsa la notificación y esta lo dirige
a Alertas
 La aplicación muestra una
pantalla con la información del
edificio y un mapa en miniatura
con la ubicación
 Pulsar botón Atender
 Se dirige al edificio a atender la
falla
Resultado Esperado Se espera que al técnico le llegue una
notificación con la alerta, información y
ubicación del edificio y pueda atenderla
correctamente.
Resultado Obtenido El resultado de la prueba fue satisfactorio
ya que al técnico le llego la notificación de
la alerta con la información del edificio en
la aplicación y pudo atenderla
correctamente.
Tabla 35 Prueba unitaria Atender Alerta

Fuente: Elaboración propia

Nombre: Agregar Usuarios N°


PRUN 7
Responsable: Equipo de desarrollo
Precondiciones  Conexión a internet
 Solo el administrador puede
registrar usuarios
 El administrador debe ingresar a
la aplicación mediante correo y
contraseña.
Descripción de pasos  Acceder a Edificios y/o Tecnicos
 Pulsar Agregar
 Llenar formulario con los datos
del usuario.
 Pulsar botón Guardar
Resultado Esperado Se espera que el administrador pueda
agregar usuarios correctamente.
Resultado Obtenido El resultado de la prueba fue satisfactorio
ya que el técnico pudo registrar
correctamente usuarios en la aplicación.
Tabla 36 Prueba unitaria Agregar Usuarios

Fuente: Elaboración propia.

Nombre: Historial de Mantenimientos Administrador N°


PRUN 8
Responsable: Equipo de desarrollo
Precondiciones  Conexión a internet
 El administrador debe ingresar a
la aplicación
 El administrador no puede
modificar información sobre los
mantenimientos
Descripción de pasos  Acceder a Mantenimientos
 Busca por técnico o edificio
 La aplicación muestra un listado
de los mantenimientos realizados
por el técnico
 Pulsar botón ok
Resultado Esperado Se espera que el administrador pueda
consultar los mantenimientos
correctamente.
Resultado Obtenido El resultado de la prueba fue satisfactorio
ya que el administrador consultar el
historial de los mantenimientos
correctamente en la aplicación.
Tabla 37 Prueba unitaria Historial de mantenimientos Administrador

Fuente: Elaboración propia.

Nombre: Historial de Mantenimientos Técnico N°


PRUN 9
Responsable: Equipo de desarrollo
Precondiciones  Conexión a internet
 El Tecnico debe ingresar a la
aplicación
Descripción de pasos  Acceder a Mantenimientos
 Buscar Edificio y seleccionar
elevador
 La aplicación muestra un listado
de los mantenimientos realizados
 Pulsar botón ok
Resultado Esperado Se espera que el Técnico pueda consultar
los mantenimientos correctamente.
Resultado Obtenido El resultado de la prueba fue satisfactorio
ya que el técnico logro consultar el
historial de los mantenimientos
correctamente en la aplicación.
Tabla 38 Prueba unitaria Historial de mantenimientos Técnicos

Fuente: Elaboración propia.

Nombre: Generar Garantias N°


PRUN 10
Responsable: Equipo de desarrollo
Precondiciones  Conexión a internet
 El técnico debe ingresar a la
aplicación
Descripción de pasos  Acceder a mantenimientos
 Buscar Edificio y seleccionar el
elevador
 Accede a registrar mantenimiento
 Accede a Garantias
 Genera pedido por pieza en
garantía
 La aplicación muestra un listado
de las piezas a las que se le ofrece
garantía
 Seleccionar la pieza y pulsar botón
generar
Resultado Esperado Se espera que el técnico pueda generar
pedido de las piezas por garantía
correctamente.
Resultado Obtenido El resultado de la prueba fue satisfactorio
ya que el técnico pudo generar el pedido
de las piezas por garantía correctamente
en la aplicación.
Tabla 39 Pruebas unitarias Generar Garantías

Fuente: Elaboración propia.

Nombre: Gestión de Garantías N°


PRUN 11
Responsable: Equipo de desarrollo
Precondiciones  Conexión a internet
 El administrador debe ingresar a
la aplicación
Descripción de pasos  Acceder a Garantias
 La aplicación muestra un listado
de las piezas pedidas por garantía
por el técnico.
 Pulsar botón ok
Resultado Esperado Se espera que el administrador pueda
consultar las piezas pedidas por garantía
correctamente.
Resultado Obtenido El resultado de la prueba fue satisfactorio
ya que el administrador pudo consultar
las piezas pedidas por garantía
correctamente en la aplicación.
Tabla 40 Pruebas unitarias Gestión de Garantías

Fuente: Elaboración propia.

Nombre: Generar Alerta N°


PRUN 12
Responsable: Equipo de desarrollo
Precondiciones  Conexión a internet
 El edificio debe ingresar a la
aplicación
Descripción de pasos  Acceder a Generar Alerta
 Seleccionar si el elevador está
vacío o con personas
 Pulsar botón Generar
Resultado Esperado Se espera que el edificio pueda generar
una aleta correctamente cuando ocurre
una falla en un elevador
Resultado Obtenido El resultado de la prueba fue satisfactorio
ya que el edificio pudo generar la alerta
correctamente en la aplicación
Tabla 41 Prueba unitaria Generar Alerta

Fuente: Elaboración propia.

Nombre: Atender Alerta N°


PRUN 12
Responsable: Equipo de desarrollo
Precondiciones  Conexión a internet
 El Técnico debe ingresar a la
aplicación
Descripción de pasos  Recibe una notificación
 La aplicación muestra la
información sobre la alerta
 Pulsar botón Atender
Resultado Esperado Se espera que el técnico pueda atender
aletas correctamente cuando ocurre una
falla en un elevador.
Resultado Obtenido El resultado de la prueba fue satisfactorio
ya que el técnico pudo atender la alerta
correctamente en la aplicación.
Tabla 42 Prueba unitaria Atender Alerta

Fuente: Elaboración propia.


Nombre: Historial Alertas N°
PRUN 12
Responsable: Equipo de desarrollo
Precondiciones  Conexión a internet
 El administrador debe ingresar a
la aplicación
Descripción de pasos  Acceder a Alertas
 La aplicación muestra un listado
de las alertas generadas por el
edificio y los técnicos que las
atendieron.
 Pulsar botón ok
Resultado Esperado Se espera que el administrador pueda
consultar las alertas generadas y
atendidas correctamente
Resultado Obtenido El resultado de la prueba fue satisfactorio
ya que el administrador pudo consultar
las alertas generadas y atendidas
correctamente en la aplicación.
Tabla 43 Prueba unitaria Historial Alertas

Fuente: Elaboración propia.

10.13.2. Pruebas de compatibilidad


Las pruebas de compatibilidad permiten verificar el funcionamiento de la aplicación
en diferentes versiones del sistema operativo Android.

10.13.3. Resultados de las pruebas


Pruebas Unitarias:
En estas pruebas se comprobó el funcionamiento del código, verificando funciones y
métodos de una clase. Se realizo un análisis comprobando que se cumplan las
especificaciones dadas y el óptimo funcionamiento de estas.
Pruebas de Compatibilidad
En estas pruebas se comprueba el funcionamiento de la aplicación en diferentes
versiones de Android y se concluye que dispositivos con sistemas operativos
anteriores a Android 5.0 no es permitida su instalación ya que no se le puede brindar
soporte, sin embargo, se verifica que la aplicación funciona correctamente en todas
las versiones iguales o superiores a Android 5.0.
11. Resultados y Discusión

Al momento de mostrar la aplicación a


12. Conclusiones
13. Recomendaciones
14. Referencias

Agrega Firebase al proyecto Android (12 de marzo de 2019). Tomado de


https://firebase.google.com/docs/android/setup?authuser=0
Autentica con Firebase mediante cuentas con contraseña en Android (11 de mayo de
2020). Tomado de https://firebase.google.com/docs/auth/android/password-auth?hl=es
Modelo de datos de Cloud Firestore (12 de marzo de 2019). Tomado de
https://firebase.google.com/docs/firestore/data-model?hl=es
Cloud Functions para Firebase (15 de septiembre de 2019). Tomado de
https://firebase.google.com/docs/functions?authuser=0
¿Qué es una base de datos relacional?

También podría gustarte