En la Agilidad, eXtreme Programming es un modo de desarrollar software liviano, eficiente, a largo plazo, flexible, predecible, científico y divertido.
Es inmediato, concreto y con feedback continuo mediante ciclos cortos. Responde a las necesidades de negocio dinámicas para reducir el costo de los cambios. Foco en las pruebas automatizadas para controlar el avance del trabajo. Foco en la comunicación oral, pruebas y código fuente para la estructura y significado del problema y la solución.

5 Valores
- Comunicación.
- Feedback.
- Simplicidad.
- Coraje.
- Respeto.
5 Principios
- Rapid feedback: reducir el tiempo entre una acción y su retroalimentación.
- Assume simplicity: la solución simple es la mejor (KISS).
- Incremental change: iteraciones cortas.
- Quality work: hacer un buen trabajo y trabajar con calidad.
- Embrace change: adaptarse a nuevos requerimientos.
4 Actividades Básicas
- Coding: debe haber un programa,
- Testing: correctamente hecho,
- Listening: que satisfaga las necesidades,
- Design: conforme a un buen diseño.
Prácticas
- Metaphor: poder definir el producto en una frase (shared storytelling).
- Collective ownership: el código es de todos y todos lo pueden cambiar.
- Coding standards: código legible y de calidad.
- 40 hour week: no necesitar laburar el fin de semana.
- Pair programming.
- Refactoring: refinar constantemente el diseño del sistema.
- Continuous integration: Integración Continua.
- On-site customer: similar al Product Owner de Scrum.