Calidad del software en la era de la IA y los métodos ágiles

Rachel Da Silva Santos se incorporó a VISEO en 2010 y comenzó su carrera como desarrolladora. En este puesto, su primer instinto es probar la aplicación y enviar un informe a sus colegas. Con los años, se ha especializado en el campo de la calidad. Ahora, como responsable de control de calidad, ayuda a sus clientes a implantar estrategias de prueba y lidera la comunidad de control de calidad de VISEO. Aquí nos ofrece una visión general de los últimos avances en el campo que ha elegido y de los nuevos retos a los que se enfrenta su profesión.

Publicado el 16/04/2025

Custom Development

Opinión de experto

Compartir

¿Cuáles son las funciones de la calidad del software?

Las profesiones relacionadas con la calidad han experimentado grandes cambios en consonancia con las prácticas de desarrollo. De hecho, una no puede existir sin la otra.

Antes, en el método del «ciclo V», las fases de prueba se realizaban al final del proyecto. Con los métodos ágiles, las cosas han cambiado porque incluyen las pruebas como parte del ciclo de vida del proyecto. Avanzamos por iteración, generalmente a lo largo de dos o tres semanas, incremento a incremento. Desplegamos y probamos a medida que avanzamos, y luego hacemos una demostración antes de volver a empezar.

Así nos damos cuenta lo antes posible de que no vamos en la dirección correcta.

Evaluación de software: criterios e indicadores

Para evaluar un producto, servicio o aplicación informática utilizamos una serie de criterios e indicadores:

  • Su adecuación a las necesidades identificadas
  • Funcionamiento general
  • Si responde a criterios de usabilidad (nociones de interfaz e interacción con los usuarios)
  • Su respuesta a criterios de rendimiento y seguridad

Los criterios de seguridad son cada vez más importantes. Cuanto más digitalizados están nuestros entornos, mayor es el riesgo de vulnerabilidades.

El papel del QA

Para garantizar la calidad de un proyecto, puede contar con un equipo de control de calidad (QA) que establezca procesos de calidad y lleve a cabo campañas de pruebas. El equipo de control de calidad también desempeña una función general de concienciación del equipo. La calidad es cosa de todos.

Es un trabajo que requiere don de gentes. Los probadores, que a menudo están en el centro de los proyectos, interactúan con todas las partes interesadas (desarrolladores, soporte, arquitectos, líneas de negocio, etc.). La comunicación es esencial para establecer un buen entendimiento y avanzar con eficacia.

Un ejemplo de la vida real muestra cómo un equipo de desarrolladores pidió un probador y, al permanecer abiertos a los comentarios, las correcciones se hicieron rápidamente. El probador no está ahí para criticar, sino para garantizar un resultado de calidad.

Los retos de la calidad del software en el exigente mercado actual

Hoy en día, la velocidad y la imagen de marca son esenciales. La más mínima latencia en una interfaz puede ahuyentar a los usuarios. La carrera por lanzar nuevas funcionalidades hace que las pruebas automatizadas sean esenciales. La automatización permite realizar pruebas durante la noche y, si todo va bien, el sitio está listo para los usuarios por la mañana, sin necesidad de pruebas manuales.

Ámbitos específicos e impactos diversos

Los problemas de calidad difieren de un sector a otro:

  • Comercio electrónico: adquisición de una buena reputación entre los consumidores.
  • Aplicaciones médicas: exactitud de los historiales de los pacientes y de las dosis prescritas.
  • Finanzas: una simple coma o un cero mal colocado pueden tener graves consecuencias.

Con las nuevas normas, cada vez se hace más hincapié en la accesibilidad y la protección de datos.

Proyectos en constante evolución

Muchos proyectos no tienen un final definido. En un proyecto actual de comercio electrónico, el equipo de control de calidad trabaja en estrecha colaboración con los desarrolladores para introducir nuevas funcionalidades y comprobar que no introducen regresiones.

Las principales pruebas

Las pruebas son un campo muy amplio, que requiere una gran variedad de competencias, tanto humanas como técnicas.

Niveles de pruebas

El código de una aplicación se compone de varias capas (líneas de código, métodos, componentes, API, interfaz de usuario), cada una de las cuales requiere pruebas específicas.

La fase de especificación es esencial para definir la estrategia de pruebas, aunque ésta puede cambiar a lo largo del proyecto. Por desgracia, los equipos de pruebas rara vez están presentes desde el principio, lo que dificulta la corrección de los errores que se detectan tarde. Cuanto más tarde se descubre un fallo, más caro resulta corregirlo.

Auditorías y la estrategia adecuada

Cuando llegan los probadores en el transcurso de un proyecto, es necesaria una fase de auditoría. Esto incluye entrevistas con las partes interesadas para identificar los puntos débiles y definir una estrategia de pruebas adecuada.

Calidad del software en la era de la IA

IA: oportunidades y retos

Ante la IA, surgen dos preguntas para las pruebas:

  1. Uso de la IA: ¿Cómo podemos aprovechar al máximo su potencia para mejorar la eficiencia?
  2. Probar la IA: ¿Cómo vamos a probar estas nuevas tecnologías?

Estas cuestiones aún están en construcción, pero la IA ya puede utilizarse para generar conjuntos de datos y ayudar a preparar casos de prueba.

Casos de prueba y generación de datos

  • Casos de prueba: a partir de una historia de usuario, la IA puede generar casos de prueba para funcionalidades específicas.
  • Conjuntos de datos: La IA también puede generar perfiles de usuario para enriquecer las pruebas.

Retos de futuro

Aunque la IA aún no ha revolucionado la forma de trabajar de los probadores, se esperan cambios. Algún día podría generar casos de prueba y código. Sin embargo, la IA sigue cometiendo errores y sus pruebas plantean retos únicos, sobre todo en la IA generativa.

Las pruebas automatizadas son cada vez más habituales, pero algunos casos, sobre todo los relacionados con la usabilidad o la accesibilidad, siguen requiriendo la intervención humana.

Para dedicarse a la calidad del software, hay que disfrutar explorando lagunas y tener cierta autonomía, porque un probador suele estar solo en un proyecto. Las habilidades de comunicación son esenciales, así como la curiosidad constante por mantenerse al día.

El trabajo evoluciona con las preocupaciones del mundo digital: ecodiseño, gestión de datos, accesibilidad e IA.

Al fin y al cabo, ¿no es la calidad la clave del éxito de un proyecto?