Documentos de Académico
Documentos de Profesional
Documentos de Cultura
PABLO”
UNIDAD ACADÉMICA REGIONAL COCHABAMBA
Departamento de Ciencias Exactas e Ingeniería
Ingeniería de Sistemas
Cochabamba - Bolivia
Septiembre de 2022
TRIBUNAL EXAMINADOR
2
Agradecimientos
Agradecemos a Dios,
a nuestros padres y docentes
por el apoyo a lo largo de
estos años de estudio.
3
Resumen
Palabras clave: Desarrollo web, Aplicación web, Scrum, Sprint, Almacén, ítem,
Maquinaria.
4
ÍNDICE GENERAL
INTRODUCCIÓN 12
1 MARCO REFERENCIAL 13
1.1 ANTECEDENTES 13
1.2 PROBLEMA 22
1.4 JUSTIFICACIÓN 24
1.5.1 Límites 25
1.5.2 Alcances 26
2 MARCO TEÓRICO 29
5
2.2 Paradigmas de desarrollo de software 31
2.5 Tecnologías 36
2.5.1 Frontend 37
2.5.2 Datos 38
2.5.3 Lógica 40
3 MARCO PRÁCTICO 42
3.1 Planificación 42
3.1.2 Roles 43
3.1.5 Cronograma 48
6
3.2.8 Sprint 8: Mantenimiento de equipos pesados 88
3.3 Seguridad 89
CONCLUSIONES 94
RECOMENDACIONES 94
BIBLIOGRAFÍA 94
ANEXOS 96
7
ÍNDICE DE TABLAS
8
ÍNDICE DE FIGURAS
9
Figura 23 SideBar implementado 51
10
Figura 46 Línea de procesos para solicitar traspasos 72
11
INTRODUCCIÓN
En Bolivia y el mundo son muchas las personas que asumen riesgos todos los días al
emprender e iniciar un nuevo negocio, en total son más de 300 mil empresas registradas
en Bolivia de las cuales casi (60 mil) (60.000) son de Cochabamba. Dentro de las
responsabilidades de cada una de ellas en definitiva está la de aprovechar y hacer uso de
los recursos tecnológicos más actuales para no perder competitividad y disolverse en el
mercado, y hoy en día los recursos tecnológicos de los que cualquier empresa puede
valerse ya sea para un sistema de ventas, de facturas, de envíos, de inventarios, de
personal, entre otros muchos, son los sistemas de información.
Los sistemas de información han ido evolucionando durante todo este tiempo hasta
toparse dentro de esta última revolución tecnológica como lo es la World Wide Web, una
red global de comunicación. Son muchas las ventajas que los sistemas de información
adquieren a través de la web, rendimiento, fiabilidad, disponibilidad, sin contar toda la
infraestructura que una red interna presupone y que ahora se contrata y se aloja en
servicios de Cloud Computing especializados.
Es por ello que la empresa Estrutec SRL opta por un sistema de información web el cual
le ayude a validar ciertos procesos de negocio con los cuales consideran no tener el
manejo más eficiente y ven en este recurso tecnológico una herramienta muy potente
para impulsar su negocio un paso más.
12
1 MARCO REFERENCIAL
1.1 ANTECEDENTES
1.1.1.1 Misión
1.1.1.2 Visión
13
1.1.1.3 Organigrama
Cuenta con 3 jefaturas, dependientes del Gerente Administrativo Financiero, los cuales a
su vez cuentan con administradores, supervisores, encargados y auxiliares.
La empresa en su necesidad de gestionar sus activos e inventarios hizo uso del sistema
Deltawin en su módulo de almacenes que inició con la transcripción de los datos de
tablas Excel y con ello todos los tipos de herramientas y maquinarias presentes en sus
almacenes. El registro de estos consta de la definición de la cantidad disponible, la
ubicación (almacén actual), cuando se compró, el estado en el que se encuentra (En caso
de activos), grupo al cual pertenece (plomería, eléctrico, entre otros.), entre otros. A
continuación, se presentan los formatos actuales de la empresa.
16
Fuente: Manual de uso Deltawin, 2022.
Los registros de materiales se migran hacia hojas de cálculo Excel o viceversa, siendo
muchas veces el medio más accesible de registro rápido por medio de Excel, siendo una
de las principales inconformidades la interfaz del sistema. La estructura de registro en
Excel es el siguiente.
17
medidas y tamaños, por ello es que el registro de materiales en el sistema interno es muy
demorado, teniéndose muchas veces el caso de que los registros en almacenes están
desactualizados dejando de ser el punto de información de referencia y siendo el
almacenero la única persona quien tiene el mejor conocimiento acerca de los materiales
en su obra, su cantidad, ubicación, estado, etc. Evidentemente se tiene un proceso muy
lento que es rebasado por la dinámica de los procesos conllevando sin remedio a tomar
cálculos erróneos en los pedidos y una ineficaz gestión.
El proceso de ingreso de material empieza por localizar dentro del sistema el módulo de
almacenes y crear un nuevo comprobante de ingreso, lo siguiente es ingresar el código
del almacén en la columna Ag, en la columna IN el tipo ingreso o salida, se ingresa la
fecha del ingreso, VQC como número de documento, un código del cliente, hasta
incluso registrar la disminución del impuesto IVA. Una vez llenado el encabezado se
procede a ingresar los ítems, dónde se despliega la lista de todos los elementos creados y
se debe hacer una búsqueda manual en una lista ordenada por código, se ingresa la
cantidad, el precio unitario, el importe y el costo de venta.
Por otro lado, se encuentra el proceso de salida de material. Este se podría decir que es
desencadenado por el proceso de construcción de una obra la cual requiere el suministro
constante de tanto material, herramientas, maquinarias, entre otros.
18
El proceso de salida inicia con los ingenieros de obra, quienes realizan una planificación
inicial la cual va a determinar un rango de materiales necesarios por semana, luego es el
almacenero quien determina exactamente el material que va a requerir la obra y es
también el que va a validar la llegada del material a la obra. En este flujo se manejan
talonarios físicos (figura 8), de los cuáles se sacan copias, uno para el almacenero, otro
para el chofer, quien hace el envío del material, y otras para oficina central donde se
procesan estos pedidos y donde se deberían registrar en sistema, siendo claramente todo
este proceso muy tardado y propenso a fallos por el manejo de talonarios físicos, sin
mencionar el posterior proceso de validación del gerente.
Otra deficiencia está dentro de la gestión del pedido, ya que el transporte de material
está destinado a llevar cantidades mínimas y máximas de material, dándose muchas
veces el caso de que se tiene material sobrante en el envío, el cual debe ser re
transportado perdiendo en cada envío valor por el deterioro que este sufre.
Como se ha mencionado los principales inconvenientes con la gestión actual son por el
módulo de almacenes y la gestión de activos. Hasta ahora se ha hablado de ineficiencias
que ayudan a la devaluación de los bienes, sin embargo, la mayor preocupación va por la
pérdida total de los activos, principalmente materiales y herramientas.
19
Gerencia general ha determinado un tiempo de vida de los activos bastantes cortos, ya
sean por inconvenientes en los envíos o malos cálculos es claro que hay un problema de
sustracción de los activos. Y gracias al proceso actual demorado y con muchas etapas, el
proceso de control y determinación de responsabilidades se hace muy complicado. El
gerente aun estando pendiente de los registros de almacenes en sistema, no logra validar
el proceso antes de que el almacenero ya reporte otro pedido por la falta de material por
pérdida.
20
Debido a que el uso del sistema requiere capacitación las actualizaciones en sistemas
solo la puede realizar personal en central, entonces desde que un activo no apto para el
trabajo sale de la línea productiva hasta que pasa a un proceso de mantenimiento se
deben dar una gran cantidad de procesos. Una vez más la información que debería ir
desde la primera línea que es la construcción hasta los gestores y administradores se
demora y este tiempo perdido se traduce en costos.
1.1.3.1 Deltawin
21
Tabla 1 Análisis de las ventajas y desventajas del sistema actual
Deltawin
Ventajas Desventajas
La empresa también cuenta con un portal web con dominio: estrutec.com.bo, este sitio
se categoriza dentro de las aplicaciones web como un sitio web estático el cual tiene la
22
función de conectar en la web con un navegador y/o potencial cliente para darle a
conocer:
Este sitio web actualmente está desactualizado y sin la posibilidad de editar contenido o
escalar a nuevo contenido.
1.2 PROBLEMA
23
1.3 DEFINICIÓN DE OBJETIVOS
1.4 JUSTIFICACIÓN
La implementación de este sistema está pensada principalmente para mitigar los grandes
desafíos en la gestión de los activos en todo su proceso dentro del flujo de trabajo,
entonces el poder reducir la pérdida de estos activos y alargar su vida útil le va a
representar a la empresa mayores ingresos económicos.
24
Otro punto muy importante es que la realización de un sistema como este le hubiera
representado a la empresa otra gran inversión, la cual no se pueden permitir en estos
momentos post pandemia.
Por ello es que el sistema que pretende implementar estaría aprovechando los recursos
tecnológicos actualmente más populares, como ser servicios de Cloud Computing para el
alojamiento de los datos y del sistema en línea en internet resolviendo las dificultades
del sistema actual sin reemplazarlo por completo, ya que el sistema con toda su
infraestructura continuaría contribuyendo en otras áreas administrativas u otros módulos
como clientes, personal o tributación.
25
1.5 ALCANCES Y LÍMITES
1.5.1 Límites
Los límites del sistema de información web a realizar para Estrutec son los siguientes:
1.5.2 Alcances
Para cumplir las metas y requerimientos del usuario, el sistema, debe tener
implementados, dentro del módulo de almacenes, las siguientes funcionalidades:
26
1.6 PLAN DE TRABAJO
27
consumibles, activos, equipos y - Diseñar nuevo flujo de registro
herramientas. directo de pedido
- Crear Modelos para el registro
- Implementar Modelos en la API
- Implementar funciones de
comunicación con el servicio de
almacenamiento
- Implementar interfaz gráfica
28
Implementar el módulo de control y - Obtener tiempos de vida de equipos
mantenimiento de equipos pesados para pesados en la empresa
el seguimiento de estados, servicios - Listar datos relevantes de los
preventivos, reducción de gastos equipos pesados necesarios para el
correctivos e integridad de la control de su estado actual y
información. mantenimiento.
- Incorporar en los modelos un
apartado que contenga estos datos
- Implementar modelos en la API.
- Implementar funciones de
comunicación con el servicio de
almacenamiento
- Implementar interfaz gráfica
29
- Lanzamiento del sistema para su
uso en la empresa.
2 MARCO TEÓRICO
La ingeniería del software es una disciplina que comprende todos los aspectos de la
producción de software. Comprende las formas prácticas para desarrollar y entregar un
software útil, formando parte metodológica de toda la disciplina de la ingeniería de
sistemas (Sommerville, 2011).
Entonces ya que no hay métodos universales y técnicas que se ajusten a todo tipo de
sistemas, es necesario determinar qué tipo de sistema es el que vamos a desarrollar,
existen diferentes características que se acomodan dentro de los tipos de software, pero
el tipo de software que mejor se ajusta a la definición de la solución que buscamos es:
una “Aplicación interactiva basada en transacciones”. Estas aplicaciones se ejecutan en
computadoras remotas donde los usuarios se conectan desde sus propios dispositivos,
dentro de este tipo de software, evidentemente, están las aplicaciones web, estas
aplicaciones interactivas a menudo incorporan un gran almacén de datos, el cuál es
accedido y actualizado en cada transacción (Sommerville, 2011, págs. 20, 21).
30
A pesar de la gran diversidad del software existen atributos escenciales con los que este
debe contar, estas características con las que un software profesional debe contar son:
- Mantenibilidad. -El sistema debe estar construido de tal manera que pueda
evolucionar de acuerdo con los requerimientos cambiantes de los usuarios.
- Fiabilidad y seguridad. -El sistema no debe causar daños económicos o físicos
si llega a fallar, además no debe permitir que usuarios maliciosos accedan o
dañen el sistema
- Eficiencia. -El sistema no debe malgastar los recursos de memoria o procesado
del sistema.
- Aceptabilidad. -El sistema debe ser aceptado por el tipo de usuario para el que
fue diseñado.
31
Figura 10 Modelo de procesos en Cascada
Cada incremento o versión del sistema incorpora algunas de las funcionalidades que
necesita el cliente. Generalmente, los primeros incrementos del sistema incluyen la
funcionalidad más importante o requerida con mayor urgencia. Esto significa que el
cliente puede evaluar el sistema en una etapa relativamente temprana del desarrollo para
ver si ofrece lo que se requiere. De lo contrario, solo se debe cambiar el incremento
actual y, posiblemente, definir una nueva funcionalidad para incrementos posteriores.
32
Figura 11 Procesos del desarrollo Incremental
Para este proyecto vamos definimos al Product Owner al gerente general de Estrutec
SRL, como Scrum Master va a figurar el tutor asignado y el equipo de trabajo somos los
autores del proyecto.
33
Cada evento en Scrum es una oportunidad formal para inspeccionar y adaptar los
artefactos Scrum. Estos eventos están diseñados específicamente para habilitar la
transparencia requerida. No operar cualquier evento según lo prescrito resulta en la
pérdida de oportunidades para inspeccionar y adaptarse. Los eventos se utilizan en
Scrum para crear regularidad y minimizar la necesidad de reuniones no definidas en
Scrum. Lo óptimo es que todos los eventos se celebren al mismo tiempo y en el mismo
lugar para reducir la complejidad.
Todos los eventos de Scrum son contenidos dentro de un Sprint. Todo el trabajo
necesario para lograr el Objetivo del Producto, incluido la Sprint Planning, Daily
Scrums, Sprint Review y Sprint Retrospective, ocurre dentro del Sprint. (Schwaber &
Sutherland, 2020)
Los Sprints son el corazón de Scrum, donde las ideas se convierten en valor. Son eventos
de duración fija de un mes o menos para crear consistencia, un nuevo Sprint comienza
34
inmediatamente después de la conclusión del Sprint anterior (Schwaber & Sutherland,
2020, p. 7). En el caso de este proyecto cada Sprint se aproxima a los 14 días de trabajo.
(¿Qué son? ¿Qué tipos hay? ¿Por qué se escogió este tipo de software?)
El desarrollo web como lo indica el nombre tiene que ver con la Web o World Wide Web,
que engloba distintos sitios web enlazados y accedidos mediante internet. Entonces el
desarrollo web es la construcción y el mantenimiento de los sitios web, lo que incluye a
las aplicaciones (Seguro, 2021).
35
Figura 13 Interacción con un sitio web estático
A medida que el internet fue creciendo los sitios web se fueron haciendo cada vez más
complejos, ahora los sitios web necesitaban generar contenido dinámicamente, a estas
aplicaciones se denominan sitios web dinámicos. Estos crean el contenido mostrado al
usuario en tiempo real por lo que el contenido va a variar entre usuarios.
36
En la última década, dominó un paradigma que cambió la forma en la que los sitios web
dinámicos eran creados, la Web 2.0. La lógica antes solamente programada en el
servidor ahora también necesitaba ser implementada en el browser
2.5 Tecnologías
(¿Capas de una aplicación Web? ¿Qué tecnologías existen para cada capa? ¿Cuáles se
van a usar? ¿Por qué?)
- Frontend
- Api
- Data
- Lógica
- Hosting
2.5.1 Frontend
37
El dilema surge en el denominado UI Framework, que se define como la herramienta
para implementar elementos prediseñados en la interfaz de usuario. Estas herramientas
se han popularizado gracias a que proporcionan elementos con diseño elegante y
reducen tiempos de codificación.
De acuerdo con el análisis previo vamos a optar para este proyecto por Reactjs, debido a
su flexibilidad, simplicidad, baja curva de aprendizaje, buen rendimiento y diversidad de
soporte y tecnologías compatibles.
2.5.2 Datos
38
web, la aplicación debería funcionar en un servidor remoto, por lo que el
almacenamiento de la información no puede ser de manera local.
39
En la comparativa anterior se observan varias similitudes entre estas tecnologías, las 3
son muy populares en el desarrollo web, por lo que el propósito de la aplicación es el
que determina cuál va a ser la mejor elección. Las tres son tecnologías son Open Source,
es decir, de acceso y uso libre, se respaldan por una gran comunidad y compañías serias,
además que, brindan seguridad y soporte a sus usuarios. Pero en nuestro criterio
PostgreSQL se acopla de mejor manera a las funcionalidades que va a presentar la
aplicación.
2.5.3 Lógica
Algunos autores se refieren a las clases dentro de la capa "media" o lógica, como objetos
de negocio; otros autores las llaman entidades u objetos de dominio.
Independientemente de cómo se llamen, los objetos de negocio representan tanto los
datos como el comportamiento de los objetos que corresponden al dominio conceptual
del negocio (Connolly & Hoar, 2015, pág. 582). Estas entidades o modelos de datos
obtenidos de la capa de Datos necesitan llegar hacia la capa Frontend y es ahí donde una
API es requerida.
40
procesa la transferencia de datos entre sistemas. El proceso comienza cuando se hace un
pedido de información o request, este pedido es procesado hacia un método de un
recurso mediante el URI (Uniform Resource Identifier) y un método o verbo HTTP,
luego se ejecuta el método de obtención del recurso y se genera una respuesta o response
de parte del servicio de Datos, la API termina por retransmitir esa respuesta al servicio
solicitante (IBM, 2020).
41
alternativas para casi cualquier con sus propias
elegir, además de servicio de hosting. tarifas y softwares
simplicidad en el para web hosting.
proceso de deploy.
3 MARCO PRÁCTICO
3.1 Planificación
Como se menciona anteriormente un Sprint comienza con una lista de tareas a realizar
llamada Product backlog, por lo que un primer paso es el de definir las tareas de esta
lista. Para ello es necesario que la visión de la aplicación que tiene el equipo de
desarrollo este en sintonía con la que tiene el cliente, para lo que se deben concertar
reuniones y trabajar colaborativamente con el cliente en esta etapa previa al desarrollo.
En este caso el cliente va a ser representado por el gerente general de Estrutec SRL, es
con su colaboración con la que primeramente se va a hacer un análisis a los
requerimientos de la aplicación.
42
En la primera reunión con el cliente se definió como objetivo el de establecer la
“product vision”, esta es una declaración sucinta que define la esencia del producto que
se está desarrollando y explica cómo el producto difiere de otros productos
competidores. En este caso se va a usar el formato de Geoffrey Moore para definir el
“product vision”.
Con el valor diferenciador de: ofrecer una experiencia sencilla para todo tipo de
consumidor y con una privacidad absoluta de las comunicaciones.
3.1.2 Roles
Otra pregunta que realizarse para un equipo de trabajo en esta etapa de planificación es
"¿Quiénes son los usuarios objetivo de mi producto?". Es necesario tener cierta
comprensión de los usuarios potenciales con el fin de diseñar características que son
propensos a encontrar útil y para diseñar una interfaz de usuario que se adapte a cada
uno de ellos.
Con esta información, el equipo debe identificar que operaciones dentro del sistema
tendría que poder realizar cada cargo, a partir de ello es posible identificar si 2 o más
43
cargos diferentes pueden llegar a coincidir en sus responsabilidades dentro del sistema y
así, agruparlos en un tipo de usuario. Con esto el equipo pretende definir las “personas”
o tipos diferenciados de usuarios que va a usar el sistema para diferentes propósitos o de
diferente manera. Cada “persona” va a tener acceso a diferentes funcionalidades dentro
del sistema y va a tener el acceso restringido a otras. Las “personas” identificadas dentro
del sistema son:
Una vez determinados los usuarios y sus responsabilidades, se determinan los procesos
que estos van a seguir para completar cualquier objetivo que se propongan a realizar con
nuestra aplicación, y para ello se usan diagramas, que describen los denominados “User
Flows” (Flujos del usuario), por los cuales, tanto el equipo de desarrollo como el cliente
van a poder visualizar todas las funcionalidades que se proponen desarrollar y también
entender como estas ayudan a cumplir los objetivos específicos planteados para el
sistema.
El equipo de desarrollo, antes del inicio de cada Sprint, diseñó el diagrama en conjunto,
se validó el funcionamiento y durante el proceso del sprint se fueron agregando
elementos importantes que concretan el flujo descrito.
Todos los diagramas de flujo creados durante el proceso de desarrollo están en la sección
de Anexos, Diagramas de flujo.
44
Los diagramas de clases son uno de los tipos de diagramas más útiles en UML, ya que
trazan claramente la estructura de un sistema concreto al modelar sus clases, atributos,
operaciones y relaciones entre objetos. Gracias a este diagrama el equipo pudo modelar
entidades como clases y determinar todos los atributos que se iban a contemplar en la
lógica del sistema.
45
Figura 16 Diagrama de Clases del Sistema
Con este diagrama se usó de base para la creación de nuestra base de datos relacional, la
cual es extensa y de alta complejidad como se observa en la figura siguiente.
48
3.1.4 Product Backlog
3.1.5 Cronograma
Una vez creado nuestro “Product Backlog” es posible hacer una planificación de los
Sprints necesarios para completar las tareas en un determinado tiempo. El equipo de
desarrollo acordó, en cada uno de los Sprints, implementar tareas de un mismo módulo y
si el periodo de un Sprint (2 semanas) no alcanzaba para concluir el módulo, continuar
en el siguiente.
(Cronograma de Sprints)
49
Figura 19 Descripción de la arquitectura del sistema
3.2.1.1 Planeación
50
6 Vistas alternativas Diseño Usuario
7 Implementar SideBar Desarrollo Usuario
3.2.1.2 Desarrollo
El desarrollo de este Sprint se realizó de acuerdo con el marco de trabajo y acuerdos del
grupo de trabajo. Además, no se requirió más tiempo del planificado.
Se inicia primero con el diseño de la página con la que se tiene el primer contacto.
51
Figura 21 Formulario de Inicio de Sesión
Si el usuario no tiene una cuenta creada, usa el siguiente formulario para crear una
cuenta.
Una vez dentro del sistema se tiene una barra lateral con una pestaña de “Registros” para
acceder a las vistas de este módulo.
52
Figura 23 SideBar implementado
También se tiene una vista para los usuarios ya aceptados con acceso a la aplicación.
53
Figura 25 Vista de usuarios registrados
Cada usuario registrado dispone de una ficha con sus datos y la opción de eliminarlo,
que significa que se le remueve el acceso a la aplicación.
54
Fuente: Elaboración propia, 2022.
3.2.1.3 Resultados
55
# Estado Resultados
1 Validado Se registra la lista de privilegios habilitados para cada cargo de un usuario
Se valida el acceso a los recursos de acuerdo con los privilegios del cargo
Validado
2 del usuario
Se muestra el mensaje "No tienes acceso a esta página" en pantalla si un
Validado
3 recurso solicitado no es accesible por el usuario
Se devuelve los recursos solicitados una vez validado sus privilegios de
Validado
4 usuario
Backlog
ID: 3 Habilitar el registro de un usuario
Criterios de Validación
# Estado Resultados
Se observa en la pantalla de Dashboard notificaciones de usuarios que
Validado
1 solicitan registro
Se visualizan en el sistema, en el módulo de "Registros" una lista de
Validado
2 solicitudes de registro
Se tiene la posibilidad de rechazar solicitudes de registro en la opción
Validado
3 "Ver" de la lista de solicitudes de registro
Es posible aceptar solicitudes de registro a la aplicación en la opción
Validado
4 "Ver" de la lista de solicitudes de registro
Backlog
ID: 4 Gestionar usuarios registrados
Criterios de Validación
# Estado Resultados
Se visualiza a todos los usuarios registrados en la aplicación en la pestaña
1 Validado
"Registrados" del módulo "Registros".
El rol "Gerente" puede expulsar un usuario ya registrado, en la pestaña
2 Validado
"Registrados" con el botón "Gestionar" del usuario requerido
Si se intenta eliminar a un usuario que este encargado de un almacén, el
sistema muestra el mensaje "Error. El usuario es encargado de (nombre
3 Validado
del almacén)".
"
El usuario que ha sido expulsado no tiene acceso al sistema, pero sus
4 Validado datos registrados en pedidos, traspasos, salidas e ingresos no son
borrados
Backlog
ID: 5 Inicio de sesión de un usuario
Criterios de Validación
# Estado Resultados
El usuario recibe la notificación "Aún no se confirma su solicitud" al
1 Validado
iniciar sesión, si no se le ha habilitado la cuenta
El usuario recibe la notificación "Su solicitud fue rechazada" al iniciar
2 Validado
sesión, si se le ha rechazado su solicitud de registro
56
Un usuario registrado y aceptado en el sistema, puede ingresar con su
3 Validado
nombre y contraseña a la página principal del sistema
Al ingresar un usuario sus credenciales de manera incorrecta, se muestra
4 Validado
el mensaje "Usuario o contraseña incorrectos".
Backlog
ID: 6 Vistas alternativas
Criterios de Validación
# Estado Resultados
Si el usuario no tiene acceso a una vista, se muestra otra vista con el
1 Validado mensaje "No tienes acceso a esta página", con un botón que redireccione
al Menú principal
Si el usuario accede a una vista inexistente, visualiza otra vista que le
2 Validado
informa "Página no encontrada" y que le redirecciona a Menú principal
Si el usuario accede a una vista sin haber iniciado sesión, es
3 Validado
redireccionado a la página de Inicio de sesión
Backlog
ID: 7 Implementar SideBar
Criterios de Validación
# Estado Resultados
El SideBar es visible en todas las pantallas disponibles una vez iniciada
1 Validado
sesión
2 Validado El SideBar muestra una opción que redirige a la página de Dashboard
3 Validado El SideBar muestra una opción que redirige a la sección de Traspasos
4 Validado El SideBar muestra una opción que redirige a la sección de Ítems
El SideBar muestra una opción que redirige a la Almacenes y se visualiza
5 Validado
de acuerdo con el rol y privilegios
El SideBar muestra una opción que redirige a la sección de Registro si es
6 Validado
que corresponde a los privilegios del usuario
7 Validado El SideBar se contrae y expande con un botón
8 Validado Se muestra en el SideBar un botón para cerrar sesión.
3.2.2.1 Planeación
SPRINT 2: Almacenes
57
Sprint Inicio Fin Duración hrs. Días
2 11/04/22 22/04/22 96 12
SPRINT BACKLOG
Backlog ID Tarea Tipo Rol
8 Crear un Almacén Planificación Gerente
9 Mostrar pantalla de todos los almacenes Desarrollo Usuario
10 Mostrar pantalla de un solo almacén Desarrollo Usuario
11 Mostrar Nombre de usuario con sesión iniciada. Desarrollo Usuario
12 Agregar Encargado a un Almacén Desarrollo Usuario
13 Mostrar y Editar información de un Almacén Desarrollo Gerente
14 Eliminar un Almacén Desarrollo Gerente
3.2.2.2 Desarrollo
El desarrollo de este Sprint se realizó de acuerdo con el marco de trabajo y acuerdos del
grupo de trabajo. Además, no se requirió más tiempo del planificado.
58
Fuente: Elaboración Propia, 2022.
La vista principal de este módulo enlista todos los almacenes registrados, con la
posibilidad de filtrar. Y, además, muestra una opción de crear uno nuevo.
Al seleccionar un almacén se muestra otra pantalla con los ítems de ese almacén y un
detalle de estos.
59
Figura 31 Agregar ítem en almacén
60
Figura 33 Visualizar movimientos de ítem en almacén
Podemos ver una pestaña de información sobre el almacén, con la posibilidad de editar
los datos actuales.
3.2.2.3 Resultados
61
# Estado Resultados
En el módulo de "Almacenes" se muestra un botón para añadir un nuevo
Validado
1 almacén
Para añadir un nuevo almacén, se muestra un formulario con los campos
Validado
2 Nombre, Encargado, Ciudad y Dirección para llenar los datos del almacén
Se registra el nuevo almacén al recibir el mensaje de confirmación "Se ha
Validado
3 registrado el almacén"
Se muestra el nuevo almacén en la lista de almacenes con los
Validado
4 respectivos datos registrados
Backlog
ID: 9 Mostrar pantalla de todos los almacenes
Criterios de Validación
# Estado Resultados
1 Validado Se recuperan todos los almacenes registrados
Se muestra la etiqueta por color del departamento en que se encuentra
Validado
2 el almacén
3 Validado Se muestra la dirección del almacén en la tarjeta respectiva
Cada almacén es representado por una tarjeta con el nombre del
Validado
4 almacén como titulo
Se tiene una tarjeta con el símbolo "+" para poder añadir un nuevo
Validado
5 almacén
Se filtran los almacenes según el departamento seleccionado (Color
Validado
6 seleccionado)
Backlog
ID: 10 Mostrar pantalla de un solo almacén
Criterios de Validación
# Estado Resultados
El sistema muestra en la parte superior un título con el nombre del
Validado
1 almacén
2 Validado El sistema muestra dos pestañas: Items e Información
3 Validado El sistema muestra la tabla de ítems en la pestaña de Items
El sistema muestra en la tabla de ítems del almacén, junto a los campos
Validado
4 de Tipo, Grupo, Código, Descripción y Cantidad
El sistema muestra opciones de agregado y retiro de cantidad de
Validado
5 producto al pulsar sobre uno de ellos
El sistema en la pestaña ítems muestra un botón "+ Agregar" para
Validado
6 agregar un nuevo ítem al almacén
El sistema en la pestaña ítems muestra un botón de "Quitar" en cada
Validado ítem, al pulsar muestra un mensaje de confirmación antes de realizar la
7 acción
El sistema recuperar los campos; Nombre, Encargado, Ciudad y Dirección
Validado
8 del almacén en la pestaña de "Información"
62
El sistema permite editar los campos Nombre, Encargado, Ciudad y
Validado
9 Dirección del almacén en la pestaña de "Información"
En la pestaña "Información" se muestra un botón "Guardar" para grabar
Validado los cambios realizados, que al pulsar muestra el mensaje "Se ha editado
10 el almacén"
En la pestaña "Información" se muestra el botón "Eliminar Almacén",
Validado que al pulsar muestra un mensaje de confirmación para eliminar el
11 almacén
Backlog
ID: 11 Mostrar Nombre de usuario que ha iniciado sesión
Criterios de Validación
# Estado Resultados
En la parte inferior del SideBar se muestra el nombre junto al rol del
Validado
1 usuario activo
El sistema muestra encima del botón "Cerrar sesión" el nombre del
Validado
2 usuario
Backlog
ID: 12 Agregar Encargado a un Almacén
Criterios de Validación
# Estado Resultados
En la pestaña "Información" se tiene el campo "Encargado" con un
Validado
1 selector que contiene a todos los usuarios registrados
En la pestaña "Información" se muestra el campo "Encargado" con la
Validado
2 información previa
3 Validado El sistema muestra un botón de "Guardar" al editar el encargado
Se muestra un mensaje de confirmación de guardado "Se ha editado el
Validado
4 almacén"
Backlog
ID: 13 Mostrar y Editar información de un Almacén
Criterios de Validación
# Estado Resultados
En la pestaña "Información" se muestran los campos Nombre,
Validado
1 Encargado, Ciudad y Dirección con la información previa
El sistema recupera los campos de información del almacén actuales en
Validado
2 la sección de "Información" de Almacenes
En la pestaña "Información" se muestra el botón "Guardar" para
Validado
3 confirmación de edición
El sistema muestra el mensaje "Se ha editado el almacén" de
Validado
4 confirmación al realizar un cambio en los campos anteriores
Backlog
ID: 14 Eliminar un Almacén
Criterios de Validación
# Estado Resultados
63
Validado En la pestaña "Información" se muestra un botón "Eliminar Almacén"
1 Validado El sistema muestra el botón al final de la sección de "Información"
El sistema muestra un cuadro de confirmación con la posibilidad de
Validado
2 confirmar la eliminación o cancelarla
El sistema muestra el mensaje "Se ha eliminado el almacén"
Validado
3 confirmando la correcta eliminación del almacén
3.2.3.1 Planeación
SPRINT 3
Sprint Inicio Fin Duración hrs. Días
3 25/04/22 07/05/22 104 13
SPRINT BACKLOG
Backlog ID Tarea Tipo Rol
15 Crear productos Planificación Gerente
16 Añadir productos a un almacén Desarrollo Almacenero
17 Mostrar pantalla con todos los productos creados Desarrollo Usuario
3.2.3.2 Desarrollo
El desarrollo de este Sprint se realizó de acuerdo con el marco de trabajo y acuerdos del
grupo de trabajo. Además, no se requirió más tiempo del planificado.
64
Figura 35 Opción de ítems en SideBar
Por cada tipo de ítem se muestra una tabla de registros con datos críticos de cada ítem,
con la posibilidad, además, de descargar la tabla.
65
Figura 37 Tabla de registros de ítems
3.2.3.3 Resultados
66
Backlog
ID: 17 Mostrar pantalla con todos los productos creados
Criterios de Validación
Estado Resultados
El sistema muestra una tabla con cada ítem en las filas y con las
1 Validado
propiedades del ítem en las columnas
El sistema muestra un botón de descarga en el lateral de la tabla "Items"
2 Validado
de cada Almacén.
El sistema tiene opciones de filtrado y búsqueda en las tablas para
3 Validado
aumentar su productividad
3.2.4.1 Planeación
SPRINT 4: Ítems
Sprint Inicio Fin Duración hrs. Días
4 09/05/22 20/05/22 88 11
SPRINT BACKLOG
Backlog ID Tarea Tipo Rol
18 Quitar material de un almacén Desarrollo Almacenero
19 Agregar o Quitar ítems registrados Desarrollo Almacenero
20 Mostrar flujo de operaciones de un ítem Desarrollo Usuario
21 Mostrar actividad reciente Desarrollo Usuario
3.2.4.2 Desarrollo
El desarrollo de este Sprint se realizó de acuerdo con el marco de trabajo y acuerdos del
grupo de trabajo. Además, no se requirió más tiempo del planificado.
67
Figura 38 Opción de quitar ítem de un almacén
Por cada tipo de ítem se tiene la posibilidad de ingresar un nuevo registro de ítem.
68
Figura 40 Formulario de nueva maquinaria estacionaria
69
Figura 42 Formulario de nuevo Material / Herramienta
70
3.2.4.3 Resultados
71
4 Validado El sistema ordena la lista de flujos, del más reciente al más antiguo.
3.2.5.1 Planeación
SPRINT 5: Traspasos
Sprint Inicio Fin Duración hrs. Días
5 23/05/22 03/06/22 96 12
SPRINT 4: Autenticación y Autorización
Backlog ID Tarea Tipo Rol
22 Crear solicitud traspaso Desarrollo Usuario
23 Vista solicitudes pendientes Desarrollo Usuario
23 Implementar Hoja de ruta Desarrollo Usuario
25 Aceptar traspaso de material a una sucursal Desarrollo Gerente
26 Aceptar envío de material a una sucursal Desarrollo Almacenero
27 Confirmar llegada de material a una sucursal Desarrollo Almacenero
28 Vista Traspasos Desarrollo Usuario
29 Hoja de ruta finalizada Desarrollo Gerente
3.2.5.2 Desarrollo
El desarrollo de este Sprint se realizó de acuerdo con el marco de trabajo y acuerdos del
grupo de trabajo. Además, no se requirió más tiempo del planificado.
72
Figura 44 Opción de Traspasos en SideBar
Se muestra una pantalla principal con el registro de todos los traspasos completados o
cancelados.
Es posible crear una solicitud de traspaso mediante esta línea de proceso con 4 pasos.
73
Figura 46 Línea de procesos para solicitar traspasos
Es posible ver los detalles de una solicitud como la fase en la que se encuentra y los
ítems enlistados en el proceso, además, se muestran opciones para aceptar y rechazar la
misma.
Una vez completado o cancelado el traspaso se pueden ver todos los detalles del proceso
como fases, involucrados, fechas e ítems.
74
Figura 48 Hoja de ruta de traspaso
3.2.5.3 Resultados
75
Debajo del detalle de ítems a traspasar, se debe mostrar un botón con el
8 Validado
label "Enviar Solicitud".
Al presionar el botón "Enviar Solicitud" se confirma la solicitud y se
9 Validado
muestra el mensaje "La transferencia está en progreso" en pantalla.
Backlog
Vista solicitudes pendientes
ID: 22
Criterios de Validación
# Estado Resultados
El sistema muestra una pestaña de "Solicitudes pendientes" en el módulo
1 Validado
de "Traspasos"
El sistema muestra dentro la pestaña "Solicitudes Pendientes" una lista
2 Validado
con las solicitudes pendientes en cada fila
El sistema muestra en cada fila la fecha y hora en la que se realizó la
3 Validado
solicitud con el destino del traspaso
El sistema muestra al final de cada registro de traspaso un botón con el
4 Validado
label "Ruta"
Al pulsar al botón anterior, el sistema redirige la vista a la Hoja de Ruta
5 Validado
con el id de traspaso seleccionado
Backlog
Implementar Hoja de ruta
ID: 23
Criterios de Validación
# Estado Resultados
El sistema muestra una barra de progreso al lado izquierdo de la pantalla,
1 Validado
llenando el progreso hasta el paso en el que se encuentra el traspaso.
El sistema muestra el paso siguiente y el paso completado debajo de la
2 Validado
barra anterior
El sistema muestra un call to action para confirmar el paso actual y seguir
3 Validado
con el siguiente.
El sistema muestra el detalle de todos los ítems del traspaso al lado
4 Validado
derecho de la pantalla.
Backlog
Aceptar traspaso de material a una sucursal
ID: 24
Criterios de Validación
# Estado Resultados
El sistema en la pestaña "Solicitudes Pendientes" muestra al pulsar en el
1 Validado botón "Ruta" de un traspaso, la hoja de ruta un call to action, para
confirmar el paso de "Confirmar Autorización de envío".
El sistema muestra un texto "Central acepta el traspaso del detalle de
2 Validado material a destino." describiendo que se está aceptando todos los ítems,
orígenes y destino del traspaso
3 Validado El sistema muestra un botón verde "Aceptar" y otro rojo "Rechazar"
El sistema muestra el mensaje de confirmación "La transferencia está en
4 Validado
progreso" si se presiona el botón de confirmación.
76
El sistema muestra un modal con un campo de entrada texto "Razón de
5 Validado Cancelación" que requiera una razón si es que se presiona el botón de
cancelación.
Backlog
Aceptar envío de material a una sucursal
ID: 25
Criterios de Validación
# Estado Resultados
El sistema en la pestaña "Solicitudes Pendientes" muestra al pulsar en el
1 Validado botón "Ruta" de un traspaso, la hoja de ruta con un call to action, para
confirmar el paso de "Confirmar Envío".
El sistema muestra un texto "(Almacén) confirma la salida del material
2 Validado descrito. “anunciando que se está confirmando el envío todos los ítems
especificados del traspaso
3 Validado El sistema muestra un botón verde "Aceptar" y otro rojo "Rechazar"
El sistema muestra el mensaje de confirmación "La transferencia está en
4 Validado
progreso" si se presiona el botón de confirmación.
El sistema muestra un modal con un campo de entrada texto "Razón de
5 Validado Cancelación" que requiera una razón si es que se presiona el botón de
cancelación.
Backlog
Confirmar llegada de material a una sucursal
ID: 26
Criterios de Validación
# Estado Resultados
El sistema en la pestaña "Solicitudes Pendientes" muestra al pulsar en el
1 Validado botón "Ruta" de un traspaso, la hoja de ruta con un call to action, para
confirmar el paso de "Confirmar Llegada".
El sistema muestra un texto describiendo que se está recibiendo todos los
2 Validado
ítems especificados del traspaso
3 Validado El sistema muestra un botón verde "Aceptar" y otro rojo "Rechazar"
El sistema muestra el mensaje de confirmación "Se ha completado el
4 Validado
Traspaso" si se presiona el botón de confirmación.
El sistema muestra un modal con un campo de entrada texto que
5 Validado
requiera una razón si es que se presiona el botón de cancelación.
Backlog
Vista Traspasos
ID: 27
Criterios de Validación
# Estado Resultados
El sistema muestra una pestaña de "Traspasos" en el módulo de
1 Validado
Traspasos
El sistema en la pestaña "Traspasos" muestra una lista con todos los
2 Validado
traspasos completados y cancelados.
3 Validado El sistema muestra en cada fila la fecha, hora y el destino del traspaso
77
El sistema muestra al final de cada registro de traspaso un botón con el
4 Validado label "Ver" o "Cancelado", dependiendo si este fue completado o
cancelado en algun punto de la ruta.
Al pulsar al botón "Ver" o "Cancelado" de un traspaso de la lista de
5 Validado "Traspasos", el sistema redirige a la vista a la Hoja de Ruta con el id de
traspaso seleccionado.
Backlog
Hoja de ruta finalizada
ID: 28
Criterios de Validación
# Estado Resultados
El sistema muestra una barra de progreso en la parte superior, llenando el
1 Validado
progreso hasta el paso en el que se finalizó el traspaso.
2 Validado El sistema muestra con símbolos "X" y "✓" respectivamente
El sistema muestra un registro de firmante (Usuario que autorizo o
3 Validado
confirmo el paso) y fecha en cada paso transcurrido.
El sistema muestra el detalle de todos los ítems del traspaso al lado
4 Validado
derecho de la pantalla.
3.2.6.1 Planeación
SPRINT 6: Pedidos
Sprint Inicio Fin Duración hrs. Días
5 01/08/22 12/08/22 96 12
SPRINT BACKLOG
Backlog ID Tarea Tipo Rol
30 Pestaña pedidos en SideBar Desarrollo Usuario
31 Realizar pedidos Desarrollo Usuario
32 Lista de pedidos realizados Desarrollo Usuario
33 Lista de pedidos pendientes Desarrollo Gerente
34 Detalles de un pedido Desarrollo Usuario
35 Descargar pedido Desarrollo Usuario
36 Comprar ítems Desarrollo Almacenero
37 Aceptar o rechazar Pedido Desarrollo Gerente
78
Fuente: Elaboración Propia, 2022.
3.2.6.2 Desarrollo
El desarrollo de este Sprint se realizó de acuerdo con el marco de trabajo y acuerdos del
grupo de trabajo. Además, no se requirió más tiempo del planificado.
79
Figura 50 Lista principal de pedidos
80
Figura 52 Lista de pedidos pendientes
Una vez aceptado el pedido se puede visualizar un detalle con los datos del pedido.
81
Figura 54 Detalle de pedido aceptado
82
Figura 56 Detalle de pedido comprado
3.2.6.3 Resultados
83
Al presionar se obtiene un formulario para poner el nombre del almacén
2 Validado
solicitante y el proveedor opcionalmente.
Se puede añadir N ítems de la base de datos en la solicitud con sus
3 Validado respectivas cantidades y este se encarga de multiplicar esa cantidad con el
precio del ítem respectivo
Se muestra el mensaje "La orden está en progreso." de confirmación al
4 Validado
realizar el pedido
5 Validado Al presionar se redirecciona a la pestaña de "Lista de Pedidos"
Backlog
ID: 31 Lista de pedidos realizados
Criterios de Validación
# Estado Resultados
El sistema muestra una subsección en la página principal de pedidos que
1 Validado
se llame "Lista de Pedidos"
En esta subsección se muestra una lista de todos los pedidos aprobados,
2 Validado
comprados y rechazados
La lista de pedidos muestra, por cada pedido su respectivo # de pedido, la
3 Validado
fecha de aceptación o rechazo y un respectivo botón.
Al final de cada línea de un pedido se tiene; un botón azul "Para Comprar"
si el pedido fue aprobado, o un botón naranja "Comprado" si ya fue
4 Validado
completada la compra, o un botón rojo "Rechazado" si fue un pedido
rechazado, para ver los detalles del pedido.
Backlog
ID: 32 Lista de pedidos pendientes
Criterios de Validación
# Estado Resultados
El sistema muestra una subsección en la página principal de pedidos que
1 Validado
se llame "Pedidos por aprobar" en el módulo de "Pedidos"
2 Validado En esta subsección se muestra toda la lista de pedidos por aprobar
La lista de pedidos muestra, por cada pedido, el número de pedido, la
3 Validado
fecha de aceptación o rechazo y un botón azul "Ver" para ver los detalles.
Backlog
ID: 33 Detalles de un pedido
Criterios de Validación
# Estado Resultados
Los detalles de un pedido se muestran en una pantalla diferente dentro
1 Validado
del módulo de "Pedidos".
Esta pantalla tiene por título "Pedidos > Pedido #num" con el número del
2 Validado
pedido respectivo.
Se muestra datos generales del pedido: Proveedor, Fecha de Pedido y
3 Validado
almacén de destino.
Debajo se muestra una lista de ítems a comprar con los datos: Código,
4 Validado
Descripción del Ítem, Cantidad, Precio (Bs) y Total (Bs).
84
Debajo de la lista anterior se muestra a la derecha el total final, al sumar
5 Validado
los totales de cada ítem
Al final de esta pantalla se muestra una etiqueta de color verde con un
6 Validado label que indica quién autoriza el pedido y en qué fecha o una etiqueta
roja si ha sido rechazado
Backlog
ID: 34 Descargar pedido
Criterios de Validación
# Estado Resultados
El sistema muestra un botón debajo la lista del pedido, para descargar al
1 Validado
momento de ver el detalle de un pedido previamente aprobado.
2 Validado El nombre del archivo PDF descargado es el número del pedido
Backlog
ID: 35 Comprar ítems del pedido
Criterios de Validación
# Estado Resultados
Al final de la vista de detalle de un pedido se visualiza una casilla de
1 Validado
verificación con el label "Marcar compra de pedido"
Al marcar la casilla, se muestra una ventana para modificar las cantidades
2 Validado o precios de los productos de acuerdo con la compra realizada y
obligatoriamente adicionar el proveedor si no se tiene uno registrado.
3 Validado Se marca la compra como "comprada" y pasa a la sección de compras
Backlog
ID: 36 Aceptar o rechazar Pedido
Criterios de Validación
# Estado Resultados
Al presionar el botón azul de "Ver" en la lista de la pestaña "Pedidos por
1 Validado
aprobar", se redirecciona a una pantalla nueva
Se muestra datos generales del pedido: Proveedor, Fecha de Pedido y
2 Validado almacén de destino. Debajo se muestra una lista de ítems a comprar con
los datos: Código, Descripción del Ítem, Cantidad, Precio (Bs) y Total (Bs).
Debajo de esta información se muestra un botón verde "Autorizar" que al
3 Validado presionar pasa el pedido a un estado de Para comprar, mostrando el
mensaje de confirmación "Se ha actualizado la orden".
Al lado izquierdo se muestra un botón rojo "Rechazar" que al presionar
4 Validado pasa el pedido a un estado de rechazado, mostrando el mensaje de
confirmación "Se ha actualizado la orden".
3.2.7.1 Planeación
85
La planificación de este Sprint se hizo a partir de la separación de las “Historias de
usuario” correspondientes del módulo de Autorización y Autenticación del Product
Backlog. A continuación, observamos la lista de actividades planificadas.
3.2.7.2 Desarrollo
El desarrollo de este Sprint se realizó de acuerdo con el marco de trabajo y acuerdos del
grupo de trabajo. Además, no se requirió más tiempo del planificado.
86
Fuente: Elaboración Propia, 2022.
87
Figura 59 Visualización de métrica de rotación de inventario
3.2.7.3 Resultados
88
# Estado Resultados
El sistema adapta las dimensiones del formulario de acuerdo con el
1 Validado
ancho de la pantalla
El sistema conserva el ancho de preestablecido para cada campo de
2 Validado
texto o seleccionable.
El sistema desplaza los labels de cada campo por encima, ocupando una
3 Validado
línea.
El sistema permite desplazar verticalmente un formulario si se han
4 Validado
sobrepasado las dimensiones por la redistribución de los elementos.
El sistema permite cerrar el formulario o confirmarlo al modificar el
5 Validado
ancho de la pantalla.
Backlog
ID: 40 Listas Adaptativas
Criterios de Validación
# Estado Resultados
El sistema adapta las dimensiones de la lista de acuerdo con el ancho de
1 Validado
la pantalla sin llegar a sobreponer el contenido
2 Validado El sistema conserva el ancho de preestablecido para cada columna.
El sistema permite deslizar horizontalmente la lista para visualizar todas
3 Validado
las columnas.
El sistema mantiene la disposición de los botones en cada fila al
4 Validado
modificar el ancho de la pantalla.
Backlog
ID: 41 SideBar Adaptativo
Criterios de Validación
# Estado Resultados
1 Validado El sistema colapsa el SideBar cuando la pantalla es de celular
El sistema conserva sólo los íconos de cada opción de menú al colapsar
2 Validado
el SideBar.
3 Validado El sistema permite des colapsar y colapsar el SideBar
El sistema conserva la disposición del contenido de la vista al colapsar y
4 Validado
des colapsar el SideBar.
Backlog
ID: 42 Pestaña Dashboard
Criterios de Validación
# Estado Resultados
1 Validado El sistema muestra una opción en el SideBar con label "Dashboard"
2 Validado El sistema especifica una ruta nueva para la vista.
El sistema muestra una vista con el título de Alertas al presionar la
3 Validado
opción de "Dashboard" en el SideBar
Backlog
ID: 43 Alertas de solicitudes
Criterios de Validación
89
# Estado Resultados
El sistema muestra en la vista de "Dashboard" una sección para
1 Validado
"Alertas"
El sistema muestra cuatro Card por cada tipo de alerta: Usuario nuevo,
2 Validado
pedido nuevo, transferencia nueva y mantenimiento.
3 Validado El sistema muestra en cada Card el número de solicitudes pendientes.
El sistema muestra en cada Card un ícono y color distintivo del tipo de
4 Validado
alerta.
El sistema muestra en cada Card en la fecha de la solicitud más antigua
5 Validado
pendiente.
Backlog
ID: 44 Gráfico para ver la rotación de inventario
Criterios de Validación
# Estado Resultados
El sistema muestra en la vista de "Dashboard" una sección para
1 Validado
"Métricas"
El sistema muestra un Card con el título "Ingresos y Salidas por
2 Validado
Almacén"
El sistema muestra dentro del Card un seleccionador con los todos los
3 Validado
almacenes a elegir.
El sistema muestra un gráfico de barras dobles (uno para salidas y otro
4 Validado
para ingresos) con los ítems en el eje x y cantidades en el eje y.
3.2.8.1 Planeación
90
48 Lista de Mantenimientos pendientes Desarrollo Gerente
49 Detalles de un Mantenimiento Desarrollo Usuario
50 Descargar Mantenimientos Desarrollo Usuario
51 Terminar Mantenimiento Desarrollo Almacenero
52 Aceptar o rechazar Mantenimiento Desarrollo Gerente
3.2.8.2 Desarrollo
El desarrollo de este Sprint se realizó de acuerdo con el marco de trabajo y acuerdos del
grupo de trabajo. Además, no se requirió más tiempo del planificado.
3.2.8.3 Resultados
3.3 Seguridad
3.3.1.1 JWT
Dentro de nuestra aplicación tenemos cierta información sensible que viaja por la red
desde nuestro usuario hasta la base de datos del sistema, durante la interacción con el
sistema, el usuario en todo momento debe enviar un identificador que no solo le permita
91
acceder a los datos, sino que también ayude al sistema a devolver la información
pertinente a tal usuario.
92
Si bien la información del usuario es protegida en los medios de comunicación con el
usuario, también es necesario valorar la seguridad de la información en su destino final
de almacenaje, es decir, la Base de Datos.
● Seguridad a nivel de transporte que permite una comunicación segura con la base de
datos mediante SSL/TLS.
Por nuestra parte, unicamente nos corresponde manejar de manera confidencial las
credenciales de acceso a la BD que nos brinda el proveedor. Para ello dentro de la
implementación de nuestra API, que es la que va a conectar con la BD, se hizo
unicamente referencias a nombres clave, tanto de usuarios o contraseñas, ubicando los
valores reales de las credenciales en un archivo único e inaccesible de entorno.
93
utilidad al usuario desechar aquella información que no le hace falta para continuar de
mejor manera sus funciones, pero estos datos no útiles para el usuario si lo son para la
empresa, al momento de auditar operaciones, generar reportes o un análisis de los datos,
y para ello se necesita toda la actividad registrada por el sistema.
Por ello, en el sistema, si bien existen interfaces que dicen eliminar o quitar registros,
realmente se maneja una política de persistencia de los datos. Aquellos registros ya no
requeridos por el usuario pasan a un estado de inactivos, donde ya no podrán interactuar
con el usuario, pero el registro de este permanecerá en la BD.
Esta contraseña por lo tanto debe ser confidencial incluso dentro del sistema y de la BD,
por ello es por lo que esta es una información crítica que se decidió hacer esta cadena de
texto una cadena Hash, la cual se usa principalmente para validar la integridad de los
datos sin acceder a la información original.
94
3.3.2.2 Encriptación de JWT en el navegador
Como se comentó en una sección anterior, el JWT es inaccesible por el usuario durante
la interacción el sistema, sin embargo, cuando el usuario reinicia la sesión del navegador
por cualquier razón, el sitio web pierde los datos de la anterior sesión, incluido el token,
requiriendo nuevamente inicio de sesión, perdiendo así tiempo y esfuerzos. En este caso,
comúnmente, se usa un almacenamiento interno del navegador, el “session storage”,
donde el token se guarda y permanece al reinicio de la ventana en un navegador, dejando
una vez más expuesto el token ya que esta memoria es accesible por el usuario.
La interfaz de usuario del sistema muestra diferentes vistas de acuerdo con la dirección
lógica o URL de la aplicación en la red, y dentro del URL, después del nombre del
dominio, se tiene el path o dirección hacia un recurso de nuestra API, adicionalmente
podemos especificar parametros que requiera el servicio en particular.
Un parámetro esta siempre presente en muchos recursos de nuestra API, el ID, gracias a
este identificador es posible servir un recurso específico, ya que cada registro en base de
datos tiene este identificador único. Sin embargo, este identificador puede ayudar a
usuarios maliciosos a realizar diferentes ataques a nuestra aplicación, por lo que no
puede dejarse expuesto.
95
Figura 63 Encriptación de Id en URL
96
CONCLUSIONES
97
RECOMENDACIONES
98
BIBLIOGRAFÍA
Binde, T., Michelis, G. d., Ehn, P., Jacucci, G., Linde, P., & Wagner, I. (2011). Design
Things (Design Thinking, Design Theory). The MIT Press.
Connolly, R., & Hoar, R. (2015). Fundamentals of web development. New Jersey:
Pearson.
Schwaber, K., & Sutherland, J. (2020). The Scrum Guide, The Definitive Guide to
Scrum: The Rules of the Game.
99
ANEXOS
100
4 Alta Gestionar usuarios registrados 1 Autenticación y Autorización
5 Muy Alta Inicio de sesión de un usuario 1 Autenticación y Autorización
6 Media Vistas alternativas 1 Autenticación y Autorización
7 Media Implementar SideBar 1 Autenticación y Autorización
8 Alta Crear un Almacén 2 Almacenes
Mostrar pantalla de todos los
Almacenes
9 Media almacenes 2
Mostrar pantalla de un solo
Almacenes
10 Media almacén 2
Mostrar Nombre de usuario con
Almacenes
11 Media sesión iniciada 2
12 Alta Agregar Encargado a un Almacén 2 Almacenes
Mostrar y Editar información de
Almacenes
13 Media un Almacén 2
14 Alta Eliminar un Almacén 2 Almacenes
15 Alta Crear productos 3y4 Items
16 Alta Añadir productos a un almacén 3y4 Items
Mostrar pantalla con todos los
17 Media productos creados 3y4 Items
18 Media Quitar material de un almacén 3y4 Items
Agregar o Quitar ítems
19 Alta registrados 3y4 Items
Mostrar flujo de operaciones de
20 Alta un ítem 3y4 Items
21 Media Mostrar actividad reciente 3y4 Items
22 Alta Crear solicitud traspaso 5 Traspasos
23 Media Vista solicitudes pendientes 5 Traspasos
24 Alta Implementar Hoja de ruta 5 Traspasos
Aceptar traspaso de material a
25 Alta una sucursal 5 Traspasos
Aceptar envío de material a una
26 Alta sucursal 5 Traspasos
Confirmar llegada de material a
27 Alta una sucursal 5 Traspasos
28 Media Vista Traspasos 5 Traspasos
29 Alta Hoja de ruta finalizada 5 Traspasos
30 Alta Pestaña pedidos en SideBar 6 Pedidos
31 Alta Realizar pedidos 6 Pedidos
32 Media Lista de pedidos realizados 6 Pedidos
33 Media Lista de pedidos pendientes 6 Pedidos
34 Media Detalles de un pedido 6 Pedidos
35 Media Descargar pedido 6 Pedidos
101
36 Alta Comprar ítems 6 Pedidos
37 Alta Aceptar o rechazar Pedido 6 Pedidos
Vistas Responsivas /
Media Tablas Adaptativas 7
38 Visualización de datos
Vistas Responsivas /
Alta Formularios Adaptativos 7
39 Visualización de datos
Vistas Responsivas /
Media Listas Adaptativas 7
40 Visualización de datos
Vistas Responsivas /
Media SideBar Adaptativo 7
41 Visualización de datos
Vistas Responsivas /
Media Pestaña Dashboard 7
42 Visualización de datos
Vistas Responsivas /
Media Alertas de solicitudes 7
43 Visualización de datos
Gráfico para ver la rotación de Vistas Responsivas /
Media 7
44 inventario Visualización de datos
Mantenimiento de equipos
45 Alta Pestaña pedidos en SideBar 8
pesados
Mantenimiento de equipos
Alta Solicitar mantenimiento 8
46 pesados
Mantenimiento de equipos
Alta Kardex de Mantenimientos 8
47 pesados
Lista de Mantenimientos Mantenimiento de equipos
Alta 8
48 pendientes pesados
Mantenimiento de equipos
Media Detalles de un Mantenimiento 8
49 pesados
Mantenimiento de equipos
Media Descargar Mantenimientos 8
50 pesados
Mantenimiento de equipos
Alta Terminar Mantenimiento 8
51 pesados
Aceptar o rechazar Mantenimiento de equipos
Alta 8
52 Mantenimiento pesados
102