Bridging the Gap between Component-based Design and Implementation with a Reflective Programming Language

Abstract : Component-based Software Engineering studies the design, development and maintenance of software constructed upon sets of connected components. Existing component-based models are frequently transformed into non-component-based programs, most of the time object-oriented, for runtime execution and then many component-related concepts, e.g. explicit architecture, vanish at the implementation stage. The main reason why is that with objects the component related concepts are treated implicitly and therefore the original intentions and qualities of the component-based design are hidden. This paper presents a reflective component-based programming and modeling language, which proposes the following original contributions: 1) Components are seen as objects in which requirements, architecture descriptions, connection points, etc. are explicit. This core idea aids in bridging the gap between component-based modeling and programming; 2) It revisits standard solutions for reification in the context of components when using the component-oriented reification to build up an executable meta-model designed on the idea of "everything is a component", allowing intercession on component descriptors and their instances; 3) It integrates reflection capabilities, making it possible to develop standard component-based application, but also to perform advanced architecture checking, code refactoring or model transformations using the same language.
Type de document :
Rapport
RR-13028, 2013
Liste complète des métadonnées

Littérature citée [27 références]  Voir  Masquer  Télécharger

https://hal-lirmm.ccsd.cnrs.fr/lirmm-00862477
Contributeur : Petr Spacek <>
Soumis le : lundi 16 septembre 2013 - 17:27:14
Dernière modification le : jeudi 11 janvier 2018 - 06:26:11
Document(s) archivé(s) le : jeudi 6 avril 2017 - 21:00:18

Fichier

onward13-compo.pdf
Fichiers produits par l'(les) auteur(s)

Identifiants

  • HAL Id : lirmm-00862477, version 1

Collections

Citation

Petr Spacek, Christophe Dony, Chouki Tibermacine, Luc Fabresse. Bridging the Gap between Component-based Design and Implementation with a Reflective Programming Language. RR-13028, 2013. 〈lirmm-00862477〉

Partager

Métriques

Consultations de la notice

332

Téléchargements de fichiers

314