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

  1. PARRA ESPADA, PABLO
Dirigée par:
  1. Sebastián Sánchez Prieto Directeur/trice
  2. Óscar Rodríguez Polo Co-directeur/trice

Université de défendre: Universidad de Alcalá

Fecha de defensa: 19 octobre 2012

Jury:
  1. Daniel Meziat Luna President
  2. Agustín Martínez Hellín Secrétaire
  3. José María Drake Moyano Rapporteur
  4. Guillem Bernat Nicolau Rapporteur
  5. Segundo Esteban San Román Rapporteur

Type: Thèses

Teseo: 335986 DIALNET lock_openTESEO editor

Résumé

This thesis presents a methodology for developing component-based embedded software systems, under a multi-platform approach and integrating different development and analysis technologies. The foundation of this methodology is a framework called MICOBS. MICOBS defines an artefact called component domain in order to integrate different component models into it. A component domain is defined by a component model, a set of model-checking operations and a set of transformations. The component model of a particular domain is defined as an instance of a meta-model, with which the types of elements comprising the component model can be declared. Once the instance of the meta-model has been defined, the framework allows the addition of new components and the creation of new systems as a combination of them. The model-checking operations are used to validate the specific semantics of the component model. These operations, which are automatically executed by the framework's assertion engine, perform a well-formed check during system construction or component declaration. Most of these model-checking operations are generated from the very instance of the meta-model. The definition of the component domain is completed with a set of transformations, which can be used to import components that have already been implemented using an external toolset, or to generate different products, such as the final executable file of the application. The framework provides support for integrating components from different technologies into a single embedded software system. This integration is done by defining complex domains. These domains allows the creation of new types of elements and new transformations following a code generation pattern based on the definition and the implementation of specific connectors. An example of this integration techniques is provided using two different component technologies, namely EDROOM and MyCCM-HI. MICOBS also supports a development approach for the definition of generative patterns for the creation of embedded applications. These patterns, in turn, are based on the definition of abstract component models. These component models express the specic semantics of the application domains and can be used as assets in a product-line based development process. A use case of this approach, defining an abstract component model for the satellite on-board software domain, is presented. The framework includes the concept of platform as a specification variable. This way, each component declared within MICOBS can feature implementations associated to different platforms. Furthermore, the architectural models of the embedded systems built with MICOBS can be organised in multiple deployment alternatives, each of them linked to a set of deployment platforms. Using this key feature, the overall approach is not only platform-aware, in the sense that the models can be parameterised depending on the dierent platforms, but also platform-driven. This means that the processes within the framework, such as the transformations to obtain a given product from the architectural model of the system, are triggered with the selection of a particular deployment platform. The framework is also capable of integrating different analysis tools using modeldriven engineering techniques. Components can be annotated using specific models in order to obtain reports from the analysis of system properties using the composability and compositionality principles. Thanks to the platform concept included in the framework, the property annotations can be defined in terms of the platforms on which the elements can be deployed. From the architectural models of a system, and using the information attached to the different elements that comprise it, one or more products can be obtained. These products are later used as inputs for the tools that perform the analyses on the system's properties and obtain the pertaining reports. Finally, a packaging level has been defined to automate the configuration and deployment process of an embedded system. Within this level, applications are represented as a set of software elements and their corresponding software bundles. These elements can define configuration parameters that are later used by the framework to automate the configuration control process of the final application. Following the platform-aware approach, these configuration parameters can be declared either as platform-dependent or platform-independent. Furthermore, the application models themselves can show different alternatives attached to different platforms. Once an alternative and a platform are selected, MICOBS is able to generate the configuration and construction files needed to build the final executable image of the application. The packaging level has been defined below the component domain and composition level. The transformations defined by a component domain can thus automatically translate the architectural model of a system to its corresponding combination of software elements. By doing so, MICOBS allows managing the whole configuration and deployment process of the applications, from the higher level representation of the system using components, to the final executable file.