Los proyectos de desarrollo de software pueden convertirse en un auténtico quebradero de cabeza para las empresas. Muchas veces los proyectos se eternizan, con lo que se incrementa el coste previsto inicialmente y frecuentemente se producen errores o problemas una vez que entra en productivo.
Un dato que muestra la gravedad de esta cuestión es el cálculo realizado por la consultora Gartner, según el cual, 0,8 céntimos de cada euro invertido en el desarrollo de software se destina a subsanar errores.
La razón de esos retrasos, encarecimientos y dificultades hay que buscarla en la gestión de las pruebas de software: ni se hacen todas las que se debiera, ni se efectúan como se debiera. ¿Por qué? Entre otras cosas porque las personas que realizan las pruebas son las mismas que lo desarrollan y su experiencia en la realización de pruebas es prácticamente nula. Lo ideal es separar ambas funciones, aunque no siempre es factible por cuestiones económicas u organizativas.
En los proyectos de desarrollo el indicador tiempo/coste es fundamental, ya que cuanto más tarde se detecte un error, más caro será subsanarlo. Por eso es importante establecer una gestión de pruebas que abarque todo el proyecto, desde el inicio hasta la fase de mantenimiento del software. El objetivo que se persigue con el gobierno de las pruebas es ejecutar un mayor número de ellas en menos tiempo e incrementar la efectividad de las mismas para que permitan encontrar un mayor número de defectos.
Según el Software European Institute (S.E.I.), cuando se introduce control y gobierno sobre las pruebas se reduce hasta en un 30% el número de errores remanentes y hasta un 50% el tiempo de resolución de los defectos.
Independencia y metodología
Como mencionábamos anteriormente, que las mismas personas construyan y prueben el software no es un procedimiento demasiado ortodoxo. Lo ideal es que lo haga una consultora especializada en pruebas, independiente del proveedor que esté desarrollando el proyecto y de la empresa que ha contratado a este último.
En cuanto a la metodología, lo primero que hay que hacer es establecer unos objetivos cuantificables en función de unos ratios-promedio de los distintos indicadores que se van a medir (tiempo que se dedica a probar; incidencias detectadas en un mes; incidencias por prioridad; cobertura; profundidad; y densidad). Una vez medidos los indicadores se establecen los objetivos de mejora a corto y medio plazo y se va contrastando lo que se va consiguiendo.
Las mejoras siguiendo estos procedimientos son tan notables como que se puede lograr aumentar en 20 veces la productividad de la ejecución de pruebas o que el número de fallos sea 5 veces inferior. Estas cifras redundan en un importante ahorro de costes: los tiempos de desarrollo se acortan y los mantenimientos resultan más económicos.
Al final, se pueden obtener un ROI que parta de las 2-3 veces el presupuesto dedicado a gobierno de pruebas y hasta las 8 veces. En tiempos como los que estamos viviendo ahora mismo, muchas empresas se ahorrarían mucho dinero y, sobre todo, muchos problemas con este tipo de servicios.
Ignacio López Carrillo, responsable del Área de Pruebas de LEDAmc