Inicio
Blog
Probar la sopa antes de servirla. La importancia de la calidad en el software para empresas de base tecnológica
Desarrollo de Software, QA - Asegurar la Calidad

Probar la sopa antes de servirla. La importancia de la calidad en el software para empresas de base tecnológica

¿Te gusta cocinar?, a mí me encanta. Claro, que eso no quiere decir que sea especialmente bueno, pero con los años he ido aprendiendo los trucos. Algo interesante sobre la cocina es que, una vez terminado un plato, la mayoría de las veces no puedes regresar sobre tus pasos para corregir algún error o, si lo haces, “es peor el remedio que la enfermedad.”

No condimentes un arroz luego de haberlo cocinado, créeme. Por eso uno de los invariables del arte culinario es ir probando el plato mientras lo cocinas. Así puedes tener una idea más clara de cómo está yendo el proceso y parar y tomar las medidas necesarias en el tiempo preciso para no decepcionar a tus comensales.

Imagen tomada de (Yahoo, 2020)
Imagen tomada de (Yahoo, 2020)

Yo no juzgo tus hábitos de lectura, pero estoy casi seguro de que no llegaste hasta aquí para leer sobre cómo preparar arroz. No obstante, la analogía del cocinero que prueba sus platos mientras los prepara es muy útil para entender el papel y la importancia de los especialistas de calidad en una organización y, en especial, en las empresas de base tecnológica y aquellas que se dedican al software. Si tuviéramos que resumir la necesidad de los analistas de calidad para una empresa de software, podríamos hacerlo en una frase: los errores cuestan.

La historia cuenta con varios ejemplos de lo devastadoras que pueden ser las fallas de software. En 1962 la nave Mariner 1, que se proponía llegar a Venus, tuvo que ser desintegrada 290 segundos luego de su lanzamiento, cuando los ingenieros en la sala de control se quedaron sin más opciones que aplicar los protocolos de autodestrucción debido a que el vehículo no tripulado se había desviado peligrosamente de la trayectoria propuesta. Se descubrió luego que la causa residía en un error en una línea de código del software insertado en la maquinaria (NASA, 2022). Se estima que los costos de esa operación fallida fueron de 18 millones de dólares en ese momento (alrededor de 169 millones a día de hoy).

Otro caso tristemente célebre es el de Therac-25, un aditamento de radioterapia diseñado en Canadá que causó al menos 6 accidentes (3 eventualmente fatales) de los que se tengan reportes, en hospitales del propio país norteño y de su vecino del sur durante el período de junio de 1985 a enero de 1987 (Leveson y Turner, 1992). Los pacientes recibieron dosis masivas de radiación (a veces 100 veces la dosis recomendada) debido a lo que se conoce como un error de programación concurrente en el código del sistema operativo de la maquinaria.

Imagen tomada de (Fabio, 2015)
Imagen tomada de (Fabio, 2015)

Durante la Guerra del Golfo, en 1991, una batería antimisiles Patriot, en un campamento del ejército estadounidense en Arabia Saudita, fue incapaz de interceptar un misil enemigo debido a una falla de programación (Arnold, 2000). El error residía en la conversión de unidades de tiempo desde el reloj interno hacia el radar. En pocas palabras, durante el proceso de conversión los números se truncaban por las décimas debido a una discrepancia en los formatos numéricos. Esto, a medida que el equipamiento llevaba más tiempo en operación, se acumulaba en un error que era cada vez menos desestimable. El resto es historia: cuando se identificó el misil enemigo, el radar no fue capaz de hacer coincidir posición y velocidad, resultando en 28 muertes y más de un centenar de heridos.

Según lo reportado en 2020 por parte del Consorcio para la Calidad del Software y la Información, se estima que, solo en los Estados Unidos, fallas en el software supusieron un costo total de alrededor de 1,5 trillones de dólares a diversas compañías (Krasner, 2021). Del total, también se estima que 607 billones fueron a parar solamente a los esfuerzos de hallar y posteriormente reparar las fallas. Otra investigación encontró que ese mismo año el costo en tiempo fue de 620 millones de horas (Cambridge Judge Business School MBA, 2020).

Dos años antes, la compañía Tricentis había reportado que en 2017 un total de 606 grandes fallas de software habían aparecido en los mayores medios de comunicación de habla inglesa (Tricentis, 2018). Dichas fallas contabilizaron perjuicios totales cercanos a los 2 trillones de dólares, repartidos en 314 empresas, sumaron 286 años de caída (el tiempo que el sistema se encuentra no operativo) y afectaron a más de 3 billones y medio de usuarios. 

No debiera extrañarnos por lo tanto que las empresas de base tecnológica estén cada vez más moviendo el foco hacia el aseguramiento de la calidad en sus procesos. Mark Buenen, Director Global de Ingeniería de Calidad y Pruebas de Grupo Capgemini considera que: 

La inversión en una sólida garantía de calidad e ingeniería es la base de la capacidad de una organización para seguir siendo flexible, receptiva y adaptable. Si profundizamos al respecto, podemos observar que esta función vital puede tener un impacto tangible en el rendimiento de la empresa en general, incluida la rentabilidad e incluso la sostenibilidad (Capgemini, 2022).

Imagen tomada de (Román, 2022)
Imagen tomada de (Román, 2022)

 

 

Celia María Soulary, jefe de equipo de Dofleini Software
Celia María Soulary, jefe de equipo de Dofleini Software

