Mecanismos para evaluar historias de usuario

Uno de los temas que ha salido en las retrospectivas de algunos de los proyectos Scrum que se desarrollan en nuestra organización es la carencia de mecanismos que permitan evaluar las historias de usuario incluyendo los problemas a los que se ha enfrentado el equipo de desarrollo al implementar las historias, ya sean imprevistos o planificados y las soluciones y decisiones que se han tomado sobre las historias.

Pienso que el equipo de desarrollo junto al Product Owner son los que mejor pueden responder a estas preguntas. Los intercambios de información y los problemas a los que se ha enfrentado el equipo de desarrollo al implementar historias previas se pueden tratar en las reuniones de planificación del sprint y de refinamiento del backlog, donde se puede medir el éxito de las historias de usuario en cuanto a lo “fácil” o “difícil” que ha sido comunicarlas al equipo de desarrollo, y lo “fácil” o “difícil” que ha sido implementarlas, lo que culmina y se evidencia en la definición de los criterios de aceptación de las mismas.

Una vez que ha habido conversaciones al respecto a partir de las cuales se han identificado posibles problemas a resolver, elementos iniciales de mejora y se ha llegado a un mejor entendimiento de los problemas que se han presentado, se pueden organizar retrospectivas específicas sobre estos aspectos, con el propósito de profundizar en los primeros resultados obtenidos y, con base en lo que se quiera revisar, determinar quien debe asistir a cada reunión. Si se quiere tratar el tema del valor que aportan las historias y cómo lo hacen, entonces sería necesaria la participación del Product Owner, de los stakeholders y/o de los usuarios finales de las mismas, adicionalmente al equipo de desarrollo y al scrum master. Si se quiere evaluar aspectos y decisiones técnicas y de diseño entonces sería necesaria la participación de líderes técnicos, expertos en las tecnologías utilizadas y por supuesto el equipo de desarrollo y el Scrum Master.

Inspirándome en el blog de Alexander Menzinsky, una de las técnicas a utilizar para recoger las opiniones e ideas que vayan surgiendo en estas retrospectivas es la técnica de la estrella de mar de Patrick Kua. Esta técnica consiste en reflejar en un tablero visual, basado en una estructura de estrella de mar, lo que se quiere seguir haciendo, lo que hay que hacer más de alguna cosa, lo que hay que empezar a hacer, lo que hay que parar de hacer y lo que hay que hacer menos, pero en vez de hacerlo para el proyecto en general, hacer una estrella para cada elemento que se quiera estudiar en la reunión, tomando como base historias particulares que se quieran trabajar o aspectos técnicos y de diseño particulares que se quieran estudiar. Gráficamente sería algo como lo que se ve en la siguiente figura, donde los participantes irían colocando sus opiniones en cada una de las áreas, se abrirían discusiones al respecto, y al final se haría una priorización en cada área de los elementos que el grupo considere más importantes para comenzar a trabajar en los próximos sprints, siempre basados en el valor que estos aportan a los usuarios de las historias.

Tablero de la tecnica de la estrella de mar                                             Tablero de la técnica de la Estrella de Mar

Otra técnica que puede utilizarse en el caso de que se haya detectado algún problema y se quiera llegar a su causa raíz para tomar acciones al respecto  es el diagrama de espina de pescado o diagrama de Ishikawa. El detalle de cómo aplicar esta técnica lo podéis ver en el blog de Alexander Menzinsky, en su post ¿Cómo identificar de forma ágil posibles causas raíz de un problema?

Luego, al ir avanzando los sprints e ir aplicando las acciones correspondientes a los elementos seleccionados, se pueden hacer reuniones posteriores para ver que ha pasado, tomando como base las estrellas iniciales o las espinas de pescado iniciales y a partir de ellas ir evaluando si las acciones tomadas han sido exitosas o no, de manera tal de poder ir ajustando el rumbo, incorporar nuevos elementos, quitar los que ya no se consideren necesarios y seguir el ciclo virtuoso de mejora continua al priorizar, seleccionar e implementar elementos de cambio, mejora o de continuidad que el grupo acuerde.

