3 min lectura • Guide 429 of 877
Registros de Decisiones Técnicas
Las decisiones técnicas dan forma a los sistemas por años. Buenos registros de decisión explican el por qué, no solo el qué. Mala documentación significa repetir errores y confusión sobre elecciones de diseño.
Beneficios de ADR
| Beneficio | Descripción |
|---|---|
| Contexto histórico | Saber por qué se tomaron decisiones |
| Onboarding | Nuevos miembros entienden sistema |
| Revisitar | Saber cuándo reconsiderar |
| Alineación | Equipo entiende dirección |
Formato de ADR
TEMPLATE DE ADR
═══════════════
# ADR-001: [Título de la Decisión]
## Status
[Propuesto | Aceptado | Deprecado | Supersedido por ADR-XXX]
## Contexto
[¿Cuál es el issue? ¿Por qué estamos tomando esta decisión?
Background, constraints, requisitos.]
## Decisión
[¿Qué hemos decidido? Sé específico.]
## Consecuencias
### Positivas
[¿Cuáles son los beneficios?]
### Negativas
[¿Cuáles son los trade-offs o riesgos?]
### Neutrales
[¿Qué otros efectos tiene esto?]
## Alternativas Consideradas
[¿Qué otras opciones evaluamos?
¿Por qué no las elegimos?]
## Relacionado
[Links a ADRs, issues, o docs relacionados]
Ejemplo de ADR
# ADR-003: Usar PostgreSQL para Base de Datos Principal
## Status
Aceptado (2024-01-15)
## Contexto
Necesitamos una base de datos principal para nuestra aplicación SaaS.
Requisitos:
- Transacciones ACID para datos financieros
- Soporte JSON para datos flexibles
- Escalabilidad para 100K+ usuarios
- Equipo tiene experiencia
## Decisión
Usaremos PostgreSQL como base de datos principal.
## Consecuencias
### Positivas
- Transacciones ACID fuertes
- Excelente soporte JSON
- Equipo ya lo conoce
- Gran ecosistema
### Negativas
- Escalabilidad horizontal más compleja que NoSQL
- Requiere DBA expertise para optimización
## Alternativas Consideradas
### MongoDB
Rechazado: No garantías ACID fuertes para datos financieros
### MySQL
Posible, pero PostgreSQL tiene mejor soporte JSON
En GitScrum
ADRs EN GITSCRUM
════════════════
ALMACENAMIENTO:
┌─────────────────────────────────────────────────────────────┐
│ │
│ • NoteVault para ADRs │
│ • Folder /docs/adr en repo │
│ • Linkear ADRs a tareas relacionadas │
│ • Índice de decisiones │
│ │
└─────────────────────────────────────────────────────────────┘