¿Cómo calculo el tiempo necesario para implementar una historia de usuario? Si es algo que has hecho antes de saber cuánto tiempo llevará. Pero, ¿y si es completamente nuevo para ti? ¿Cuánto tiempo reserva para "sorpresas"?Estimación de tiempo para una historia de usuario
Respuesta
Una gran técnica para esto es para romper la historia hasta tareas algo más pequeños, y estimarlos comparación con los demás (en lugar de absoluta). Así que se puede decir:
- tarea A se llevará a 2 unidades (arbitrarias)
- tarea B es aproximadamente 2 veces tan complicado como tarea A (4 unidades)
- Tarea C es aproximadamente la mitad ha complicado (1 unidad)
Somos mejores para estimar la complejidad relativa que la complejidad absoluta. Luego, en realidad, realiza una de las tareas y calcula cuánto tiempo "en tiempo real" le lleva implementar 1 unidad: ahora puede calcular todas las tareas. Sigue actualizando sus estimaciones de acuerdo con su progreso.
Esta técnica es de Agile Estimating and Planning por Mike Cohn, que es un gran libro sobre el tema.
En la escuela XP de desarrollo ágil, defienden que no se estima en tiempo real sino en unidades arbitrarias. (Usan "Gummy Bears" pero puedes usar lo que sea). Usted asigna su mejor estimación en cuanto al número de unidades que se necesitarán para implementar esa historia de usuario.
Es cierto que puede estar equivocado, pero llegará a una fase en su desarrollo, algunas iteraciones, cuando sus suposiciones son en su mayoría correctas, y es fácil para la empresa/cliente obtener un presupuesto preciso de cuántos historias que pueden incluir en una iteración.
Una buena regla de oro desde el principio, cuando es difícil de estimar, es tomar una de las tareas más sencillas, y asignarla a un valor de 1. Evaluar la historia de cada uno en relación con esa, y darle a su mejor conjetura. Si algo es demasiado complicado o no está lo suficientemente definido, se lo obligará a darle un número realmente grande.
Otro concepto clave es que debe volver a evaluar los tiempos para cada historia de usuario en cada iteración. A medida que sus historias se definan mejor, y a medida que su estimación de la velocidad mejore, obtendrá momentos más precisos en sus historias.
En cuanto a las sorpresas, en realidad no tiene que ver con la estimación de las historias de los usuarios ... ya que no tienes historias de usuarios para representar sorpresas.
Una técnica implementada donde trabajo. Para cada historia de usuario, escríbalo en una tarjeta con un encabezado. Pida a cada persona que tome una tarjeta y escriba en ella el número de horas que creen que llevará completar. Haga que coloquen las tarjetas en la tarea sin mostrarlas entre sí. Una vez que tenga todos los resultados, mire las cifras y vea los valores superiores e inferiores. Normalmente obtendrá cifras bastante cercanas entre sí.
Para los valores que se encuentran en la parte superior o inferior, pregunte al desarrollador o a la persona con la información de por qué creen que tardaría tanto o tan poco en comparación con la media. Proponer un consenso del equipo en lugar de un individuo significa que todos tienen su opinión sobre la tarea.
Esta es una idea de un libro que leí sobre técnicas ágiles y olvidé que el autor se los acredita con él.
Steve McConnell en "Software estimation - demystifiying the black art" dijo mejor que yo: "Contar si es posible calcular cuando que no puede contar utilizar su criterio solo sólo como un último recurso.".
Chapter 7 - Count, Compute, Judge (PDF).
(gracias por recordarme esto :)
- 1. Agile - Definiciones de historia de usuario
- 2. estimación Agile/XP
- 3. Estimación del tiempo en las tareas
- 4. ¿Qué es y qué no es una historia de usuario?
- 5. Estimación/previsión del tiempo de finalización de la descarga
- 6. Estimación del tiempo de retardo entre dos señales de audio
- 7. Estimación del tamaño de archivo zip/tiempo de creación
- 8. tiempo Estimación de la izquierda en C++ 11
- 9. ¿Cuál es un buen proceso para escribir tarjetas de historia?
- 10. Estimación del tiempo de creación del índice en Oracle
- 11. ¿Dónde encontrar la mejor plantilla de historia de usuario?
- 12. Estimación de la frecuencia del elemento de una matriz en O (n) tiempo
- 13. rspec característica de la historia del usuario vs pepino
- 14. Estimación del tamaño de pila
- 15. estimación de la mirada de una imagen de un ojo
- 16. ¿Cuál es la diferencia entre una historia de usuario y una característica en terminología ágil?
- 17. git historia de una línea de origen
- 18. ¿Cómo se refina su proceso de estimación?
- 19. ¿Debe ser un ser humano un actor de una historia de usuario?
- 20. Buscar toda la historia de Git para una cadena?
- 21. búsqueda de Git para cadena en una sola historia archivos
- 22. Algoritmos reversibles de diferencias (historia) para C#?
- 23. ¿Existe una historia de éxito de MDSD/MDA para una aplicación real?
- 24. HG: Deshacer una confirmación de la historia
- 25. estimación del esfuerzo de prueba como un porcentaje del tiempo de desarrollo
- 26. Estimación de tamaño de base de datos MySQL
- 27. ¿Patrón de diseño bueno para la historia de muchas entidades?
- 28. estimación aproximada de la diferencia de tiempo desde GMT desde la latitud longitud
- 29. Diseño Visualización de tiempo para eventos de Control de usuario
- 30. Detectar/país estimación de una petición http en ASP.NET
voy a votar para cerrar esta cuestión como fuera de tema, ya que no se trata de la programación. –