template-saas/orchestration/_archive/analisis/MATRIZ-DEPENDENCIAS-MODULOS.md
Adrian Flores Cortes 1c847fbe04
Some checks are pending
CI / Backend CI (push) Waiting to run
CI / Frontend CI (push) Waiting to run
CI / Security Scan (push) Waiting to run
CI / CI Summary (push) Blocked by required conditions
[ESTANDAR-ORCHESTRATION] refactor: Consolidate to standard structure
- Rename _archivo to _archive (standard convention)
- Move analisis/, planes/ to _archive/
- Archive extra root files
- Update _MAP.md with standardized structure

Standard: SIMCO-ESTANDAR-ORCHESTRATION v1.0.0
Level: PROVIDER (L1A)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-24 14:38:23 -06:00

174 lines
6.8 KiB
Markdown

# Matriz de Dependencias entre Modulos
**Fecha:** 2026-01-10
**Fase:** 1.6 - Matriz de Dependencias
**Estado:** COMPLETADO
---
## Grafo de Dependencias
```
┌─────────────────────┐
│ SAAS-002 Tenants │
│ (Base Multitenancy)│
└──────────┬──────────┘
┌──────────────────────┼──────────────────────┐
│ │ │
▼ ▼ ▼
┌───────────────┐ ┌───────────────┐ ┌───────────────┐
│ SAAS-001 Auth │ │ SAAS-003 Users│ │ SAAS-005 Plans│
│ │◄────│ │ │ │
└───────┬───────┘ └───────┬───────┘ └───────┬───────┘
│ │ │
│ │ │
└─────────┬───────────┴─────────┬──────────┘
│ │
▼ ▼
┌───────────────┐ ┌───────────────┐
│SAAS-004 Billing│────│SAAS-009 Flags │
└───────┬───────┘ └───────┬───────┘
│ │
┌─────────────┼─────────────────────┼─────────────┐
│ │ │ │
▼ ▼ ▼ ▼
┌───────┐ ┌───────────┐ ┌───────────┐ ┌───────────┐
│Storage│ │Notifications│ │ Webhooks │ │Audit Logs │
│SAAS-011│ │ SAAS-007 │ │ SAAS-010 │ │ SAAS-008 │
└───────┘ └─────┬─────┘ └───────────┘ └───────────┘
┌───────┴───────┐
│ │
▼ ▼
┌───────────┐ ┌───────────┐
│ Email │ │ WhatsApp │
│ SAAS-013 │ │ SAAS-014 │
└───────────┘ └───────────┘
```
---
## Matriz de Dependencias (Modulo -> Depende de)
| Modulo | SAAS-001 | SAAS-002 | SAAS-003 | SAAS-004 | SAAS-005 | SAAS-006 | SAAS-007 | SAAS-008 | SAAS-009 | SAAS-010 | SAAS-011 | SAAS-013 | SAAS-014 |
|--------|----------|----------|----------|----------|----------|----------|----------|----------|----------|----------|----------|----------|----------|
| SAAS-001 Auth | - | **X** | | | | | | | | | | | |
| SAAS-002 Tenants | | - | | | | | | | | | | | |
| SAAS-003 Users | **X** | **X** | - | | | | | | | | | | |
| SAAS-004 Billing | | **X** | | - | **X** | | | | **X** | | | | |
| SAAS-005 Plans | | **X** | | | - | | | | | | | | |
| SAAS-006 AI | **X** | **X** | | | **X** | - | | | **X** | | | | |
| SAAS-007 Notif | **X** | **X** | **X** | | | | - | | | | | **X** | **X** |
| SAAS-008 Audit | **X** | **X** | **X** | | | | | - | | | | | |
| SAAS-009 Flags | | **X** | | | **X** | | | | - | | | | |
| SAAS-010 Webhooks | **X** | **X** | | | | | | | | - | | | |
| SAAS-011 Storage | **X** | **X** | | | **X** | | | | | | - | | |
| SAAS-013 Email | | **X** | | | | | | | | | | - | |
| SAAS-014 WhatsApp | | **X** | | | | | | | | | | | - |
**Leyenda:** X = Dependencia directa
---
## Modulos por Nivel de Dependencia
### Nivel 0 (Base - Sin dependencias internas)
- **SAAS-002 Tenants** - Fundacion multi-tenant
### Nivel 1 (Core - Dependen solo de Tenants)
- SAAS-001 Auth
- SAAS-003 Users (+ Auth)
- SAAS-005 Plans
### Nivel 2 (Negocio - Dependen de Core)
- SAAS-004 Billing (+ Plans, Feature Flags)
- SAAS-009 Feature Flags (+ Plans)
### Nivel 3 (Funcionalidad - Dependen de Negocio)
- SAAS-006 AI (+ Plans, Feature Flags)
- SAAS-008 Audit Logs (+ Users)
- SAAS-010 Webhooks
- SAAS-011 Storage (+ Plans)
### Nivel 4 (Comunicacion - Nivel mas alto)
- SAAS-013 Email
- SAAS-014 WhatsApp
- SAAS-007 Notifications (+ Email, WhatsApp)
---
## Dependencias Circulares
**Estado:** NINGUNA DETECTADA
No se encontraron dependencias circulares en el sistema.
---
## Modulos Huerfanos
**Estado:** NINGUNO
Todos los modulos estan conectados al grafo de dependencias.
---
## Modulos con Mayor Acoplamiento
| Posicion | Modulo | Dependencias Entrantes | Dependencias Salientes | Total |
|----------|--------|------------------------|------------------------|-------|
| 1 | SAAS-002 Tenants | 12 | 0 | 12 |
| 2 | SAAS-001 Auth | 6 | 1 | 7 |
| 3 | SAAS-003 Users | 3 | 2 | 5 |
| 4 | SAAS-005 Plans | 4 | 1 | 5 |
| 5 | SAAS-009 Feature Flags | 2 | 2 | 4 |
---
## Dependencias con Integraciones Externas
| Modulo | Integracion | Tipo |
|--------|-------------|------|
| SAAS-001 Auth | INT-002 OAuth | Planificado |
| SAAS-004 Billing | INT-001 Stripe | Implementado |
| SAAS-006 AI | OpenRouter API | Implementado |
| SAAS-007 Notifications | INT-004 Push (VAPID) | Implementado |
| SAAS-011 Storage | INT-005 S3/R2/MinIO | Implementado |
| SAAS-013 Email | INT-003 SendGrid/SES | Implementado |
| SAAS-014 WhatsApp | Meta Cloud API | Implementado |
---
## Impacto de Cambios por Modulo
### Alto Impacto (cambios afectan muchos modulos)
1. **SAAS-002 Tenants** - Cambios afectan TODO el sistema
2. **SAAS-001 Auth** - Cambios afectan 6 modulos
3. **SAAS-005 Plans** - Cambios afectan limites en 4 modulos
### Bajo Impacto (modulos aislados)
1. **SAAS-013 Email** - Solo afectado por Notifications
2. **SAAS-014 WhatsApp** - Solo afectado por Notifications
3. **SAAS-012 CRUD Base** - Es guia, no tiene dependencias
---
## Recomendaciones de Arquitectura
### Mantener
1. SAAS-002 Tenants como modulo fundacional sin dependencias
2. Separacion clara entre capas (Core, Negocio, Comunicacion)
### Considerar
1. Extraer configuracion de Feature Flags a servicio independiente
2. Crear capa de abstraccion para comunicacion (Email, WhatsApp, Push)
### Evitar
1. Agregar dependencias desde niveles bajos a niveles altos
2. Crear dependencias circulares
---
**Entregable de:** FASE 1.6