3. 📘 DESCRIPCIÓN GENERAL DEL CONTEXTO Y ALCANCE
3. Descripción General del Contexto y Alcance
El presente proyecto tiene como objetivo principal la automatización del procesamiento e ingesta de datos maestros y comerciales clave del Sistema de Gestión del Ciclo de Vida de Productos (SPPD) hacia el sistema de ventas (Power Street). Esto incluye la sincronización de información de productos, listas de precios, listas de descuentos (precios especiales) y promociones. Actualmente, SPPD gestiona estos datos y es crucial que Power Street refleje esta información de manera precisa y oportuna para asegurar la correcta ejecución de ventas, aplicación de políticas comerciales y evitar errores manuales.
La solución implementará un flujo de integración robusto y escalable basado en un patrón de arquitectura de publicación/suscripción. SPPD publicará eventos de cambio (altas, modificaciones, bajas) para cada tipo de entidad (productos, precios, descuentos, promociones). Power Street se suscribirá a estos eventos para actualizar su catálogo y motor comercial.
El sistema origen (SPPD) gestionará el ciclo de vida de cada transacción de sincronización, incluyendo la asignación de un ID único, el registro de metadatos (incluyendo el tipo de entidad y operación), la gestión de reintentos automáticos (hasta 3 intentos) y el procesamiento de respuestas del sistema destino. Se implementará una máquina de estados en SPPD para controlar el flujo de cada transacción. Adicionalmente, SPPD contará con un dashboard de operaciones que proporcionará visibilidad completa sobre el estado de las sincronizaciones, permitirá la visualización de detalles y la corrección manual de transacciones fallidas, reseteando su contador de reintentos.
3.1 Descripción General del Proyecto
El proyecto "Sincronización de Productos SPPD - Power Street" tiene como objetivo establecer un mecanismo robusto y resiliente 🛡️ para mantener la consistencia de la información de productos entre:
- 🏭 SPPD (Sistema de Gestión del Ciclo de Vida de Productos)
- 🛒 Power Street (Sistema de ventas)
Se implementará un patrón 🧩 publicación/suscripción, donde:
🔹 SPPD publica eventos: altas, modificaciones y bajas de productos.
🔹 Power Street se suscribe: y actualiza su catálogo de productos.
⚙️ Características clave del sistema origen (SPPD):
- 🔑 Asignación de ID único por transacción
- 📝 Registro de metadatos
- 🔄 Hasta 3 reintentos automáticos
- 🧠 Control por máquina de estados
- 📊 Dashboard de operaciones con:
- Visibilidad total 👁️
- Corrección manual 🛠️
- Reenvío controlado 🔁
📥 Power Street:
- Consume mensajes 📦
- Procesa productos en su BD 🗃️
- Emite respuestas detalladas 📤
🌱 El diseño permite que en el futuro otros sistemas también puedan integrarse como origen o destino usando este modelo.
3.2 Descripción de Escenarios y Seguimiento
📘 Escenario 1: Creación Exitosa de Lista de Precios
-
SPPD (Usuario - Ejecutivo Planeación Comercial):
Crea una nueva lista de precios en SPPD. -
SPPD (Sistema):
- Genera un mensaje de tipo
"Creación de Lista de Precios". - Asigna un ID de transacción.
- Define
eventType:PRICE_LIST_CREATE. - Incluye el
payloadde la lista,systemOrigin:"SPPD", eintento:1. - Publica el mensaje en el topic
events.v1. - La máquina de estados transita al estado
ENVIADO_A_BROKER.
- Genera un mensaje de tipo
-
Message Broker:
Entrega el mensaje al sistema Power Street. -
Power Street:
- Consume el mensaje.
- Procesa y almacena la nueva lista de precios.
- Genera una respuesta:
eventType:PRICE_LIST_CREATE_RESPONSE- Estado:
ÉXITO - Incluye ID de transacción, tiempo y fecha.
- Publica la respuesta en el topic
responses.v1.
-
SPPD (Sistema):
- Consume la respuesta.
- Actualiza el estado de la transacción a
COMPLETADO_EXITO.
-
SPPD (Dashboard):
Muestra la transacción como exitosa.