Importancia de la calidad
La calidad del software puede parecer un concepto alejado de la vida diaria de la mayoría de
las personas, pero nada más lejos de la realidad. Cuando en nuestro
ordenador aparece un mensaje de error o una pantalla azul, estamos ante un
problema de calidad del software; cuando un fallo en el sistema de gestión
aeroportuaria provoca retrasos, pérdidas de maletas o inutiliza pantallas de
información, estamos ante un problema de calidad del software; cuando en un
restaurante se bloquean los terminales de cobro y anotación de pedidos, estamos
ante un problema de calidad del software.
Es muy probable que hayamos sufrido los efectos de
estos problemas de calidad en forma de retrasos, pérdidas de tiempo o dinero,
etc. como simples ciudadanos. Lamentablemente, estos problemas pueden ser mucho
más graves si afectan a sistemas
críticos; es decir, aquellos cuyo fallo puede provocar graves pérdidas
económicas o problemas ambientales o sociales e, incluso, la pérdida de vidas
humanas. Un ejemplo bien documentado se produjo con el lanzamiento en 1996 del
primer cohete Arianne 5 de la Agencia Espacial Europea. Este ingenio que costó
10 años y 7.000 millones de euros desarrollar, explotó por un defecto en el software de control interno antes de
que pasara un minuto de vuelo.
Los fallos de software afectan a todos los sectores
y a todos los países, como puede constatarse en la recopilación de incidentes
documentados por Peter Neumann desde 1987
(http://www.csl.sri.com/neumann/illustrative.html). A pesar de estos datos, es
cierto que actualmente se desarrolla
software fiable y correcto a un coste razonable. Los auténticos
profesionales y las empresas bien organizadas son prudentes y saben que deben
aplicar distintas técnicas de control y prevención, además de un buen proceso
de desarrollo.
Los fallos de software en
el mercado español
La calidad de un producto no es algo que se añade
al final como si se pintara de un color su exterior, es algo que se cuida a lo largo de todo el proyecto de
construcción. En el software esto es especialmente cierto, ya que es un
resultado básicamente intelectual dependiente del trabajo de los profesionales
especializados. Los datos indican que los problemas de los proyectos de
software se van reduciendo progresivamente desde mediados de los noventa
gracias a la introducción de métodos de
trabajo más sistemáticos y fiables (por ejemplo, CMMi, ISO15504, etc.).
En España ha ido creciendo de manera considerable
el número de empresas que tienen certificados sus procesos de trabajo para
cumplir dichos estándares, produciendo un efecto beneficioso en la calidad del
software. Lamentablemente, estas mejoras han quedado circunscritas, sobre todo,
a organizaciones fuertes y potentes,
que cuentan con recursos para implantar las exigencias de estos métodos. De
hecho, como informa INTECO en uno de sus estudios, las pymes reclaman modelos
más sencillos y adaptados a su estructura.
El estudio también informa de otro aspecto clave para el fomento de la calidad: la exigencia de la misma por parte de los clientes. De nuevo, las grandes organizaciones son las que exigen más certificados y garantías a sus proveedores, mientras que las pymes, reconociendo el valor de dichas salvaguardas, no terminan de exigirlas.
El estudio también informa de otro aspecto clave para el fomento de la calidad: la exigencia de la misma por parte de los clientes. De nuevo, las grandes organizaciones son las que exigen más certificados y garantías a sus proveedores, mientras que las pymes, reconociendo el valor de dichas salvaguardas, no terminan de exigirlas.
Más allá de los certificados y estándares
generales, desde el grupo de Calidad del Software de ATI hemos querido analizar
con algo más de detalle uno de los aspectos clave para la calidad. Se trata de
las pruebas de software: es la técnica presente en todos los proyectos y
consiste en realizar ensayos de
funcionamiento de las aplicaciones en entornos controlados, a fin de
detectar los posibles defectos presentes antes de que el producto se ponga en
funcionamiento y pueda originar cualquier tipo de fallo.
Si las pruebas no son eficaces, pueden permitir que
software defectuoso llegue al cliente causando graves problemas. Se trata de un
elemento muy importante en los proyectos, porque llega a consumir un 33% de todo el esfuerzo dedicado al
desarrollo. En nuestros estudios hemos detectado que, sobre un total de 20 aspectos clave para que las pruebas
sean óptimas, en una amplia y variada muestra de empresas el promedio realmente implantado es de 8. Además,
sólo alrededor de un 25% de los profesionales cuentan con formación específica
en esta técnica.
Tras conocer estos datos, estudiamos el
comportamiento de un centenar de profesionales a la hora de diseñar las
pruebas. Individualmente y más allá de la gestión en sus empresas, sus
resultados son buenos. Lamentablemente, nos encontramos que a la mayoría le falta ser más sistemáticos, porque
terminan siendo poco eficaces
(dejan cerca de la mitad de las opciones de los programas sin pruebas adecuadas
y prueban menos las opciones más importantes) y más eficientes (repiten innecesariamente pruebas parecidas que no
aportan más seguridad, con el correspondiente gasto de tiempo).
Factores que afectan
negativamente a las pruebas
Al constatar esta situación, nos planteamos un
último análisis para detectar cuáles podrían ser los factores que favorecen
estos discretos resultados. Tras consultar a un panel de expertos y preguntar a
un centenar de profesionales, finalmente se concluye que la presión de tiempo para las pruebas
(se hacen al final de los proyectos, cuando se acumulan retrasos), la tentación
de recortar en calidad cuando
hay problemas de tiempo o de recursos, la falta de formación de profesionales y directivos, así como las
deficiencias en esta área en la educación universitaria son los factores que
más influyen en que exista esta situación.
Por todo ello, en el grupo de Calidad de Software
de ATI creemos que la concienciación y
la formación deben ser elementos esenciales para lograr mejores niveles
de calidad de software en España. El software es un producto eminentemente intelectual que depende al 100% de la
pericia y formación de los profesionales que lo desarrollan. Desde nuestra
asociación, insistimos con la organización de foros, seminarios y jornadas en
este aspecto, proporcionando la documentación de estos eventos de forma
gratuita en nuestra web. Asimismo, provocamos el debate y el intercambio de
ideas, experiencia y soluciones en grandes eventos profesionales, como la
próxima X edición de las Jornadas de Innovación y Calidad del Software , que
celebraremos en Madrid los días 24 y 25 de septiembre.
Estas acciones, junto al apoyo institucional (el
Ministerio de Industria tiene programas específicos de apoyo a las pymes del
sector para la adopción de estándares), deberían permitir que nuestra industria
de software sea reconocida internacionalmente y de forma general por su
calidad.
Comentarios
Publicar un comentario