La semana pasada una empresa llamada Reasoning Inc. (http://www.reasoning.com/) publicó un estudio que parece demostrar lo que los desarrolladores de código abierto llevan defendiendo hace años: que el código abierto, junto con la posibilidad de inspección que permite, produce mejores productos. Para la realización de este estudio, la empresa comparó la pila TCP/IP de Linux con otras 5 implementaciones comerciales, siendo el resultado que la versión de Linux incluye menos defectos. En total, en las 81.852 líneas de código de la pila TCP/IP de Linux se encontraron sólo 8 fallos de entre cinco tipos de defectos: pérdidas de memoria, referencias a punteros nulos,localizaciones erróneas, accesos a matrices fuera de límite y variables no inicializadas. Ninguno de los fallos encontrados estaba relacionado con la seguridad del sistema.
A pesar de la seriedad del estudio, sus autores reconocen que no se deben sacar demasiadas conclusiones del mismo al estar centrado en una única pieza de software, aunque queda ya claro que ofrece argumentos a favor de que el código abierto puede rivalizar en calidad con el software comercial. Tal es así que, de los ocho defectos mencionados, uno ya está solucionado y otros cuatro no causan un funcionamiento erróneo en la pila TCP/IP, con lo que el resultado final una vez revisado es de 3 defectos (que son a su vez discutibles), lo que supone una densidad de 0,013 defectos por cada 1.000 líneas de código. La implementación comercial con la densidad más cercana era la de una pila empotrada que presentó un resultado de 0,08. El peor de los casos fue el de la pila de un SO comercial, que obtuvo un resultado de 183 defectos en 269,100 líneas de código, es decir, una densidad de 0,7.
El estudio de Reasoning destaca una serie de puntos interesantes sobre la calidad del código abierto, aunque aún no se cuenta con suficientes datos como para afirmar concluyentemente que el código abierto es siempre de mayor calidad que sus competidores propietarios. El estudio tampoco incluye datos sobre el rendimiento o las capacidades del código. Sin embargo, sí ofrece argumentos de apoyo a la afirmación de que el código abierto conduce a una mayor calidad, al menos en lo que se refiere a defectos específicos. Esperaremos con impaciencia los futuros estudios de Reasoning sobre otros componentes software.
Hasta la semana que viene.
Editorial publicada originalmente en el Boletín de Noticias Linux nº 61 (2ª época) el 25 de febrero de 2003.