JanIA® es la plataforma de inteligencia artificial de MTP que tiene como fin explotar la información generada por los procesos y entornos de software donde se ejecutan aplicaciones para, con un aprendizaje automático, conseguir un gobierno del software que contribuya al aseguramiento y calidad de los sistemas.
En este post, vamos a explicar una aplicación práctica de JanIA®, tecnología que redunda en beneficios para el cliente.
Problema
Las organizaciones que ponen en explotación sistemas TIC, bien porque llevan a cabo el desarrollo y mantenimiento del software (SW), bien porque lo adquieren a un tercero, precisan disponer de soluciones que ayuden, en etapas tempranas del ciclo de vida, a reorientar el esfuerzo en las tareas técnicas del SDLC (desarrollo y mantenimiento), así como facilitar la toma decisión del paso a explotación de aplicativos SW para el objetivo final de minimizar el número de incidencias en producción, reducir costes de mantenimiento y reducir el time-to-market.
Solución
Desde MTP se ha puesto en práctica la Inteligencia Artificial, en concreto algoritmos de aprendizaje automático, con el fin de predecir el riesgo de aplicaciones software.
Para aplicar modelos predictivos, hace falta disponer de datos de calidad y en cantidad. Para ello, se han empleado los que se disponen en los entornos de pruebas y de explotación, lo que permite establecer correlaciones entre los datos de entrada y las incidencias que se producen en explotación y de esta forma poder predecir el riesgo de una aplicación.
Para poder entrenar el modelo se han empleado los siguientes datos: análisis estáticos de calidad del código fuente, pruebas funcionales, pases a producción e Incidencias identificadas en producción. Los resultados se visualizan en un sencillo cuadro de mando (véase la siguiente ilustración).
Ilustración 1: Cuadro de Mando JanIA® para la predicción del riesgo de aplicaciones
Resultados
Los modelos predictivos han permitido calcular, con cierto nivel de confianza, el riesgo de una aplicación antes de comenzar las pruebas de validación, por lo que ha ayudado a orientar las pruebas a aquellas funcionalidades con niveles de fiabilidad y seguridad inferiores a las esperadas. Asimismo, también se ha empleado antes de pasar una aplicación a producción como soporte a la toma de decisión del GO-NOGO a dicho entorno porque el número de incidencias previsto es superior a un umbral establecido.
La solución JanIA® para predicción del riesgo de aplicaciones ha permitido ahorrar costes, porque cada incidencia detectada en una fase es aproximadamente 10 veces más barata que detectarla en la siguiente (Barry Boehm). También ha permitido reorientar el esfuerzo en aquellas áreas funcionales con mayor densidad de incidencias y de esta forma también reducir el número de incidencias. Y, por último y no menos importante, por el hecho de evitar promociones de aplicaciones que posteriormente se tendrían que rechazar, también se ha conseguido reducir el time-to-market.
Luis Redondo
Responsable de Innovación de MTP