Portafolio de diseño y desarrollo web - Sistema de Alerta y Respuesta Temprana

En 2019, Nicolás y Miguel diseñaron y desarrollaron el software de la plataforma SART para la Secretaría de Derechos Humanos de la República de Honduras.

Publicado en
Secretaría de Derechos Humanos de la República de Honduras
Año
Características
Una plataforma Full-Stack desarrollada con FastAPI, Angular, MongoDB, y Docker.

Qué hicimos

  • Frontend (Angular)
  • Backend (FastAPI)
  • Despliegue
  • Capacitación

Lamentablemente, dado que se trata de una herramienta de uso interno del gobierno de Honduras, no podemos compartir capturas de pantalla de la plataforma. Sin embargo, podemos compartir algunos detalles sobre el proyecto.

El problema

La Secretaría de Derechos Humanos de la República de Honduras necesitaba una plataforma para gestionar las alertas de posibles violaciones de derechos humanos en el país y poder tomar acciones para prevenirlas o mitigarlas. La plataforma debía permitir a los usuarios crear alertas, asignarlas a los distintos tomadores de decisiones, y darles seguimiento hasta su resolución.

La plataforma también debía permitir el registro de información geográfica y temporal, así como la carga de archivos multimedia. Además, debe permitir la creación de reportes y estadísticas sobre las alertas. Debía ser una plataforma web, accesible desde cualquier dispositivo. Y debía ser fácil de usar, para que los usuarios pudieran aprender a utilizarla rápidamente.

Nuestra solución

En colaboración con los especialistas en herechos humanos Natalia Arce Camiade (coordinadora e investigadora) y Nick Middeldorp (investigador), diseñamos y desarrollamos la plataforma SART.

SART es una plataforma Full-Stack desarrollada con FastAPI, Angular, MongoDB, y Docker.

Backend

El backend de SART está desarrollado con teconologías modernas como FastAPI que permite:

  • Documentación interactiva vía Swagger
  • Aceso a un manifiesto de la API OpenAPI
  • Fácil extensión de la API con nuevos puntos de acceso

Documentación interactiva

Al hacer uso de las mejores prácticas de desarrollo en FastAPI, logramos documentar ampliamente la totalidad de los puntos de acceso de la API, así como todos los modelos de datos utilizados. Esto nos permitió generar una documentación interactiva de la API mediante Swagger, que permite a los desarrolladores futuros de la plataforma probar los puntos de acceso directamente desde el navegador.

Base de datos

Debido a la naturaleza de los datos que se manejan en la plataforma, optamos por utilizar una base de datos NoSQL. En particular, utilizamos MongoDB, una base de datos NoSQL orientada a documentos. Esto nos permitió almacenar los datos de manera flexible, sin tener que definir un esquema de datos rígido. Además, nos permitió almacenar archivos multimedia directamente en la base de datos, lo que facilita la gestión y respaldo de los mismos.

Estadísticas y reportes directos desde la base de datos

Uno de los motivos por los que escogimos usar MongoDB es su pipeline de agregación de datos. Esto nos permitió generar reportes y estadísticas directamente desde la base de datos, sin tener que procesar los datos en el backend.

Un modelo predictivo para priorizar las alertas

En colaboración con Natalia y Nick, desarrollamos un modelo estadístico predictivo para priorizar las alertas. El modelo integra un sistema de retroalimentación para mejorar su precisión con el tiempo.

Frontend

El frontend de SART está desarrollado con Angular. Angular es un framework moderno para el desarrollo de aplicaciones web.

Interfaz de usuario moderna y accesible

El diseño de la interfaz de usuario de SART es moderno y está basado en los estándares de diseño material de Google. Además, es accesible, lo que permite a los usuarios con discapacidades físicas utilizar la plataforma sin problemas.

Diseño responsivo

SART está diseñado para adaptarse a cualquier dispositivo. Esto permite a los usuarios acceder a la plataforma desde cualquier dispositivo, ya sea una computadora de escritorio o un teléfono celular.

Mapas interactivos

Para mostrar la información geográfica de las alertas, utilizamos la librería OpenLayers. OpenLayers es una librería de código abierto para mapas interactivos. Esto nos permitió mostrar mapas interactivos en la plataforma y permitir a los usuarios interactuar con ellos.

Documentación

En el caso del Frontend, utilizamos la herramienta Compodoc para generar documentación interactiva de la interfaz de usuario. Esto nos permitió generar documentación de la interfaz de usuario automáticamente y mantenerla actualizada con el código.

Seguridad

La seguridad de los datos es un aspecto fundamental de la plataforma. Por ello, implementamos un sistema de autenticación y autorización basado en JWT (JSON Web Tokens) y RBAC (Role-Based Access Control). Esto nos permitió diseñar un sistema de permisos flexible, que se adapta a las necesidades de la Secretaría de Derechos Humanos.

También se desarrolló una implementación secundaria del sistema de autenticación que permite la integración con el sistema de autenticación de la República de Honduras en caso de que se requiera en un futuro.

Despliegue

Para el despliegue de la plataforma utilizamos Docker. Docker es una herramienta que permite empaquetar aplicaciones en contenedores. Esto nos permitió desplegar la plataforma en cualquier servidor, sin tener que preocuparnos por las dependencias de la misma.

Más de nuestro portafolio de diseño y desarrollo web

Extradiciones, el destierro de la justicia

En 2023 desarrollamos el micrositio para este especial de La Verdad. Enfocados en un estilo minimalista pero de alto impacto, el portal logra una estética que permite al usuario enfocarse en el contenido.

Lee Más

Las Fichas de Coca Cola

Uno de los trabajos más notables que Nicolás y Miguel han desarrollado como parte del equipo de POPLab. El reportaje de Kennia Velázquez fue ganador del premio internacional Fetisov (FJA) en su edición 2022.

Lee Más

Cuéntanos sobre tu proyecto