Bounded Context Map
Tipo: DDD — Mapa de Contextos
Version: 2.0 | Fecha: 2026-05-15 | Estado: Propuesto
Alcance: Producto completo — FS-01 a FS-16
Visualizacion interactiva: interactive-ddd-viewer.html — seccion “Bounded Context Map”
Diagrama de Contextos
Ver codigo Mermaid (referencia)
```mermaid
graph TD
subgraph Core["Nucleo del Producto"]
A["BC-A: Identity\nums_identity\n.NET 8"]
B["BC-B: Authorization\nums_authz\n.NET 8"]
end
subgraph Supporting["Soporte Operacional"]
C["BC-C: Configuration\nums_config\n.NET 8"]
F["BC-F: Approvals\nums_approval\n.NET 8"]
H["BC-H: IGA\nums_iga\n.NET 8"]
I["BC-I: Compliance\nums_compliance\n.NET 8"]
end
subgraph Generic["Genericos"]
D["BC-D: Audit\nums_audit\n.NET 8"]
G["BC-G: Cache\nRedis\nInfrastructura"]
E["BC-E: Console PAP\nReact SPA\nSin entidades propias"]
end
A -->|"Customer-Supplier\nUser + Org + Branch claims"| B
A -->|"Customer-Supplier\nTenant scope keys"| C
A -->|"Customer-Supplier\nUserRegisteredEvent"| F
A -->|"Customer-Supplier\nUserRegisteredEvent"| H
A -->|"Customer-Supplier\nUserRegisteredEvent"| I
A -->|"Conformist\nevents"| D
C -->|"Customer-Supplier\nIdP config al gateway"| A
B -->|"Read-Aside\nauth_graph cache"| G
C -->|"Read-Aside\ncfg + flags cache"| G
B -->|"Conformist\nevents"| D
C -->|"Conformist\nevents"| D
H -->|"Customer-Supplier\nPromotionApprovedEvent"| B
H -->|"Customer-Supplier\npromocion requiere workflow"| F
H -->|"Conformist\nevents"| D
I -->|"Customer-Supplier\nDocumentExpiredEvent BLOCK"| A
I -->|"Customer-Supplier\nvalidacion doc"| F
I -->|"Conformist\nevents"| D
F -->|"Customer-Supplier\nprovisioning B2B"| A
F -->|"Customer-Supplier\nasignacion Profile post-aprobacion"| B
F -->|"Conformist\nevents"| D
E -->|"Customer-Supplier\nREST APIs"| A
E -->|"Customer-Supplier\nREST APIs"| B
E -->|"Customer-Supplier\nREST APIs"| C
E -->|"Customer-Supplier\nREST APIs"| F
```
Catalogo de Contextos
| Codigo |
Nombre |
Schema SQL |
Clasificacion |
FS |
| BC-A |
Identity |
ums_identity |
Core |
FS-01, FS-03, FS-08, FS-09 |
| BC-B |
Authorization |
ums_authz |
Core |
FS-02, FS-04, FS-05, FS-06, FS-07 |
| BC-C |
Configuration |
ums_config |
Supporting |
FS-08, FS-09, FS-13 |
| BC-D |
Audit |
ums_audit |
Generic |
Todos |
| BC-E |
Console PAP |
React SPA |
Generic |
Todos (UI) |
| BC-F |
Approvals |
ums_approval |
Supporting |
FS-10, FS-11, FS-12 |
| BC-G |
Cache |
Redis |
Generic |
BC-B, BC-C |
| BC-H |
IGA |
ums_iga |
Supporting |
FS-12, FS-14 |
| BC-I |
Compliance |
ums_compliance |
Supporting |
FS-11, FS-15, FS-16 |
Tabla de Relaciones
| Upstream |
Downstream |
Patron |
Contrato |
| Identity |
Authorization |
Customer-Supplier |
User/Org/Branch claims via eventos o API |
| Identity |
Configuration |
Customer-Supplier |
Tenant scope keys para aislamiento de config |
| Identity |
Approvals |
Customer-Supplier |
Registro de usuario externo desencadena workflow |
| Identity |
IGA |
Customer-Supplier |
UserRegisteredEvent para inicializar tracking |
| Identity |
Compliance |
Customer-Supplier |
UserRegisteredEvent para inicializar documentos |
| Configuration |
Identity |
Customer-Supplier |
IdP config provista al Auth Gateway para routing |
| Authorization |
Cache |
Shared Kernel ICachePort |
Read-aside; invalidacion en mutaciones |
| Configuration |
Cache |
Shared Kernel IConfigCachePort |
Read-aside cfg + flags; TTL 60-900s |
| IGA |
Authorization |
Customer-Supplier |
PromotionApprovedEvent actualiza Profile |
| IGA |
Approvals |
Customer-Supplier |
Promocion requiere ApprovalRequest |
| Compliance |
Identity |
Customer-Supplier |
DocumentExpiredEvent ejecuta BLOCK_ACCESS |
| Compliance |
Approvals |
Customer-Supplier |
Validacion documental abre workflow |
| Approvals |
Identity |
Customer-Supplier |
ApprovalResolvedEvent activa UserAccount (ONBOARDING) |
| Approvals |
Authorization |
Customer-Supplier |
ApprovalResolvedEvent asigna Profile (PROFILE_ASSIGNMENT) |
| Todos |
Audit |
Conformist |
Eventos inmutables appendeados al ledger |
| Console |
Todos |
Customer-Supplier |
REST versionado; tratado como consumidor externo |
Anti-Corruption Layers
| Frontera |
Mecanismo |
Motivo |
| Authorization — IdP externo |
IAuthenticationPort Strategy Pattern |
Evita acoplamiento con SDK de Zitadel/Okta |
| Configuration — Feature Flag Providers |
IFeatureFlagPort Strategy Pattern |
Evita LaunchDarkly/Unleash en dominio |
| Configuration — Secret Vault |
ISecretStorePort Strategy Pattern |
Evita AWS Secrets Manager / HashiCorp en dominio |
| Authorization — Redis |
ICachePort |
Evita cliente Redis en capa de dominio |
| Configuration — Redis |
IConfigCachePort |
Namespace separado de auth_graph |
| Compliance — Notificaciones |
INotificationPort Strategy Pattern |
Evita SDK SMTP/Twilio en dominio |
| Compliance — Almacenamiento |
IDocumentStoragePort Strategy Pattern |
Evita SDK MinIO/S3 en dominio |
| Authorization — Event Bus |
IEventBusPort |
Evita Kafka/RabbitMQ en use cases |