Organizing your time into user stories and tasks

Clase 8 de 25Curso para Developers en Inglés (2020)

Resumen

Saber cómo dividir tus user stories en tareas concretas puede marcar la diferencia entre un proyecto que cumple sus plazos y uno que se descontrola. Organizar el trabajo de desarrollo en piezas manejables no solo mejora la precisión de tus estimaciones, sino que también genera confianza ante tu cliente y tu equipo.

¿Por qué dividir tus user stories en tareas individuales?

Cuando trabajas con user stories grandes, el riesgo de subestimar el esfuerzo necesario aumenta considerablemente. Dividirlas en tareas individuales agrega confianza y exactitud a tus estimaciones y a tu plan [0:55]. Cada tarea representa un nivel adicional de detalle, específico al código que vas a escribir para completar esa user story.

Para entenderlo mejor, se propone una analogía con una ensalada [1:20]. Tu user story es la ensalada completa, y cada ingrediente (lechuga, espinaca, mango, tomate) es una tarea individual. Cada ingrediente necesita un procesamiento diferente:

  • La lechuga debe ser desinfectada y presentada de una manera específica.
  • El tomate debe ser cortado en piezas pequeñas.
  • El mango debe ser pelado y rebanado.
  • La espinaca debe ser desinfectada.

Al procesar cada ingrediente por separado, el resultado final es una ensalada de gran calidad. Del mismo modo, cuando procesas tus user stories a través de tareas individuales, tu producto final será mucho mejor [2:15].

¿Cómo usar las estimaciones para rastrear tu proyecto?

Es fundamental rastrear tu proyecto desde su inicio hasta su finalización [2:30]. La analogía aquí es Google Maps: cuando usas la aplicación para llegar a un destino, siempre te indica dónde estás a lo largo del trayecto, desde el principio hasta el final [2:42]. Esa misma visibilidad es la que necesitas en tu proceso de estimación.

¿Cuándo es mejor desglosar las tareas?

Lo ideal es separar las tareas de tus user stories al inicio del proceso de estimación [3:10], siempre que tengas tiempo para hacerlo. Esto genera varios beneficios:

  • Agrega mayor confianza al plan que presentas a tu cliente.
  • Permite dar una estimación más exacta sobre la fecha de entrega.
  • Reduce la incertidumbre frente al alcance del trabajo.

¿Por qué confiar en las estimaciones basadas en tareas?

Siempre es mejor apoyarte en las estimaciones a nivel de tarea cuando te comunicas con tu cliente [3:30]. De esta forma, el cliente nunca se sentirá engañado y siempre sabrá cuándo esperar el producto final. Las tareas describen el trabajo real de desarrollo de software que necesita hacerse, y sus estimaciones son mucho menos un guesstimate que una estimación gruesa a nivel de user story [3:50]. En otras palabras, tener user stories con estimaciones precisas basadas en tareas te da una mejor oportunidad de cumplir tus compromisos de entrega.

¿Qué papel juega el backlog en este proceso?

Mantener tu backlog actualizado es un complemento esencial de todo este flujo de trabajo [4:10]. El backlog es la lista priorizada de todo el trabajo pendiente en tu proyecto. Actualizarlo constantemente te permite reflejar los cambios, repriorizar tareas y asegurar que el equipo siempre esté trabajando en lo más importante.

Si ya estás dividiendo tus user stories en tareas y usando estimaciones para dar visibilidad a tu progreso, ¿qué estrategias adicionales aplicas para mantener tu backlog al día? Comparte tu experiencia.