udistrital / argo_documentacion

0 stars 0 forks source link

Ajustes modelo de datos de ARGO v2 -Módulos gestión contractual y órdenes, pólizas y amparos - Parte 3 #49

Closed edwargl7 closed 5 months ago

edwargl7 commented 5 months ago

Se requiere realizar los ajustes pertinentes al modelo de datos una vez decidido el camino a seguir para en lo posible evitar tener dos sistemas funcionando en paralelo (actual ARGO y ARGO v2). El modelo actual propuesto cubre las nuevas funcionalidades requeridas. Por lo que se debe comparar contra el modelo actual y puntos iguales, y compatibilidad entre las tablas de contrato_general y las diferentes tablas de los estados contrato_liquidado, contrato_suscrito, contrato_cancelado, contrato_estado.

Sub Tareas

Criterios de aceptación

Requerimientos

Definition of Ready - DoR

Definition of Done - DoD - Desarrollo

mau-oati commented 5 months ago

Se crea una comparación entre el modelo actual con la nueva propuesta, detallando por colores como serán distribuidos los campos en microservicios:

Image

mau-oati commented 5 months ago

Luego de reuniones, se revisa la forma en como migrar desde postgresql, los datos existentes a la nueva propuesta, con los diferentes microservicios. Se sigue llevando ese análisis.

edwargl7 commented 5 months ago

Se realiza la revisión con el equipo DBA y el jefe de la OATI el proceso a seguir teniendo presente las observaciones dadas en la primer presentación del modelo de datos propuesto al equipo DBA, en la que se presenta la necesidad de contemplar opciones que eviten tener dos sistemas a lo largo del tiempo funcionando en paralelo (versión actual y versión 2). Se llega a la conclusión de la migración de datos a la nueva versión, donde se depure y limpie los registros del sistema actual y la actualización en la integración de los consumos de datos de los sistemas que requieren información de ARGO, buscando mantener el histórico con el funcionamiento actual, y a su vez las nuevas funcionalidades requeridas para los tipos de contratos abordados en la nueva versión que requieren una extensión y nuevas estructuras de datos que no son soportados actualmente.

Diagrama vista de módulos y componentes/conectores.

Se realiza un borrador base donde se representan los sistemas encontrados que consumen o registran información en la base de datos de ARGO por medio de las APIs _administrativa_amazonapi y _administrativa_crudapi. Además, se presenta en el diagrama la división propuesta de ARGO separando supervisores, ordenadores, acta de inicio, póliza, contrato y demás sistemas que suministraran información al nuevo ARGO.

ARGO-Visto módulos-componentes-conectores drawio

edwargl7 commented 5 months ago

Es de suma importancia la comparación revisada en esta Issue comparando el modelo actual de base de datos con el propuesto para ir asegurando una compatibilidad en la migración y la transformación o limpieza de campos contemplados en el registro de contratos, está revisión se complementará con integrantes de otros equipos de los sistemas evidenciados, el equipo de funcionamiento, arquitectos y DBAs que permitan ir iterando en paralelo la construcción del nuevo ARGO y la evaluación de lo requerido para la migración.

mau-oati commented 5 months ago

Se necesita clasificar los elementos legacy o deprecados en la DB actual de ARGO para poder contemplar una migraci'on en el futuro m'as limpia. Se comparte la tabla comparativa actual, para tener presente y depurar y completar:

Elemento Tabla (ARGO V1) Elemento Colección (ARGO V2) Notas
numero_contrato numero_contrato
vigencia vigencia
objeto_contrato objeto_contrato
plazo_ejecucion plazo_ejecucion
forma_pago modo_pago
ordenador_gasto relación con colección Existe una colección donde se debe asociar la información del ordenador del gasto.
clausula_registro_presupuestal No contemplado actualmente.
sede_solicitante sede_solicitante_id Se debe asociar con la tabla parámetros.
dependencia_solicitante dependencia_solicitante_id Se debe asociar con la tabla parámetros.
contratista relación con colección Existe una colección donde se debe asociar la información del contratista.
unidad_ejecucion unidad_ejecucion_id Se debe asociar con la tabla parámetros.
valor_contrato valor_pesos
justificacion justificacion
descripcion_forma_pago No contemplado actualmente.
condiciones condiciones
unidad ejecutora unidad_ejecucion_id Se debe asociar con la tabla parámetros.
fecha_registro fecha_creacion
tipologia_contrato tipologia_especifica_id Se debe asociar con la tabla parámetros.
tipo_compromiso tipo_compromiso_id Se debe asociar con la tabla parámetros.
modalidad_seleccion modalidad_seleccion_id Se debe asociar con la tabla parámetros.
procedimiento procedimiento_id Se debe asociar con la tabla parámetros.
regimen contratacion regimen_contratacion_id Se debe asociar con la tabla parámetros.
tipo_gasto tipo_gasto_id Se debe asociar con la tabla parámetros.
tema_gasto_inversion tema_gasto_inversion_id Se debe asociar con la tabla parámetros.
origen_presupueso origen_presupuesto_id Se debe asociar con la tabla parámetros.
origen recursos origen_recursos_id Se debe asociar con la tabla parámetros.
tipo_moneda tipo_moneda_id Se debe asociar con la tabla parámetros.
valor_contrato_me valor_contrato_me
valor_tasa_cambio valor_tasa_cambio
tipo_control en otra colección Hace parte de la colección supervisor_contrato.
observaciones observaciones
supervisor relación con colección Existe una colección donde se debe asociar la información del supervisor.
clase_contratista clase_contratista_id Se debe asociar con la tabla parámetros. Revisar.
convenio relación con colección Existe una colección donde se debe asociar la información del convenio.
numero_constancia numero_constancia
estado relación con colección Existe una colección donde se debe asociar la información del estado.
tipo_contrato tipo_contrato_id Se debe asociar con la tabla parámetros.
lugar_ejecucion relación con colección Existe una colección donde se debe asociar la información del lugar de ejecución.
especificaciones_tecnicas especificaciones_tecnicas
clausulas_contractuales No contemplado actualmente.
actividades actividades
usuario relación con colección Existe una colección donde se debe asociar la información del usuario.
edwargl7 commented 5 months ago

Se revisa en el daily el avance, y se observa una buena revisión del modelo propuesto contra al modelo de datos actual, que dado que se debe migrar el actual, se centrará una revisión más robusta tanto de lo denominado core del ARGO v2, como las tablas de supervisores y ordenadores.

Se presenta el modelo de datos actualizado en la Issue #44 al equipo DBA por medio de ticket de tuleap y quedamos atentos si es necesario una reunión o la respuesta de ajustes requeridos.

edwargl7 commented 5 months ago

Se consulta con el equipo de funcionamiento y el número consecutivo de elaboración en el modelo de datos actual es el numero_contrato de la tabla contrato_general, y el número de contrato cuando cambia a suscrito es el numero_contrato de la tabla contrato_suscrito. Debemos organizar mejor campos como ese donde el nombre en cada tabla se repite pero con una lógica de negocio diferente, tener presente estos campos para una correcta migración.

mau-oati commented 5 months ago

Se deja el documento de correlación para confirmar y asegurar que la migración de datos se pueda llevar sin perdida o corrupción:

https://udistritaleduco-my.sharepoint.com/:x:/g/personal/emrianoa_udistrital_edu_co/EW4nmJOIHr9Es76eualJ0JMBpx6Rvv7ypETvtgZp-MHOdQ

edwargl7 commented 5 months ago

Se observa una clara diferenciación entre cada campo del modelo de datos actual y propuesto para ARGO v2. El modelo de datos fue presentado al equipo DBAs, mientras se culmina la revisión se continuará en una nueva Issue para el siguiente sprint con la revisión completa y detallada teniendo el enfoque de migración del modelo actual. Dado el enfoque requerido se pospone la presentación del módulo de auditoría dado que es transversal y por el momento es de mayor prioridad la identificación, análisis y diseño del modelo de datos y la compatibilidad requerida para la migración. Buen trabajo.