diff --git a/orchestration/analisis/MAPEO-RF-GIRO-A-MODULOS.yml b/orchestration/analisis/MAPEO-RF-GIRO-A-MODULOS.yml new file mode 100644 index 0000000..4632cf1 --- /dev/null +++ b/orchestration/analisis/MAPEO-RF-GIRO-A-MODULOS.yml @@ -0,0 +1,964 @@ +# MAPEO-RF-GIRO-A-MODULOS.yml - ERP Transportistas +# Sistema SIMCO v4.0.0 +# Mapeo de Requerimientos Funcionales del Giro a Modulos +# Fuente: docs/03-requerimientos/REQ-GIRO-TRANSPORTISTA.md +# Creado: 2026-01-27 (Fase 1 Auditoria) + +version: "1.0.0" +created: "2026-01-27" +updated: "2026-01-27" + +# ═══════════════════════════════════════════════════════════════════════════════ +# RESUMEN EJECUTIVO +# ═══════════════════════════════════════════════════════════════════════════════ + +resumen: + total_rf_giro: 68 + rf_mapeados_a_modulos: 68 + rf_con_documentacion: 24 + rf_sin_documentacion: 44 + cobertura_documentacion: "35%" + +# ═══════════════════════════════════════════════════════════════════════════════ +# MAPEO POR PROCESO DEL GIRO +# ═══════════════════════════════════════════════════════════════════════════════ + +procesos: + + # ═══════════════════════════════════════════════════════════════════════════ + # 4.1 Gestion de Tarifas, Contratos y SLA + # ═══════════════════════════════════════════════════════════════════════════ + proceso_4_1: + nombre: "Gestion de tarifas, contratos y SLA" + modulo_principal: MAI-002 + modulos_relacionados: [MAI-009] + + requerimientos: + - codigo: RF-4.1.1 + descripcion: "Tarifario por lane y servicio" + modulo: MAI-002 + tablas_ddl: [lanes, tarifas] + entity_existente: true + documentacion: false + prioridad: P0 + + - codigo: RF-4.1.2 + descripcion: "Matriz de recargos (surcharges)" + modulo: MAI-002 + tablas_ddl: [recargos_catalogo, fuel_surcharge] + entity_existente: true + documentacion: false + prioridad: P0 + + - codigo: RF-4.1.3 + descripcion: "SLA por cliente" + modulo: MAI-002 + tablas_ddl: [sla_clientes] + entity_existente: false + documentacion: false + prioridad: P0 + + - codigo: RF-4.1.4 + descripcion: "Cotizacion rapida" + modulo: MAI-002 + tablas_ddl: [cotizaciones] + entity_existente: false + documentacion: false + prioridad: P1 + + - codigo: RF-4.1.5 + descripcion: "Control de aprobaciones" + modulo: MAI-002 + tablas_ddl: [aprobaciones] + entity_existente: false + documentacion: false + prioridad: P1 + + # ═══════════════════════════════════════════════════════════════════════════ + # 4.2 Captura de Orden de Transporte (OT) + # ═══════════════════════════════════════════════════════════════════════════ + proceso_4_2: + nombre: "Captura de Orden de Transporte" + modulo_principal: MAI-003 + modulos_relacionados: [MAI-002] + + requerimientos: + - codigo: RF-4.2.1 + descripcion: "Datos obligatorios OT" + modulo: MAI-003 + tablas_ddl: [ordenes_transporte] + entity_existente: false + documentacion: true + us_existentes: [US-MAI003-001, US-MAI003-002] + prioridad: P0 + + - codigo: RF-4.2.2 + descripcion: "Restricciones logisticas" + modulo: MAI-003 + tablas_ddl: [restricciones_ot] + entity_existente: false + documentacion: true + us_existentes: [US-MAI003-003] + prioridad: P0 + + - codigo: RF-4.2.3 + descripcion: "Multi-paradas" + modulo: MAI-003 + tablas_ddl: [paradas_ot] + entity_existente: false + documentacion: true + us_existentes: [US-MAI003-004] + prioridad: P0 + + - codigo: RF-4.2.4 + descripcion: "LTL vs FTL" + modulo: MAI-003 + tablas_ddl: [ordenes_transporte.tipo_servicio] + entity_existente: false + documentacion: true + prioridad: P1 + + - codigo: RF-4.2.5 + descripcion: "Documentacion adjunta" + modulo: MAI-003 + tablas_ddl: [documentos_ot] + entity_existente: false + documentacion: true + us_existentes: [US-MAI003-009] + prioridad: P1 + + - codigo: RF-4.2.6 + descripcion: "Portal/API de clientes" + modulo: MAI-015 + tablas_ddl: [api_clientes] + entity_existente: false + documentacion: false + prioridad: P3 + + # ═══════════════════════════════════════════════════════════════════════════ + # 4.3 Planeacion TMS + # ═══════════════════════════════════════════════════════════════════════════ + proceso_4_3: + nombre: "Planeacion (TMS-like)" + modulo_principal: MAI-004 + modulos_relacionados: [MAI-003, MAI-011] + + requerimientos: + - codigo: RF-4.3.1 + descripcion: "Tablero de planeacion" + modulo: MAI-004 + tablas_ddl: [planeacion_viajes] + entity_existente: false + documentacion: false + prioridad: P0 + + - codigo: RF-4.3.2 + descripcion: "Consolidacion automatica sugerida" + modulo: MAI-004 + tablas_ddl: [embarques] + entity_existente: false + documentacion: false + prioridad: P0 + + - codigo: RF-4.3.3 + descripcion: "Calculo de capacidad" + modulo: MAI-004 + tablas_ddl: [unidades.capacidad] + entity_existente: false + documentacion: false + prioridad: P0 + + - codigo: RF-4.3.4 + descripcion: "Reservas de recursos" + modulo: MAI-004 + tablas_ddl: [asignaciones] + entity_existente: false + documentacion: false + prioridad: P0 + + - codigo: RF-4.3.5 + descripcion: "Reglas de compatibilidad" + modulo: MAI-004 + tablas_ddl: [reglas_asignacion] + entity_existente: false + documentacion: false + prioridad: P1 + + - codigo: RF-4.3.6 + descripcion: "Simulacion de ruta y ETA" + modulo: MAI-004 + tablas_ddl: [eta_calculado] + entity_existente: false + documentacion: false + prioridad: P2 + + # ═══════════════════════════════════════════════════════════════════════════ + # 4.4 Despacho + # ═══════════════════════════════════════════════════════════════════════════ + proceso_4_4: + nombre: "Despacho: liberacion de viaje" + modulo_principal: MAI-005 + modulos_relacionados: [MAI-004, MAI-011] + + requerimientos: + - codigo: RF-4.4.1 + descripcion: "Orden de Viaje (OV)" + modulo: MAI-005 + tablas_ddl: [viajes] + entity_existente: false + documentacion: false + prioridad: P0 + + - codigo: RF-4.4.2 + descripcion: "Checklists pre-viaje" + modulo: MAI-005 + tablas_ddl: [inspecciones_pre_viaje] + entity_existente: false + documentacion: false + prioridad: P0 + + - codigo: RF-4.4.3 + descripcion: "Control de sellos" + modulo: MAI-005 + tablas_ddl: [sellos_viaje] + entity_existente: false + documentacion: false + prioridad: P0 + + - codigo: RF-4.4.4 + descripcion: "Evidencias de carga" + modulo: MAI-005 + tablas_ddl: [evidencias_carga] + entity_existente: false + documentacion: false + prioridad: P0 + + - codigo: RF-4.4.5 + descripcion: "Kit documental" + modulo: MAI-005 + tablas_ddl: [documentos_viaje] + entity_existente: false + documentacion: false + prioridad: P1 + + - codigo: RF-4.4.6 + descripcion: "Gate out / salida oficial" + modulo: MAI-005 + tablas_ddl: [eventos.tipo='SALIDA'] + entity_existente: false + documentacion: false + prioridad: P0 + + # ═══════════════════════════════════════════════════════════════════════════ + # 4.5 Ejecucion y Tracking + # ═══════════════════════════════════════════════════════════════════════════ + proceso_4_5: + nombre: "Ejecucion y tracking" + modulo_principal: MAI-006 + modulos_relacionados: [MAI-005] + + requerimientos: + - codigo: RF-4.5.1 + descripcion: "Integracion GPS/Telematica" + modulo: MAI-006 + tablas_ddl: [posiciones_gps] + entity_existente: false + documentacion: true + prioridad: P1 + + - codigo: RF-4.5.2 + descripcion: "App movil operador" + modulo: MAI-006 + tablas_ddl: [eventos] + entity_existente: true + documentacion: true + prioridad: P1 + + - codigo: RF-4.5.3 + descripcion: "ETA dinamico" + modulo: MAI-006 + tablas_ddl: [eta_calculado] + entity_existente: false + documentacion: true + prioridad: P2 + + - codigo: RF-4.5.4 + descripcion: "Geocercas" + modulo: MAI-006 + tablas_ddl: [geocercas] + entity_existente: false + documentacion: true + prioridad: P1 + + - codigo: RF-4.5.5 + descripcion: "Alertas" + modulo: MAI-006 + tablas_ddl: [alertas, reglas_alerta] + entity_existente: false + documentacion: true + prioridad: P1 + + - codigo: RF-4.5.6 + descripcion: "Comunicacion omnicanal" + modulo: MAI-006 + tablas_ddl: [notificaciones_tracking] + entity_existente: false + documentacion: false + prioridad: P2 + + # ═══════════════════════════════════════════════════════════════════════════ + # 4.6 Incidencias + # ═══════════════════════════════════════════════════════════════════════════ + proceso_4_6: + nombre: "Incidencias, excepciones y reclamaciones" + modulo_principal: MAI-008 + modulos_relacionados: [MAI-006, MAI-009] + + requerimientos: + - codigo: RF-4.6.1 + descripcion: "Tipos de incidencia" + modulo: MAI-008 + tablas_ddl: [incidencias] + entity_existente: false + documentacion: false + prioridad: P1 + + - codigo: RF-4.6.2 + descripcion: "Flujo de atencion" + modulo: MAI-008 + tablas_ddl: [incidencias.estado] + entity_existente: false + documentacion: false + prioridad: P1 + + - codigo: RF-4.6.3 + descripcion: "Evidencias y bitacora" + modulo: MAI-008 + tablas_ddl: [evidencias_incidencia] + entity_existente: false + documentacion: false + prioridad: P1 + + - codigo: RF-4.6.4 + descripcion: "Impacto economico" + modulo: MAI-008 + tablas_ddl: [costos_incidencia] + entity_existente: false + documentacion: false + prioridad: P2 + + - codigo: RF-4.6.5 + descripcion: "SLA de incidencias" + modulo: MAI-008 + tablas_ddl: [sla_incidencias] + entity_existente: false + documentacion: false + prioridad: P2 + + - codigo: RF-4.6.6 + descripcion: "Integracion a facturacion" + modulo: MAI-008 + tablas_ddl: [ajustes_factura] + entity_existente: false + documentacion: false + prioridad: P2 + + # ═══════════════════════════════════════════════════════════════════════════ + # 4.7 POD y Cierre + # ═══════════════════════════════════════════════════════════════════════════ + proceso_4_7: + nombre: "POD y cierre operativo" + modulo_principal: MAI-007 + modulos_relacionados: [MAI-009] + + requerimientos: + - codigo: RF-4.7.1 + descripcion: "Captura POD" + modulo: MAI-007 + tablas_ddl: [pod] + entity_existente: false + documentacion: false + prioridad: P0 + + - codigo: RF-4.7.2 + descripcion: "Validaciones POD" + modulo: MAI-007 + tablas_ddl: [pod.validado] + entity_existente: false + documentacion: false + prioridad: P0 + + - codigo: RF-4.7.3 + descripcion: "Tiempos reales" + modulo: MAI-007 + tablas_ddl: [tiempos_reales] + entity_existente: false + documentacion: false + prioridad: P0 + + - codigo: RF-4.7.4 + descripcion: "Cierre contable operativo" + modulo: MAI-007 + tablas_ddl: [cierre_viaje] + entity_existente: false + documentacion: false + prioridad: P0 + + # ═══════════════════════════════════════════════════════════════════════════ + # 4.8 Facturacion Transporte + # ═══════════════════════════════════════════════════════════════════════════ + proceso_4_8: + nombre: "Facturacion especializada transporte" + modulo_principal: MAI-009 + modulos_relacionados: [MAI-007, MAE-016] + + requerimientos: + - codigo: RF-4.8.1 + descripcion: "Factura por viaje/embarque/OT" + modulo: MAI-009 + tablas_ddl: [facturas_transporte] + entity_existente: true + documentacion: false + prioridad: P1 + + - codigo: RF-4.8.2 + descripcion: "Calculo automatico de recargos" + modulo: MAI-009 + tablas_ddl: [lineas_factura] + entity_existente: true + documentacion: false + prioridad: P1 + + - codigo: RF-4.8.3 + descripcion: "Integracion con POD" + modulo: MAI-009 + tablas_ddl: [facturas_transporte.pod_id] + entity_existente: true + documentacion: false + prioridad: P1 + + - codigo: RF-4.8.4 + descripcion: "Conciliacion" + modulo: MAI-009 + tablas_ddl: [conciliaciones] + entity_existente: false + documentacion: false + prioridad: P2 + + - codigo: RF-4.8.5 + descripcion: "Estados de cuenta por cliente" + modulo: MAI-009 + tablas_ddl: [estados_cuenta] + entity_existente: false + documentacion: false + prioridad: P2 + + # ═══════════════════════════════════════════════════════════════════════════ + # 4.9 Liquidaciones + # ═══════════════════════════════════════════════════════════════════════════ + proceso_4_9: + nombre: "Liquidacion a operadores" + modulo_principal: MAI-010 + modulos_relacionados: [MAI-007, MAI-012] + + requerimientos: + - codigo: RF-4.9.1 + descripcion: "Esquemas de pago" + modulo: MAI-010 + tablas_ddl: [esquemas_pago] + entity_existente: false + documentacion: false + prioridad: P1 + + - codigo: RF-4.9.2 + descripcion: "Viaticos" + modulo: MAI-010 + tablas_ddl: [anticipos_viaticos] + entity_existente: true + documentacion: false + prioridad: P1 + + - codigo: RF-4.9.3 + descripcion: "Deducciones" + modulo: MAI-010 + tablas_ddl: [deducciones] + entity_existente: false + documentacion: false + prioridad: P1 + + - codigo: RF-4.9.4 + descripcion: "Corte y autorizacion" + modulo: MAI-010 + tablas_ddl: [liquidaciones] + entity_existente: false + documentacion: false + prioridad: P1 + + # ═══════════════════════════════════════════════════════════════════════════ + # 4.10 Combustible y Gastos + # ═══════════════════════════════════════════════════════════════════════════ + proceso_4_10: + nombre: "Combustible, peajes y gastos" + modulo_principal: MAI-012 + modulos_relacionados: [MAI-007] + + requerimientos: + - codigo: RF-4.10.1 + descripcion: "Planeado vs real" + modulo: MAI-012 + tablas_ddl: [control_rendimiento] + entity_existente: true + documentacion: true + prioridad: P2 + + - codigo: RF-4.10.2 + descripcion: "Captura de cargas combustible" + modulo: MAI-012 + tablas_ddl: [cargas_combustible] + entity_existente: true + documentacion: true + prioridad: P2 + + - codigo: RF-4.10.3 + descripcion: "Peajes" + modulo: MAI-012 + tablas_ddl: [cruces_peaje] + entity_existente: true + documentacion: true + prioridad: P2 + + - codigo: RF-4.10.4 + descripcion: "Gastos varios" + modulo: MAI-012 + tablas_ddl: [gastos_viaje] + entity_existente: true + documentacion: true + prioridad: P2 + + - codigo: RF-4.10.5 + descripcion: "Alertas antifraude" + modulo: MAI-012 + tablas_ddl: [alertas_fraude] + entity_existente: false + documentacion: false + prioridad: P2 + + # ═══════════════════════════════════════════════════════════════════════════ + # 4.11 Mantenimiento Flota + # ═══════════════════════════════════════════════════════════════════════════ + proceso_4_11: + nombre: "Mantenimiento y disponibilidad flota" + modulo_principal: MAI-013 + modulos_relacionados: [MAI-011] + + requerimientos: + - codigo: RF-4.11.1 + descripcion: "Plan preventivo" + modulo: MAI-013 + tablas_ddl: [planes_mantenimiento, programacion_mantenimiento] + entity_existente: false + documentacion: false + prioridad: P2 + + - codigo: RF-4.11.2 + descripcion: "Correctivo" + modulo: MAI-013 + tablas_ddl: [ordenes_trabajo] + entity_existente: false + documentacion: false + prioridad: P2 + + - codigo: RF-4.11.3 + descripcion: "Inventario de refacciones" + modulo: MAI-013 + tablas_ddl: [refacciones_flota] + entity_existente: false + documentacion: false + prioridad: P2 + + - codigo: RF-4.11.4 + descripcion: "Historial por activo" + modulo: MAI-013 + tablas_ddl: [historial_mantenimiento] + entity_existente: false + documentacion: false + prioridad: P2 + + - codigo: RF-4.11.5 + descripcion: "Disponibilidad" + modulo: MAI-011 + tablas_ddl: [unidades.estado] + entity_existente: false + documentacion: true + prioridad: P0 + + # ═══════════════════════════════════════════════════════════════════════════ + # 4.12 Carriers + # ═══════════════════════════════════════════════════════════════════════════ + proceso_4_12: + nombre: "Gestion de terceros (carriers)" + modulo_principal: MAI-014 + modulos_relacionados: [MAI-004] + + requerimientos: + - codigo: RF-4.12.1 + descripcion: "Registro de carrier" + modulo: MAI-014 + tablas_ddl: [carriers] + entity_existente: false + documentacion: false + prioridad: P2 + + - codigo: RF-4.12.2 + descripcion: "Asignacion a carrier" + modulo: MAI-014 + tablas_ddl: [asignaciones_carrier] + entity_existente: false + documentacion: false + prioridad: P2 + + - codigo: RF-4.12.3 + descripcion: "Control de documentos" + modulo: MAI-014 + tablas_ddl: [documentos_carrier] + entity_existente: false + documentacion: false + prioridad: P2 + + - codigo: RF-4.12.4 + descripcion: "Recepcion POD tercero" + modulo: MAI-014 + tablas_ddl: [pod_carrier] + entity_existente: false + documentacion: false + prioridad: P2 + + - codigo: RF-4.12.5 + descripcion: "Costo vs ingreso" + modulo: MAI-014 + tablas_ddl: [margenes_carrier] + entity_existente: false + documentacion: false + prioridad: P2 + + - codigo: RF-4.12.6 + descripcion: "Scorecard" + modulo: MAI-014 + tablas_ddl: [scorecard] + entity_existente: false + documentacion: false + prioridad: P2 + + # ═══════════════════════════════════════════════════════════════════════════ + # 4.13 Portal Cliente + # ═══════════════════════════════════════════════════════════════════════════ + proceso_4_13: + nombre: "Portal de cliente" + modulo_principal: MAI-015 + modulos_relacionados: [MAI-006] + + requerimientos: + - codigo: RF-4.13.1 + descripcion: "Tracking" + modulo: MAI-015 + tablas_ddl: [vista_tracking_cliente] + entity_existente: false + documentacion: false + prioridad: P3 + + - codigo: RF-4.13.2 + descripcion: "Documentos" + modulo: MAI-015 + tablas_ddl: [documentos_portal] + entity_existente: false + documentacion: false + prioridad: P3 + + - codigo: RF-4.13.3 + descripcion: "Creacion de OT" + modulo: MAI-015 + tablas_ddl: [ot_portal] + entity_existente: false + documentacion: false + prioridad: P3 + + - codigo: RF-4.13.4 + descripcion: "Reclamaciones" + modulo: MAI-015 + tablas_ddl: [reclamos_portal] + entity_existente: false + documentacion: false + prioridad: P3 + + # ═══════════════════════════════════════════════════════════════════════════ + # 5.1 CFDI Carta Porte + # ═══════════════════════════════════════════════════════════════════════════ + proceso_5_1: + nombre: "CFDI con Complemento Carta Porte" + modulo_principal: MAE-016 + modulos_relacionados: [MAI-009] + + requerimientos: + - codigo: RF-5.1.1 + descripcion: "Soportar Carta Porte 3.1" + modulo: MAE-016 + tablas_ddl: [cartas_porte] + entity_existente: true + documentacion: true + us_existentes: [US-MAE016-001] + prioridad: P1 + + - codigo: RF-5.1.2 + descripcion: "Escenarios de emision" + modulo: MAE-016 + tablas_ddl: [cartas_porte.tipo] + entity_existente: true + documentacion: true + us_existentes: [US-MAE016-002, US-MAE016-003] + prioridad: P1 + + - codigo: RF-5.1.3 + descripcion: "Expediente fiscal por viaje" + modulo: MAE-016 + tablas_ddl: [expediente_fiscal] + entity_existente: true + documentacion: true + us_existentes: [US-MAE016-006] + prioridad: P1 + + - codigo: RF-5.1.4 + descripcion: "Validaciones previas" + modulo: MAE-016 + tablas_ddl: [validaciones_carta_porte] + entity_existente: false + documentacion: true + us_existentes: [US-MAE016-002] + prioridad: P1 + + - codigo: RF-5.1.5 + descripcion: "Reemision/correccion" + modulo: MAE-016 + tablas_ddl: [bitacora_carta_porte] + entity_existente: false + documentacion: true + us_existentes: [US-MAE016-005] + prioridad: P1 + + - codigo: RF-5.1.6 + descripcion: "Integracion con PAC" + modulo: MAE-016 + tablas_ddl: [timbrado_pac] + entity_existente: false + documentacion: true + us_existentes: [US-MAE016-003] + prioridad: P1 + + - codigo: RF-5.1.7 + descripcion: "Evidencia para inspeccion" + modulo: MAE-016 + tablas_ddl: [documentos_carta_porte] + entity_existente: false + documentacion: true + us_existentes: [US-MAE016-004] + prioridad: P1 + + # ═══════════════════════════════════════════════════════════════════════════ + # 5.2 HOS y Bitacora + # ═══════════════════════════════════════════════════════════════════════════ + proceso_5_2: + nombre: "Bitacora de Horas de Servicio (HOS)" + modulo_principal: MAE-017 + modulos_relacionados: [MAI-011] + + requerimientos: + - codigo: RF-5.2.1 + descripcion: "Registro HOS" + modulo: MAE-017 + tablas_ddl: [hos_logs] + entity_existente: false + documentacion: false + prioridad: P3 + + - codigo: RF-5.2.2 + descripcion: "Bitacora formato" + modulo: MAE-017 + tablas_ddl: [hos_resumen_diario] + entity_existente: false + documentacion: false + prioridad: P3 + + - codigo: RF-5.2.3 + descripcion: "Alertas incumplimiento" + modulo: MAE-017 + tablas_ddl: [alertas_hos] + entity_existente: false + documentacion: false + prioridad: P3 + + - codigo: RF-5.2.4 + descripcion: "Evidencias HOS" + modulo: MAE-017 + tablas_ddl: [auditoria_hos] + entity_existente: false + documentacion: false + prioridad: P3 + +# ═══════════════════════════════════════════════════════════════════════════════ +# RESUMEN POR MODULO +# ═══════════════════════════════════════════════════════════════════════════════ + +resumen_por_modulo: + MAI-002: + nombre: "Clientes y Tarifas" + rf_asignados: 5 + rf_con_entity: 2 + rf_con_docs: 0 + prioridad: P0 + + MAI-003: + nombre: "Ordenes de Transporte" + rf_asignados: 6 + rf_con_entity: 0 + rf_con_docs: 5 + prioridad: P0 + + MAI-004: + nombre: "Planeacion TMS" + rf_asignados: 6 + rf_con_entity: 0 + rf_con_docs: 0 + prioridad: P0 + + MAI-005: + nombre: "Despacho" + rf_asignados: 6 + rf_con_entity: 0 + rf_con_docs: 0 + prioridad: P0 + + MAI-006: + nombre: "Tracking" + rf_asignados: 6 + rf_con_entity: 1 + rf_con_docs: 5 + prioridad: P1 + + MAI-007: + nombre: "POD y Cierre" + rf_asignados: 4 + rf_con_entity: 0 + rf_con_docs: 0 + prioridad: P0 + + MAI-008: + nombre: "Incidencias" + rf_asignados: 6 + rf_con_entity: 0 + rf_con_docs: 0 + prioridad: P1 + + MAI-009: + nombre: "Facturacion Transporte" + rf_asignados: 5 + rf_con_entity: 3 + rf_con_docs: 0 + prioridad: P1 + + MAI-010: + nombre: "Liquidaciones" + rf_asignados: 4 + rf_con_entity: 1 + rf_con_docs: 0 + prioridad: P1 + + MAI-011: + nombre: "Gestion de Flota" + rf_asignados: 1 + rf_con_entity: 0 + rf_con_docs: 1 + prioridad: P0 + + MAI-012: + nombre: "Combustible y Gastos" + rf_asignados: 5 + rf_con_entity: 4 + rf_con_docs: 4 + prioridad: P2 + + MAI-013: + nombre: "Mantenimiento Flota" + rf_asignados: 4 + rf_con_entity: 0 + rf_con_docs: 0 + prioridad: P2 + + MAI-014: + nombre: "Carriers" + rf_asignados: 6 + rf_con_entity: 0 + rf_con_docs: 0 + prioridad: P2 + + MAI-015: + nombre: "Portal Cliente" + rf_asignados: 5 + rf_con_entity: 0 + rf_con_docs: 0 + prioridad: P3 + + MAE-016: + nombre: "Carta Porte CFDI" + rf_asignados: 7 + rf_con_entity: 3 + rf_con_docs: 7 + prioridad: P1 + + MAE-017: + nombre: "HOS y Bitacora" + rf_asignados: 4 + rf_con_entity: 0 + rf_con_docs: 0 + prioridad: P3 + +# ═══════════════════════════════════════════════════════════════════════════════ +# ACCIONES REQUERIDAS +# ═══════════════════════════════════════════════════════════════════════════════ + +acciones: + P0_urgente: + - modulo: MAI-007 + accion: "Crear REQUERIMIENTOS.md y 5 US" + rf_afectados: 4 + + - modulo: MAI-004 + accion: "Crear REQUERIMIENTOS.md y 5 US" + rf_afectados: 6 + + - modulo: MAI-005 + accion: "Crear REQUERIMIENTOS.md y 5 US" + rf_afectados: 6 + + - modulo: MAI-002 + accion: "Crear REQUERIMIENTOS.md y 5 US" + rf_afectados: 5 + + P1_corto_plazo: + - modulo: MAI-008 + accion: "Crear REQUERIMIENTOS.md" + rf_afectados: 6 + + - modulo: MAI-009 + accion: "Crear REQUERIMIENTOS.md" + rf_afectados: 5 + + - modulo: MAI-010 + accion: "Crear REQUERIMIENTOS.md" + rf_afectados: 4 + + - modulo: MAI-006 + accion: "Agregar 5-10 User Stories" + rf_afectados: 6 + + - modulo: MAI-011 + accion: "Agregar 5-10 User Stories" + rf_afectados: 1 diff --git a/orchestration/analisis/MATRIZ-COHERENCIA-DDL-BACKEND.yml b/orchestration/analisis/MATRIZ-COHERENCIA-DDL-BACKEND.yml new file mode 100644 index 0000000..c9eaa90 --- /dev/null +++ b/orchestration/analisis/MATRIZ-COHERENCIA-DDL-BACKEND.yml @@ -0,0 +1,527 @@ +# MATRIZ-COHERENCIA-DDL-BACKEND.yml - ERP Transportistas +# Sistema SIMCO v4.0.0 +# Analisis de coherencia entre DDL y Backend +# Creado: 2026-01-27 (Fase 1 Auditoria) + +version: "1.0.0" +created: "2026-01-27" +updated: "2026-01-27" + +# ═══════════════════════════════════════════════════════════════════════════════ +# RESUMEN EJECUTIVO +# ═══════════════════════════════════════════════════════════════════════════════ + +resumen: + total_tablas_ddl: 53 + total_entities_especializadas: 44 + entities_heredadas: 109 + gap_entities_faltantes: 42 + coherencia_porcentaje: "21%" + estado: "INCOHERENTE - Requiere implementacion urgente" + +# ═══════════════════════════════════════════════════════════════════════════════ +# DETALLE POR SCHEMA +# ═══════════════════════════════════════════════════════════════════════════════ + +schemas: + + transport: + ddl_file: "01-transport-schema-ddl.sql" + tablas_ddl: 6 + tablas: + - nombre: ordenes_transporte + entity_esperada: OrdenTransporte + entity_existente: null + estado: NO_IMPLEMENTADA + prioridad: P0 + modulo: MAI-003 + + - nombre: embarques + entity_esperada: Embarque + entity_existente: null + estado: NO_IMPLEMENTADA + prioridad: P0 + modulo: MAI-003 + + - nombre: viajes + entity_esperada: Viaje + entity_existente: null + estado: NO_IMPLEMENTADA + prioridad: P0 + modulo: MAI-004 + + - nombre: paradas_viaje + entity_esperada: ParadaViaje + entity_existente: null + estado: NO_IMPLEMENTADA + prioridad: P1 + modulo: MAI-004 + + - nombre: pod + entity_esperada: POD + entity_existente: null + estado: NO_IMPLEMENTADA + prioridad: P0 + modulo: MAI-007 + + - nombre: incidencias + entity_esperada: Incidencia + entity_existente: null + estado: NO_IMPLEMENTADA + prioridad: P1 + modulo: MAI-008 + + resumen: + implementadas: 0 + faltantes: 6 + coherencia: "0%" + + fleet: + ddl_file: "02-fleet-schema-ddl.sql" + tablas_ddl: 5 + tablas: + - nombre: unidades + entity_esperada: Unidad + entity_existente: null + estado: NO_IMPLEMENTADA + prioridad: P0 + modulo: MAI-011 + + - nombre: remolques + entity_esperada: Remolque + entity_existente: null + estado: NO_IMPLEMENTADA + prioridad: P0 + modulo: MAI-011 + + - nombre: operadores + entity_esperada: Operador + entity_existente: null + estado: NO_IMPLEMENTADA + prioridad: P0 + modulo: MAI-011 + + - nombre: documentos_flota + entity_esperada: DocumentoFlota + entity_existente: null + estado: NO_IMPLEMENTADA + prioridad: P1 + modulo: MAI-011 + + - nombre: asignaciones + entity_esperada: AsignacionFlota + entity_existente: null + estado: NO_IMPLEMENTADA + prioridad: P1 + modulo: MAI-011 + + resumen: + implementadas: 0 + faltantes: 5 + coherencia: "0%" + + tracking: + ddl_file: "03-tracking-schema-ddl.sql" + tablas_ddl: 6 + tablas: + - nombre: posiciones_gps + entity_esperada: PosicionGPS + entity_existente: null + estado: NO_IMPLEMENTADA + prioridad: P1 + modulo: MAI-006 + + - nombre: eventos + entity_esperada: EventoTracking + entity_existente: "tracking/entities (2 basicas)" + estado: PARCIAL + prioridad: P1 + modulo: MAI-006 + + - nombre: geocercas + entity_esperada: Geocerca + entity_existente: null + estado: NO_IMPLEMENTADA + prioridad: P1 + modulo: MAI-006 + + - nombre: alertas + entity_esperada: AlertaTracking + entity_existente: null + estado: NO_IMPLEMENTADA + prioridad: P2 + modulo: MAI-006 + + - nombre: reglas_alerta + entity_esperada: ReglaAlerta + entity_existente: null + estado: NO_IMPLEMENTADA + prioridad: P2 + modulo: MAI-006 + + - nombre: eta_calculado + entity_esperada: ETACalculado + entity_existente: null + estado: NO_IMPLEMENTADA + prioridad: P2 + modulo: MAI-006 + + resumen: + implementadas: 1 + faltantes: 5 + coherencia: "17%" + + fuel: + ddl_file: "04-fuel-schema-ddl.sql" + tablas_ddl: 5 + tablas: + - nombre: cargas_combustible + entity_esperada: CargaCombustible + entity_existente: "combustible-gastos/carga-combustible.entity.ts" + estado: IMPLEMENTADA + prioridad: P2 + modulo: MAI-012 + + - nombre: cruces_peaje + entity_esperada: CrucePeaje + entity_existente: "combustible-gastos/cruce-peaje.entity.ts" + estado: IMPLEMENTADA + prioridad: P2 + modulo: MAI-012 + + - nombre: gastos_viaje + entity_esperada: GastoViaje + entity_existente: "combustible-gastos/gasto-viaje.entity.ts" + estado: IMPLEMENTADA + prioridad: P2 + modulo: MAI-012 + + - nombre: anticipos_viaticos + entity_esperada: AnticipoViatico + entity_existente: "combustible-gastos/anticipo-viatico.entity.ts" + estado: IMPLEMENTADA + prioridad: P2 + modulo: MAI-012 + + - nombre: control_rendimiento + entity_esperada: ControlRendimiento + entity_existente: "combustible-gastos/control-rendimiento.entity.ts" + estado: IMPLEMENTADA + prioridad: P2 + modulo: MAI-012 + + resumen: + implementadas: 5 + faltantes: 0 + coherencia: "100%" + + maintenance: + ddl_file: "05-maintenance-schema-ddl.sql" + tablas_ddl: 5 + tablas: + - nombre: planes_mantenimiento + entity_esperada: PlanMantenimiento + entity_existente: null + estado: NO_IMPLEMENTADA + prioridad: P2 + modulo: MAI-013 + + - nombre: programacion_mantenimiento + entity_esperada: ProgramacionMantenimiento + entity_existente: null + estado: NO_IMPLEMENTADA + prioridad: P2 + modulo: MAI-013 + + - nombre: ordenes_trabajo + entity_esperada: OrdenTrabajo + entity_existente: null + estado: NO_IMPLEMENTADA + prioridad: P2 + modulo: MAI-013 + + - nombre: lineas_orden_trabajo + entity_esperada: LineaOrdenTrabajo + entity_existente: null + estado: NO_IMPLEMENTADA + prioridad: P2 + modulo: MAI-013 + + - nombre: checklist_items + entity_esperada: ChecklistItem + entity_existente: null + estado: NO_IMPLEMENTADA + prioridad: P2 + modulo: MAI-013 + + resumen: + implementadas: 0 + faltantes: 5 + coherencia: "0%" + + carriers: + ddl_file: "06-carriers-schema-ddl.sql" + tablas_ddl: 6 + tablas: + - nombre: carriers + entity_esperada: Carrier + entity_existente: null + estado: NO_IMPLEMENTADA + prioridad: P2 + modulo: MAI-014 + + - nombre: documentos_carrier + entity_esperada: DocumentoCarrier + entity_existente: null + estado: NO_IMPLEMENTADA + prioridad: P2 + modulo: MAI-014 + + - nombre: unidades_carrier + entity_esperada: UnidadCarrier + entity_existente: null + estado: NO_IMPLEMENTADA + prioridad: P2 + modulo: MAI-014 + + - nombre: operadores_carrier + entity_esperada: OperadorCarrier + entity_existente: null + estado: NO_IMPLEMENTADA + prioridad: P2 + modulo: MAI-014 + + - nombre: asignaciones_carrier + entity_esperada: AsignacionCarrier + entity_existente: null + estado: NO_IMPLEMENTADA + prioridad: P2 + modulo: MAI-014 + + - nombre: scorecard + entity_esperada: ScorecardCarrier + entity_existente: null + estado: NO_IMPLEMENTADA + prioridad: P2 + modulo: MAI-014 + + resumen: + implementadas: 0 + faltantes: 6 + coherencia: "0%" + + billing: + ddl_file: "07-billing-transport-ddl.sql" + tablas_ddl: 6 + tablas: + - nombre: lanes + entity_esperada: Lane + entity_existente: "tarifas-transporte/lane.entity.ts" + estado: IMPLEMENTADA + prioridad: P1 + modulo: MAI-009 + + - nombre: tarifas + entity_esperada: Tarifa + entity_existente: "tarifas-transporte/tarifa.entity.ts" + estado: IMPLEMENTADA + prioridad: P1 + modulo: MAI-009 + + - nombre: recargos_catalogo + entity_esperada: RecargoCatalogo + entity_existente: "tarifas-transporte/recargo-catalogo.entity.ts" + estado: IMPLEMENTADA + prioridad: P1 + modulo: MAI-009 + + - nombre: facturas_transporte + entity_esperada: FacturaTransporte + entity_existente: "tarifas-transporte/factura-transporte.entity.ts" + estado: IMPLEMENTADA + prioridad: P1 + modulo: MAI-009 + + - nombre: lineas_factura + entity_esperada: LineaFactura + entity_existente: "tarifas-transporte/linea-factura.entity.ts" + estado: IMPLEMENTADA + prioridad: P1 + modulo: MAI-009 + + - nombre: fuel_surcharge + entity_esperada: FuelSurcharge + entity_existente: "tarifas-transporte/fuel-surcharge.entity.ts" + estado: IMPLEMENTADA + prioridad: P1 + modulo: MAI-009 + + resumen: + implementadas: 6 + faltantes: 0 + coherencia: "100%" + + compliance: + ddl_file: "08-compliance-schema-ddl.sql" + tablas_ddl: 8 + tablas: + - nombre: cartas_porte + entity_esperada: CartaPorte + entity_existente: "carta-porte/entities (7 basicas)" + estado: PARCIAL + prioridad: P1 + modulo: MAE-016 + + - nombre: ubicaciones_carta_porte + entity_esperada: UbicacionCartaPorte + entity_existente: null + estado: NO_IMPLEMENTADA + prioridad: P1 + modulo: MAE-016 + + - nombre: mercancias_carta_porte + entity_esperada: MercanciaCartaPorte + entity_existente: null + estado: NO_IMPLEMENTADA + prioridad: P1 + modulo: MAE-016 + + - nombre: figuras_transporte + entity_esperada: FiguraTransporte + entity_existente: null + estado: NO_IMPLEMENTADA + prioridad: P1 + modulo: MAE-016 + + - nombre: autotransporte_carta_porte + entity_esperada: AutotransporteCartaPorte + entity_existente: null + estado: NO_IMPLEMENTADA + prioridad: P1 + modulo: MAE-016 + + - nombre: hos_logs + entity_esperada: HOSLog + entity_existente: null + estado: NO_IMPLEMENTADA + prioridad: P3 + modulo: MAE-017 + + - nombre: hos_resumen_diario + entity_esperada: HOSResumenDiario + entity_existente: null + estado: NO_IMPLEMENTADA + prioridad: P3 + modulo: MAE-017 + + - nombre: inspecciones_pre_viaje + entity_esperada: InspeccionPreViaje + entity_existente: null + estado: NO_IMPLEMENTADA + prioridad: P2 + modulo: MAE-017 + + resumen: + implementadas: 1 + faltantes: 7 + coherencia: "13%" + +# ═══════════════════════════════════════════════════════════════════════════════ +# RESUMEN CONSOLIDADO +# ═══════════════════════════════════════════════════════════════════════════════ + +consolidado: + por_schema: + - schema: transport + tablas: 6 + implementadas: 0 + coherencia: "0%" + prioridad: P0 + + - schema: fleet + tablas: 5 + implementadas: 0 + coherencia: "0%" + prioridad: P0 + + - schema: tracking + tablas: 6 + implementadas: 1 + coherencia: "17%" + prioridad: P1 + + - schema: fuel + tablas: 5 + implementadas: 5 + coherencia: "100%" + prioridad: P2 + + - schema: maintenance + tablas: 5 + implementadas: 0 + coherencia: "0%" + prioridad: P2 + + - schema: carriers + tablas: 6 + implementadas: 0 + coherencia: "0%" + prioridad: P2 + + - schema: billing + tablas: 6 + implementadas: 6 + coherencia: "100%" + prioridad: P1 + + - schema: compliance + tablas: 8 + implementadas: 1 + coherencia: "13%" + prioridad: P1 + + totales: + tablas_ddl: 47 + entities_implementadas: 13 + entities_parciales: 2 + entities_faltantes: 32 + coherencia_global: "28%" + +# ═══════════════════════════════════════════════════════════════════════════════ +# PLAN DE ACCION +# ═══════════════════════════════════════════════════════════════════════════════ + +plan_accion: + P0_urgente: + descripcion: "Entities criticas para workflow principal" + schemas: [transport, fleet] + entities_requeridas: 11 + justificacion: | + Sin estas entities no se puede implementar el flujo: + OT -> Planeacion -> Despacho -> Viaje -> POD -> Facturacion + + P1_corto_plazo: + descripcion: "Entities para visibilidad y compliance" + schemas: [tracking, compliance] + entities_requeridas: 12 + justificacion: | + Tracking es diferenciador de mercado. + Compliance (Carta Porte) es obligacion fiscal. + + P2_mediano_plazo: + descripcion: "Entities de optimizacion" + schemas: [maintenance, carriers] + entities_requeridas: 11 + justificacion: | + Mantenimiento para disponibilidad de flota. + Carriers para escalabilidad. + +# ═══════════════════════════════════════════════════════════════════════════════ +# NOTAS +# ═══════════════════════════════════════════════════════════════════════════════ + +notas: + - "fuel y billing estan 100% coherentes (11 entities implementadas)" + - "transport y fleet estan al 0% - CRITICO para el negocio" + - "Se requieren ~32 entities nuevas especializadas" + - "Las entities genericas existentes (Product, SalesOrder, etc.) NO sirven para el giro"