Extreme Programming (XP) es una metodología ágil de desarrollo de software basada en la comunicación, la reutilización de código y la retroalimentación. Utiliza historias de usuario, tareas de ingeniería, pruebas de aceptación y pruebas unitarias como artefactos principales. Los roles incluyen programadores, clientes, entrenadores, rastreadores y probadores.