Es aquí donde entran los profesionales de calidad de software. Celia María Soulary, especialista en calidad de software e ingeniería de requisitos y una de las jefas de equipo de Dofleini, nos dice que: 

Las actividades de calidad van orientadas a buscar una garantía de la calidad en el software en función de disminuir el riesgo de ocurrencia de errores en su puesta en producción. Hay dos grandes procesos o actividades para garantizar la calidad del software: una es el aseguramiento de la calidad (QA por sus siglas en inglés quality assurance) y otra es el control de la calidad (QC por sus siglas en inglés quality control). 

El QA va orientado a procesos, en la planificación, diseño y ejecución de los distintos proyectos y generalmente se trabaja en conjunto con los equipos de desarrollo para realizar las validaciones de los diferentes pasos. El QC se orienta a productos e incluye lo que se conoce como pruebas de software. Según Celia, “hay muchos roles diferentes para alguien que trabaja en el área de calidad de software, pero la verdad es que los asumimos en función de la actividad que estemos realizando.”

De acuerdo con la última edición del World Quality Report, publicado por las firmas Capgemini, Sogeti, y Micro Focus, hoy por hoy el análisis de calidad se percibe menos como un obstáculo para el progreso del ciclo de vida del desarrollo de software y más como un factor para su logro y su éxito (Capgemini, 2022). Es por eso que los más de 1700 ejecutivos encuestados, pertenecientes a empresas de 32 países y 10 sectores, señalaron varios aspectos relacionados con el QA como sus prioridades en 2023. Entre ellos destacan:

  • Detectar incidentes previos al lanzamiento (62%).
  • Hacer que el control de calidad y las pruebas sean un proceso automatizado más inteligente (61%).

De los encuestados, el 88% cree que enfrentaría un riesgo medio o alto de perder participación en el mercado si no cuenta con una estrategia de calidad, el 90% considera que esto le puede aumentar los costos al desplegar nuevas tecnologías y el 96% piensa que estaría haciéndose vulnerable a ciberataques. 

Tú no tienes que correr esos riesgos si implementas a tiempo una política de QA en tu empresa. Ahorra dinero, tiempo y esfuerzo en arreglar problemas que pueden identificarse antes del lanzamiento. Evita fallas de software costosas para ti, para tu imagen, para tus clientes y para la sociedad. Mejora la legitimidad y la confianza en tu trabajo. Prueba la sopa antes de servirla y tus comensales querrán repetir.

Referencias bibliográficas

Arnold, D. N. (23 de agosto de 2000). The Patriot Missile Failure. https://www-users.cse.umn.edu/~arnold/disasters/patriot.html  

Cambridge Judge Business School MBA. (2020). Optimizing CI/CD Pipelines A quantitative study of the financial impact of software failures in CI/CD pipelines. Undo. https://info.undo.io/ci-research-report

Capgemini. (3 de octubre de 2022). Informe Mundial de Calidad 2022-23: El 72% de las organizaciones cree que la Ingeniería de Calidad puede contribuir al aspecto medioambiental de la TI sostenible. https://www.capgemini.com/mx-es/news/informe-mundial-de-calidad-2022-23-el-72-de-las-organizaciones-cree-que-la-ingenieria-de-calidad-puede-contribuir-al-aspecto-medioambiental-de-la-ti-sostenible/ 

Fabio, A. (26 de octubre de 2015). Killed by a Machine: The Therac-25. Hackady. https://hackaday.com/2015/10/26/killed-by-a-machine-the-therac-25/

Krasner, H. (2021). The cost of poor software quality in the US: A 2020 report. Consortium for Information & Software Quality (CISQTM). https://www.it-cisq.org/cisq-files/pdf/CPSQ-2020-report.pdf 

NASA. (28 de octubre de 2022). [Mariner 1]. NASA Space Science Data Coordinated Archive (NSSDCA ID: MARIN1), NASA. https://nssdc.gsfc.nasa.gov/nmc/spacecraft/display.action?id=MARIN1

Leveson, N. G, y Turner, C. S. (1992). An investigation of the Therac-25 accidents. UC Irvine: Donald Bren School of Information and Computer Sciences. https://escholarship.org/uc/item/5dr206s3

Román, E. (28 de octubre de 2022). Aspectos de la Calidad en el Desarrollo de Software. Innevo Consulting. https://blog.innevo.com/calidad-en-el-desarrollo-de-software

Tricentis. (2018). Software Fail Watch 5th edition. https://www.tricentis.com/software-fail-watch/ 

Yahoo. (20 de octubre de 2020). You May Have Coronavirus If Your Food Tastes Like This. https://www.yahoo.com/lifestyle/may-coronavirus-food-tastes-201941629.html

¿De cuánta utilidad te ha parecido este contenido?

¡Haz clic en una estrella para puntuar!

Promedio de puntuación 4.8 / 5. Recuento de votos: 8

Hasta ahora, ¡no hay votos!. Sé el primero en puntuar este contenido.

¡Siento que este contenido no te haya sido útil!

¡Déjame mejorar este contenido!

Dime, ¿cómo puedo mejorar este contenido?

Comentarios

Victor Angel Fernández 28 de enero de 2023. 12:23

En Cuba la práctica es utilizarlo y, si algún día alguien protesta, a lo mejor dedican un tiempo a probarlo. La lista reciente de barbaridades es larga.

Responder

Déjanos tu comentario