Skip to main content

Vision y principios

SPPD debe entenderse como una plataforma de promociones y folios comerciales con tres responsabilidades dominantes:

  • orquestar reglas y operaciones de negocio,
  • controlar aprobaciones y estados,
  • integrarse con servicios corporativos y canales digitales sin romper trazabilidad.

Objetivo arquitectonico

Construir una plataforma desacoplada, observable y gobernable que permita operar promociones y folios de forma segura, auditable y escalable.

Drivers de arquitectura

DriverImplicacion para la solucion
Trazabilidad de promocionesCada folio y aprobacion requiere un historial verificable.
Integracion corporativaEl backend debe interoperar con APIs Alpura, mensajeria y catalogos empresariales.
Seguridad empresarialKeycloak y OAuth2/OIDC son parte del contrato base, no una capa opcional.
Escalabilidad funcionalEl frontend debe crecer por capacidades sin convertir el sistema en un monolito UI.
Gobierno de datosLa persistencia debe distinguir entre core SPPD, omnicanal y maquina de estados.

Alcance HLD

En alcance

  • Microfrontend alpura-sppd-front-main
  • Microservicio alpura-sppd-main
  • Microservicio alpura-sppd-statemachine-main
  • Integraciones corporativas principales
  • Persistencia operativa y estados
  • Riesgos tecnicos y decisiones recomendadas

Fuera de alcance

  • Detalle linea por linea de todos los endpoints
  • Evidencia forense completa por archivo
  • Manuales operativos de desarrollo
  • Contratos internos no confirmados por codigo

Principios de diseno

  1. Separar claramente canal, negocio y orquestacion de estados.
  2. Tratar la seguridad y los secretos como capacidades de plataforma.
  3. Diseñar integraciones con contratos explicitamente documentados.
  4. Priorizar componentes reusables y dominios funcionales sobre listados tecnicos dispersos.
  5. Mantener el HLD corto y mover el detalle excesivo a anexos tecnicos.

Dominios funcionales

DominioResponsabilidad primariaComponentes dominantes
Configuracion comercialCatalogos, clientes, parametros y maestrosFrontend + alpura-sppd-main
Gestion de foliosCaptura, edicion, consulta y reportesFrontend + alpura-sppd-main
AprobacionesRutas de decision, autorizadores, reemplazos e historicoFrontend + alpura-sppd-main
OrquestacionCambios de estado y procesamiento asincronoalpura-sppd-statemachine-main
IntegracionConsumo de APIs corporativas, notificaciones y syncAmbos backends
Seguridad y accesoRoles, menu, autenticacion y contratos del portalFrontend + Keycloak

Decisiones de arquitectura recomendadas

Direccion recomendada

SPPD debe documentarse y evolucionar como una solucion por capacidades, no por carpetas tecnologicas.

  • Consolidar el backend principal como API de dominio.
  • Reservar state machine para transiciones, eventos y validacion de ciclo de vida.
  • Reducir la dependencia de endpoints no documentados o no trazados.
  • Formalizar un contrato de integracion entre frontend, API principal y state machine.
  • Sustituir configuraciones sensibles embebidas por secretos gestionados externamente.