Historias de usuarios
Agile 101
Historias de usuarios: Qué son, por qué y cómo utilizarlas
What Is a User Story?
¿Qué es una historia de usuario?
En Agile, una historia de usuario es una descripción breve, informal y en lenguaje sencillo de lo que un usuario quiere hacer dentro de un producto de software para obtener algo que le resulte valioso.
Las historias de usuario suelen seguir el patrón (o plantilla) rol-función-beneficio:
Como unidad de trabajo más pequeña en un entorno ágil, las historias de usuario son una herramienta clave en el desarrollo incremental.
¿Por qué utilizar historias de usuarios? ¿Cuáles son sus beneficios?
Con las historias de usuario se pone a los usuarios en el centro de la conversación sobre lo que hay que añadir o cambiar en un producto de software. Son la encarnación del primer principio del Manifiesto Ágil (el énfasis es mío):
Con las historias de usuario se da al equipo de desarrollo el contexto y el porqué de lo que están creando. Esto les ayuda a entender cómo están aportando valor a la empresa y a mantener al usuario/cliente como prioridad.
Las historias de usuario proporcionan la esencia necesaria para priorizarlas.
No es necesario añadir detalles como los requisitos hasta que se decida que es el momento de ponerlos en práctica. Aparte quizás de lo que Mike Cohn llama condiciones de satisfacción con las que un usuario puede ampliar y explicar conceptos. Se añaden otros detalles a medida que se acerca el momento de implementar la historia. Por ejemplo, durante la fase de exploración en el Desarrollo Dirigido por el Comportamiento (BDD).
La brevedad te permite cambiar de opinión hasta el último momento posible (responsable) sin tirar mucho esfuerzo. Esto te ayuda con el segundo principio del Manifiesto Ágil:
«Acoge los requisitos cambiantes, incluso en las últimas fases del desarrollo. Los procesos ágiles aprovechan el cambio para la ventaja competitiva del cliente».
La naturaleza concisa y el enfoque en el usuario de las historias de usuario también ayuda a separar quién se ocupa de lo que vas a hacer (el cliente o el gestor de productos) y quién se ocupa de cómo lo vas a hacer (los desarrolladores).
Y, por último, como las historias de usuario son pequeñas unidades de trabajo autónomas, disfrutarás de muchas pequeñas victorias a medida que vayas completando una tras otra. Eso es bueno para coger impulso.
¿Cómo no beneficiarse de las historias de usuario – Errores comunes?
¿Qué es una buena historia de usuario?
Escribir historias de usuario no es el objetivo
Cómo escribir una historia de usuario en 4 sencillos pasos
Con el usuario y el objetivo final claramente en mente, se elaboran los pasos que un usuario tendría que dar para alcanzar su objetivo.
Intentar averiguar cuál es el primer paso para alcanzar un objetivo es difícil. Simplemente hay demasiadas opciones para elegir y no hay manera de elegir una sobre otra..
La salida es trabajar hacia atrás desde el objetivo.
Digamos que su objetivo es disfrutar de un batido de fresas. Así que se empieza por ahí: un batido de fresas terminado, listo para ser disfrutado.
¿Qué necesita para ello? Obviamente, un vaso, una pajita, un batido y todo lo necesario para ello.
- conseguir un vaso
- conseguir una pajita gruesa
- prepara el batido
- verter el batido en el vaso
- introducir la pajita en el batido
Tiene un vaso adecuado, pero le faltan pajitas gruesas, así que
- comprar pajitas gruesas
Nunca ha hecho un batido, pero sabe que necesita una licuadora, así que
- sacar la batidora
- seguir a receta
Para seguir una receta, es necesario
- encontrar una receta
- comprar los ingredientes especificados en la receta
Ejemplos de historias de usuario
Aquí hay algunos ejemplos de historias de usuario para que todo sea más concreto.
Cómo desarrollar software a partir de historias de usuarios
Las historias de usuario son narraciones de alto nivel que carecen de los detalles que necesitan los desarrolladores y probadores.
Por lo tanto, cuando una historia de usuario se va a implementar pronto, hay que añadir los detalles que mantendrán a todo el mundo en el camino y evitarán el (re)trabajo innecesario.
Ron Jeffries ideó las 3Cs, aspectos críticos, de trabajar y desarrollar software empezando por las historias de usuario.
¿Cuáles son las 3 C’s en las historias de usuario?
Se llevan a cabo conversaciones, discusiones abiertas, entre el cliente y las personas que participan en la aplicación para llegar a los requisitos específicos y proporcionar la claridad necesaria para la aplicación.
Los ejemplos concretos son la mejor manera de aportar claridad. Y los ejemplos ejecutables le dan…