Landscape de solucion
SPPD esta compuesto por un canal de experiencia, un backend de dominio, un backend de orquestacion y un conjunto de dependencias corporativas que deben verse como un sistema coordinado y no como repositorios aislados.
Vista ampliada
Vista ejecutiva
| Componente | Rol arquitectonico | Stack dominante | Responsabilidad |
|---|---|---|---|
alpura-sppd-front-main | Canal de experiencia | Angular, TypeScript, Module Federation | Captura, consulta y operacion UI |
alpura-sppd-main | API de dominio | Spring Boot, PostgreSQL, OAuth2 | Reglas, operaciones y contratos centrales |
alpura-sppd-statemachine-main | Orquestacion | Spring StateMachine, Pub/Sub, PostgreSQL | Estados, transiciones y eventos |
| DevOps repos | Plataforma de despliegue | Kubernetes, Docker, manifests | Empaque y publicacion operativa |
- Narrativa
- Patrones
- El portal carga el microfrontend SPPD como capacidad embebida.
- El frontend consume dos backends con responsabilidades diferentes.
- El backend principal concentra logica de negocio y consultas.
- State machine gobierna transiciones, historico y eventos asociados al proceso.
- Los datos se reparten entre bases de dominio, omnicanal y estados.
| Patron | Donde aplica | Beneficio esperado |
|---|---|---|
| Microfrontend | alpura-sppd-front-main | Escalabilidad de UI por capacidades |
| API de dominio | alpura-sppd-main | Centraliza reglas y contratos |
| Orquestacion explicita | alpura-sppd-statemachine-main | Reduce acoplamiento en cambios de estado |
| Integracion externa por gateway | APIs corporativas | Gobierno y seguridad en consumo |
Lectura de arquitectura
Lo que esta bien encaminado
- Separacion clara entre UX, dominio y orquestacion.
- Uso consistente de Keycloak y contratos OIDC.
- Preparacion para operar asincronia y trazabilidad.
Lo que hoy genera complejidad
- Frontera funcional difusa entre backend principal y state machine.
- Demasiadas evidencias tecnicas mezcladas con la narrativa HLD.
- Dependencias externas dispersas y poco priorizadas por dominio.