¿Por qué la gente elige Scrum sobre la programación extrema cuando ambos son marcos de Agile?

Aquí están mis 2 razones principales por las que uno podría elegir Scrum sobre XP:
1. Scrum es muy popular: muchas personas están influidas por la popularidad.
2. Scrum cubre algunas áreas y prácticas que XP no realiza: trabajos atrasados, sprints, soporte diario, etc.

Sin embargo, sugiero que la mayoría de los equipos ágiles utilizan una combinación de las dos metodologías. Miro las diversas metodologías como un conjunto de “prácticas”. Los equipos pueden adoptar cualquier práctica que consideren valiosa.

Scrum Practices la mayoría de los equipos encuentran valiosos:
1. Standups diarios
2. Product / Sprint Backlogs
3. Sprints
4. Equipos de funciones cruzadas
5. Sprint Reviews
6. Sprint Planning
7. Retrospectivas

Prácticas XP que muchos equipos encuentran valiosos:
1. Test Driven Development también conocido como prueba de unidad automatizada
2. Programación de pares
3. Integración continua
4. Refactorización
5. Diseño simple “YAGNI” – “No lo va a necesitar”
6. Cliente en el sitio
7. Normas de codificación

Luego hay prácticas que los dos tienen en común:
1. Desarrollo iterativo.
2. Uso de historias de usuario para expresar los requisitos
3. Usar puntos o días ideales para capturar el tamaño / esfuerzo del trabajo.
4. Velocidad de seguimiento
5. El juego de planificación

En su opinión, ambas son metodologías bajo el paraguas Agile, lo que significa que comparten los mismos valores culturales. Tienen algunas prácticas superpuestas y algunas prácticas diferentes. La mayoría de los equipos utilizan una combinación de las prácticas. Algunos equipos pueden elegir uno sobre el otro.

Junto con las respuestas muy útiles que se dan a continuación, me gustaría agregar solo mi experiencia.

En mi experiencia, los equipos con los que trabajé no eligieron Scrum en lugar de XP o viceversa. Eligieron Scrum con XP ya que ambos tienen sus ventajas y no son incompatibles entre sí. Normalmente, Scrum respondería la pregunta “¿Cómo gestionamos el trabajo?” y “XP respondería a la pregunta” ¿Cómo desarrollamos y administramos el código? “.

Sin embargo, la pregunta que enfrentaríamos con los nuevos equipos es qué método seguir primero: ¿Scrum o XP? Recomendaría a los nuevos equipos que no tomen Scrum y XP juntos. Por lo tanto, generalmente comenzaríamos practicando Scrum puro para algunas iteraciones. Una vez que estemos familiarizados, introduciremos gradualmente una práctica de XP tras otra.

Comodidad.

¿Por qué? Scrum ofrece más artefactos y prácticas de gestión “estándar”.

Por ejemplo

  • Reuniones -> Standup diario, Sprint Review, Retrospectiva
  • Documentación -> Product Backlog, Sprint Backlog
  • Métricas -> Velocity, Burndown chart

La Programación Extrema (XP) se centra en las prácticas de ingeniería , que funcionan muy bien en casi cualquier contexto de desarrollo de software, pero son menos útiles para administrar el trabajo en sí.

Woody Arnold ha cubierto el resto.

La mayoría de las empresas prefieren Scrum que XP porque implica poco esfuerzo y es la tendencia en este momento. Si desea seguir XP, tiene que adoptar muchas prácticas de desarrollo que requieren capacitación y horas de trabajo duro.

Scrum tiene más exageraciones, es más “cool” porque se centra en la gestión, mientras que XP se centra en la ingeniería. He visto que ambos funcionan bastante bien si se usan juntos, XP responde algunas preguntas que Scrum deja abiertas a la interpretación.