Buscar en Gazafatonario IT

Mostrando las entradas con la etiqueta Retrospectiva. Mostrar todas las entradas
Mostrando las entradas con la etiqueta Retrospectiva. Mostrar todas las entradas

martes, mayo 30, 2017

De Retrospectivas y de Ratones


O de cómo los Agilistas le ponemos el cascabel al gato

La falta de atención a las acciones de mejoramiento es una de las razones principales por las cuales muchas personas, equipos y organizaciones no ven valor en las retrospectivas*; es uno de los motivos por los cuales en una tras otra de estas ceremonias dejamos entrever el mismo comportamiento apático y hasta errático, es la causa por la cual nos sentimos grandemente desmotivados cuando de regresiones ágiles se trata.
Las acciones de mejoramiento que surgen a raíz de una retrospectiva o de cualquier otro evento durante el sprint no se ejecutan los fines de semana a las 3 de la tarde o el jueves a las 10 de la noche antes de finalizar el sprint actual; tampoco se realizan solo por mencionarlas, como si la lista de acciones se tratara de un pozo de los deseos que el Hada de las Retrospectivas hace realidad cada dos semanas o menos.
Cada una de esas acciones toma tiempo, se trata de un esfuerzo serio para el que quizás no estamos preparados pero que debemos llevar a cabo si queremos mejorar como personas, como equipo, como organización.
Hay diferentes categorías de mejoramiento:
A nivel personal
A nivel de equipo
A nivel de liderazgo
A nivel de organización
Conocer el impacto que tendrá la acción de mejoramiento nos ayuda a saber a dónde ir, qué puertas tocar en la organización, cómo tenemos que proceder.
En ocasiones, las acciones de mejoramiento no se implementan o el objetivo no se alcanza en un solo sprint. Lo importante es que al final de cada iteración haya avances o hayamos logrado metas intermedias. Volveré con esto más adelante en una de mis recomendaciones a continuación.
Recomendaciones
Podemos proponer o establecer un time-box para ejecutar estas acciones de mejoramiento. Es decir, un lapso de tiempo máximo durante el sprint, así como lo hacemos con la planificación, el refinamiento o la misma retrospectiva. Ese tiempo dependerá de si la acción de mejora será ejecutada una sola persona, varias o todo el equipo; también, si depende de alguien más en la organización o de otra área de la misma. En este último caso, alguien del equipo Scrum, no tiene que ser solo el Scrum Master, debería encargarse de gestionar la realización de esas acciones. Lo importante es que en la siguiente retrospectiva mostremos avance medible y verificable de la tarea.
No tratemos de mejorar solo lo que hemos hecho mal o lo que no estamos haciendo. También se puede seguir mejorando lo que estamos haciendo bien o muy bien. ¡No hay límites!
En ese mismo sentido, no abordemos solo los problemas que enfrentamos durante el sprint, analicemos también lo que hemos hecho bien y por qué, para seguir haciéndolo, para convertirlo en algo común y corriente en nuestro trabajo, recordable y repetible.
No convirtamos la retrospectiva en una sesión de autoflagelación. El “mea culpa” por humildad o por sacrificio no funciona. Si esto se repite es porque no estamos creando escenarios seguros para fallar y aprender y entonces allí hay una acción de mejoramiento que realizar.
No dejemos todo en manos de la Organización. En principio, las acciones de mejoramiento son nuestra responsabilidad. Si más adelante, después de implementarlas, logramos que la organización se beneficie con ellas, bienvenidas. Las tareas que se salgan de nuestras manos o de nuestro control, ya sea por presupuesto, por tiempo o por complejidad o por cualquier otra razón, entreguémoslas a ojos cerrados. El Scrum Master o el Dueño de Producto nos pueden servir de puente con el resto de la organización para que estas se implementen en algún momento. En cualquier caso, no dejemos que estás bloqueen nuestro trabajo.
Aunque el mejoramiento no es el foco principal de lo que hacemos, tampoco debería ser lo más complejo, lo que más estrese el esfuerzo de las personas o del equipo. Concentrémonos en acciones pequeñas pero de alto impacto, o realicemos su implementación gradualmente. Por ejemplo, si queremos mejorar nuestra puntualidad porque estamos llegando tarde, no intentemos lograrlo del todo en un sprint o menos. Más, si esa no es nuestra cultura. En cambio, hagámoslo incrementalmente. ¿Qué tal 5 minutos la primera semana o el primer sprint? ¿Lo logramos? Bueno, ahora otros 10 minutos. ¿Meta alcanzada? Ahora sí, últimos 15 minutos. ¿Ya estamos llegando a tiempo? Sigámoslo haciendo de esta manera para siempre, motivados, con energía, ¡con la mente en el juego!
Toyota Kata viene a mi mente, pero hablaremos de ello en otra ocasión. Sin embargo, y a propósito de esto, las acciones de mejoramiento no tienen por qué ser una lista plana, a veces sin voluntad, sin vida. Pensemos en experimentos. Propongamos hipótesis. Hagámoslo divertido. Después de todo, esto debe ser lo “fácil” de nuestro trabajo. Lo otro, lo verdaderamente esencial, el desarrollo del producto/servicio en medio de la incertidumbre y hasta del caos, eso sí que debe estresarnos. Busquemos en la realización de estos experimentos, en la prueba de estas hipótesis, ese descanso que nuestra mente necesita para lograr ese otro objetivo cardinal que nos ocupa.
¿Y qué sucede, qué hacemos cuando la implementación de una acción de mejoramiento nos está causando problemas? ¿Desechamos esa mejora? No. Cambiamos la estrategia, solicitamos ayuda, ¡está bien pedir ayuda!
Trabajemos en equipo: el todo es mayor que la suma de las partes y es una de las razones por las cuales, los equipos Ágiles, como los gatos, siempre caemos de pie.
Finalmente, no esperemos al término del sprint para revisar y conocer si nuestras acciones de mejoramiento se han implementado o están en camino. Seamos proactivos: ¿en qué vamos? ¿Cómo podemos ayudar? ¿Hay algo que pueda hacer para que logremos este objetivo? Son algunas de las preguntas que nos podemos hacer como equipo, quizás durante la Reunión Diaria o en cualquier otro momento del día, mientras estiramos las piernas o nos tomamos un café. O simplemente digamos, “¡hoy es un buen día para mejorar!”
Siempre recomiendo realizar una retrospectiva al final de la iteración, a no ser que alguien mencione que está muy ocupado. ¡En cuyo caso, recomiendo hacer una segunda a mitad del sprint!

Y tú, ¿qué estás haciendo para mejorar? Déjamelo saber en el foro.

-----
*Adenda
Siempre recomiendo a los Scrum Masters que acompaño o a cualquier miembro del equipo que recuerde durante las primeras de cambio la Directiva Primaria de las Retrospectivas, sobre todo las primeras veces que se realiza un ritual de esta naturaleza, cuando el equipo es nuevo o cuando detectamos en los asistentes cierto temor a participar activamente de las mismas. Puedes descargarla de:
Ahora bien, para saber más de retrospectivas, puedes leer este artículo de mi gran amigo Leonardo Agudelo, http://www.twitter.com/sweepnoise, que publicamos en la página de la Comunidad Ágiles Colombia:
Y luego te recomiendo ampliamente las Lecciones Aprendidas de mi otro gran amigo Jorge Abad, http://twitter.com/jorge_abad, con quien he tenido la oportunidad de hablar extensamente sobre el asunto mientras ayudamos a terceros a implementar todas estas formas mejores de hacer las cosas:
Y un recurso indispensable para realizar retrospectivas fantásticas, es Retromat, de Corinna Baldauf, una suerte de elementos en los cuales inspirarnos y con los cuales podemos planear nuestras próximas retrospectivas, y cuya traducción al español hace ya algunos años fue conducida por Thomas Wallet, quien se define a sí mismo como un enfermo de las retrospectivas, acompañado de Pedro Serrano y un grupo de entusiastas de la Comunidad Ágil Latinoamericana:

Créditos de la portada: Designed by Peoplecreations / Freepik

lunes, mayo 29, 2017

Directiva Primaria de las Retrospectivas



