Skip to main content
European Commission logo
español español
CORDIS - Resultados de investigaciones de la UE
CORDIS
Contenido archivado el 2024-06-18

Run-time Model Projections for Software Failure Prediction

Article Category

Article available in the following languages:

Software que piensa por sí solo

En una época en la que la sociedad se sustenta cada vez más en contar con software de alta calidad, es necesario que las aplicaciones sean tan adaptables como sea posible. Un grupo de investigadores financiado por la Unión Europea ha contribuido a desarrollar sistemas de software sofisticados que pueden adaptarse rápidamente frente a los cambios en las necesidades y en el entorno de los usuarios.

Economía digital icon Economía digital

Los sistemas autoadaptativos son programas informáticos capaces de reaccionar y reconfigurarse por sí solos, lo cual minimiza la necesidad de intervención humana e, idealmente, garantiza el cumplimiento de los requisitos de los usuarios de por vida. No obstante, en los paradigmas de ingeniería del software actuales, los sistemas no anticipan los eventos, sino que solo reaccionan cuando se producen. La falta de capacidad para anticiparse a los cambios puede dar lugar a tiempos de parada del software. El proyecto RUNMORE (Run-time model projections for software failure prediction) contribuyó al desarrollo sistemático de sistemas adaptables dinámicamente que pueden predecir eventos y posibles fallos de forma automática. Los investigadores aplicaron un concepto nuevo que implica modelos en tiempo de ejecución que dotan a los sistemas de software de capacidades potentes de razonamiento sobre posibles cambios y la capacidad de gestionarlos. Los modelos en tiempo de ejecución derivan de las tecnologías de desarrollo de software a partir de modelos. Se integran en el sistema durante su ejecución y expresan ciertas reglas de adaptación. El trabajo se centró en estudiar cómo se pueden utilizar estos modelos para monitorizar y analizar el comportamiento de sistemas complejos de software, su entorno de implementación y sus usuarios. El equipo también ofreció una solución que resuelve los conflictos entre múltiples requisitos durante el proceso de adaptación. Un ejemplo típico de sistema adaptativo son las aplicaciones web que mejoran la experiencia de navegación mediante la adaptación del contenido y el comportamiento a las preferencias del usuario. A partir de este ejemplo, los investigadores demostraron cómo adaptar las reglas de difusión de un servidor según las demandas de los clientes. En entornos donde se procesan grandes flujos de eventos, el procesamiento de eventos complejos (CEP) permite identificar los datos relevantes y responder a ellos del modo más rápido posible. Los investigadores encontraron una nueva infraestructura que permite aprender reglas de CEP mediante el análisis detallado de patrones en los rastros históricos de los incidentes. Este hallazgo podría permitir el desarrollo de un nuevo tipo de sistemas de software capaz de aprender reglas complejas, lo cual les ayudaría a reconfigurarse y adaptarse a los cambios. El trabajo de los investigadores contribuyó a mejorar el comportamiento del software a lo largo del tiempo mediante la recopilación de información sobre los cambios en su entorno y en los requisitos de los usuarios. Estos sistemas autoadaptables no solo lidian automáticamente con los cambios, sino que también pueden preverlos.

Palabras clave

Software, sistemas autoadaptativos, modelo en tiempo de ejecución, predicción de fallos, procesamiento de eventos complejos

Descubra otros artículos del mismo campo de aplicación