| Artículos | 01 SEP 2002

Los fallos del software: unos defectos muy caros

Tags: Histórico
Toñi Herrero.
Los fallos en el software, tanto de funcionalidad como de seguridad, no son algo excepcional para los usuarios. Recientemente, un estudio publicado por el Instituto Nacional de Estándares y Tecnología (NIST) del Departamento de Comercio estadounidense ha cuantificado lo que cuestan allí: 59.500 millones de dólares al año, de los que los usuarios pagan más de la mitad del montante. Más testeo y mejores prácticas de calidad podrían reducir estas cantidades.

Actualmente, más de la mitad de los errores pasan desapercibidos hasta la última fase del proceso de desarrollo del producto, e incluso hasta que llega a manos de los usuarios, según el NIST (National Institute of Standards and Technology), que ha promovido este informe junto a la firma Research Triangle Institute. Y se ha medido lo que representan estos fallos para la economía estadounidense: 59.500 millones de dólares al año, un 0,6 por ciento del producto interior bruto de ese país.
La culpa es de la complejidad del software. A mayor complejidad, mayor número de errores: sería una ecuación inexorable, según este Instituto. Los desarrolladores dedican un 80 por ciento de los costes de desarrollo a la identificación y corrección de defectos. A diferencia de lo que ocurre con el software, pocos productos de otra índole acaban llegando a los consumidores con tantos defectos que afecten a su funcionalidad y a la seguridad o fiabilidad.

Usos imprevistos
“Las vulnerabilidades se suelen producir ante usos imprevistos, pero para ello ha de existir un error en la programación y que alguien lo descubra”, señala Héctor Sánchez, responsable de seguridad de Microsoft Ibérica. Se trata sobre todo de vulnerabilidades relacionadas con la seguridad, aspecto al que “el testeo no se orienta tanto como lo hace a los fallos de programación, porque se sabe lo que la aplicación ha de realizar y es más fácil este tipo de testeo que no el que contempla las actuaciones imprevistas”, señala Miguel Ángel Domínguez, consultor de seguridad de GFT Iberia. Una solución para minimizar la vulnerabilidad sería “mecanizar más el desarrollo de código en materia de seguridad”, apunta Sánchez. En la página web de The Idea Hamster Organization se puede encontrar en manual Estándar de programación segura, de Víctor A. Rodríguez, que pretende la creación de una disciplina que aglutine pruebas de seguridad, independientemente del lenguaje de programación, entorno de ejecución y herramientas de desarrollo. Según el manual, la programación segura tiene como objetivos la confidencialidad, la integridad y la disponibilidad.

Más testeo
Otros factores que, según el NIST, contribuyen a incrementar los errores en el software son las estrategias de marketing, la responsabilidad limitada de los fabricantes de software y la cada vez menor rentabilidad de los procesos de prueba y resolución de fallos. El estudio señala que, aunque los errores no se pueden suprimir, más de un tercio de esos gastos (unos 22.200 millones de dólares) se podría eliminar haciendo mejores tests del software para identificar con mayor prontitud y efectividad los fallos y anularlos. Normalmente, “el proceso de testeo es bastante penoso, ya que muchas veces son los propios programadores los que revisan el código, lo que significa que inconscientemente van a buscar lo que funciona. Lo ideal es que se asignara un equipo independiente para probar el software que se desarrolla”, comenta Domínguez. El consultor de seguridad de GFT subraya también la necesidad de tener más en cuenta los usos imprevistos, la utilización de la aplicación para otras finalidades. “Este tipo de test alargaría y encarecería el proceso”, afirma.
Según el NIST, el mercado de software está plagado de productos deficientes debido a la utilización de herramientas de test estándares, datos de referencia, implementaciones y métricas que no han superado procesos de certificación rigurosos. Por su parte Raynald Korchia, director general de inQA.labs, empresa dedicada a la calidad de software con la externalización de las pruebas, considera que no se utilizan lo suficiente las herramientas de testeo de software “y esto conduce problemas de mala calidad, retraso y aumento del coste. Estas herramientas hacen que la comprobación sea más rápida y fiable”. Korchia destaca la importancia de la preparación de pruebas desde el principio, “aunque esta parte no se ve fundamental y se está reduciendo, lo cual es un error porque los costes que genera el software de mala calidad pueden ser mayores que los de las pruebas. Incluso puede llegar a afectar a la imagen de la compañía”. El informe estadounidense indica que más de la mitad de los 59.000 millones de dólares es sufragada por los usuarios y el resto por los desarrolladores y fabricantes de software. Según Korchia, el usuario, al ser más consciente de los costes que le origina, “mirará más la competencia y habrá muchos más problemas para las empresas que diseñan software de mala calidad”.

Y más calidad de software
Otra recomendación que efectúa el NIST en su informe es que se mejoren las pruebas para impulsar la calidad del software, pero el problema principal es la dificultad para definirla y medirla. “La calidad de software se puede medir a través de diferentes atributos: funcionalidad, fiabilidad, rendimiento, usabilidad, seguridad, soportabilidad, localizabilidad”, señala el director general de inQA.labs. Más que la programación en sí, se suelen mirar los procesos de desarrollo: hacer requerimientos correctos, comprobar que están bien, hacer un diseño detallado... “son aspectos que al final permiten reducir costes y realizar un software de mayor calidad”. Según esta compañía, desarrollar software de calidad exige dedicar entre un 20 y un 30 por ciento de los recursos de desarrollo a las actividades de testing, y muy pocas empresas están dispuestas a integrar este coste dentro de su plantilla e infraestructura. Para fomentar estas buenas prácticas, la Asociación de Técnicos de Informática (ATI) viene organizando anualmente unas jornadas sobre innovación y calidad del software. Celebradas en Palma de Mallorca este año, en ellas se expusieron métodos y técnicas para mejorar la detección, el análisis y el seguimiento de errores, dentro del marco de los procedimientos de calidad de la empresa.


Héctor Sánchez, responsable de seguridad de Microsoft Ibérica
“La seguridad absoluta no existe”
----------------------------------------------------------------------------------------
Microsoft tiene fama de ser la compañía de software con más vulnerabilidades en sus productos. “Realmente sabemos que existe esa percepción en el mercado”, reconoce Héctor Sánchez, responsable de seguridad de Microsoft Ibérica. Aunque enseguida matiza: “los problemas de vulnerabilidades no son intrínsecos a Microsoft sino que se dan en toda la industria de TI. La diferencia es que un fallo en una plataforma Microsoft tiene mayor impacto porque está más extendida. Pero nuestra calidad de software en absoluto difiere de la de otro fabricante. La presión de testeo a la que se someten los productos de Microsoft es mucho más alta”. Dentro de la estrategia Trustwor

Contenidos recomendados...

Comentar
Para comentar, es necesario iniciar sesión
Se muestran 0 comentarios
X

Uso de cookies

Esta web utiliza cookies técnicas, de personalización y análisis, propias y de terceros, para facilitarle la navegación de forma anónima y analizar estadísticas del uso de la web. Consideramos que si continúa navegando, acepta su uso. Obtener más información