sábado, 13 de junio de 2020

Scrum y Kanban juntos en Agile: Scrumban

Scrum y Kanban son dos de los marcos de trabajo más utilizados en Agile. Ambos métodos incorporan los principios y valores del agilismo, facilitando la transparencia, inspección, adaptación y mejora continua del trabajo del equipo. Asimismo, promueven el desarrollo de equipos auto-organizados orientados a dar valor al negocio.

En general, decimos que Scrum es más adecuado para productos y proyectos de desarrollo donde el trabajo del equipo puede ser planificado Sprint tras Sprint, partiendo de un backlog priorizado de requisitos, haciendo entregas frecuentes de valor e implementando acciones de mejora que fortalezcan el desempeño del equipo.

Se recomienda usar Kanban en equipos que tienen un flujo continuo de solicitudes de trabajo, donde la planificación por Sprints puede no ser viable, ya que el equipo atiende muchas peticiones que varían en prioridad y alcance, junto con acciones de mejora continua que fortalezcan la calidad del software y la eficiencia del flujo.

Cuando el equipo de desarrollo tiene trabajo planificado (proyectos, evolutivos y mejoras) y no planificado (mantenimiento, incidencias y soporte), y se quiere beneficiar de Scrum y de Kanban, puede implementar una combinación de prácticas conocidas como Scrumban.

El inconveniente de Scrumban, y por lo que existen reservas en algunos agilistas, es que no cuenta con mejores prácticas claramente definidas, por lo que los equipos que lo implementan experimentan con distintas opciones, que hacen decidir entre:
  1. Un backlog con tareas planificadas y otro con no-planificadas, o un único backlog.
  2. Un tablero Scrum y otro Kanban, o todo en un único tablero.
  3. El equipo atiende todo tipo de tareas, o parte del equipo atiende, o se rota, el no-planificado.
  4. Se estiman o no se estiman las tareas no planificadas. Se estiman o no los bugs.
  5. Capacidad del equipo en puntos de historia para el trabajo planificado y en horas de trabajo para el no-planificado, o todo el trabajo se estima y se registra con la misma unidad.
¿Te suena familiar? En todo caso, comencemos por tener claro los objetivos de la implantación agile en el equipo, y ello llevará a implementar prácticas con métricas y acciones de mejora adecuadas. Algunos objetivos pueden ser:
  1. Incrementar la capacidad de entrega de nuevas funcionalidades. Reducir el trabajo no-planificado.
  2. Incrementar la calidad del software. Reducir el número de Bugs.
  3. Mejorar la predictibilidad. Cumplir el compromiso de cada Sprint.
  4. Mejorar la eficiencia del flujo de trabajo. Reducir los tiempos de desarrollo, retrabajos, bloqueos y desperdicios.
  5. Mejorar la priorización y entrega de valor. Gestionar la deuda técnica.
  6. Disponer de métricas realistas que apoyen los procesos de análisis y toma de decisiones. Tener evidencias del impacto de las acciones de mejora en los procesos.
Algunas prácticas pueden servir a varios equipos, y otras depender de condiciones propias. Siendo agile un modelo empírico, donde las decisiones se basan en lo que se experimenta y evidencia, se promueve la experimentación, inspección y adaptación.

Comparte tus opiniones y experiencias con Scrumban (^.^).

No hay comentarios:

Publicar un comentario

Gracias por tus comentarios :)