Soy un gran fanático del desarrollo ágil y utilicé XP en un proyecto muy exitoso hace unos años. Me encantó todo, el enfoque de desarrollo iterativo, escribir código en torno a una prueba, programar pares, tener un cliente en el sitio para ejecutar las cosas. Era un ambiente de trabajo altamente productivo y nunca sentí que estaba bajo presión.
Sin embargo, los últimos lugares en los que he trabajado usan / usan Scrum. Sé que es el niño del cartel para el desarrollo ágil en estos días, pero no estoy 100% convencido de que sea ágil. A continuación se presentan las dos razones principales por las que no me parece ágil.
Los gerentes de proyecto lo aman
Los gerentes de proyecto, que por su propia naturaleza están obsesionados con los plazos, todos parecen amar a Scrum. En mi experiencia, parecen usar el Sprint Backlog como un medio para rastrear los requisitos de tiempo y mantener un registro de cuánto tiempo se dedicó a una tarea determinada. En lugar de usar una pizarra, todos usan una hoja de Excel, que cada desarrollador debe completar, religiosamente.
En mi opinión, esto es demasiada documentación / seguimiento de tiempo para un proceso ágil. ¿Por qué habría de perder el tiempo calculando cuánto tiempo me llevará una tarea si puedo continuar con la tarea misma? O de manera similar, ¿por qué perdería tiempo documentando cuánto tiempo llevó una tarea cuando puedo pasar a la siguiente tarea en cuestión?
Reuniones de pie
Las reuniones de pie en el lugar anterior donde trabajé fueron una pesadilla. Todos los días teníamos que explicar lo que habíamos hecho ayer y lo que íbamos a hacer ese día. Si pasáramos a nuestro "cálculo" de tiempo para una tarea, el gerente del proyecto desataría un hedor y haría referencia al Backlog de Sprint como un medio de demostrar que eres incompetente por no cumplir con la línea de tiempo.
Ahora entiendo la necesidad de comunicación, pero seguramente el tono de las reuniones diarias debe ser alegre y centrarse en el intercambio de conocimientos. No creo que deba convertirse en una farsa de estilo de tarea. Seguramente, el punto clave de Agile es que las líneas de tiempo cambian, no deben establecerse en piedra.
Conclusión
La idea de agile es mejorar el software al facilitar la vida de los desarrolladores. Por lo tanto, en mi opinión, cualquier proceso ágil utilizado por un equipo debe ser liderado por un desarrollador. No creo que tener un gerente de proyecto use un proceso que hayan etiquetado como "ágil" para rastrear un proyecto tiene algo que ver con el desarrollo ágil.
¿Alguien piensa?