Independientemente de lo que descubramos, entendemos y creemos sinceramente que todo el mundo hizo el mejor trabajo posible, dado lo que sabía en ese momento, sus capacidades y habilidades, los recursos disponibles y la situación en ese momento.
Norman L. Kerth

miércoles, octubre 12, 2016

Dueño de Producto, usted ha sido invitado a la Retrospectiva

El Dueño de Producto, ¡ese ilustre olvidado!
Me preguntan por interno si este personaje debe asistir a la ceremonia de inspección y adaptación. Es una buena pregunta, teniendo en cuenta que hay quienes recomiendan que no sea así o que la participación del Dueño de Producto es opcional en la Retrospectiva.
No hay ninguna buena razón por la cual el Dueño de Producto no deba estar en la retrospectiva. Desde la misma guía de Scrum ya sus autores sugieren que debería participar:
"La Retrospectiva de Sprint es una oportunidad para el Equipo Scrum de inspeccionarse a sí mismo y de crear un plan de mejoras que sean abordadas durante el siguiente Sprint".
Y ya sabemos que el Equipo Scrum se compone de Scrum Master + Desarrolladores + Dueño de Producto.
Pero más allá de esto, no concibo cómo, sin la participación del Dueño de Producto en esta reunión, sea posible que el equipo en pleno se inspeccione a sí mismo para luego crear un plan de mejoras que nunca estará completo sin la intervención de este actor. Por ejemplo, ¿cómo mejorar la comunicación con el entorno del negocio? El resto del equipo no podría definir la mejor estrategia para lograrlo en ausencia del Dueño de Producto.
Algunos dirán que se define la estrategia en la reunión y luego se la comunican al Dueño de Producto, eso simplemente extendería la retrospectiva, con el riesgo de que él "tumbe" las acciones a realizar por cualquier motivo válido.
  • ¿Y qué pasa si hay problemas con la salud del backlog? 
  • Problemas con la definición de los criterios de aceptación de las historias de usuario.
  • ¿El equipo conoce cómo los usuarios realmente usan el producto?
  • Problemas con la aceptación del incremento sprint tras sprint.
  • ¿El equipo conoce la visión completa del producto, la estrategia de implementación y cómo lo quieren los usuarios?
  • ¿Y qué ocurre si el Dueño de Producto no está el tiempo suficiente con el equipo para responder sus preguntas y clarificar las características del producto? O para proporcionar retroalimentación efectiva.
En fin, muchas son las razones para que el Dueño de Producto sí esté en la reunión. Estas que mencioné son solo algunas. En breve, el Dueño de Producto es protagonista principal en esta ceremonia.
Ahora bien, se me ocurren algunas malas razones por las cuales no debería asistir. Las mencionaré brevemente y estableceré alguna razón sólida para no tenerlas en cuenta:
Lo aburrimos con minucias técnicas. Una retrospectiva no es para profundizar en los detalles de lo puramente técnico.
El equipo de desarrollo y el Scrum Master son de un proveedor y el Dueño de Producto es del Cliente. Entonces dónde queda la confianza y, por consiguiente, la transparencia. Si estamos pensando así, todavía nos hace falta mucho de la Cultura Ágil y de liderazgo. En cualquier caso, esta práctica reduciría mucho la transparencia, necesaria a todas luces en un entorno ágil.
No tiene tiempo. ¡Este es, precisamente, un tema a abordar con él en la retrospectiva!
Así lo hemos hecho aquí y nos funciona. Esta es interesante. ¿Y qué tal si lo hacemos de la otra forma (que si asista) y vemos la diferencia? ¿Mejoramos o empeoramos? Seguramente será lo primero.
Esta última es la típica cuestión que se enmarca en el empirismo, es decir, aprendemos de la experiencia, como todo en Scrum. Algo que se resume también en eso de "usar o hacer lo que te funciona". Sin embargo, las razones que expuse al principio y muchas otras precisamente nos han enseñado los beneficios de la presencia del Dueño de Producto en la ceremonia.
Entre otras, pero todas absolutamente son "malas" razones.
En definitiva, el Dueño de Producto debería (sí debe) asistir a las retrospectivas, así que adelante. Si como Scrum Master te sugieren que el Dueño de Producto no debe estar en la reunión, te enfrentas a una sintomatología que te indica que falta algo de la base, los valores y principios ágiles, la forma cómo racionalizamos, el fondo de la cultura ágil, más que del mismo Scrum y otras prácticas.
---
¿Y tú, invitas al Dueño de Producto a tus retrospectivas? Déjamelo saber en la sección de comentarios más abajo.

sábado, julio 30, 2016

Un vistazo a la guía de Scrum

¿Hace cuánto leíste por última vez la guía de Scrum? Es bien sabido que a medida que tu experiencia y conocimientos crecen, tu forma de ver (leer) algo cambia respecto a la vez anterior. Quizás aprendas algo más, quizás seas capaz de visualizar o entender algo que antes no habías percibido o entendido.

Aprovechando la revisión de la que fue objeto la guía por parte de sus autores y de que había que traducir esa actualización, realicé una revisión exhaustiva tanto de la versión en inglés como de la versión en español en la que tuve la oportunidad de trabajar por primera vez en 2013. (Para conocer los cambios introducidos a la guía, ve a: http://www.gazafatonarioit.com/2016/07/revision-la-guia-de-scrum.html)

Con tres años más de experiencia y conocimiento en Scrum y temas relacionados, me tomé la libertad de actualizar la Gramática y redacción del documento y también algunos asuntos de fondo que me hacían ruido desde hacía mucho tiempo respecto a la versión original de la guía en inglés.

Con todo esto, aproveché también para “repasar” lo que dice la guía, para mirarla más a fondo y decidí traer aquí una lista, arbitraria por demás, pero de todo mi gusto, de algunos puntos que quiero resaltar. Son los siguientes:
“Scrum no es un proceso o una técnica para construir productos; en lugar de eso, es un marco de trabajo dentro del cual se pueden emplear varios procesos y técnicas”.
Es impresionante la cantidad de personas, equipos y organizaciones que solo “aprenden” o quieren aprender Scrum, como si con eso fuera suficiente para hacer todo el trabajado que se les viene por delante. La lista de proceso, técnicas, marcos de trabajo y prácticas que podemos y deberíamos usar con Scrum es extensísima, no voy a elaborarla aquí, pero lo que sí es cierto, lamentándolo mucho por quienes no lo han visto, es que Scrum solo no es suficiente.
“Scrum muestra la eficacia relativa de las prácticas de gestión de producto y las prácticas de desarrollo de modo que podamos mejorar”.
Scrum se basa en la teoría empírica  de control de procesos. Esto quiere decir básicamente que aprendemos de la experiencia. Scrum nos permite visualizar la eficacia las prácticas que usamos las personas, los equipos y las organizaciones y nos permite inspeccionarlas continuamente y adaptarlas y adaptarnos de acuerdo con los distintos escenarios circundantes.
“El Dueño de Producto es la única persona responsable de gestionar la Lista del Producto”.
Todavía me encuentro con muchos equipos y organizaciones que no terminan de integrar al negocio, vía el Dueño de Producto, en sus equipos. Y muchos menos son los Dueños de Producto que realmente actúan como tal. El muy comentado pero pocas veces entendido “backlog” de producto sigue siendo gestionado por el equipo y muchas veces solo por el Scrum Master o por alguien más que no es ninguno de los roles propuestos en la guía.
“El Scrum Master es el responsable de asegurar que Scrum se entienda y se adopte. Los Scrum Masters hacen esto asegurándose de que el Equipo Scrum trabaja ajustándose a la teoría, prácticas y reglas de Scrum”.
Usar Scrum no nos hace ágiles, eso lo tenemos claro muchos. Pero muchos no tienen claro que si vamos a usar Scrum como marco de trabajo ágil, debemos ajustarnos a las reglas enumeradas en la guía. Estas reglas condensan la experiencia de muchos años de trabajo, sobre todo en proyectos de software, de los autores y de muchos otros en la industria. Conjuguemos esta observación con la del primer punto más arriba.
“La Planificación de Sprint tiene un máximo de duración de ocho horas para un Sprint de un mes. Para Sprints más cortos el evento es usualmente más corto”.
En las versiones anteriores es español aquí decía que el tiempo de las reuniones era proporcional a estas ocho horas para sprints más cortos. En ninguna parte de la guía original en inglés dice así, de tal forma que la actualicé en este sentido.
“Al finalizar la Planificación del Sprint, el Equipo de Desarrollo debería ser capaz de explicar al Dueño de Producto y al Scrum Master cómo pretende trabajar como un equipo autoorganizado para lograr el Objetivo del Sprint y crear el Incremento esperado”.
¿Cuántos de los equipos en los que has trabajado, en los que eres Scrum Master, miembro del Equipo o Dueño de Producto, hacen esto? De hecho, muchos quieren terminar lo más rápido posible la planificación para ponerse a trabajar pero nadie es capaz de explicar cómo van a trabajar para lograr la meta trazada del Sprint.
“El objetivo del Sprint puede representar otro nexo de unión que haga que el Equipo de Desarrollo trabaje en conjunto y no en iniciativas separadas”.
Es más, muchas veces los equipos no establecen un objetivo más allá de aquel que indica el número de historias de usuario a construir en el sprint. La meta del Sprint debería ser algo más de Valor para el Dueño de Producto y, por ende, para el negocio. Dejaré este asunto de la meta del sprint para otro artículo pero además de pensar en las características o funcionalidades a implementar siempre es bueno pensar en las razones para llevar a cabo la iteración. Bien sabemos que metas efectivas nos sirven para probar o demostrar que nuestras ideas funcionan, para fomentar el trabajo en equipo, para reducir o eliminar un riesgo específico o para proporcionar mayor valor entregado al negocio.
 “El Equipo de Desarrollo o los miembros del equipo a menudo se vuelven a reunir inmediatamente después del Scrum Diario, para tener discusiones detalladas, o para adaptar, o replanificar el resto del trabajo del Sprint”.
La expresión clave aquí es “a menudo”. Hacer otras cosas después de la reunión diaria puede hacernos perder foco y, por consiguiente, productividad y puede alejarnos de la consecución del objetivo del sprint. Por ejemplo, en la reunión diaria no hablamos de las soluciones a los impedimentos, entonces es buena idea tener reuniones específicas sobre estos asuntos justo después de aquella.
“El Scrum Master se asegura de que se cumpla la regla de que solo los miembros del Equipo de Desarrollo participan en el Scrum Diario”.
Sigo viendo mucho de comando y control en la reunión diaria. ¡El seguimiento diario, dicen algunos! Esta es una reunión de coordinación, de planificación, es precisamente “una reunión clave de inspección y adaptación”. Cualquier otra cosa que se requiera hacer con el equipo, debe ser en otra reunión especial, no en esta.
“Durante la Revisión de Sprint, el Equipo Scrum y los interesados colaboran acerca de lo que se hizo durante el Sprint. Basándose en esto y en cualquier cambio a la Lista de Producto durante el Sprint, los asistentes colaboran para determinar las siguientes cosas que podrían hacerse para optimizar el valor”.
La Revisión de Sprint no es solo para hacer la demostración del incremento de producto terminado. Y puesto que a esta reunión asisten o pueden asistir interesados clave en el producto, es una oportunidad única para discutir lo que viene a continuación en el proyecto.
“Una Lista de Producto nunca está completa. Mientras el producto exista, su Lista de Producto también existe”.
“Aceptamos que los requisitos cambien, incluso en etapas tardías del desarrollo. Los procesos Ágiles aprovechan el cambio para proporcionar ventaja competitiva al cliente”. ¿Hace falta decir algo más?
“Los elementos de la Lista de Producto tienen como atributos la descripción, el orden, la estimación y el valor”.
El valor para el negocio. Noten además que hablamos de “los elementos de la lista”, no son solo historias de usuario, como muchos erróneamente creen y manifiestan.
“Scrum no reconoce subequipos en los equipos de desarrollo, no importan los dominios particulares que requieran tenerse en cuenta, como pruebas o análisis de negocio; no hay excepciones a esta regla”.
No existe tal cosa como “ellos y nosotros”, somos un único equipo indivisible, somos una unidad morfológica (orgánica) y funcional y actuamos como tal. Valoramos las habilidades y fortalezas de cada uno de los miembros de esta unidad, pero hacia el mundo exterior somos El Equipo.


Y bueno, como dice mi amigo y colega Jorge Abad, hasta aquí estas reflexiones, viscerales por demás, sobre la guía de Scrum. Los invito a que la descarguen y vuelvan a leerla y a que nos cuenten en el foro cuáles son sus puntos favoritos de la guía, con cuál no están de acuerdo, cuál cambiarían, etcétera.

También pueden descargar la guía de:

Guía de Scrum en español

miércoles, julio 13, 2016

SCRUM CARD GAME – Un juego para experimentar Scrum


SCRUM CARD GAME es un juego simple que permite a los jugadores experimentar el trabajo en sprints de Scrum discutir muchas cuestiones y temas que suceden en la vida real mientras trabajan en un equipo Scrum. La discusión sobre la mesa  de juego será muy cercana a la experiencia real del trabajo en un equipo Scrum. Este juego usualmente se juega durante un entrenamiento o taller. Los participantes ya deben conocer y entender el marco de trabajo Scrum o pueden aprenderlo mientras participan del juego. También puede servir como método para hacer que un equipo experimentado reflexione sobre sus rituales y reglas establecidas de Scrum.

El eje del juego es que cada equipo (de 4 a 6 personas) es un centro de desarrollo competitivo contratado para llevar una nueva aplicación al mercado. El equipo más productivo gana.

Los materiales para el juego incluyen:
  • Un juego de cartas de Historias, Eventos, Problemas y Soluciones. Estas son las cartas de Oportunidad. Estas se encuentran en el manual oficial del juego del que comento más abajo.
  • Dos dados de seis lados (para cada equipo)
  • Rotafolio
  • Marcadores

Podrán imaginar ustedes que los sucesos del juego ocurren durante los sprints, se pueden jugar hasta tres sprints aunque es posible jugar 4 o más. Los sprints son de tres días de duración y durante cada día cada uno de los miembros del equipo trabaja en el sprint. En cada Sprint los equipos realizar Planificación, Revisión y Retrospectiva y durante la ejecución del sprint se experimentan conceptos como impedimentos o bloqueos, definición de Terminado, trabajo, Tablero de tareas, Backlog, entre muchos otros.

Al final del juego es posible hacer un análisis de temas tan importantes para los equipos ágiles como:
  • Esfuerzo planeado versus Real
  • Variaciones en la velocidad
  • Horas Estimadas versus Tamaño (Estimado Original)
  • Riesgos mayores que sucedieron (Técnicos, Personas, Eventos No Planeados)
  • ¿Cuáles son los tipos de riesgos más difíciles de tomar?
  • ¿Podemos proyectar eventos malos?
  • Entre otros

El autor del juego es Timofey Yevgrashyn, un agilista de Europa del Este, Gerente Ágil con experiencia en consultoría, coaching y entrenamiento. Timofey  tiene experiencia en el lanzamiento y liderazgo de transformaciones Ágiles/Lean que conducen a alinear las entregas con los objetivos del negocio. Hasta este año (2016) ha ayudado a más de 50 equipos de más de 10 países y ha completado cerca de 3000 horas de entrenamiento Ágil a más de 4000 personas. ¡Eso es estar en el campo de batalla!

Timofey se basó en su trabajo pragmático y en sus entrenamientos para diseñar este fabuloso juego, además de otros que pueden encontrar en su blog que escribe desde 2009 en lengua Rusa “The Improved Methods” (http://tim.com.ua). Conocí el juego y lo he jugado con algunos equipos mixtos de personas con mediana, poca o ninguna experiencia en Scrum y los resultados han sido grandiosos. Por eso hablé con Tomofey para que trabajáramos juntos en la versión del juego en español y el resultado ya está aquí.

Mientras él termina de implementar un sitio exclusivo para el juego, pueden encontrar la versión en español su sitio actual:

En la sección Переводы. No se preocupen, si no saben ruso, se trata de la sección Translations (Traducciones).

Descarguen el juego con las tarjetas coloridas imprimibles y no dejen de contarme en el foro, más abajo, sus experiencias con el mismo.