Integración de tecnologías de desarrollo y análisis basadas en componentes bajo un enfoque multi-plataforma

  1. PARRA ESPADA, PABLO
Dirigida por:
  1. Sebastián Sánchez Prieto Director/a
  2. Óscar Rodríguez Polo Codirector/a

Universidad de defensa: Universidad de Alcalá

Fecha de defensa: 19 de octubre de 2012

Tribunal:
  1. Daniel Meziat Luna Presidente/a
  2. Agustín Martínez Hellín Secretario/a
  3. José María Drake Moyano Vocal
  4. Guillem Bernat Nicolau Vocal
  5. Segundo Esteban San Román Vocal

Tipo: Tesis

Teseo: 335986 DIALNET lock_openTESEO editor

Resumen

Esta tesis presenta una metodología para el desarrollo de sistemas software empotrados basados en componentes, bajo un enfoque multi-plataforma e integrando distintas tecnologías de desarrollo y análisis. La base de esta metodología es un framework llamado MICOBS. MICOBS define un concepto, denominado dominio de componentes, que permite la integración, dentro del framework, de distintos modelos de componentes. Un dominio de componentes está definido por un modelo de componentes, un conjunto de operaciones de comprobación de modelos y un conjunto de transformaciones. El modelo de componentes asociado a un determinado dominio se define como una instancia de un meta-modelo. Este meta-modelo permite declarar los tipos de elementos que conforman el modelo de componentes. Una vez que la instancia del meta-modelo ha sido definida, el framework permite la incorporación de nuevos componentes y la definición de nuevos sistemas a partir de éstos. Las operaciones de comprobación de modelos se emplean para validar la semántica específica del modelo de componentes. El motor de comprobación de MICOBS ejecuta de forma automática estas operaciones durante la construcción de los sistemas o la declaración de los componentes. La mayoría de estas operaciones se generan a partir de la propia instancia del meta-modelo. La definición del dominio de componentes se completa con una serie de transformaciones, las cuales pueden ser utilizadas para para importar componentes implementados previamente mediante herramientas externas o para generar distintos productos, como el ejecutable final de la aplicación. El framework proporciona soporte para la integración de componentes de distintas tecnologías en un único sistema software. Esta integración se lleva a cabo mediante la definición de dominios complejos. Estos dominios permiten la creación de nuevos tipos de elementos y nuevas transformaciones, siguiendo un patrón de generación basado en la definición y la implementación de conectores específicos. El trabajo proporciona un ejemplo de estas técnicas de integración de componentes para las tecnologías EDROOM y MyCCM-HI. MICOBS soporta a su vez un enfoque de desarrollo para la definición de patrones de generación de aplicaciones empotradas. Estos patrones se basan, a su vez, en la definición de modelos de componentes abstractos. Estos modelos de componentes expresan la semántica específica de los dominios de aplicación, y pueden ser empleados en un proceso de desarrollo basado en línea de productos. El trabajo proporciona un caso de uso de este enfoque que define un modelo de componentes abstracto para el dominio del software embarcado en satélites. El framework incluye el concepto de plataforma como una variable de especificación. Así, cada componente declarado dentro de MICOBS puede estar implementado para distintas plataformas. Además, los modelos arquitecturales de los sistemas software construidos con MICOBS se pueden organizar en múltiples alternativas de despliegue, cada una de ellas asociada a un conjunto de plataformas de despliegue. Empleado esta propiedad esencial, el enfoque completo no es sólo platform-aware, en el sentido de que los modelos se pueden parametrizar en función de las distintas plataformas, sino también dirigido por la plataforma. Esto significa que los procesos internos del framework, como las transformaciones para obtener un producto dado a partir del modelo arquitectural del sistema, se disparan a partir de la selección de una plataforma de despliegue concreta. El framework es capaz de también de integrar distintas tecnologías de análisis empleando técnicas de ingeniería de desarrollo dirigida por modelos. Los componentes pueden ser anotados empleado modelos específicos con el objeto de obtener informes de análisis de las propiedades de los sistemas empleando los principios de composability y compositionality. Gracias al concepto de plataforma incluido en el framework, la anotación de las propiedades se puede definir en función de las plataformas sobre las que pueden ser desplegados los elementos. A partir de los modelos arquitecturales de las aplicaciones, y empleando la información asociada a los distintos elementos que los componen, se pueden obtener uno o más productos. Estos productos se utilizan posteriormente como entrada de las herramientas que llevan a cabo los análisis de las propiedades de los sistemas y obtienen los informes pertinentes. Finalmente, se ha definido un nivel de empaquetado que permite automatizar los procesos de despliegue y configuración de un sistema empotrado. Dentro de este nivel, las aplicaciones se representan como un conjunto de elementos software con sus correspondientes paquetes software. Estos elementos pueden definir parámetros de configuración que son usados posteriormente por el framework para automatizar el proceso de control de configuración de la aplicación final. Siguiendo el enfoque sensible a la plataforma, los parámetros de configuración se pueden declarar de forma tanto independiente como dependiente de la plataforma de despliegue. Además, los propios modelos de las aplicaciones pueden definir distintas alternativas de despliegue asociadas a distintas plataformas. Una vez que se ha seleccionado una alternativa y su correspondiente plataforma, MICOBS es capaz de generar los archivos de configuración y de construcción necesarios para obtener el ejecutable final de la aplicación. El nivel de empaquetado se ha definido un escalón por debajo del nivel de los dominios de componentes y de composición. Las transformaciones definidas por los dominios de componentes pueden, por lo tanto, traducir de forma automática el modelo arquitectural de un sistema a su combinación correspondiente de elementos software. De esta forma, MICOBS permite gestionar el proceso completo de despliegue y configuración de las aplicaciones, desde la representación de alto nivel del sistema empleando componentes, hasta el ejecutable final.