Usar el marco de Scrum con las prácticas de ingeniería de XP—el híbrido común.
Scrum proporciona estructura organizacional. XP proporciona prácticas de ingeniería. Juntos, abordan diferentes brechas:
Scrum te da:
XP te da:
Scrum no dice nada sobre cómo los desarrolladores deben codificar realmente. XP llena ese vacío.
La mayoría de los "equipos Scrum" exitosos realmente están haciendo Scrum + prácticas de ingeniería XP, lo llamen así o no.
Scrum sin prácticas de ingeniería se degrada con el tiempo—la velocidad cae, los bugs se acumulan, la moral sufre. Las prácticas XP previenen esta decadencia.
Sprints = Iteraciones El sprint de Scrum es la iteración de XP. Con tiempo limitado, enfocado, entregando software funcional.
Product Backlog = Plan de lanzamiento La planificación de lanzamiento de XP crea el trabajo; el Product Backlog de Scrum lo organiza.
Sprint Planning = Planificación de iteración Misma actividad: decidir qué construir en esta iteración, dividirlo en tareas.
Daily Scrum = Standup diario Misma intención: sincronizar al equipo, sacar a la luz bloqueos.
Retrospectiva de Sprint = Retrospectiva XP no prescribe retrospectivas tan rígidamente, pero la práctica es la misma.
Historias de usuario Funcionan en ambos enfoques. Scrum no prescribe el formato; el formato de historia de XP funciona bien.
Sprint Review = Demo Las demos de iteración de XP son esencialmente Sprint Reviews.
La terminología difiere; las prácticas se alinean.
Los equipos Scrum que adoptan prácticas XP típicamente ven:
Mejor calidad de código: TDD detecta bugs temprano. La refactorización mantiene el diseño limpio. La propiedad colectiva distribuye el conocimiento.
Velocidad más predecible: Cuando la calidad es alta, la velocidad se estabiliza. No hay desaceleraciones sorpresa por corrección de bugs.
Ritmo sostenible: XP nombra y protege esto explícitamente. Scrum puede convertirse en un "sprint" en el sentido equivocado—siempre presionando.
Colaboración mejorada: La programación en parejas construye relaciones. La propiedad colectiva rompe silos.
Mejora continua: El principio de mejora de XP más las retrospectivas de Scrum crean una combinación poderosa.
Patrón común: Los equipos comienzan con Scrum porque es organizacional. Agregan prácticas XP a medida que maduran. La combinación es más poderosa que cualquiera de las dos solas.
Un equipo usa sprints de dos semanas (Scrum), TDD y programación en parejas (XP), y ejecuta retrospectivas para mejorar continuamente. El Product Owner establece prioridades; los desarrolladores son dueños de cómo se hace el trabajo. La calidad es alta; la entrega es predecible.
Un equipo tiene sprints, standups y un Product Owner. Pero no prueban efectivamente, nunca refactorizan, y la calidad del código declina. Cada sprint se siente más difícil que el anterior. 'Agile no está funcionando.'
Aunque XP y Scrum funcionan bien juntos, existen algunas tensiones:
Scrum Master vs. Auto-organización de XP XP asume que el equipo se auto-organiza profundamente. Scrum agrega un rol (Scrum Master) para facilitar. Estos pueden coexistir, pero si el Scrum Master se convierte en una estructura de comando, la auto-organización de XP sufre.
Compromiso de Sprint vs. Flexibilidad de XP Scrum enfatiza el compromiso de sprint. XP enfatiza responder al cambio. Si el compromiso se vuelve rígido, se pierde la adaptabilidad de XP.
Definición de Terminado vs. Calidad continua La "Definición de Terminado" de Scrum puede convertirse en una lista de verificación. Las prácticas de calidad de XP son continuas. Asegúrate de que DoD refleje la calidad XP, no solo "las pruebas pasan."
Velocidad como métrica Scrum a menudo rastrea la velocidad. XP advierte contra la velocidad como objetivo (se manipula). Usa la velocidad para planificación, no para medición de desempeño.
Estas tensiones son manejables. La clave es mantener vivos los principios de XP mientras se usa la estructura de Scrum.
Riesgo de culto cargo
Algunos equipos 'hacen Scrum' (las ceremonias) sin adoptar prácticas XP. Tienen sprints pero no TDD, standups pero no parejas. Esto es forma sin sustancia—y no entrega beneficios ágiles.
Para combinar Scrum y XP efectivamente:
Usa la estructura de Scrum:
Agrega las prácticas de XP:
Mantén los principios de XP:
Muchos equipos descubren esta combinación naturalmente. Comienzan con Scrum, se dan cuenta de que necesitan prácticas de ingeniería, y agregan XP. El resultado a menudo se llama "agile bien hecho."