Icono del sitio MTP

Sistemas cognitivos en el aseguramiento de la Calidad de Software

sistema cognitivo

Fran enciende su ordenador y accede a su área de trabajo a través de un sistema de seguridad biométrica. Nada más establecerse la conexión, una amable voz le dice:

Fran pronto se da cuenta de que el error se debe a una nueva forma de contratación que entraba en vigor el mes anterior y para la cual no se había creado ninguna historia de usuario en la pasada release. Afortunadamente, se trata de un cambio menor que el área de Desarrollo puede solucionar con rapidez. Al tratarse de una nueva funcionalidad, Fran crea nuevos casos de prueba con una nueva casuística, ejecuta los casos de prueba y tras obtener unos resultados positivos, actualiza el repositorio de pruebas. En ese momento Debbie le dice:

Esta puede ser la escena que, un día cualquiera dentro de no mucho tiempo, puede vivir Fran gracias a la introducción de sistemas cognitivos en su actividad diaria. Pero, ¿qué es un sistema cognitivo?

La cognición es una característica inherente al ser humano que le otorga la capacidad de razonar, tomar decisiones o resolver problemas a partir de la información que procesan sus sentidos pasada por el tamiz de las experiencias adquiridas y los sentimientos.

Traslademos, ahora, esta capacidad a un sistema informático. Un sistema cognitivo será aquel que sea capaz de tomar decisiones o resolver problemas a partir de la información que obtiene de su contexto, combinada con la información histórica que almacena (conocimiento) y las reglas que se han programado (razonamiento). Además, estos sistemas cuentan con la capacidad de aprender y adaptarse al contexto en el que se encuentran. El contexto de un sistema lo forman sus usuarios, sus estados internos y el resto de sistemas con los que interactúa, de los que obtiene información a través de mecanismos de monitorización de la actividad y de diferentes interfaces de entrada de datos: gráficos, textuales o de voz. Un sistema cognitivo será capaz de detectar cambios en su contexto y evaluar el impacto que puedan tener estos en sus procesos de razonamiento y de resolución de problemas para dar la respuesta adecuada en cada momento.

Veamos algunos de los posibles casos de uso que pueden darse con un sistema cognitivo de aseguramiento de la calidad. Imaginemos que estamos implantado el sistema cognitivo en un proyecto de desarrollo que sigue SCRUM. Además, el proyecto cuenta con un servicio de software que monitoriza y registra las actividades que se llevan a cabo durante todo el ciclo de vida. En este contexto, el sistema cognitivo ayudará de diferentes maneras:

Como hemos visto, los sistemas cognitivos, gracias a la aplicación de los últimos avances en Inteligencia Artificial y Big Data, serán capaces de dar asistencia a todos los actores involucrados en el desarrollo de soluciones software, sin importar la metodología o la tecnología utilizadas. Además, ayudarán a construir sistemas más seguros y eficaces en menos tiempo en contextos cada vez más complejos y exigentes.

Por Aitor Elorriaga

Consultor de MTP

Salir de la versión móvil