CASO DE ESTUDIO
RIE-FIEC: documentos, procesos y metadatos.
Migré el backend de NestJS a ASP.NET Core e integré CKAN y Flowable/BPMN con interfaces React. Implementé extracción asíncrona de metadatos con Tika, revisión por el usuario y búsqueda documental con permisos en PostgreSQL.
Proyecto de graduación de Computación en ESPOL, desarrollado en colaboración sobre un frontend existente y un backend original en NestJS.
Migración del backend a ASP.NET Core e implementación de integraciones y funcionalidades, con los cambios correspondientes en React/TypeScript.
01 / EL PROBLEMA
El reto técnico
Conectar almacenamiento de archivos, ejecución de procesos documentales y extracción de metadatos, manteniendo permisos y un estado coherente cuando una operación se interrumpe o se repite.
02 / LA IMPLEMENTACIÓN
Mis aportaciones
- 01
Integré CKAN mediante un servicio .NET y adapté los flujos de archivos, incluyendo manejo de fallos de carga y asignación concurrente de versiones.
- 02
Integré Flowable/BPMN con la API de dominio y desarrollé interfaces para editar y publicar plantillas, iniciar procesos y gestionar tareas.
- 03
Implementé extracción de propiedades y texto con Apache Tika, reglas .NET, procesamiento en segundo plano y reintentos.
- 04
Incorporé revisión de candidatos de metadatos, protección de valores manuales y detección de conflictos de revisión.
- 05
Desarrollé búsqueda por nombre y metadatos con permisos, filtros, paginación e índices PostgreSQL, además de exportaciones CSV.
CÓMO SE CONECTAN LAS PIEZAS
Almacenamiento · Datos y permisos · Procesos · Extracción asíncrona
03 / EL CRITERIO
Decisiones técnicas
Separar la carga del archivo del procesamiento de metadatos permite conservar el documento si la extracción falla, y reintentar el trabajo pendiente.
Las operaciones de procesos incorporan idempotencia y reconciliación: un timeout no demuestra que Flowable haya dejado de ejecutar el comando, por lo que se consulta su estado antes de repetirlo.
Resultado funcional
La aplicación combina gestión de documentos, ejecución de procesos y revisión de metadatos desde interfaces web, con controles de acceso y mecanismos de recuperación.
Código privado
Conversemos sobre este proyecto