Documentos de Académico
Documentos de Profesional
Documentos de Cultura
PRODUCTO 3:
Informe de
desarrollo de
módulos en base a
Producto 1:
DOCUMENTO DE DIAGNÓSTICO Y DISEÑO
DEL
los diseños del
SISTEMA
sistema.
INDICE
RESUMEN EJECUTIVO 3
1. ANTECEDENTES 4
1.1. OBJETIVOS...................................................................................................................4
1.1.1. OBJETIVO GENERAL.................................................................................................................4
1.1.2. OBJETIVOS ESPECÍFICOS..........................................................................................................4
1.2. PRODUCTOS.................................................................................................................5
1.3. METODOLOGÍA DE GESTIÓN DE PROYECTOS................................................................6
1.4. DISEÑO CONCEPTUAL...................................................................................................7
2. DISEÑO DEL SISTEMA 7
2.1. REQUERIMIENTOS FUNCIONALES.................................................................................7
2.2. REQUERIMIENTOS NO FUNCIONALES...........................................................................8
2.3. DIAGRAMAS.................................................................................................................8
2.3.1. MÓDULO DE USUARIOS...........................................................................................................8
2.3.2. MÓDULO DE ENTIDADES.........................................................................................................9
2.3.3. MÓDULO DE CASOS...............................................................................................................10
2.3.4. aMÓDULO DE OPERATIVOS...................................................................................................10
2.3.5. MÓDULO DE INTEROPERABILIDAD........................................................................................11
2.3.6. MÓDULO DE REPORTES.........................................................................................................11
2.4. PANTALLAS DEL SISTEMA...........................................................................................12
2.4.1. MÓDULO DE USUARIOS.........................................................................................................12
2.4.1.1. INICIO DE SESIÓN Y RECUPERACIÓN DE CONTRASEÑA.....................................................12
2.4.1.2. ADMINISTRACIÓN DE USUARIOS.......................................................................................13
2.4.1.3. ADMINISTRACIÓN DE ROLES.............................................................................................15
2.4.1.4. ADMINISTRACIÓN DE PERMISOS.......................................................................................16
2.4.1.5. LOGS DEL SISTEMA............................................................................................................17
2.4.2. MÓDULO DE ENTIDADES.......................................................................................................18
2.4.2.1. ADMINISTRACIÓN DE ENTIDADES.....................................................................................18
2.4.2.2. ADMINISTRACIÓN DE PUNTOS FRONTERIZOS...................................................................19
2.4.3. MÓDULO DE CASOS...............................................................................................................20
2.4.3.1. GESTIÓN DE CASOS............................................................................................................20
2.4.3.2. DENUNCIAS DE VICTIMAS..................................................................................................22
2.4.3.3. SEGUIMIENTO DE CASOS...................................................................................................22
2.4.4. MÓDULO DE OPERATIVOS.....................................................................................................23
2.4.5. MÓDULO DE INTEROPERABILIDAD........................................................................................26
2.5. MODELO DE CASOS DE USO........................................................................................27
2.5.1. MODELO DE CASOS DE USO DE ALTO NIVEL..........................................................................27
2.5.1. MÓDULO DE USUARIOS.........................................................................................................28
2.5.1.1. INICIO DE SESIÓN Y RECUPERACIÓN DE CONTRASEÑA.....................................................29
2.5.1.2. ADMINISTRAR USUARIOS..................................................................................................30
2.5.1.3. ADMINISTRAR ROLES.........................................................................................................33
2.5.1.4. ADMINISTRACIÓN DE PERMISOS.......................................................................................36
2.5.1.5. VISUALIZAR LOG DE ACCIONES..........................................................................................38
1
2.5.2. MÓDULO DE ENTIDADES.......................................................................................................39
2.5.2.1. ADMINISTRAR ENTIDAD....................................................................................................40
2.5.2.2. ADMINISTRAR PUNTOS FRONTERIZOS..............................................................................43
2.5.3. MÓDULO DE CASOS...............................................................................................................45
2.5.3.1. GESTIÓN DE CASOS............................................................................................................46
2.5.3.2. DENUNCIA DE VICTIMA.....................................................................................................49
2.5.3.3. SEGUIMIENTO DE CASOS...................................................................................................51
2.6. MÓDULO DE OPERATIVOS..........................................................................................52
2.6.1. OPERATIVOS..........................................................................................................................52
2.7. MÓDULO DE INTEROPERABILIDAD.............................................................................55
2.7.1. INTEROPERABILIDAD.............................................................................................................55
2.8. MÓDULO DE REPORTES..............................................................................................57
2.8.1. DASHBOARD..........................................................................................................................57
2.8.2. REPORTES..............................................................................................................................58
3. CARACTERÍSTICAS TÉCNICAS 60
3.1. DIAGRAMA DE ARQUITECTURA DE SOFTWARE...........................................................60
3.2. ARQUITECTURA DE DESARROLLO...............................................................................60
3.3. ESPECIFICACIONES TÉCNICAS......................................................................................62
3.3.1. LENGUAJES DE DESARROLLO.................................................................................................62
3.3.2. FRAMEWORK DE DESARROLLO..............................................................................................62
3.3.3. LIBRERIAS...............................................................................................................................63
3.3.4. SERVICIOS..............................................................................................................................63
3.3.5. BASE DE DATOS......................................................................................................................63
3.4. DIAGRAMA DE CONTENEDORES.................................................................................64
3.5. SEGURIDAD EN CONTENEDORES.................................................................................64
3.6. DISEÑO FÍSICO............................................................................................................65
3.7. DIAGRAMA DE RECUROS PARA DESPLIEGUE...............................................................65
3.8. RESTRICCIONES Y LIMITACIONES................................................................................66
3.9. DIAGRAMA DE INFRAESTRUCTURA.............................................................................66
3.10. ESCALABILIDAD Y RENDIMIENTO............................................................................66
3.11. ALMACENAMIENTO DE DATOS...............................................................................66
3.12. MONITOREO Y GESTIÓN.........................................................................................66
3.12.1. MONITOREO..........................................................................................................................67
3.12.2. GESTIÓN.................................................................................................................................67
4. BASE DE DATOS 68
4.1. MODELO ENTIDAD RELACIÓN.....................................................................................68
4.2. DICCIONARIO DE DATOS.............................................................................................69
5. CONCLUSIONES Y RECOMENDACIONES 80
2
- RESUMEN EJECUTIVO
OBJETIVO GENERAL
Desarrollar un Sistema de Información para la DIGEMIG y otras instancias de
gobierno competentes que intervienen en la lucha contra este tipo de delitos, que
permita almacenar y consultar información útil y necesaria sobre los posibles casos
OBJETIVOS
identificados de trata de personas presentados en cualquier puesto de control
migratorio fronterizo, con miras a la generación de análisis prospectivos, que a su
vez contribuyan en la creación, adecuación e implementación de políticas integrales.
3
1. ANTECEDENTES
El Programa Eurofront (en sus dos componentes) tiene como objetivo la intervención,
mediante un enfoque de Gestión Integrada de Fronteras, en la subregión de América del
Sur. Allí, resulta imprescindible la complementariedad de un abordaje basado en
estrategias de promoción de los derechos humanos, con foco en el combate de la trata de
personas y el tráfico de migrantes de manera integral.
Bajo este marco, el Componente ll del Programa Eurofront nace con el objetivo de
contribuir a la lucha contra la trata de personas y el tráfico ilícito de migrantes a nivel
regional y nacional en los países de América del Sur. EI mismo es llevado adelante por la
Comisión Europea y, a su vez, es parte de un doble objetivo, cuyo fin es contribuir a la
seguridad, el respeto y la protección de los derechos humanos de los migrantes y de las
víctimas de trata, y el desarrollo económico en América Latina desde una perspectiva de
Gestión Integrada de Fronteras. EI programa se centra en cuatro fronteras terrestres de
América del Sur: Aguas
Blancas-Bermejo; Desaguadero; Rumichaca y la Triple Frontera, que comprenden a los
países de Argentina, Bolivia, Brasil, Colombia, Ecuador, Paraguay y Perú, con un
potencial impacto en otros países de América Latina. Cabe señalar que el mencionado
programa se encuentra basado en los análisis y objetivos descritos en el Documento de
Acción "Support to Integrated Border Managment in Latín América — Eurofront" y en las
necesidades identificadas por OIM basado en su extensa experiencia tanto operacional
como técnica en estas Áreas temáticas.
1.1. OBJETIVOS
1.1.1. OBJETIVO GENERAL
4
analicen la información almacenada y presenten resultados en formatos
comprensibles y útiles para las autoridades competentes.
1.2. PRODUCTOS
TIEMPO
PRODUCTO DETALLE DE LOS PRODUCTOS ESPERADOS ESTIMADO DE
TRABAJO
Producto 1 Plan de trabajo y metodología 10 días después de
Se desarrollará un documento el cual contendrá los firmado el contrato
siguientes puntos:
a) Calendario de actividades;
b) Hitos y fechas estimadas para la entrega de los productos;
c) Descripción de actividades y responsables.
Producto 2 Diseño previo del sistema de información (Mockup), tomando 45 días después de
en cuenta como referencia la Guía de detección temprana de firmado el contrato
víctimas de trata de personas para autoridades
migratorias ,
asi tambien la Guia de deteccion temprana de victimas de trata de personas para autoridade
y
otros documentos, estándares internacionales y normativa
nacional en cumplimiento al Plan de Implementación de
Software Libre y Estándares Abiertos de la AGETIC.
▪ Agregar un módulo de gestión de usuario, roles.
5
TIEMPO
PRODUCTO DETALLE DE LOS PRODUCTOS ESPERADOS ESTIMADO DE
TRABAJO
- Códigos fuente del sistema de información.
- Diccionario y modelo de datos finales del sistema de
información.
- Compilados finales del sistema.
- Base de datos final y scripts (si fuese el caso).
- Guías de uso de información elaboradas (entregable).
6
En el gráfico grafico se puede apreciar las actividades a desarrollar según el plan de
trabajo presentado anteriormente en el documento “PLAN DE TRABAJO PRODUCTO
1”.
7
Fuente. Elaboración propia
A continuación, se presentan los requisitos funcionales para el desarrollo del sistema, los
cuales surgieron a partir de reuniones con el personal del DIGEMIG y de la empresa
BITS.
8
RF9 Debe contar con alta, baja y modificación de seguimiento de casos DESARROLLADO
RF10 Debe contar con un visor de los distintos puntos fronterizos. DISEÑADO
RF11 Debe contar con un visor de las entidades. DISEÑADO
RF12 Debe contar con un dashboard con estadísticas de los puntos DISEÑADO
fronterizos
RF13 Debe contar con la opción de generar reportes en formato PDF DISEÑADO
RF14 Debe contar con registro de las denuncias realizadas en formato DESARROLLADO
PDF
RF15 Debe contar con alta, baja y modificación de servicios de DESARROLLADO
interoperabilidad
2.3. DIAGRAMAS
2.3.1. MÓDULO DE USUARIOS
9
roles, permisos del sistema y un registro detallado de actividad. Dentro del submódulo de
usuarios, el usuario puede realizar diversas acciones, como la inclusión de nuevos
usuarios. En caso de que esta operación sea ejecutada con éxito, se brinda la posibilidad
de modificar y eliminar usuarios, así como gestionar los roles y permisos asociados al
sistema. El submódulo de roles y permisos del sistema permite una gestión precisa y
eficiente de los privilegios dentro del sistema. Además, se destaca el log de actividad,
donde se exhiben de manera transparente todas las acciones llevadas a cabo por los
usuarios en el sistema, proporcionando así un registro exhaustivo de las interacciones y
contribuyendo a la monitorización y seguridad del entorno.
10
2.3.3. MÓDULO DE CASOS
11
esencial. Después de la autenticación del usuario con sus credenciales, se accede a un
menú central que ofrece tres funciones principales.
En primer lugar, la función de derivar permite a los usuarios canalizar información de un
operativo para su recepción en el submódulo de seguimiento de casos.
La función de agregar brinda a los usuarios la posibilidad de incorporar nueva información
de operativos que sean realizados. Esto puede incluir los datos del operativo :
como tal y de
las víctima (as ) y tratante (es ) que se pudieran detectar descubrieran en este .
Por último, la función de descargar permite a los usuarios obtener fácilmente un reporte
, generado generados durante el operativo. Por tanto, Esto asegura que la
información recopilada estará esté disponible en formatos accesibles para su
análisis
posterior análisis , informes o almacenamiento , según corresponde seguro .
12
En la presente figura, se detalla el proceso de reportes, ofreciendo una experiencia
completa que incluye un dashboard interactivo y la posibilidad de descargar el reporte en
formato PDF. Después de la autenticación del usuario con sus credenciales, se accede a
un menú central que dirige a dos funciones principales: el dashboard y la descarga de
reportes.
El dashboard proporciona una visualización dinámica de datos georreferenciados a nivel
nacional y departamental, con un enfoque detallado por punto. Esta representación
gráfica ofrece una perspectiva completa de la información relevante, permitiendo a los
usuarios analizar tendencias y patrones de manera efectiva.
La funcionalidad de descarga de reportes en formato PDF brinda a los usuarios la
capacidad de capturar y compartir de manera eficiente la información presentada en el
dashboard. Este archivo PDF puede ser utilizado para presentaciones, informes
ejecutivos u otros fines, facilitando la comunicación de datos clave.
Además, se ofrece la opción de descargar los datos en formato Excel, permitiendo a los
usuarios realizar análisis adicionales o manipulación de datos según sea necesario. La
descarga de normativas proporciona acceso a documentos normativos relevantes que
complementan la información presentada en el dashboard.
13
Recuperación de Contraseñas con Correo Electrónico
En la figura se muestra la recuperación de la contraseña del usuario en caso de que se
olvide, simplemente debe ingresar el correo electrónico con el cual se registró en el
sistema
14
correo de confirmación para que el usuario pueda ingresar su contraseña, al momento de
eliminar un usuario, este borrado se hará de manera lógica, y simplemente se cambiará
su estado a deshabilitado.
15
La figura muestra la pantalla en la cual se encuentra la lista de usuarios deshabilitados.
16
La figura anterior muestra el formulario que se debe completar para la creación de un
nuevo rol, en este el campo “Nombre del Rol” es obligatorio y sin este no se
habilitará habilitara la opción de “Guardar”.
17
Formulario de Alta de Permiso
La figura muestra el formulario que se debe completar para la creación de un nuevo
permiso, en este el campo “Rol” es obligatorio al igual que a que recurso del sistema
ingresara y sin este no se habilitará habilitara la opción de “Guardar”.
18
2.4.2. MÓDULO DE ENTIDADES
2.4.2.1. ADMINISTRACIÓN DE ENTIDADES
19
Web” son obligatorios y sin completar la información requerida no se habilitará habilitara la
opción de “Guardar”.
20
La figura anterior muestra el formulario que se debe completar para la creación de un
nuevo punto fronterizo, en este formulario varios campos son obligatorios y sin completar
la información requerida no se habilitará habilitara la opción de “Guardar”.
21
Formulario de Alta de Caso (Víctimas y Tratante/s)
La figura anterior muestra el formulario que se debe completar para la creación de un
nuevo caso, en este el campo existen campos que son es obligatorios y sin la información
requerida no se habilitará habilitara la opción de “Guardar”.
22
2.4.3.2. DENUNCIAS DE VICTIMAS
23
Agregar observaciones a un caso
La figura muestra la pantalla en la cual se agregarán observaciones a un caso, como
también la posibilidad de cambiar el estado de est os e.
Lista de operativos
La figura muestra una lista con operativos realizados, este cuenta con la opción de ser
agregados, en otro caso se puede derivar directamente desde la opción de derivar,
también cuenta con la opción de modificar o eliminar el registro.
24
Formulario de registro de operativos I
La figura muestra la primera parte del formulario de registro de operativos, en esta parte
se agregan los datos como el lugar, fecha, jefe de operativo, tipo de operativo, detalles del
operativo, personal designado, lugares del operativo, conclusiones del operativo y
georreferenciación.
25
Formulario de registro de operativos II
La figura muestra la segunda parte del formulario de registro de operativos, en esta parte
se agregan los datos de las posibles víctimas y tratantes.
26
2.4.5. MÓDULO DE INTEROPERABILIDAD
27
2.5. MODELO DE CASOS DE USO
2.5.1. MODELO DE CASOS DE USO DE ALTO NIVEL
28
1.1.1. MÓDULO DE USUARIOS
29
1.1.1.1. INICIO DE SESIÓN Y RECUPERACIÓN DE CONTRASEÑA
30
RF3 Debe contar con la función de recuperación de contraseñas,
Requerimiento:
mediante correo electrónico.
Eventos del Actor Eventos del sistema
1.- El actor ingresa al enlace 2.- El sistema muestra la página de inicio de sesión en
del SISTEMA para iniciar el respuesta a la solicitud del actor.
proceso de recuperación de
contraseña.
3.- El actor presiona el enlace 4.- Cuando el actor hace clic en "Olvide mi Contraseña " el
de "Olvide mi Contraseña ". sistema responde mostrando una ventana o formulario
donde el usuario puede ingresar el correo electrónico
asociado a su cuenta para recuperar su contraseña.
5.- El actor ingresa la 6.- El sistema procesa la acción de recuperación de
información requerida, en contraseña, enviando un correo electrónico con un enlace o
este caso, el correo instrucciones para restablecer la contraseña al usuario
electrónico que se utilizó registrado con el correo proporcionado.
inicialmente para registrarse y
del cual se ha olvidado la
contraseña.
31
3.- Si la autenticación es exitosa y el usuario tiene los
permisos necesarios, el sistema despliega un listado de
usuarios existentes y presenta la opción "Agregar".
4.- Cuando el actor hace clic 5.- El sistema muestra un formulario que permite al actor
en el botón "Agregar", se ingresar los datos requeridos para crear un nuevo usuario.
inicia el proceso de alta de un Este formulario debe incluir campos como nombre,
nuevo usuario. apellido, nombre de usuario, contraseña, dirección de
correo electrónico, y otros datos necesarios para la
creación de la cuenta.
6.- El actor completa el 7.- El sistema realiza una validación de los datos
formulario proporcionando la ingresados por el actor para asegurarse de que se cumplan
información necesaria para el los requisitos y no haya información incorrecta o faltante. Si
nuevo usuario, como su la validación es exitosa, se permite guardar la información y
nombre, apellido, nombre de se crea un nuevo usuario en el sistema. En caso de
usuario, y todos los campos errores, se muestran alertas o mensajes de error indicando
requeridos. los campos que requieren corrección.
32
RF1 Debe contar con formularios de alta, baja y modificación de
Requerimiento:
usuarios, roles y permisos.
Eventos del Actor Eventos del sistema
1.- El actor inicia el caso de 2.- El sistema verifica la autenticación del usuario,
uso al activar el enlace asegurándose de que el usuario haya proporcionado las
"Administración de Usuarios" credenciales de acceso válidas durante el inicio de sesión.
en la interfaz de usuario. Si la autenticación es exitosa y el usuario tiene los
permisos adecuados, el sistema despliega el listado de
usuarios.
3.- El actor realiza un clic en el 4.- Cuando el actor hace clic en el icono "editar," el sistema
icono "editar" correspondiente responde abriendo una pantalla que muestra los datos
al usuario que desea modificar actuales relacionados con el usuario seleccionado. Esta
en el listado de usuarios. pantalla permite al actor realizar modificaciones en los
datos del usuario.
5.- El actor modifica la 6.- El sistema realiza una validación de los datos
información del usuario ingresados o modificados por el actor para asegurarse de
seleccionado, que puede que sean correctos y cumplan con los requisitos
incluir campos como nombre, establecidos. Si la validación es exitosa, se permite
apellido, nombre de usuario, guardar la información actualizada en el sistema. En caso
dirección de correo electrónico de que haya errores o información incorrecta, el sistema
y otros datos relevantes. muestra alertas o mensajes de error indicando los campos
que requieren corrección antes de guardar los cambios.
33
dando la posibilidad a volver a activarlo posteriormente.
34
Actores: SuperAdmin
Descripción: Los usuarios podrán visualizar la lista de roles
El usuario debe tener un rol que contenga los permisos necesarios
Precondición: y se encuentre encuentra debidamente autenticado y autorizado en
el sistema.
RF1 Debe contar con formularios de alta, baja y modificación de
Requerimiento:
usuarios, roles y permisos.
Eventos del Actor Eventos del sistema
1.- El actor inicia el caso de 2.- El sistema verifica la autenticación del usuario,
uso al activar el enlace asegurándose de que el usuario haya proporcionado las
"Administración de roles" en credenciales de acceso válidas durante el inicio de sesión.
la interfaz de usuario. Si la autenticación es exitosa y el usuario tiene los
permisos adecuados, el sistema despliega el listado de
roles existentes y presenta la opción "Agregar".
35
Caso de Uso: Baja de rol
Actores: SuperAdmin
Descripción: Los usuarios podrán dar de baja un rol.
El usuario se encuentra debidamente autenticado y autorizado en
Precondición:
el sistema y dentro del menú Usuario.
RF1 Debe contar con formularios de alta, baja y modificación de
Requerimiento:
usuarios, roles y permisos.
Eventos del Actor Eventos del sistema
1.- El actor inicia el caso de2.- El sistema verifica la autenticación del usuario,
uso al activar el enlace asegurándose de que el usuario haya proporcionado las
"Administración de roles" en credenciales de acceso válidas durante el inicio de sesión.
la interfaz de usuario. Si la autenticación es exitosa y el usuario tiene los
permisos adecuados, el sistema despliega el listado de
roles existentes y presenta la opción "Eliminar rol."
3.- El actor hace clic en el 4.- Cuando el actor hace clic en el botón "eliminar", el
botón "eliminar" sistema responde verificando si el rol seleccionado está
correspondiente al rol que actualmente siendo utilizado por el sistema. Si se detecta
desea dar de baja en el que el rol está en uso, el sistema muestra una advertencia
listado de roles. indicando que este rol no puede ser eliminado debido a su
utilización en el sistema y proporciona una explicación. En
caso contrario, si el rol no está en uso, el sistema permite
la eliminación del rol seleccionado.
36
Descripción: Permite al usuario visualizar un listado con los permisos del sistema.
El usuario debe tener un rol que contenga los permisos necesarios y se
Precondición: encuentre encuentra debidamente autenticado y autorizado en el
sistema.
RF1 Debe contar con formularios de alta, baja y modificación de
usuarios, roles y permisos.
Requerimiento:
RF3 Debe contar con una pantalla de asignación de accesos y
permisos a los roles del sistema.
Eventos del Actor Eventos del sistema
1.- El actor inicia el caso 2.- El sistema verifica la autenticación del usuario,
de uso al activar el enlace asegurándose de que el usuario haya proporcionado las
"Lista de permisos" en la credenciales de acceso válidas durante el inicio de sesión. Si la
interfaz de usuario. autenticación es exitosa y el usuario tiene los permisos
adecuados, el sistema responde mostrando el listado de
permisos disponibles en el sistema.
37
Descripción: Los usuarios podrán modificar un permiso.
El usuario debe tener un rol que contenga los permisos necesarios y se
Precondición:
encuentra debidamente autenticado y autorizado en el sistema.
RF1 Debe contar con formularios de alta, baja y modificación de
usuarios, roles y permisos.
Requerimiento:
RF3 Debe contar con una pantalla de asignación de accesos y
permisos a los roles del sistema.
Eventos del Actor Eventos del sistema
1.- El actor inicia el caso 2.- El sistema verifica la autenticación del usuario,
de uso al activar el enlace asegurándose de que el usuario haya proporcionado las
"Lista de permisos" en la credenciales de acceso válidas durante el inicio de sesión. Si la
interfaz de usuario. autenticación es exitosa y el usuario tiene los permisos
adecuados, el sistema responde mostrando el listado de
permisos existentes.
3.- El actor hace clic en el 4.- Cuando el actor hace clic en el botón "Editar," el sistema
botón "Editar" junto al responde mostrando una pantalla con los datos actuales del
permiso que desea permiso seleccionado para su modificación.
modificar en la página que
despliega el listado de
permisos existentes.
5.- El actor realiza las 6.- El sistema valida la información ingresada por el actor en la
modificaciones necesarias pantalla de edición del permiso. Si todos los datos son
en los datos del permiso correctos y se cumplen los requisitos, el sistema permite
en la pantalla que se abre guardar la información actualizada del permiso en el sistema.
para la edición.
38
permisos existentes.
39
1.1.2. MÓDULO DE ENTIDADES
40
1.1.2.1. ADMINISTRAR ENTIDAD
41
Eventos del Actor Eventos del sistema
1.- El actor inicia el caso de 2.- El sistema verifica la autenticación del usuario,
uso al activar el enlace asegurándose de que el usuario haya proporcionado las
"Administración de entidades" credenciales de acceso válidas durante el inicio de sesión.
en la interfaz de usuario. Si la autenticación es exitosa y el usuario tiene los permisos
adecuados, el sistema responde mostrando el listado de
entidades existentes y el botón "Agregar Nueva Entidad."
5.- El actor hace clic en el 6.- Cuando el actor hace clic en el botón "Agregar nueva
botón "Agregar nueva entidad," el sistema responde desplegando un formulario
entidad" en la página que vacío para que el actor pueda ingresar los datos de la
despliega el listado de nueva entidad.
entidades existentes.
7.- El actor ingresa los datos 8.- El sistema valida la información ingresada por el actor
requeridos para crear una en el formulario. Si todos los datos son correctos y se
nueva entidad en el formulario cumplen los requisitos, el sistema permite guardar la
que se despliega. información de la nueva entidad. En caso contrario,
muestra alertas o mensajes de error indicando los campos
que requieren corrección.
42
Los usuarios podrán dar de baja una entidad existente en caso de que
Descripción:
se creará por error y no tenga dependencias o relaciones.
El usuario debe tener un rol que contenga los permisos necesarios y se
Precondición:
encuentra debidamente autenticado y autorizado en el sistema.
RF7 Debe contar con formularios de alta, baja y modificación de
Requerimiento:
entidades a partir de la definición de niveles.
Eventos del Actor Eventos del sistema
1.- El actor inicia el caso 2.- El sistema verifica la autenticación del usuario,
de uso al activar el enlace asegurándose de que el usuario haya proporcionado las
"Administración de credenciales de acceso válidas durante el inicio de sesión. Si la
entidades" en la interfaz autenticación es exitosa y el usuario tiene los permisos
de usuario. adecuados, el sistema responde mostrando el listado de
entidades existentes.
3.- El actor hace clic en el 4.- Cuando el actor hace clic en el botón "Eliminar", el sistema
botón "eliminar" junto a la responde verificando si la entidad seleccionada está siendo
entidad que desea dar de utilizado por el sistema o tiene dependencias o relaciones. Si la
baja en la página que entidad se está utilizando o tiene dependencias, el sistema
despliega el listado de muestra una advertencia al usuario indicando que la entidad no
entidades existentes. puede ser eliminada. En caso contrario, el sistema permite la
eliminación de la entidad.
43
RF6 Debe contar con formularios de alta, baja y modificación de
Requerimiento:
puntos fronterizos.
Eventos del Actor Eventos del sistema
1.- El actor inicia el caso 2.- El sistema verifica la autenticación del usuario,
de uso al activar el enlace asegurándose de que el usuario haya proporcionado las
" Administración de credenciales de acceso válidas durante el inicio de sesión. Si la
puntos fronterizos" en la autenticación es exitosa y el usuario tiene los permisos
interfaz de usuario. adecuados, el sistema responde mostrando el listado de puntos
fronterizos disponibles en el sistema.
44
RF6 Debe contar con formularios de alta, baja y modificación de puntos
Requerimiento:
fronterizos.
Eventos del Actor Eventos del sistema
1.- El actor inicia el caso de 2.- El sistema verifica la autenticación del usuario,
uso al activar el enlace asegurándose de que el usuario haya proporcionado las
"Lista de Puntos fronterizos" credenciales de acceso válidas durante el inicio de sesión. Si la
en la interfaz de usuario. autenticación es exitosa y el usuario tiene los permisos
adecuados, el sistema responde mostrando el listado de
Puntos fronterizos existentes.
3.- El actor hace clic en el 4.- Cuando el actor hace clic en el botón "Editar," el sistema
botón "Editar" junto al Punto responde mostrando una pantalla con los datos actuales del
Fronterizo que desea Punto Fronterizo seleccionado para su modificación.
modificar en la página que
despliega el listado de
Puntos fronterizos
existentes.
5.- El actor realiza las 6.- El sistema valida la información ingresada por el actor en la
modificaciones necesarias pantalla de edición del Punto Fronterizo. Si todos los datos son
en los datos del Punto correctos y se cumplen los requisitos, el sistema permite
Fronterizo en la pantalla que guardar la información actualizada del Punto Fronterizo en el
se abre para la edición. sistema.
45
1.1.3. MÓDULO DE CASOS
46
1.1.3.1. GESTIÓN DE CASOS
47
1.- El actor inicia el caso de 2.- El sistema verifica la autenticación del usuario,
uso al activar el enlace asegurándose de que el usuario haya proporcionado las
"Gestión de casos" en la credenciales de acceso válidas durante el inicio de sesión.
interfaz de usuario. Si la autenticación es exitosa y el usuario tiene los permisos
adecuados, el sistema responde mostrando el listado de
casos existentes y el botón "Agregar Nuevo Caso."
3.- El actor hace clic en el 4.- Cuando el actor hace clic en el botón "Agregar nuevo
botón "Agregar nuevo Caso" Caso," el sistema responde desplegando un formulario
en la página que despliega el vacío para que el actor pueda ingresar los datos del nuevo
listado de casos existentes. caso.
5.- El actor ingresa los datos 6.- El sistema valida la información ingresada por el actor
requeridos para crear un en el formulario. Si todos los datos son correctos y se
nuevo caso en el formulario cumplen los requisitos, el sistema permite guardar la
que se despliega. información del nuevo caso. En caso contrario, muestra
alertas o mensajes de error indicando los campos que
requieren corrección.
48
El usuario se encuentra debidamente autenticado y autorizado en el
Precondición:
sistema.
Requerimiento: RF8 Debe contar con alta, baja y modificación de casos.
Eventos del Actor Eventos del sistema
1.- El actor inicia el caso 2.- El sistema verifica la autenticación del usuario,
de uso al activar el enlace asegurándose de que el usuario haya proporcionado las
"Gestión de casos" en la credenciales de acceso válidas durante el inicio de sesión. Si la
interfaz de usuario. autenticación es exitosa y el usuario tiene los permisos
adecuados, el sistema responde mostrando el listado de casos
existentes.
3.- El actor hace clic en el 4.- Cuando el actor hace clic en el botón "Eliminar", el sistema
botón "eliminar" junto al responde verificando si el caso seleccionado está siendo
caso que desea dar de utilizado por el sistema o tiene dependencias o relaciones. Si el
baja en la página que caso se está utilizando o tiene dependencias, el sistema
despliega el listado de muestra una advertencia al usuario indicando que el caso no
casos existentes. puede ser eliminado. De otro modo, el sistema permite la
eliminación del caso.
49
Eventos del Actor Eventos del sistema
1.- El actor inicia el caso de 2.- El sistema verifica la autenticación del usuario,
uso al activar el enlace asegurándose de que el usuario haya proporcionado las
"Denuncia de víctimas" en credenciales de acceso válidas durante el inicio de sesión. Si
la interfaz de usuario. la autenticación es exitosa y el usuario tiene los permisos
adecuados, el sistema responde mostrando el listado de
denuncias registradas en el sistema.
50
denuncias existentes.
3.- El actor hace clic en el 4.- Cuando el actor hace clic en el botón "Descargar
botón "Descargar cuestionario" el sistema responde mostrando una lista con los
Cuestionario". cuestionarios en distintos idiomas.
5.- El actor selecciona uno 6.- El sistema verifica la existencia del cuestionario e inicia su
de los cuestionarios a descarga en formato PDF.
imprimir.
51
5.- El actor realiza la 6.- El sistema valida la información ingresada por el actor en la
actualización del estado y pantalla de edición del caso. Si todos los datos son correctos y
otros datos del caso en el se cumplen los requisitos, el sistema permite guardar la
formulario que se muestra información actualizada del caso en el sistema.
en pantalla.
52
Caso de Uso: Visualizar operativo
Actores: SuperAdmin
Permite al usuario visualizar un listado con los operativos registrados
Descripción:
dentro del sistema.
El usuario se encuentra debidamente autenticado y autorizado en el
Precondición:
sistema.
RF5 Debe contar con formularios de alta, baja y modificación de
Requerimiento: operativos.
53
Eventos del Actor Eventos del sistema
1.- El actor inicia el caso de 2.- El sistema verifica la autenticación del usuario,
uso al activar el enlace asegurándose de que el usuario haya proporcionado las
"Operativos" en la interfaz de credenciales de acceso válidas durante el inicio de sesión.
usuario. Si la autenticación es exitosa y el usuario tiene los permisos
adecuados, el sistema responde mostrando el listado de
operativos existentes y el botón "Agregar Nuevo Operativo."
3.- El actor hace clic en el 4.- Cuando el actor hace clic en el botón "Agregar nuevo
botón "Agregar nuevo operativo," el sistema responde desplegando un formulario
operativo" en la página que vacío para que el actor pueda ingresar los datos del nuevo
despliega el listado de operativo.
operativos existentes.
5.- El actor ingresa los datos 6.- El sistema valida la información ingresada por el actor
requeridos para crear un en el formulario. Si todos los datos son correctos y se
nuevo operativo en el cumplen los requisitos, el sistema permite guardar la
formulario que se despliega. información del nuevo operativo. En caso contrario,
muestra alertas o mensajes de error indicando los campos
que requieren corrección.
54
Los usuarios podrán dar de baja un operativo existente si es que éste
Descripción:
se creó por error.
El usuario se encuentra debidamente autenticado y autorizado en el
Precondición:
sistema.
RF5 Debe contar con formularios de alta, baja y modificación de
Requerimiento:
operativos.
Eventos del Actor Eventos del sistema
1.- El actor inicia el caso 2.- El sistema verifica la autenticación del usuario,
de uso al activar el enlace asegurándose de que el usuario haya proporcionado las
"Operativos" en la interfaz credenciales de acceso válidas durante el inicio de sesión. Si la
de usuario. autenticación es exitosa y el usuario tiene los permisos
adecuados, el sistema responde mostrando el listado de
operativos existentes.
3.- El actor hace clic en el 4.- Cuando el actor hace clic en el botón "Eliminar", el sistema
botón "eliminar" junto al responde verificando si el operativo seleccionado está siendo
caso que desea dar de utilizado por el sistema o tiene dependencias o relaciones. Si el
baja en la página que operativo se está utilizando o tiene dependencias, el sistema
despliega el listado de muestra una advertencia al usuario indicando que el operativo
operativos existentes. no puede ser eliminado. De otro modo, el sistema permite la
eliminación del operativo.
55
El usuario se encuentra debidamente autenticado y autorizado en el
Precondición:
sistema.
RF15 Debe contar con alta, baja y modificación de servicios de
Requerimiento: interoperabilidad
56
Caso de Uso: Baja de servicio
Actores: SuperAdmin
Los usuarios podrán dar de baja un servicio existente si es que éste se
Descripción:
creó por error.
El usuario se encuentra debidamente autenticado y autorizado en el
Precondición:
sistema.
RF15 Debe contar con alta, baja y modificación de servicios de
Requerimiento:
interoperabilidad
Eventos del Actor Eventos del sistema
1.- El actor inicia el caso 2.- El sistema verifica la autenticación del usuario,
de uso al activar el enlace asegurándose de que el usuario haya proporcionado las
"Interoperabilidad" en la credenciales de acceso válidas durante el inicio de sesión. Si la
interfaz de usuario. autenticación es exitosa y el usuario tiene los permisos
adecuados, el sistema responde mostrando el listado de
servicios existentes.
3.- El actor hace clic en el 4.- Cuando el actor hace clic en el botón "Eliminar", el sistema
botón "eliminar" junto al responde verificando si el servicio seleccionado está siendo
caso que desea dar de utilizado por el sistema o tiene dependencias o relaciones. Si el
baja en la página que servicio se está utilizando o tiene dependencias, el sistema
despliega el listado de muestra una advertencia al usuario indicando que el servicio no
servicios existentes. puede ser eliminado. De otro modo, el sistema permite la
eliminación del servicio.
57
RF12 Debe contar con un dashboard con estadísticas de los puntos
Requerimiento: fronterizos
1.4.2. REPORTES
58
enlace “Reporte por
puntos fronterizos”.
5.- Selecciona y llena los 6.- El sistema valida la información ingresada por el actor en la
datos requeridos y hace pantalla de reporte por puntos fronterizos. Si todos los datos
clic sobre el botón son correctos y se cumplen los requisitos, el sistema muestra
“Generar”. una previsualización del reporte generado en formato PDF.
El actor hace clic en el
botón “Generar”.
59
2. CARACTERÍSTICAS TÉCNICAS
2.1. DIAGRAMA DE ARQUITECTURA DE SOFTWARE
60
Modularidad: El sistema se divide en módulos independientes, lo que permite la
reutilización de componentes y facilita el desarrollo, la prueba y la depuración.
Escalabilidad: Al separar las funciones en capas, es posible escalar cada capa de manera
independiente, lo que mejora la capacidad de respuesta y el rendimiento del sistema en
general.
Facilita el Mantenimiento: Los cambios en una capa no afectan directamente a las demás
capas, lo que facilita la implementación de actualizaciones y mejoras sin afectar al resto
del sistema.
Capa de Acceso a Datos: Esta capa se encarga de la interacción con la base de datos o
cualquier otro mecanismo de almacenamiento de datos. Puede incluir patrones como el
Patrón de Repositorio o el Patrón de Acceso a Datos.
61
de la API estén correctamente definidos y documentados para que Angular pueda
comunicarse con el backend de manera eficiente.
Enrutamiento de Angular: Angular utiliza un enrutador para navegar entre vistas en una
SPA. Esto implica que debes definir las rutas y las vistas en Angular para que los usuarios
puedan interactuar con diferentes partes de la aplicación.
Interacción del Usuario: En una SPA, gran parte de la interacción del usuario se maneja
en el lado del cliente mediante eventos, formularios y actualizaciones en tiempo real.
Angular proporciona herramientas para gestionar estas interacciones de manera eficiente.
Separación de Responsabilidades:
A pesar de que gran parte de la lógica de presentación se mueve al cliente en una SPA,
sigue siendo importante mantener una clara separación de responsabilidades entre las
capas del sistema. La capa de presentación (UI) de Angular debe centrarse en la
presentación y la interacción del usuario, mientras que la lógica de negocio y el acceso a
datos se mantienen en las capas correspondientes del backend.
Para el desarrollo del Sistema, se han utilizado las siguientes herramientas, librerías y
software que se describe a continuación:
62
Descripción: Angular es un framework para aplicaciones web desarrollado
en TypeScript, de código abierto, mantenido por Google, que se utiliza para
crear y mantener aplicaciones web de una sola página.
- NESTJS
Versión: 10.3
URL de Información: https://angular.io/
Descripción: Es un marco de trabajo para construir aplicaciones web
escalables y eficientes en Node.js. Utiliza JavaScript moderno, está
construido con TypeScript y combina elementos de OOP (Programación
Orientada a Objetos), FP (Programación Funcional) y FRP (Programación
Reactiva Funcional).
2.3.3. LIBRERIAS
- LEAFLET
Versión: 1.3.2
URL de Información: https://leafletjs.com/reference-1.3.2.html
Descripción: Leaflet es una librería de JavaScript de código abierto para
mapas interactivos aptos para dispositivos móviles.
2.3.4. SERVICIOS
- OPEN STREET MAP
URL de Información: https://www.openstreetmap.org/
Descripción: OpenStreetMap es un servicio que está construido por una
comunidad de mapeadores que contribuyen y mantienen datos sobre
carreteras, senderos, cafés, estaciones de tren y mucho más en todo el
mundo.
- GDAL
Versión: 3.1.4
URL de Información: https://www.gdal.org/
Descripción: GDAL es una biblioteca de Abstracción de Datos
Geoespaciales que brinda un conjunto de herramientas para trabajar con el
tratamiento de datos Geoespaciales, es libre y de código abierto y fue
publicada por la fundación geoespacial de código abierto.
- NODE.JS
Versión: 18.16.1
URL de Información: https://nodejs.org/es/
Descripción: Node.js es un entorno en tiempo de ejecución
multiplataforma, de código abierto, para la capa del servidor basado en el
lenguaje de programación JavaScript, asíncrono, con E/S de datos en una
arquitectura orientada a eventos y basado en el motor V8 de Google.
− DOCKER
Versión: 24.0
URL de Información: https://docs.docker.com/release-notes/
63
Descripción: Docker es un proyecto de código abierto que automatiza el
despliegue de aplicaciones dentro de contenedores de
software, proporcionando una capa adicional de abstracción y
automatización de virtualización de aplicaciones en múltiples
sistemas operativos.
Se muestra la estructura del sistema con relación a los contenedores que se utilizaran.
64
Fuente. Elaboración propia
Para poder asegurar un entorno de trabajo con Docker, el primer paso es analizar el
Kernel de Linux del sistema operativo (SO) anfitrión por lo que se optó por el uso del SO
Debian 12, recordemos que no existe un SO completo en cada uno de los contenedores.
Existen varias herramientas de código abierto para analizar el Kernel, como puede ser
Lynis u OpenVAS, capaces de proporcionar un informe completo de fallos y
recomendaciones a realizar para securizar el sistema.
La siguiente recomendación que se puede seguir para aislar aún más el entorno Docker
añadiendo una capa extra de seguridad, es instalarlo sobre una máquina virtual, en lugar
de en el propio sistema anfitrión, configurando equipos de seguridad perimetrales FW y
añadiendo un WAF al servidor proxy.
65
Fuente. Elaboración propia
66
2.10. ESCALABILIDAD Y RENDIMIENTO
Los contenedores Docker son más livianos que las máquinas virtuales tradicionales, lo
que permite una mayor eficiencia y escalabilidad. Por lo que para escalar rápidamente se
utilizara Docker Swarm que es una herramienta de orquestación de contenedores que
permite crear y administrar clústeres de contenedores de manera fácil y eficiente. Con
Docker Swarm, es posible escalar aplicaciones de manera automática, equilibrar la carga
entre los nodos del clúster y garantizar la disponibilidad de las aplicaciones.
2.12.1. MONITOREO
Docker Stats: Docker proporciona el comando docker stats que muestra estadísticas en
tiempo real sobre el uso de recursos de los contenedores en ejecución, como CPU,
memoria y red.
Grafana: Se puede utilizar junto con Prometheus para crear paneles de visualización
interactivos y tableros de control que muestran datos de monitoreo en tiempo real.
2.12.2. GESTIÓN
Docker CLI: El propio CLI de Docker proporciona comandos para gestionar contenedores,
imágenes y redes.
67
Portainer: Es una interfaz de usuario basada en web para Docker. Facilita la
administración de contenedores, imágenes y volúmenes a través de una interfaz gráfica
intuitiva.
Estas son solo algunas de las muchas herramientas disponibles para el monitoreo y la
gestión de Docker.
3. BASE DE DATOS
3.1. MODELO ENTIDAD RELACIÓN
68
3.2. DICCIONARIO DE DATOS
69
70
71
72
73
74
75
76
77
78
79
4. CONCLUSIONES Y RECOMENDACIONES
De acuerdo a lo descrito en este documento, las conclusiones a las que se llegan son las
siguientes:
80
o Módulo de usuarios
o Módulo de entidades
o Módulo de casos
o Módulo de operativos
o Módulo de interoperabilidad
▪ El desarrollo se realiza en un servidor de pruebas en el siguiente enlace:
https://digemig.bits.bo/ en el cual se puede apreciar el 70% correspondiente al
avance del cronograma.
81