Los principios que conectan valores y prácticas: el 'por qué' detrás del 'qué'.
Los valores te dicen qué es importante. Las prácticas te dicen qué hacer. ¿Pero cómo los conectas? Ahí es donde entran los principios.
Los principios son el puente. Son más concretos que los valores pero más abstractos que las prácticas. Cuando estás decidiendo si adoptar una práctica o modificarla para tu contexto, los principios te guían.
XP tiene muchos principios, pero nos enfocaremos en los más importantes.
El software es hecho por personas, para personas.
Este principio nos recuerda que los desarrolladores no son recursos intercambiables. Las personas tienen necesidades:
Las prácticas de XP deben satisfacer estas necesidades. La programación en parejas satisface las necesidades de pertenencia e intimidad. El desarrollo guiado por pruebas satisface las necesidades de logro y seguridad. El ritmo sostenible protege la salud física y mental.
Cuando una práctica se siente mal, pregunta: "¿Esto está violando necesidades humanas?"
Si tus prácticas 'ágiles' están agotando a las personas, no son ágiles. El ritmo sostenible no es opcional: es fundamental para XP.
El dinero importa. El tiempo tiene valor. Las opciones tienen valor.
XP toma la economía en serio:
Este principio respalda las entregas pequeñas (entregar valor temprano), el diseño incremental (no invertir demasiado por adelantado) y la planificación iterativa (responder a lo que aprendes).
También respalda el ritmo sostenible: los desarrolladores agotados cometen errores costosos.
Cada práctica debe beneficiar a todos los involucrados.
Las mejores prácticas de XP son ganar-ganar-ganar:
Evita prácticas que ayudan a un grupo a expensas de otro. La documentación escrita solo para cumplimiento, nunca leída por desarrolladores, falla en el beneficio mutuo. El código escrito para ser ingenioso en lugar de claro también falla.
Si una práctica crea resentimiento, probablemente viola el beneficio mutuo.
Los patrones que funcionan en una escala a menudo funcionan en otras.
XP aplica los mismos patrones a diferentes escalas:
Cuando encuentres algo que funciona, pruébalo a diferentes escalas. El juego de planificación funciona para la planificación de entregas y la planificación de iteraciones. Los principios de revisión de código funcionan para la revisión de diseño y la revisión de arquitectura.
Comienza donde estás y mejora continuamente.
XP no exige perfección desde el primer día. Exige movimiento. Comienza con lo que puedes hacer hoy y mejora desde ahí.
El objetivo no es "hacer XP". El objetivo es mejorar. XP es una dirección, no un destino.
Este principio también respalda fallar de manera segura. Los experimentos que no funcionan son oportunidades de aprendizaje, no fracasos.
Entrega valor continuamente, no en grandes lotes.
Este principio alinea XP con el pensamiento lean y Kanban. Los grandes lotes ocultan problemas. Los lotes pequeños los sacan a la luz rápidamente.
El flujo reduce el trabajo en progreso, lo que reduce el cambio de contexto, lo que mejora el enfoque y la calidad. También da valor a los clientes más pronto y retroalimentación más rápida.
Si no estás entregando al menos una vez al mes, pregunta por qué. Los obstáculos que descubras señalarán problemas reales.
La calidad no es negociable.
Esto parece obvio, pero las implicaciones son profundas. XP dice que puedes negociar alcance o cronograma, pero nunca calidad.
Esto significa:
¿Por qué? Porque la calidad es la base de la velocidad. La mala calidad crea errores que te ralentizan. La mala calidad crea código difícil de cambiar. La mala calidad crea sistemas costosos de mantener.
La calidad es la forma más rápida de ir rápido.
Da el paso más pequeño que genere progreso.
Los grandes cambios son riesgosos. Los cambios pequeños son seguros. XP siempre prefiere pasos pequeños:
Los pasos pequeños no significan progreso lento. Mil pasos pequeños pueden cubrir más terreno que diez grandes saltos, y con menos posibilidad de caer.
Cuando estés atascado, pregunta: "¿Qué es lo más pequeño que puedo hacer ahora mismo que genere progreso?"