El RoQME Toolchain comprende una serie de herramientas destinadas a facilitar: (1) el modelado de métricas de calidad de servicio definidas en base a las propiedades no funcionales relevantes para cada sistema (p.ej., safety, rendimiento, consumo energético, puntualidad, interacción, etc.); y (2) la generación de la infraestructura software necesaria para, en tiempo de ejecución, monitorizar el contexto de ejecución y estimar, en base a él, la evolución de las métricas de calidad de servicio previamente modeladas. Tanto las herramientas incluidas en el RoQME Toolchain como el software generado por ellas, tienen dependencias de SmartMDSD (https://robmosys.eu/wiki/baseline:environment_tools:smartsoft:start): entorno de desarrollo basado en Eclipse, establecido en el Proyecto H2020 RobMoSys como uno de los frameworks de referencia para el desarrollo dirigido por modelos de software para robótica. De hecho, estas herramientas están disponibles a modo de plug-in Eclipse, listos para ser instalados en SmartMDSD. A pesar de ello, resultaría relativamente sencillo eliminar tanto la dependencia de SmartMDSD como la dependencia de Eclipse, para poder utilizar el RoQME Toolchain de forma completamente independiente en dominios de aplicación distintos al de la robótica. Las herramientas que integran el RoQME Toolchain han sido desarrolladas en el contexto del Integrated Technical Project (ITP) RoQME, financiado (en cascada) por el Proyecto H2020 RobMoSys (Grant Agreement No. 732410). Todas ellas son de código abierto y libre distribución (bajo licencia GNU General Public License v3.0), y están disponibles como plug-ins para Eclipse en GitHub. Link del activo: https://github.com/roqme/robmosys-roqme-itp
RoQME Toolchain
EQUIPOS Y COMPONENTES MÁS DESTACADOS
Lenguaje textual de modelado que permite especificar: (1) las propiedades no funcionales consideradas relevantes para el sistema; (2) las variables de contexto que se van a monitorizar; y (3) las observaciones (situaciones definidas en base al contexto) con impacto (positivo o negativo) en una o más de las propiedades no funcionales, previamente especificadas
Generador del código responsable de monitorizar el contexto (monitores)
Generador del código responsable de identificar la ocurrencia de observaciones (patrones contextuales). Este código será ejecutado por un motor CEP (Complex Event Processor), que estará suscrito a la información contextual proporcionada por los monitores y publicará las observaciones identificadas.
Generador del código responsable de estimar las métricas de calidad de servicio. Este código será ejecutado por un motor basado en Redes Bayesianas, que estará suscrito a las observaciones proporcionadas por CEP y publicará las métricas cada vez que éstas se actualicen
Generación de un entorno basado en Graphana e INFLUX DB, que permitirá (1) grabar toda la información que intercambian los módulos anteriores, esto es: monitores (información de contexto), CEP (observaciones) y Red Bayesiana (métricas); (2) visualizar gráficamente dicha información en tiempo real; y (3) reproducir los experimentos, previamente grabados
SERVICIOS OFRECIDOS POR EL ACTIVO
ENTIDAD GESTORA DEL ACTIVO
Quercus Software Engineering Group
http://quercusseg.unex.es/Universidad de Extremadura. Av. de la Universidad s/n., 10003, Cáceres
Cristina Vicente Chocote - cristinav@unex.es - 927257000 (ext. 51660)