lunes, 14 de noviembre de 2011

Scrum / Agile: Malos hábitos II - Agilidad sin información

Siguiendo con el tema de los malos hábitos en el desarrollo de software ágil iniciado la semana pasada con este post, donde escribí acerca de la agilidad sin autonomía, me referiré hoy a otro problema que frecuentemente he visto en equipos que han optado por utilizar técnicas de desarrollo ágil de software.

II. Agilidad sin información

Desarrollar software de manera ágil significa que individuos (programadores, testeadores, clientes, arquitectos) trabajan (colaboran) juntos para producir software.  Para hacerlo, utilizan herramientas y procesos, pero ellos, quienes hacen el trabajo, son más importantes que dichas herramientas y procesos.  También utilizan documentación, pero miden el progreso del proyecto con resultados (software) y no con papeles llenos de documentación que nadie lee.

El equipo que trabaja para producir el software toma decisiones, para lo cual no sólo necesita la autonomía mencionada en el post anterior, sino que también necesita información fidedigna, correcta y actual.

El primer paso, es que el equipo sepa hacia donde debe ir.  Sólo así podrá tomar buenas decisiones y encontrar las mejores respuestas a la pregunta de cómo llegar a dicho objetivo. Debe saber toda la verdad acerca de las expectativas que se tienen del equipo.

El siguiente paso, igualmente importante es que el equipo cultive un ambiente de honestidad y apertura, donde todos sientan que pueden hablar con la verdad y que pueden confiar en lo que los otros dicen. Si no es posible lograr esto, recomiendo sinceramente desistir de usar cualquier técnica de desarrollo ágil inmediatamente, pues el equipo no logrará obtener los resultados que se esperan de él.

Uno de los puntos más frecuentes que un equipo debe acordar en este sentido es la definición de "terminado" (done). Cuando alguien afirma estar listo con una tarea, es importante que todos en el equipo entiendan qué es lo que ello significa. Si alguien dice que terminó una tarea, por haberse comprometido a ello y pese a no haberlo logrado, estará poniendo en riesgo al equipo entero, pues éste basará sus decisiones en información errónea.

El tema de la honestidad y comunicación abierta debe ser tratado en retrospectivas, para encontrar acuerdos que ayuden a un equipo a crecer y mejorar sus resultados.

La comunicación hacia el exterior, por ejemplo el estado de avance del proyecto, debe ser realizado de la misma manera: en forma directa y transparente.  Pues todo lo dicho antes acerca de la toma de decisiones dentro del equipo, también se aplica hacia afuera: otros proyectos necesitan también poder tomar buenas decisiones.

No hay comentarios:

Publicar un comentario