La calidad del software debe ser construida desde el comienzo, no es
algo que puede ser añadido después. Para que el producto final sea de calidad,
el proceso por medio del cual éste es elaborado debe ser también de calidad.
Para nadie es un secreto que muchas empresas de desarrollo de software,
siguen pensando que el proceso de las pruebas se debe realizar en la última
etapa para consolidar la calidad de su producto, equivocarse no es un problema
si el coste del error es bajo, sin embargo, cuanto más tarde se detecten los
errores, más esfuerzo se requiere para solucionarlos.
La posibilidad de que aparezca un error humano en el proceso de
desarrollo de software es enorme. La identificación de los riesgos es de suma
importancia, ya que permitirá concentrarse en los fallos que se pueden llegar a
materializar en cada fase del desarrollo del software.
El impacto de los errores de software va mucho más allá del coste de su
reparación. La reducción de ingresos, las oportunidades de mercado perdidas,
los pedidos tramitados incorrectamente y los errores de facturación, son
factores que hacen perder dinero a la empresa. De ahí que la insatisfacción de
los clientes sea el coste que más impacto tiene para las compañías de
desarrollo de software.
Esta situación es mucho más fácil de comprender cuando visualizamos como
un “bug” puede agigantarse frente a la percepción de nuestros clientes y en la
línea de costos asociados a solventarlo. Fallas en las fases de concepción y
diseño – por ejemplo- pudieran percibirse como errores de bajo impacto en la
calidad y en los costos. Pero cuando el “bug” solo es detectado en ciclos como
el de prueba o incluso en el lanzamiento, su impacto es inmenso. Tal como lo
ejemplifica la siguiente empleada en un reciente post, en el que se advierte
sobre la importancia de no permita que los errores entren a los entornos de
producción.
Hablar de calidad del software implica que contemos con parámetros que
permitan establecer los niveles mínimos que un producto de este tipo debe
alcanzar para que se considere de calidad. El problema es que la mayoría de las
características que definen al software no se pueden cuantificar fácilmente;
generalmente, se establecen de forma cualitativa, lo que dificulta su medición,
ya que se requiere establecer métricas que permitan evaluar cuantitativamente
cada característica dependiendo del tipo de software que se pretende calificar.
Conseguir software de calidad es algo muy complejo que implica no sólo
una alta calificación de los profesionales encargados del desarrollo, sino
también la existencia de flujos de trabajo orientados a la calidad por parte de
la empresa. De modo que cuando hablamos de la calidad del software a nivel de
empresa, nos referimos a las acciones que se toman de forma común para asegurar
que se desarrolla software de calidad en todos los proyectos.
Un software de calidad compromete la utilización de metodologías o
procedimientos estándares para el análisis, diseño, programación y pruebas que
permitan uniformar la filosofía de trabajo, en aras de lograr una mayor
confiabilidad y facilidad de prueba, a la vez que eleven la productividad,
tanto para la labor de desarrollo como para el control de la calidad del
software.
En resumen, la calidad software viene determinada por la calidad del
proceso con el que se desarrolla. Teniendo un proceso definido y aplicando
mejoras sobre este proceso, podremos incrementar la calidad de nuestros
productos continuamente.
Mejorar la calidad del software no es algo que
sucede una vez y queda ahí para siempre, ni tampoco es cuestión de realizar un
drástico cambio en el proceso de desarrollo y pensar entonces que el problema
de la calidad ha quedado definitivamente resuelto. Se trata de entender la
calidad como la satisfacción de las necesidades del cliente en el plazo y
presupuesto adecuado, evolucionando cada vez más hacia un concepto de valor
global aportado al cliente en términos de servicio.