Como se comentó en un post anterior, Jira permite trabajar con Épicas, Historias y Tareas en el backlog. En este post se explicará la relación entre las mismas. Para entenderlo mejor, he elaborado el siguiente gráfico.
Como puede verse, una Épica puede ser descompuesta en múltiples Historias de usuario y a su vez, estas historias de usuario se descomponen en tareas técnicas.
Épica
Una Épica puede ser vista como una historia de usuario de alta complejidad (petición de negocio de alto nivel y complejidad, no clara). Para elaborarla se puede requerir un esfuerzo muy grande y no puede ser cubierta en un Sprint. Una épica debido a su gran tamaño es difícil de estimar y de acometer, así que podemos aplicar aquí el principio “divide y vencerás” y descomponerla en historias. Implementar una épica suele llevar dos o más sprints.
Ejemplos de Épicas.
- Como usuario quiero poder registrarme y tener una cuenta de usuario para poder acceder a mi información de usuario y de los servicios que uso.
- Como usuario quiero un servicio de “lista de deseos” para poder guardar los artículos que me gustan.
Historia de Usuario
Una historia de usuario representa una necesidad de negocio que puede ser implementada en un sprint y aporta valor al producto. Al final del Sprint la historia añade una nueva funcionalidad o característica al producto y puede ser candidata para pasar a producción.
En el backlog pueden haber historias de usuario sueltas o historias de usuario asociadas a épicas, ambas deben poderse terminar en un sprint, si no pueden terminarse en un sprint, deben ser descompuestas en historias de usuario más pequeñas.
Un patrón típico de definición de historias de usuario es el siguiente (1).
“Como [un] [tipo de usuario] [quiero, puedo, necesito, etc] para [alguna razón].”
La redacción de la historia en esta forma permite identificar rápidamente para “quien” es esa funcionalidad y cual es el objetivo que se persigue o que gana ese usuario. Es un formato que facilita la comunicación del equipo entero y es fácil de entender por negocio.
Ejemplos
- Como [Usuario Anónimo] quiero [poder registrarme en el portal] para [crear una cuenta.]
- Como [Usuario Registrado] quiero [poder iniciar sesión en el portal] para [poder acceder a la información de mis servicios contratados]
No hay una barita mágica ni para redactar historias de usuario, ni para partir épicas en historias de usuario, ni para identificar épicas. Con el tiempo se va ganando destreza identificando épicas, dividiendo épicas en historias y redactando las historias.
Tareas Técnicas
Las tareas técnicas son la descomposición de una historia de usuarios en tareas más manejables que deben ser implementadas para poder implementar la historia durante el sprint. Lo normal es que durante la reunión de sprint planning se hayan identificado estas tareas técnicas. Las tareas técnicas deben ser generadas por el equipo de desarrollo.
Partir una historia en tareas técnicas ayuda a dimensionar mejor el esfuerzo de la historia en puntos.
Aunque no es obligatorio dividir una historia de usuario en tareas técnicas en Jira, puede ser una buena práctica si se quiere llevar un mejor control del desarrollo de la historia o si para implementar una historia se requiere la intervención de varios miembros del equipo.
Ejemplo, en la historia
Como [Usuario Anónimo] quiero [poder registrarme en el portal] para [crear una cuenta.]
Podemos identificar las siguientes tareas técnicas.
- Implementar formulario básico para capturar los datos.
- Implementar backend para recibir los datos e implementar la lógica de funcionamiento.
- Maquetar formulario según diseño previsto.
- Diseñar plan de pruebas
- Ejecutar plan de pruebas.
Las tareas técnicas no se redactan como historias al estar orientadas a ejecutar acciones y al igual que en las historias o épicas no hay una fórmula para crearlas y dependerá del equipo, del grado de madurez del mismo, de la historia, y de los participantes.
Una guía que suelo usar es que dependiendo del tamaño de la historia se debe descomponer en tareas técnicas, esto ayuda no sólo al desarrollador, sino al líder de IT, al Scrum Master y al PO a ver los avances. Otro elemento que nos puede ayudar a detectar las tareas técnicas son los criterios de aceptación.
Cómo se ven las tareas técnicas en Jira?
Las relación entre tareas técnicas y épicas se ve claramente en la vista del sprint activo dentro de una pizarra de Scrum.
Las tareas técnicas se muestran debajo de la historia y se pueden mover a la columna correspondiente dependiendo del estado. Una vez las tareas técnicas están terminadas, Jira sugiere cerrar la historia.
Esta vista puede verse como la representación virtual de la pizarra de scrum física muy utilizada en diferentes equipos y es muy útil para ver el estado del Sprint.
Pingback: Gestiona mejor las tareas de tu backlog | | Blog Personal Diego Acosta