Cómo encontrar elementos de trabajo con antigüedad y bloqueados en Azure DevOps antes de que descarrilen el sprint

Un sprint rara vez se desmorona por un problema dramático. Lo más habitual es que uno o dos elementos se atasquen pronto, esperando a otro equipo, esperando una decisión, esperando un entorno, y nadie lo diga en voz alta hasta la revisión del sprint, momento en el que ya han pasado tres días del sprint sin nada que mostrar. El tablero técnicamente tenía la respuesta todo el tiempo: el elemento estaba ahí, acumulando antigüedad, posiblemente marcado como bloqueado. Simplemente no era lo que nadie estaba mirando durante el stand-up.

Qué muestra realmente la vista

La vista Antigüedad y bloqueos de Agile Gauge responde deliberadamente a una pregunta acotada: de todo lo que este equipo tiene actualmente sin terminar, ¿qué está atascado y qué lleva más tiempo en curso? Muestra dos cifras principales, En curso (total de elementos sin terminar) y Bloqueados (cuántos de ellos están marcados actualmente), seguidas de una tabla con cada elemento sin terminar del sprint activo del equipo: elemento, tipo, estado, responsable, una insignia de Bloqueado cuando corresponde, y antigüedad en días. Si no hay nada en curso, ya sea porque no hay un sprint activo o porque el sprint activo está realmente vacío, la vista lo indica con claridad en lugar de mostrar una tabla vacía sin contexto.

Marcador de posición para una captura de Antigüedad y bloqueos: el propietario añadirá la captura real antes de publicar esta entrada.
Antigüedad y bloqueos: cada elemento sin terminar del sprint activo, primero los bloqueados y luego los más antiguos.

Qué cuenta realmente como "iniciado"

Aquí solo aparecen los elementos que realmente han comenzado, la misma definición de en curso que usa Monitor de WIP, es decir, una señal real de inicio de trabajo, como una transición mapeada a en curso o una fecha de activación. Un elemento creado y aparcado en el sprint pero nunca tocado no cuenta como "con antigüedad" en el sentido que le da esta vista; la lista trata sobre trabajo que empezó y luego se estancó, no sobre un backlog a la espera de capacidad.

Qué cuenta como bloqueado

Se comprueban tres señales: el nombre del estado del elemento (comparado con "blocked", "on hold", "impediment" y sus equivalentes en español, portugués e italiano, además de cualquier otro que tu organización haya añadido), una etiqueta en el elemento, o una coincidencia de palabra completa con "blocked", "impediment" o "on hold" en el título. En Configuración existen dos señales adicionales, un campo personalizado de Azure DevOps y una columna del tablero, pero esta vista en concreto no comprueba ninguna de las dos; si tu organización depende de una de esas dos en su lugar, una franja de advertencia en la parte superior de la página lo indica, en lugar de subestimar en silencio cuánto está realmente bloqueado.

Antigüedad sin límite máximo ni trucos de redondeo

La antigüedad es un simple cálculo de tiempo transcurrido, días naturales, no días laborables, desde el mismo punto de inicio que usa Tiempo de ciclo, mostrado con un decimal. No hay ningún límite máximo para ese número: un elemento con varios años de antigüedad muestra su recuento real, por grande que sea, en lugar de excluirse silenciosamente como un valor atípico, porque un elemento atascado durante tanto tiempo es exactamente el tipo de cosa que esta vista existe para sacar a la luz, no para ocultar. Que se use el mismo punto de inicio que Tiempo de ciclo significa que la antigüedad de un elemento aquí y su eventual tiempo de ciclo, una vez que finalmente termine, coincidirán siempre; nadie tiene que reconciliar dos números distintos para el mismo elemento.

Un orden pensado para la conversación, no para la hoja de cálculo

Los elementos bloqueados se agrupan primero y, dentro de cada grupo, bloqueado o no, se ordenan del más antiguo al más reciente. Ese orden es deliberado: los elementos que más merece la pena plantear en un stand-up o una retro son los que están atascados y llevan más tiempo atascados, y deberían ser lo primero que ve cualquiera al cargar la página, no algo que haya que buscar ordenando una columna manualmente.

Limitaciones conocidas

Antigüedad y bloqueos se limita únicamente al sprint activo actual del equipo: no existe una vista sobre todo el backlog ni sobre sprints pasados, ni una alternativa a un sprint anterior si ninguno está activo en ese momento. Esta vista solo comprueba tres de las cinco señales de bloqueo que admite Configuración (estado, etiqueta, título; no un campo personalizado ni una columna del tablero); la franja de advertencia cubre esa carencia cuando corresponde. Aquí no hay alternancia entre días laborables y días naturales, ni codificación por color según la antigüedad, ni exportación a CSV. El nombre de cada elemento enlaza directamente a Azure DevOps, pero la vista en sí no enlaza a Configuración ni a ninguna otra pantalla de Agile Gauge.

Usarla donde importa

Esta vista está pensada para abrirse durante el sprint, no solo para redactarla después: una comprobación rápida antes del stand-up convierte "¿algo bloqueado?" de una pregunta que alguien tiene que pensar en una tabla que alguien puede simplemente leer. Detectar un elemento bloqueado en el segundo día de un atasco de cinco días es una conversación bastante distinta a detectarlo en la retro una vez que el sprint ya ha terminado, porque todavía quedan días de sprint para hacer algo al respecto.

También es una pantalla útil para abrir antes de comprometerse con el plan del próximo sprint, no solo durante el actual. Un elemento que ha estado bloqueado durante la mayor parte del sprint actual es un buen candidato para resolverlo antes de que vuelva a arrastrarse, o para marcarlo honestamente como poco probable que avance sin ayuda externa; cualquiera de las dos decisiones se toma mejor con la antigüedad y el estado de bloqueo delante que adivinando de memoria qué elementos llevan más tiempo atascados.

Agile Gauge empieza en $20 al mes para hasta 2 usuarios. Empieza una prueba gratuita de 14 días: todas las funciones, sin tarjeta.