Tenemos un proyecto que todos dicen que haremos de manera ágil, pero dudo que hayamos entendido claramente qué es ágil.
En proyectos anteriores teníamos reuniones de planificación, luego definimos el registro de respaldo del producto y asignamos el trabajo a los desarrolladores en sprints de 2 a 3 semanas. Todas las mañanas teníamos reuniones de scrum (que parecían durar media hora cada vez) y cada desarrollador seguía adelante con eso. Casi nadie escribió ninguna prueba hasta el final del sprint y el trabajo que no se completó se agregó al siguiente sprint.
Los desarrolladores apenas hablaban entre sí y no había TDD involucrado en el desarrollo. De hecho, la mayoría de los desarrolladores tenían una especificación al inicio y la siguieron durante las 2 o 3 semanas para las que se organizó el sprint. Apenas hubo comunicación con el cliente / tenedor de apuestas.
El control de calidad se involucró generalmente unos meses más tarde y para entonces encontramos que faltaban los requisitos que aumentaban aún más la cantidad de trabajo que teníamos que hacer. Claramente no hubo un bucle de retroalimentación.
Entonces, mi pregunta es: ¿dónde nos hemos equivocado y cómo puedo evitar que el equipo cometa los mismos errores?