En esta entrada os propongo una forma muy original y amena de trabajar en clase la metodología de desarrollo eXtreme Programming. La actividad consiste en jugar al XPGame.
La realización de este juego es una actividad muy atractiva en donde podemos además de poner en práctica el ciclo de desarrollo propuesto por extreme programming, reflexionar sobre la importancia de la gestión de requisitos en los proyectos de desarrollo.
XPGame ofrece a los alumnos unas fichas de acciones que deben realizar (storyboards). Las acciones son muy diversas, por ejemplo, conseguir sacar un tres tirando un dado o construir una pirámide de cartas. Cada ficha tiene un valor en puntos diferentes que refleja el valor de negocio para el cliente. El objetivo del juego es conseguir el mayor número de puntos posibles.
El juego se desarrollo siguiendo estos pasos:
1. Cada equipo recibe 12 tarjetas.
2. Lo primero que deben hacer los equipos es estimar la complejidad de las tarjetas.
3. El equipo, simulando a un cliente, escoge las tarjetas con las acciones que van a realizar. Para realizar todas las acciones tiene 180 segundos. El equipo debe definir el orden en que van a intentar hacer las acciones.
4. El equipo realiza de forma ordenada las acciones seleccionadas con anterioridad.
5. Se suma al equipo los puntos de las acciones que han conseguido realizar con éxito.
Se propone repetir este proceso hasta tres veces. Se puede enriquecer el juego, por ejemplo:
1. Durante el paso 4, en donde los equipos están intentando realizar las acciones escogidas, se puede interrumpir el proceso indicando que el cliente ha cambiado sus prioridades con lo que se lleva a cabo cambios en la valoración de las actividades (los puntos asignados a cada tarjeta). Los alumnos pueden decidir reordenar las tarjetas seleccionadas o cambiarlas por otras.
2. Se puede proponer a los alumnos tarjetas con actividades que son imposibles de comprobar que se han realizado éxito. Por ejemplo, solicitar que infle una sopladera con una determinad presión. Con esto, los alumnos ven la importancia de que todos los objetivos marcados deben ser medibles.