Pero teniendo en cuenta en el viejo refrán que dice que es mejor prevenir que lamentar, antes de implementar cualquier historia de usuario es necesario asegurar que sean las mejores historias de usuario posibles, es decir, que sean unas historias bien escritas, con todas las de la ley, para tratar de disminuir los posibles problemas que se puedan presentar durante su implementación. Con respecto a esto es muy importante disponer de formas concretas, precisas y prácticas para evaluar si tenemos buenas historias antes de empezar a implementarlas.

En un curso de Scrum Manager que hice sobre historias de usuario, uno de los ejercicios consistía en evaluar la calidad de unas historias de usuario con base en:

  • Los criterios de Mike Cohn para escribir buenas historias de usuario (Como [rol del usuario], quiero [objetivo], para poder [beneficio])
  • El modelo INVEST, para evaluar la calidad de una historia de usuario viendo si cumple cada una de las características:
    • Inpedendent (Independiente)
    • Negotiable (Negociable)
    • Valuable (Valiosa para el usuario)
    • Estimable (Estimable)
    • Small (Pequeña)
    • Testeable (Comprobable)

Para hacerlo definí una forma práctica, sencilla y muy visual de evaluar las historias usando una hoja Excel donde se coloca la descripción de las historias y se refleja los resultados de la evaluación según los modelos mencionados previamente, obteniéndose una escala numérica que refleja el nivel de cumplimiento o no de cada una de las características de cada modelo y reflejando a nivel visual (por colores diferentes) si la historia en realidad es una historia de usuario o no y en caso de serlo, su nivel de calidad, tal y como lo podemos ver en la siguiente ilustración:

Imagen matriz evaluacion historias de usuarioEvaluación de historias de usuarios usando los criterios de Cohn y el modelo INVEST en una hoja Excel.

Pienso que esta puede ser una forma práctica de evaluar historias de usuario antes de llegar a implementarlas y con base en los resultados obtenidos, el Product Owner apoyado por el equipo de desarrollo y el Scrum Master, buscaría mejorar la calidad de las que obtengan las puntuaciones más bajas.

Adicionalmente a esta idea, otra forma de facilitar el proceso de escritura de historias de usuario de calidad es usando patrones y/o herramientas basadas en los modelos mencionados y en otros modelos. Una de las herramientas que me parece muy adecuada para apoyar la escritura de historias de usuario, su refinamiento y posterior gestión del backlog es la herramienta easyBacklog. Está disponible de manera online, es muy fácil de usar y gratis. Para saber más de esta herramienta y ver ejemplos de su uso pueden ver el post de Alexander Menzinsky ¿Qué tal easyBacklog como software para gestionar la pila de producto y los sprints?

Muchas gracias a Alexander Menzinsky por su colaboración y consejo durante la escritura de este post y a Scrum Manager por la imagen principal del mismo.

 

Anuncios

2 comentarios en “Mecanismos para evaluar historias de usuario

  1. Gracias Gertrudis por compartirlo. Cuando te planteé el problema no se me ocurrió ni por asomo que podríamos emplear la técnica de la estrella para evaluar historias. Lo vi por primera vez en el taller de Lego con Javier Garzás y me pareció muy útil. Intentaré utilizarlo en futuros proyectos.
    Seguiremos en contacto.

    Le gusta a 1 persona

  2. El éxito de un proyecto depende en gran medida del product owner, del compromiso de este con Scrum y como líder en el rumbo del proyecto. Un punto clave del éxito está en la capacidad de transmitir al equipo de desarrollo las funcionalidades a través de buenas historias de usuario. Felicidades por tu post, en especial por tu genial idea de retrospectivas focalizadas y tu excel de evaluación de historias de usuario.

    Gracias a ti por tu impulso y tus ideas, encantado de ayudarte siempre que quieras 🙂

    Alexander

    Le gusta a 1 persona

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s