viernes, 19 de septiembre de 2014

¿Cuando salimos a producción?


A menudo me frustra oír que las estimaciones basadas en Puntos Función pueden dar respuesta a la pregunta de ¿cuánto costará el proyecto?, pero no pueden dar contestación a ¿cuándo saldremos a producción? En este artículo abordo ciertos aspectos que me parecen interesantes respecto estimaciones de duraciones basadas en métricas de Puntos Función.
 


La pregunta es simple: si es posible establecer una productividad de referencia, que permite estimar costes, ¿por qué no va a ser posible establecer una velocidad de referencia, que permita estimar duraciones?


Un primer escollo es que la duración depende de los recursos asignados al proyecto. En los desarrollos de software, nueve mujeres podrían hacer un niño en un mes. Aunque claro está, reducir así la duración encarece sistemáticamente el coste de los proyectos. Es decir, si un número importante de proyectos se desarrollan de manera acelerada, la productividad operativa obtenida será menor que la obtenida si los proyectos se desarrollaran sin presiones especiales de tiempo. Dicho esto, vamos a analizar qué alternativas tenemos para estimar las duraciones:

Una primera aproximación a la resolución del problema es la siguiente:

- Podemos partir de un modelo teórico, y tratar de ajustar los factores del mismo al uso de los puntos función. Un modelo como COCOMO II establece que la duración es una función exponencial del esfuerzo à Tiempo = A*(Esfuerzo)B donde A y B son constantes. El modelo establece unos valores medios de A y B en función de diferentes tipologías de desarrollo.

- El esfuerzo, que es el dato necesario para calcular el tiempo, según este modelo, podría estimarse partiendo de los puntos función mediante una relación lineal.

- El personal necesario sería, en una primera aproximación, una relación entre el esfuerzo y el tiempo.

Una segunda aproximación sería fijar el tipo de relación que se da entre duración y esfuerzo en la organización donde se pretenda implantar el modelo de estimación. Esto como siempre presenta ventajas e inconvenientes (es necesario realizar un estudio previo con su coste asociado, pero los resultados son más adaptados a la organización). Personalmente creo que las ventajas superan el coste de las mismas.

- Partiendo de los datos históricos es posible enfrentar duraciones y costes de los proyectos, y tratar así de encontrar una relación matemática.

- Se debe tener la precaución de descartar aquellos proyectos que sean justificadamente atípicos y considerar el ajuste de los costes en los casos en los que estos hayan sufrido algún tipo de restricción. En este sentido, se debe tender a la selección de proyectos estándar dentro de la organización, o bien segmentar adecuadamente la muestra (evitar juntar proyectos acelerados por las fechas con proyectos sin presión extra de tiempo).

- Es importante en este modelo la realimentación de los datos, lo cual aportará cada vez más robustez al sistema.

La conclusión es que es posible de una manera sencilla implantar un modelo en el cual a partir del tamaño funcional se estime la duración de los proyectos, así como realimentar el mismo, de una manera similar a como lo hacemos con el coste de los mismos.

Una vez establecido el modelo, podremos contar ventajas como las siguientes:

- Establecer un patrón de duraciones de los proyectos. Muchos proyectos tienen una fuerte restricción de tiempo (hay que sacarun producto al mercado en Navidades, la renovación de tarifas tiene que estar para enero, hay una nueva legislación con una fecha límite, etc.). Pero aún en estos casos, es positivo poder enfrentar la fecha impuesta contra la fecha ideal según el modelo, a fin de poder justificar los posibles sobrecostes, e incluso estimarlos.

- En los modelos de pago por punto función (se establece un precio fijo por punto función) introduciría un factor más para afinar el precio acordado, haciendo más exacto el modelo. Cuando un proyecto sale más caro que la media, pero hay una fecha impuesta que obliga a acelerar mucho su desarrollo, ¿realmente está saliendo más caro? ¿o simplemente es lo esperable? Para responder a estas cuestiones sirve este modelo.

- Permite tener argumentos objetivos frente a terceras estimaciones. Establece una base contra la que compararse.

- Cuantificar el riesgo de retraso en la entrega en producción del software. Uno de los factores implicados en ello es la diferencia entre fecha impuesta y la fecha ideal.

No hay comentarios:

Publicar un comentario

Related Posts Plugin for WordPress, Blogger...