miércoles, 15 de julio de 2015

Cómo reducir los errores de estimación

errores estimacion

Estimar implica lidiar con un alto grado de incertidumbre y de presión de tiempo para poder dar un valor que será comprometido para medir el resultado. Muchas veces el cliente ejerce influencia, lo que busca no es reducir el tiempo sino confiar en que puede ser predecible, necesita creer. Por tanto, el estimado debe ser creíble o preciso no recortado o reducido como imposición.


Marco Behler en su artículo4 common mistakes developers make when estimating” resume los errores básicos que se cometen durante el proceso de estimación de nuevas funcionalidades a desarrollar. En resumen los problemas se asocian con confiar solo en el instinto, asumir elementos ambiguos o sobre dimensionados, sucumbir al criterio del grupo o a la presión de tiempo para completar el estimado.

En las prácticas de CMMI se pueden tener elementos que ayudan a mejorar los resultados de la estimación. Básicamente los estimados se generan desde la planificación inicial (PP) y son refinados durante el seguimiento del proyecto (PMC). Con el conocimiento de la organización se establece una base de conocimiento (OPD) que es utilizada para mejorar los estimados, que en principio se fundamentaban en la experiencia individual y que evolucionan y concentran la experiencia de la organización (IPM). Finalmente el análisis estadístico de la capacidad de los procesos permite refinar los estimados y hacerlos mucho más precisos y efectivos, todo ello al considerar las prácticas de alta madurez.

Confiar únicamente en el instinto

La estimación por naturaleza tiene un alto grado de incertidumbre y mucho tiene que ver con la experiencia y el instinto del desarrollador para determinar un valor con certeza. Cuando la experiencia puede sistematizarse se mejora en gran medida la certeza y precisión, deja en segundo lugar el criterio personal sobre los datos históricos.

La evolución del proceso de estimación con las prácticas de CMMI remplaza progresivamente la experiencia con un método basado en el conocimiento del proceso de la organización. La precisión se llega a entender cuantitativamente y con el apoyo de métodos estadísticos se reduce la desviación entre los valores estimados y reales.

Con la aplicación de métodos como PSP se establece una base de conocimiento con datos históricos que permiten mejorar la precisión en la estimación con base en las experiencias previas, que se van enriqueciendo en la medida que se trabaja con la información.

Asumir elementos ambiguos o mal dimensionados

La estimación debe hacerse en diferentes momentos. Una primera aproximación con métodos más generales permite dimensionar lo que se requiere cuando no se tiene mayor información de lo que se necesita. En la medida que se tiene mayor precisión y detalles del producto se puede reestimar con técnicas más específicas para lograr una mejor aproximación del resultado final.

Una sola forma de estimación posiblemente no puede cubrir todos los momentos en que se realiza el proceso. Técnicas como el Análisis de puntos de casos de uso pueden hacerse con requerimientos generales del producto y complementarse más adelante con Análisis de puntos de función, COCOMO o incluso los métodos basados en aproximaciones (Proxy).

Someterse al criterio del grupo

Una de las ventajas del uso de métodos como PSP y TSP es que ayuda a mantener las diferencias individuales dentro del equipo de trabajo. Preserva la información individual y trata de ajustar los esfuerzos individuales al trabajo del equipo. Incluso técnicas de estimación basadas en juicios de experto cuidan no divulgar la información personal. 

Respetar los tiempos y ritmos de cada persona ayuda a lograr independencia, confianza y cohesión en el grupo. Cuando se impone un estimado por la presión del grupo o del líder, lo que se logra es solamente escuchar lo que se quiere pero el resultado no será el esperado. Las presiones, desgastes e insatisfacción permean en el equipo y al final lo que se obtiene puede estar dentro del estimado que exige la autoridad y no de la capacidad del responsable de llevarlo a cabo.

Ceder a la presión de tiempo

Siempre el estimado juega contra el dimensionamiento que se tiene por el cliente o el líder de proyecto, adivinar ese “número mágico” en el menor tiempo posible es una tarea doblemente complicada.

No se puede ofrecer un estimado confiable sino se dispone de un tiempo adecuado para la tarea. Es parte de las actividades del proyecto y dedicar el tiempo que requiere garantiza un buen dimensionamiento que facilita el seguimiento de los compromisos que se establecen. 

Contar con un método de estimación garantiza disponer del tiempo en el proyecto, obtener un valor que puede ser aceptado por el equipo y el cliente, así como garantizar que en el futuro la desviación sea mucho menor o al menos pueda ser analizada y mejorada para beneficio de todos.