Una de las actividades principales en el desarrollo de proyectos informáticos es la estimación de tiempos, así como en la priorización de requerimientos, existen diferentes formas de realizar esta estimación, a continuación presentamos algunas de ellas:

Nivel de esfuerzo

nivel-de-esfuerzoTal vez la menos precisa, pero más utilizada forma de estimar requerimientos es aquella basada en el esfuerzo a realizar, que por lo general utiliza tres niveles de clasificación: fácil, normal y difícil por ejemplo. En algún momento e utilizado esta técnica considerando dos días para las actividades fáciles, tres días para las actividades normales y cinco para las difíciles. Algunos equipos agregan algunos niveles más a esta clasificación.

La ventaja de este método es que es muy simple y se puede realizar rápido; la desventaja de este método es que tiene poca precisión. En ocasiones se utiliza este método para empezar el proyecto y a medida que va disminuyendo el nivel de incertidumbre, se puede ir ajustando el proceso y las estimaciones.

Tiempo Ideal

Es una forma de estimar el tiempo, en el cual los desarrolladores estiman el tiempo que les tomara realizar una actividad. Se considera que en este proceso de desarrollo ideal no habrá interrupciones y que el programador solo se dedicara a programar.

Esta es una estimación, un poco ideal y por lo general al tiempo estimado se le agrega un tiempo adicional. En mi caso, e utilizado esta estimación, considerando días de siete horas de trabajo. Es decir, si una funcionalidad tomara 20 horas, se estima que esta actividad tardara en promedio 3 días. Algunos consideran días de 6 horas, con lo cual lo anterior se desarrollaría en 3.5 días. Lo que no recomendaría es considerar días de ocho horas o más, pues esto con el tiempo puede ser contra producente con el proyecto.

Story Points

En Scrum, para la estimación de requerimientos, muchos equipos utilizan el concepto de “story points”, que es una medida arbitraria para entender el tamaño del esfuerzo que se tomara al realizar determinada funcionalidad. Esta estimación está relacionada a tiempos en horas o días.

Secuencia Fibonacci

Cuando se estima los “story points”, muchos equipos utilizan la serie de Fibonacci, en la cual está conformada por: 1, 2, 3, 5, 8, 13, 21. La serie de Fibonacci es útil porque a mayor dificultad, el grado de incertidumbre aumenta también. A fin de simplificar, muchas veces, se cambia 21 por 20 y se agregan 40 y 100 para los “user story” denominadas épicas.

Planning Poker

planning-cardsOtra forma de estimar, es aquella donde el equipo de desarrollo participa en la estimación de requerimientos. Cada participante del equipo se le proporciona un juego de cartas con valores de la serie de Fibonacci: 1, 2, 3, 5, 8, 13, 20, 40 y 100. Luego el líder del equipo explica cada funcionalidad a desarrollar. El equipo elige una carta por cada funcionalidad y si la mayoría coincide, se asigna el número de la mayoría. Por ejemplo: si son cinco integrantes y tres de ellos indican 5 y dos de ellos indican 3, se podría indicar que el nivel de dificultad o los puntos asignados es 5.

Ahora, una consideración importante es que, si en esta metodología de estimación de requerimientos, se dan extremos el juego tiene una variante. Por ejemplo: si luego de explicada la funcionalidad, del equipo de cinco personas, tres de ellos indican 5, pero uno de ellos indica 2 y otro indica 13. Si se da este caso, lo que se realiza es que, aquellos que asignaron el mínimo y máximo puntaje explican el porqué de la asignación. Si hay mucha diferencia, tal vez alguna de ellos no entendió el requerimiento o tal vez ya lo vio antes y tiene la solución. Luego de la explicación de ambos extremos, se vuelve a realizar la votación o asignación de puntajes, esto se realiza hasta llegar a un conceso del equipo en la asignación de los tiempos.

Estimación de Requerimientos
Si te gusto, comparte ...Email this to someone
email
Share on Facebook
Facebook
Tweet about this on Twitter
Twitter
Share on LinkedIn
Linkedin
Share on Google+
Google+
Etiquetado en:        

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Facebook
A %d blogueros les gusta esto: