Pages Menu
Categories Menu

Posted by on Sep 30, 2007 in calidad, métricas | 1 comment

Cuidado con los falsos positivos


En los últimos meses hemos tenido varios proyectos centrados en la implantación de infraestructuras (tipo Kemis) para evaluar la calidad software y a raíz de ello queríamos comentar una importante amenaza a tener en cuenta a la hora de trabajar con las herramientas de medición y auditoría: los falsos positivos.

El concepto de “falso positivo” viene de la teoría de errores estadísticos, entendiendo por error estadístico aquella diferencia entre el valor medido y el valor teóricamente correcto. Error generalmente producido por fluctuaciones impredecibles en los aparatos de medición, un falso positivo o errores “α” es el error de rechazar la hipótesis nula cuando en realidad es verdadera.

En nuestro contexto decimos que existe un falso positivo cuando al realizar el proceso de medición se detecta un defecto en el software que en realidad no existe (por ejemplo si decimos que 300 clases contienen bloques de recogida de excepciones vacíos y realmente son 100).

El caso más famoso sobre este tipo de problema es el que sucedió con FireFox y la herramienta de Klocwork. Sucedió cuando un tal Adam Harrison, de Klocwork, realizó una inspección a FireFox 1.5.0.6 con Klocwork K7 y detectó “611 (o 655 según la fuente) defectos, 71 de los cuales fueron catalogados de vulnerabilidades potenciales de seguridad”. El caso se hizo bastante famoso porque fue publicado en Slashdot.

A raíz de la noticia, obviamente, el equipo de desarrollo de FireFox reviso dichos resultados concluyendo que una gran parte de los errores (al menos 141) se debían a falsos positivos por una mala comprobación de las localidades de memoria por parte de Klocwork K7. Este post explica razonablemente bien el problema.

En definitiva, lo que decíamos en el título… cuidado con los falsos positivos y con las herramientas que se usan para medir la calidad del producto (más si los resultados tienen potestad a la hora de aceptar o rechazar versiones software desarrolladas por proveedores externos)

(Gracias a Moisés Rodríguez que me pasó la mayoría del texto de este post; un cordial saludo Moi)

Javier Garzás

Javier Garzás

Ph.D. en informática, Postdoctorado en la Carnegie Mellon (EE.UU) e Ingeniero en Informática.

Primera vez que me tocó hacer una gestión Ágil en una empresa... año 2001. Desde entonces he trabajado en, o para, más de 90. Y he formado a más de 2000 alumnos.

También soy profe de la Universidad Rey Juan Carlos.
Javier Garzás

1 Comment

  1. Hola Javier, el enlace para la explicación de las infraestructuras de tipo «Kemis» no funciona bien.

Post a Reply

Tu dirección de correo electrónico no será publicada.

Share This