# GAP ANALYSIS: ERP-CORE → RETAIL **Fecha:** 2025-12-18 **Fase:** 1 - Planeacion **Objetivo:** Identificar gaps entre estado actual de core y requerimientos de retail --- ## 1. RESUMEN DE GAPS ### 1.1 Clasificacion | Tipo | Cantidad | Impacto | |------|----------|---------| | GAPS BLOQUEADORES | 5 | Critico - Impiden inicio | | GAPS FUNCIONALES | 12 | Alto - Funcionalidad incompleta | | GAPS TECNICOS | 8 | Medio - Optimizaciones | | GAPS DOCUMENTACION | 4 | Bajo - Documentar | | **TOTAL** | **29** | | --- ## 2. GAPS BLOQUEADORES (Deben resolverse antes de iniciar) ### GAP-BLK-001: MGN-001 Auth incompleto | Aspecto | Detalle | |---------|---------| | **Estado actual** | 40% completado | | **Requerido por** | RT-001 Fundamentos (100% herencia) | | **Impacto** | Sin auth, nada funciona | | **Accion** | Completar auth al 100% antes de retail | | **Estimado** | 2 sprints | **Faltantes:** - [ ] OAuth2/OIDC (Google, Azure) - [ ] 2FA/MFA completo - [ ] Rate limiting avanzado - [ ] Session management mejorado --- ### GAP-BLK-002: MGN-005 Catalogs no implementado | Aspecto | Detalle | |---------|---------| | **Estado actual** | 0% - Solo planificado | | **Requerido por** | RT-003 Inventario, RT-005 Clientes | | **Impacto** | Sin catalogos base no hay productos ni clientes | | **Accion** | Implementar catalogos basicos | | **Estimado** | 1 sprint | **Faltantes:** - [ ] Countries CRUD - [ ] Currencies con tasas - [ ] UoM con conversiones - [ ] Product categories --- ### GAP-BLK-003: MGN-010 Financial - Migracion TypeORM incompleta | Aspecto | Detalle | |---------|---------| | **Estado actual** | 70% - Migracion parcial | | **Requerido por** | RT-010 Facturacion (60% herencia) | | **Impacto** | Inconsistencia en servicios financieros | | **Accion** | Completar migracion TypeORM | | **Estimado** | 1 sprint | **Faltantes:** - [ ] journals.service.ts - migrar a TypeORM - [ ] taxes.service.ts - migrar a TypeORM - [ ] invoices.service.ts - migrar a TypeORM - [ ] payments.service.ts - migrar a TypeORM - [ ] Eliminar archivos .old.ts --- ### GAP-BLK-004: MGN-011 Inventory incompleto | Aspecto | Detalle | |---------|---------| | **Estado actual** | 60% completado | | **Requerido por** | RT-003 Inventario (60% herencia) | | **Impacto** | Stock base incompleto | | **Accion** | Completar servicios de inventario | | **Estimado** | 2 sprints | **Faltantes:** - [ ] Valoracion completa (FIFO, LIFO, AVCO) - [ ] Lotes y series - [ ] Ajustes de inventario - [ ] Conteos ciclicos --- ### GAP-BLK-005: MGN-013 Sales incompleto | Aspecto | Detalle | |---------|---------| | **Estado actual** | 50% completado | | **Requerido por** | RT-006 Precios (30% herencia), RT-002 POS | | **Impacto** | Sin precios base, POS no funciona | | **Accion** | Completar servicios de ventas | | **Estimado** | 2 sprints | **Faltantes:** - [ ] Pricelists completo - [ ] Reglas de precios - [ ] Customer groups - [ ] Sales teams --- ## 3. GAPS FUNCIONALES ### GAP-FUN-001: Motor de Promociones no existe | Aspecto | Detalle | |---------|---------| | **Modulo Core** | MGN-013 Sales (SPEC-PRICING-RULES) | | **Requerido por** | RT-006 Precios | | **Estado** | Especificacion existe, no implementada | | **Accion** | Implementar SPEC-PRICING-RULES | | **SP Estimados** | 21 | --- ### GAP-FUN-002: Multi-sucursal no existe en core | Aspecto | Detalle | |---------|---------| | **Modulo Core** | MGN-004 Tenants, MGN-011 Inventory | | **Requerido por** | RT-003 Inventario Multi-Sucursal | | **Estado** | Core es single-warehouse | | **Accion** | Crear extension retail para branches | | **SP Estimados** | 34 | --- ### GAP-FUN-003: Programa de Lealtad no existe | Aspecto | Detalle | |---------|---------| | **Modulo Core** | MGN-014 CRM | | **Requerido por** | RT-005 Clientes | | **Estado** | CRM no tiene programa de puntos | | **Accion** | Crear modulo loyalty para retail | | **SP Estimados** | 21 | --- ### GAP-FUN-004: POS (Terminal de Venta) no existe | Aspecto | Detalle | |---------|---------| | **Modulo Core** | N/A | | **Requerido por** | RT-002 POS | | **Estado** | No existe en core | | **Accion** | Crear modulo completo POS | | **SP Estimados** | 55 | --- ### GAP-FUN-005: Gestion de Caja no existe | Aspecto | Detalle | |---------|---------| | **Modulo Core** | N/A | | **Requerido por** | RT-007 Caja | | **Estado** | No existe en core | | **Accion** | Crear modulo completo cash management | | **SP Estimados** | 28 | --- ### GAP-FUN-006: CFDI 4.0 no implementado | Aspecto | Detalle | |---------|---------| | **Modulo Core** | MGN-010 Financial | | **Requerido por** | RT-010 Facturacion | | **Estado** | Facturas base, sin CFDI | | **Accion** | Implementar integracion PAC | | **SP Estimados** | 21 | --- ### GAP-FUN-007: E-commerce no existe | Aspecto | Detalle | |---------|---------| | **Modulo Core** | MGN-013 Sales | | **Requerido por** | RT-009 E-commerce | | **Estado** | No existe tienda online | | **Accion** | Crear modulo ecommerce | | **SP Estimados** | 55 | --- ### GAP-FUN-008: Dashboard POS no existe | Aspecto | Detalle | |---------|---------| | **Modulo Core** | MGN-009 Reports | | **Requerido por** | RT-008 Reportes | | **Estado** | Reports planificado, no implementado | | **Accion** | Implementar dashboards retail | | **SP Estimados** | 30 | --- ### GAP-FUN-009: Conteos Ciclicos no implementado | Aspecto | Detalle | |---------|---------| | **Modulo Core** | MGN-011 Inventory (SPEC-INVENTARIOS-CICLICOS) | | **Requerido por** | RT-003 Inventario | | **Estado** | Especificacion existe, no implementada | | **Accion** | Implementar SPEC-INVENTARIOS-CICLICOS | | **SP Estimados** | 13 | --- ### GAP-FUN-010: Transferencias entre ubicaciones limitado | Aspecto | Detalle | |---------|---------| | **Modulo Core** | MGN-011 Inventory | | **Requerido por** | RT-003 Inventario (transferencias sucursales) | | **Estado** | Solo pickings basicos | | **Accion** | Extender para transferencias retail | | **SP Estimados** | 13 | --- ### GAP-FUN-011: Codigos de Barras multiples no existe | Aspecto | Detalle | |---------|---------| | **Modulo Core** | MGN-011 Inventory | | **Requerido por** | RT-002 POS | | **Estado** | Un solo codigo por producto | | **Accion** | Crear tabla product_barcodes | | **SP Estimados** | 5 | --- ### GAP-FUN-012: Integracion Hardware no existe | Aspecto | Detalle | |---------|---------| | **Modulo Core** | N/A | | **Requerido por** | RT-002 POS | | **Estado** | No existe | | **Accion** | Crear drivers para impresora, lector, cajon | | **SP Estimados** | 13 | --- ## 4. GAPS TECNICOS ### GAP-TEC-001: PWA/Offline no existe | Aspecto | Detalle | |---------|---------| | **Tecnologia** | Service Workers, IndexedDB | | **Requerido por** | RT-002 POS | | **Accion** | Implementar PWA con offline support | | **SP Estimados** | 21 | --- ### GAP-TEC-002: Cache Redis no implementado | Aspecto | Detalle | |---------|---------| | **Tecnologia** | Redis | | **Requerido por** | RT-002 POS (performance < 100ms) | | **Accion** | Configurar Redis para cache productos/precios | | **SP Estimados** | 8 | --- ### GAP-TEC-003: WebSocket no implementado | Aspecto | Detalle | |---------|---------| | **Tecnologia** | Socket.io / WS | | **Requerido por** | RT-002 POS (sync tiempo real) | | **Accion** | Implementar WebSocket para actualizaciones | | **SP Estimados** | 8 | --- ### GAP-TEC-004: Indices optimizados faltantes | Aspecto | Detalle | |---------|---------| | **Tecnologia** | PostgreSQL | | **Requerido por** | RT-002 POS (performance) | | **Accion** | Crear indices en tablas criticas | | **SP Estimados** | 3 | --- ### GAP-TEC-005: Vistas materializadas no existen | Aspecto | Detalle | |---------|---------| | **Tecnologia** | PostgreSQL | | **Requerido por** | RT-008 Reportes | | **Accion** | Crear vistas para reportes frecuentes | | **SP Estimados** | 5 | --- ### GAP-TEC-006: Integracion PAC no existe | Aspecto | Detalle | |---------|---------| | **Tecnologia** | API PAC (Finkok, Facturama) | | **Requerido por** | RT-010 Facturacion | | **Accion** | Implementar cliente PAC | | **SP Estimados** | 13 | --- ### GAP-TEC-007: Integracion Pagos no existe | Aspecto | Detalle | |---------|---------| | **Tecnologia** | Stripe, Conekta, MercadoPago | | **Requerido por** | RT-009 E-commerce | | **Accion** | Implementar pasarelas de pago | | **SP Estimados** | 13 | --- ### GAP-TEC-008: Queue system no implementado | Aspecto | Detalle | |---------|---------| | **Tecnologia** | Bull/BullMQ | | **Requerido por** | RT-002 POS (sync offline) | | **Accion** | Implementar cola de trabajos | | **SP Estimados** | 8 | --- ## 5. GAPS DOCUMENTACION ### GAP-DOC-001: User Stories RT incompletas | Aspecto | Detalle | |---------|---------| | **Estado** | Epicas completas, US pendientes | | **Accion** | Detallar user stories | --- ### GAP-DOC-002: Especificaciones tecnicas retail faltantes | Aspecto | Detalle | |---------|---------| | **Estado** | Directivas existen, specs tecnicas no | | **Accion** | Crear specs para POS, Caja, E-commerce | --- ### GAP-DOC-003: API Documentation no existe | Aspecto | Detalle | |---------|---------| | **Estado** | Sin OpenAPI/Swagger | | **Accion** | Documentar endpoints con Swagger | --- ### GAP-DOC-004: Manual de Integracion Hardware faltante | Aspecto | Detalle | |---------|---------| | **Estado** | Sin documentacion | | **Accion** | Crear guia de configuracion hardware | --- ## 6. PLAN DE CIERRE DE GAPS ### 6.1 Fase Pre-Retail (Cerrar Bloqueadores) | Gap | Sprint | Responsable | |-----|--------|-------------| | GAP-BLK-001 Auth | 1-2 | Backend-Agent | | GAP-BLK-002 Catalogs | 3 | Backend-Agent | | GAP-BLK-003 Financial | 4 | Backend-Agent | | GAP-BLK-004 Inventory | 5-6 | Backend-Agent | | GAP-BLK-005 Sales | 7-8 | Backend-Agent | ### 6.2 Fase Retail Sprint 1-4 | Gap | Sprint | Responsable | |-----|--------|-------------| | GAP-FUN-004 POS | 1-4 | Retail-Team | | GAP-FUN-011 Barcodes | 1 | Database-Agent | | GAP-TEC-001 PWA | 2-3 | Frontend-Agent | | GAP-TEC-002 Redis | 1 | Backend-Agent | ### 6.3 Fase Retail Sprint 5-8 | Gap | Sprint | Responsable | |-----|--------|-------------| | GAP-FUN-002 Multi-sucursal | 5-6 | Backend-Agent | | GAP-FUN-005 Caja | 5-6 | Backend-Agent | | GAP-FUN-001 Promociones | 7-8 | Backend-Agent | | GAP-FUN-010 Transferencias | 7 | Backend-Agent | ### 6.4 Fase Retail Sprint 9-12 | Gap | Sprint | Responsable | |-----|--------|-------------| | GAP-FUN-003 Lealtad | 9-10 | Backend-Agent | | GAP-FUN-006 CFDI | 9-10 | Backend-Agent | | GAP-FUN-007 E-commerce | 11-12 | Full-Stack | | GAP-FUN-008 Dashboard | 11-12 | Frontend-Agent | --- ## 7. RESUMEN EJECUTIVO ### 7.1 Story Points por Tipo de Gap | Tipo | SP Total | |------|----------| | Bloqueadores | ~60 SP (en core) | | Funcionales | ~296 SP | | Tecnicos | ~79 SP | | **TOTAL** | **~435 SP** | ### 7.2 Riesgos Identificados 1. **ALTO:** Dependencia de completitud de core 2. **ALTO:** Complejidad de PWA offline 3. **MEDIO:** Integracion PAC (terceros) 4. **MEDIO:** Integracion hardware variado 5. **BAJO:** Documentacion incompleta ### 7.3 Proximos Pasos 1. Cerrar gaps bloqueadores (pre-retail) 2. Iniciar RT-001 Fundamentos (heredar core) 3. Desarrollar RT-002 POS (critico) 4. Iterar sobre gaps funcionales --- **Documento generado:** 2025-12-18 **Fase:** 1 - Planeacion - GAP Analysis **Estado:** COMPLETO