Principios
1. variación de las estimaciones (Variación del Valor (VV))
Valores: Cambiabilidad, Mejora continua
2. hacer sólo lo necesario (DOWN)
Valores: eficacia productiva, adaptabilidad
¡Cuidado con las optimizaciones! (Principio de la grados rojos)
You Ain't Gonna Need It (YAGNI) (Principio del grado azul)
Keep it simple, stupid (KISS) (principio de la grados rojos)
3. aislar aspectos (IA)
Valores: Cambiabilidad
Don't Repeat Yourself (DRY) (principio de la grados rojos)
Separación de intereses (SoC) (principio de grado naranja)
Nivel único de abstracción (SLA) (principio del grado naranja)
Principio de responsabilidad única (SRP) (principio de grado naranja)
Principio de segregación de interfaces (ISP) (principio de grado amarillo)
El diseño y la aplicación no se solapan (principio de grado azul)
Principio de Segregación de Operaciones de Integración (IOSP) (principio de grados rojos)
4. minimizar las dependencias (Minimizar Dependencias (MD))
Valores: Cambiabilidad
Principio de inversión de la dependencia
Principio de ocultación de información
Ley de Deméter
Principio Abierto Cerrado
Cuéntalo, no preguntes
Principio de segregación de interfaces (ISP)
Principio de Segregación de Operaciones de Integración (IOSP) (principio de grados rojos)
5. cumplir los compromisos (HP)
Valores: Cambiabilidad
o también: Minimizar las sorpresas
Principio de sustitución de Liskov
Principio del menor asombro
Diseño de espejos de aplicación
Favorecer la composición sobre la herencia (FCoI)
Práctico
1. Abrazar la incertidumbre (Embrace Uncertainty (EU))
Valores: Cambiabilidad, Mejora continua
Utilizar un sistema de control de versiones
Pruebas de integración automatizadas
Pruebas unitarias automatizadas
Maquetas (maniquíes de prueba)
Integración continua
Contenedor de inversión de control
2. enfoque (Focus (F))
Valores: Eficacia de la producción
Orientación de los componentes
Pruebe primero
Límite WIP // nuevo
3. calidad del valor (CV)
Valores: Eficacia de la producción
Aceptar sólo alta calidad // nuevo
Pruebas unitarias automatizadas
Reseñas
4. hacer las cosas (GTD)
Valores: Eficacia de la producción
Desarrollo iterativo
Entrega continua
Limitar WIP
5. mantenerse limpio (SC)
Valores: Modificabilidad, corrección, eficacia de la producción
Observar la regla del explorador
Refactorizaciones complejas
Aplicar patrones sencillos de refactorización
Análisis estático del código (métricas)
Análisis de la cobertura del código
Convenciones del código fuente // principio anterior
6. mantener la pelota en movimiento (Keep Moving (KM))
Valores: Mejora continua
Leer, leer, leer
Participación en actos especializados
Transmitir la experiencia
Reflexionar a diario
Análisis de las causas
Errores de medición
Seguimiento de problemas
Retrospectivas periódicas // nuevo