Planning poker y Testing

On 5 agosto, 2011, in Agilismo, by twiindan

Seguimos con los conceptos de las metodologías ágiles, intentando aplicarlas a los sistemas de calidad y testing.

En el capitulo de hoy hablaremos de una técnica de estimación muy utilizada en las metodologías ágiles en las cuales el equipo de testing y calidad deben participar. Esta técnica es la llamada Planning Poker.

El planning Poker es una técnica de estimación por consenso utilizado par estimar el esfuerzo o complejidad de las tareas de un proyecto. Generalmente se utilizan para los proyectos de desarrollo de software, aunque puede ser aplicable a varios tipo de proyectos. En nuestro caso nos centraremos en su aplicación dentro del desarrollo de software.

Esta técnica suele utilizarse dentro de las reuniones de Planificación de Sprint para poder estimar el esfuerzo de cada una de las user stories que entraran en el sprint. Para ello después de que el Scrum master haya facilitado la user story y se hayan aclarado todas las dudas de la user story, todo el equipo debe votar el esfuerzo de estas tareas de forma simultanea.

Para ello se utilizan una baraja de cartas con diferentes valores, generalmente 0, ½, 1, 2, 3, 5, 8, 13, 20, 40, 100 y una tarjeta de ? (inseguro) y una taza de cafe (necesito un descanso). El motivo de ir incrementando los valores de forma exponencial es para reflejar la incertidumbre en la estimación.

Una vez vistos los resultados de la planificación se pregunta a las personas que tienen las estimaciones más altas y bajas que justifiquen sus motivos para esa estimación y generar una discusión dentro del grupo para intentar llegar a un consenso. El proceso termina cuando todos los integrantes del grupo llegan a un consenso sobre cual es el esfuerzo de la tarea a implementar.

Estos puntos de esfuerzo luego pueden relacionarse con el sistema quantificable que cada equipo quiera (días, horas…).

Estos puntos de esfuerzo se utilizan también para medir la velocidad del equipo. Es decir, mediante la experiencia se puede saber aproximadamente cuantos puntos de esfuerzo puede asumir el equipo durante un sprint. Por ejemplo, si generalmente el equipo es capaz de producir 100 puntos de esfuerzo, no tiene sentido planificar más de estos (siempre dando un margen de maniobra).

El principal beneficio de utilizar esta técnica de estimación es la nula influencia de los miembros del equipo en la estimación inicial de la tarea. Al realizar una primera estimación de forma simultánea por parte de todos los integrantes del equipo, se elimina esa variable de influencia. Otra de las ventajas es que cada miembro del grupo puede justificar su puntuación por lo que general un sistema de debate abierto a todos los miembros del equipo que puede ayudar a despejar dudas. A parte también ayudará al equipo a saber hasta donde puede llegar para poder planificarse correctamente durante los días del sprint siguiente.

Porque es importante que el equipo de testing este dentro de el proceso de planning poker? Principalmente por dos motivos:

  1. Generalmente el equipo de desarrollo solo tiene en cuenta el esfuerzo que requerirá esta user story en su propio desarrollo o en su propio componente. Es decir si la user story requiere que algunos de estos componentes se integren con otros y así sucesivamente, posiblemente no lo tendrá en cuenta ya que no requiere esfuerzo por su parte. Sin embargo generalmente los equipos de calidad y testing al tener una visión más conceptual de la user story si que tendrá en cuenta estas integraciones y podrá ofrecer su justificación de forma más objetiva y de alto nivel al resto del equipo.
  2. Por otra parte, el equipo de desarrollo tampoco tendrá en cuenta las pruebas funcionales de la user story (si las pruebas unitarias). Esto implica que puede ser que una user story pueda parecer muy sencilla por la parte de desarrollo pero sin embargo sea muy compleja para la parte de testing o requiera de una gran cantidad de pruebas. Por ese motivo es muy importante que dentro de la user story y de la estimación de esta se tenga en cuenta también todo el esfuerzo de la parte de calidad para poder calcular el esfuerzo correctamente.

Si queréis aplicar esta técnica podéis obtener barajas virtuales en:

http://www.planningpoker.com/

De forma física en:

http://store.mountaingoatsoftware.com/products/planning-poker-cards

Si queréis también podéis imprimir una baraja muy divertida de Autentia:

http://www.autentia.com/zip/AutentiaPlanningPokerCardsCC.zip

 

Share and Enjoy:
  • Facebook
  • Twitter
  • Google Buzz
  • LinkedIn
Tagged with:  

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *