EVALUACIÓN RIGUROSA DE LA CALIDAD DE SISTEMAS EMPOTRADOS Y DE TIEMPO REAL
Descripción |
El grupo de investigación Design and Testing of Realiable Systems de la UCM se dedica al desarrollo de marcos formales para el proceso de testing de sistemas y la evaluación de su rendimiento.
La aplicación de métodos rigurosos es especialmente relevante en sistemas en los que, debido a razones de seguridad, es necesario establecer que durante el proceso de desarrollo no se han producido errores. De hecho, su uso en las etapas iniciales del proceso de desarrollo, durante el establecimiento de los requerimientos y su especificación, incrementa su efectividad. No obstante, su aplicabilidad no está restringida a estos niveles, pudiendo ser usados a lo largo de todo el ciclo de desarrollo.
Imagen de la integración de: Osmius, herramienta de monitorización comercial, y PASTE, herramienta de testing del grupo de investigación.
Los sistemas en tiempo real están presentes en nuestra vida cotidiana: aviones, automóviles, televisores, lavadoras, microondas, teléfonos móviles, etc. La principal característica de estos sistemas, que los distingue de otros tipos de sistemas, es el tiempo de interacción. Esta propiedad requiere que la evaluación del correcto funcionamiento de un sistema dependa no sólo del resultado lógico producido, sino también del tiempo en que se produce ese resultado. Por tanto, un sistema en tiempo real requiere, para ser considerado correcto, emitir las respuestas correctas y cumplir las restricciones temporales establecidas.
Existen numerosos ejemplos de este tipo de sistemas en los que un fallo en su funcionamiento temporal sería inaceptable. Por ejemplo, el software encargado de controlar un respirador artificial, la gestión del motor de un coche, el funcionamiento de un marcapasos, la actualización de planes de vuelo, etc. Estos sistemas deben, por tanto, estar libres de fallos ya que de lo contrario traería consecuencias catastróficas. Existen otro tipo de sistemas donde estos fallos en su comportamiento temporal son aceptables pero deberían ser reducidos. Por ejemplo, los relojes asociados con lavadoras, microondas y hornos pertenecen a este segundo tipo.
¿Cómo funciona? |
Con el fin de proporcionar una metodología que pueda adaptarse con facilidad a sistemas que consideren diferentes dominios temporales, se ha propuesto un marco de testing integrado que puede ser utilizado para tratar con tiempos fijos, intervalos temporales o variables aleatorias, en función de la especificación requerida por el sistema.
El uso de esta nueva metodología de testing proporcionará a los diseñadores de los sistemas flexibilidad a la hora de seleccionar el dominio temporal más adecuado en cada caso, así como la posibilidad de aplicarlo en un amplio número de sistemas en los que las nociones temporales requeridas presenten diferentes grados de precisión.
Cabe destacar que el uso de representaciones formales de los sistemas permite un análisis riguroso de sus propiedades. En particular, permite establecer la corrección del sistema final respecto a la especificación, el cumplimiento de las condiciones requeridas para el mismo, el nivel de preferencia de un sistema respecto a otro en base a un determinado criterio, la existencia de posibles comportamientos incorrectos, etc.
Ventajas |
La garantía de la calidad de los sistemas mediante técnicas rigurosas de testing es una actividad de protección. Su objetivo principal es encontrar errores durante las etapas iniciales del desarrollo para evitar que se propaguen a fases posteriores o se conviertan en defectos después de la entrega del sistema.
Estas tecnologías hacen énfasis en fallos en aspectos temporales que usualmente pasan desapercibidos y que provocan un aumento de los costes de revisión y mantenimiento de los sistemas.
¿Dónde se ha desarrollado? |
El grupo de investigación Design and Testing of Realiable Systems de la UCM tiene una dilatada experiencia en la definición y aplicación de métodos rigurosos para la especificación y análisis de sistemas. Esta experiencia se ve avalada tanto por sus numerosas publicaciones como por su participación en proyectos europeos, del Plan Nacional de I+D+i e ITEA II para desarrollos industriales como en colaboraciones puntuales con empresas a través de contratos acogidos al artículo 83 de la LOU.
Durante los últimos años el grupo ha desarrollado diferentes metodologías, basadas en métodos formales, para el testing de sistemas que presenten restricciones temporales referentes a la ejecución de las acciones que en ellos pueda tener lugar. Dichas técnicas abordan la aplicación de tests para la comprobación de dichas propiedades y la obtención de diagnósticos respecto a la corrección de los sistemas. Estas técnicas se han evaluado tanto en colaboraciones puntuales con socios industriales nacionales como en el análisis de protocolos de comunicaciones asociados con redes móviles.
Y además |
Las técnicas desarrolladas por el grupo representan un buen compromiso entre los métodos formales con fuerte base matemática (impracticables a nivel industrial) y las actividades de testing artesanales usadas mayoritariamente en la industria. Más importante, las técnicas del grupo de investigación hacen un énfasis especial en asegurar el comportamiento correcto de los sistemas en lo concerniente a sus aspectos temporales, que no son tratados con la suficiente importancia durante las fases de testing del sistema.
Contacto |
© Oficina de Transferencia de Resultados de Investigación – UCM |
Descargas PDF |
Clasificación |
Investigadores responsables |
Luis Fernando Llana Díaz: llana@sip.ucm.es
María de las Mercedes García Merayo: mgmerayo@fdi.ucm.es
Departamento: Sistemas Informáticos y Computación
Facultad: Informática