Tips para lograr una administración ágil de proyectos, evitando el desperdicio de esfuerzos en el proceso de desarrollo de software.
En este post te quiero compartir una dinámica que diseñamos junto a Lisandra Armas, y que ella misma escribió para compartirla con la comunidad de testers. A la misma la denominamos “los 8 desperdicios de la metodología Scrum”.
Ahora bien, si no estás familiarizado con la administración ágil de proyectos, en las próximas lineas abordaremos los principales conceptos para llegar a entender cómo reducir al máximo el desperdicio de esfuerzos, en el proceso de desarrollo de software.
¿Qué es Scrum y agile?
Agile se refiere a una serie de métodos y prácticas basadas en los valores y principios expresados en el Manifesto Agile, lo cual incluye conceptos como colaboración, autoorganización e interfuncionalidad de equipos.
Mientras que Scrum es un marco de trabajo que se usa para la implementación de desarrollos en Agile (también llamado framework de Scrum).
¿En qué consiste la Metodología Scrum?
El modelo Scrum está construido sobre entregas iterativas de un producto. Es decir, en lugar de esperar hasta que el proyecto esté completo al 100% para entregarlo al usuario, se entregan partes “usables” del proyecto, a medida que se completan.
Esta dinámica ayuda a evitar el desperdicio de esfuerzos por el cambio de necesidades, o bien, por si algunos detalles se pierden en la comunicación.
Para más información sobre las bases de esta metodología, visite la guía oficial o acceda a la guía para principiantes de Trello.
Beneficios de Scrum en la administración de proyectos
Scrum proporciona una excelente manera de abordar problemas complejos y priorizarlos en tareas individuales. Luego, delegar esas tareas al miembro del equipo con la mejor capacidad para resolverlas.
Asimismo, es necesario entender el papel de las personas y algunas partes de la metodología Scrum. La buena noticia es que no se requiere ninguna experiencia especial o certificaciones para comenzar.
“Scrum se puede usar para cualquier tipo de proyectos complejos, la advertencia relevante es que funciona mejor cuando hay un producto concreto en desarrollo”
David Matthew, Scrum Master Certificado de Incentive Technology Group
Los 8 desperdicios de la Metodología Scrum
“Scrum no nos sirve, no está funcionando”: Hemos escuchado esto muchas veces. Una de las cosas que no tenemos que perder de vista es que el mismo framework plantea apuntar a la mejora continua.
Y como parte de este mismo enfoque, los análisis de retrospectiva o retro meetings, deberían darnos lugar a analizar qué tan bien nos está resultando nuestra interpretación e implementación de Scrum en sí.
En las próximas líneas ahondaremos acerca de esta dinámica que pone foco en el proceso Scrum, con base en los 8 desperdicios planteados en LEAN.
Origen de la dinámica
Esta dinámica surge en medio de una charla en la 6.ª edición de TestingUY, sobre cómo podríamos gestionar mejor nuestros tiempos. A raíz de este tema estuvimos investigando y reflexionando más en profundidad sobre los 8 tipos de desperdicios propuestos en la metodología LEAN.
Estos desperdicios que se han estudiado y que aplican mucho al área de manufactura, también podemos aplicarlos a nuestro trabajo diario, y en particular pensarlo sobre el framework de Scrum.
Introducción a la dinámica
La dinámica busca descubrir y analizar los desperdicios que tienen teniendo los equipos, en cuanto a toda la aplicación del proceso de Scrum. Esto, en función de los eventos y todos los artefactos que plantea este framework.
El primer paso es explicar cuáles son los 8 desperdicios planteados por LEAN, pero enfocándolos en el mundo del desarrollo de software. A continuación, se ilustran los 8 desperdicios:
1. Talento no utilizado
Desperdicio de la creatividad e inteligencia del equipo de trabajo, la asignación de responsabilidades y tareas actuales.
2. Defectos
Se cometen errores en la entrega del producto, generando así retrabajo e inconvenientes, por falta de calidad.
3. Sobreproducción
Se produce más de lo que se requiere, como por ejemplo, cuando se acumulan muchas funcionalidades en el producto que quizá no son utilizadas por el cliente final.
4. Movimientos
Cuando realizamos acciones o actividades en el proceso que no agregan valor al producto, como por ejemplo, teniendo muchos estados para la gestión de incidentes, lo cual agrega la complejidad de mantener esa información de manera adecuada y quizá sin agregar valor real al proceso.
5. Transporte
Transporte innecesario ya sea de personas, equipos, información, etc. Podría ser como cuando se envían excesivas cantidades de correos.
6. Inventario
el exceso de inventario puede significar un desperdicio, como al tener un backlog con muchas tareas que quizá no se terminan de implementar nunca.
7. Sobre procesamiento
Exceso de procesamiento sobre alguna etapa del proceso, como cuando para que algo sea aprobado lo tienen que revisar muchas personas (cada persona extra agrega un punto más de procesamiento sobre la misma tarea).
8. Espera
Demoras ocasionadas por tiempos de espera entre actividades que se realizan en el proceso.
Tablero para generar ideas
Una vez que explicamos al equipo en qué consisten los 8 desperdicios, mostramos en una pizarra el clásico esquema del ciclo de vida de la metodología Scrum.
Luego se le propone al equipo que piense cuáles son los desperdicios que consideran que existen en cada etapa de su implementación del proceso. Se anotan las ideas en post-its (ideal una idea por post-it).
Luego de dejar en silencio un bloque de aproximadamente 10 minutos para que cada uno piense y anote las ideas, se les solicita a los participantes que peguen los post-its en el lugar de la imagen donde corresponden y que describan brevemente de qué se trata. Mientras que el moderador va agrupando las ideas vinculadas.
En el equipo que estuvimos realizando la dinámica surgieron algunos de los siguientes comentarios:
- Problemas ocasionados por esperas en la especificación de los requerimientos.
- Falta de conocimiento en la estimación de historias de usuario.
- Las reuniones diarias (stand-up) llevaban mucho tiempo y no comienzan en hora.
- Esperas en el pasaje a Producción.
- Reunión de Planning y Retrospectivas muy largas.
- La regresión manual nos lleva mucho tiempo.
Selección de temas para hablar
Luego de ser planteadas las ideas por el equipo, se pueden utilizar diversas técnicas para priorizar las ideas planteadas, según el tiempo que se tenga disponible para el desarrollo de la dinámica.
Por ejemplo, se puede hacer una votación o se les puede pedir que las ordenen según prioridad (esto se debe organizar también basándonos en la cantidad de participantes y a la cantidad de post-its que haya).
La idea es seleccionar los desperdicios que el equipo considera más significativos, y que más afectan la velocidad y calidad del proceso.
Buscar propuestas sobre desperdicios elegidos
Luego de seleccionar los desperdicios con más impacto, podemos solicitar al equipo que se reúnan en subgrupos de 2 o 3 integrantes para analizar y proponer ideas, en función de encontrar variantes o soluciones a lo que hoy en día está siendo un desperdicio en el proceso.
Esta modalidad de llevar el debate a subgrupos nos resulta particularmente útil en algunos equipos, en contraste a cuando hemos abierto el debate en general, porque se tiende más a hacer catarsis y no nos enfocamos en ver soluciones y plantear planes de acción.
Al trabajar en pequeños grupos primero y después compartir entre todos, hemos visto que se filtra bastante y se aprovecha mejor el tiempo de todos.
¿Cómo reducir el número de desperdicios?
Una vez que los subgrupos se reúnen y discuten ideas, cada uno de estos presenta sus post-its con soluciones y propuestas en la pizarra. Llegando a una lista de planes de acción que serán compartidos y llevados adelante con el resto del equipo.
De esta dinámica pueden surgir valiosas ideas que posiblemente ayuden a mejorar nuestros procesos, y reducir los desperdicios que van surgiendo en el camino.
A continuación, resumimos algunas de las ideas que surgieron por parte de los subgrupos:
- Reducir el tiempo de los sprints de 4 a 2 semanas.
- Revisar y mejorar el enfoque de testing automatizado.
- Continuar trabajando en el armado de deploys automáticos.
- Mejoras en el análisis de estimaciones previas.
- Definir criterios de aceptación con mayor claridad para las historias.
- Formalizar las reuniones de grooming (pre-planning).
¿Cómo sacar el máximo provecho a la metodología Scrum?
En muchas ocasiones estamos conviviendo con muchos desperdicios en nuestro proceso que nos hacen perder la madurez que hemos logrado alcanzar.
Por otra parte, quizá no estamos sacando el mayor provecho a cada uno de los eventos, artefactos o prácticas planteadas por el framework. Esta es una oportunidad para revisar y ajustar las tuercas.
Finalmente, para complementar le invitamos a ver este webinar organizado por Proyecto Kanban, donde Lisandra explica esta misma dinámica que facilita detectar dónde estamos teniendo desperdicios en la gestión de nuestros proyectos, haciendo uso de Scrum.
¡Síguenos en LinkedIn, Twitter, Facebook, Instagram y Youtube para ser parte de nuestra comunidad y enterarte de más consejos para afrontar los desafíos tecnológicos del mañana!
Otros contenidos relacionados
ScrumOps: una solución ágil integral
3 elementos esenciales para lanzar Software rápidamente, sin afectar la Calidad
Testing Exploratorio en un entorno Ágil
Agile Testing, una práctica ganadora para entregar Software de Calidad
Etiquetas
Posts Relacionados
Importancia del testing en experiencias de compra seguras y efectivas
Frente al crecimiento exponencial del e-commerce en chile, ¿cuál es la importancia del rendimiento web y móvil de un negocio online?
El rol de un quality engineer en el desarrollo de software
Funciones, actividades y competencias de un Quality Engineer, y su importancia en el proceso de desarrollo de software, en beneficio de la calidad.