Nos partenaires

CNRS

Rechercher





Accueil du site > Français > Thèmes de recherche > Thème 7 - Sûreté de développement du logiciel > Equipe MACAO > Propositions de stages, thèses et post-doc > Thèses

Modèles et Protocoles de Coordination pour la Reconfiguration Dynamique des architectures logicielles embarquées

Contact : Brahim Hamid

Encadrants : B. Hamid (IRIT) et K. Drira (LAAS)

 

Descriptif du projet

Un système logiciel embarqué est dit reconfigurable, s’il peut modifier son comportement et son architecture selon l’évolution des exigences de son contexte d’utilisation et la variation des contraintes de son environnement d’exécution. La croissance constante de la complexité afférente et l’autonomie indispensable à la gestion des systèmes logiciels embarqués rend la reconfiguration de plus en plus importante. Les défis concernent autant le niveau modèle de conception que le niveau environnement de support d’exécution.

Le développement de ces systèmes selon les processus traditionnels n’est plus applicable dans ce contexte. De nouvelles méthodes sont nécessaires pour concevoir et provisionner les logiciels embarqués à architecture reconfigurable correcte par construction. Ceci a été identifié comme l’un des challenges des systèmes embarqués par la communauté de recherche (voir notamment le séminaire de J. Sifakis au LAAS [pages 26, http://www.laas.fr/laas/files/LAAS/...]). Un processus de conception multi-échelle des systèmes logiciels reconfigurables pour le domaine des logiciels embarqués est un verrou à la résolution duquel ce sujet peut contribuer par la modélisation basée sur les graphes dynamiquement transformables selon la théorie des grammaires de graphe. Ceci a été également reconnu comme le formalisme le plus adéquat pour la modélisation de la nouvelle génération des systèmes informatiques ubiquistes et mobiles par la communauté de recherche fondamentale (voir notamment la nouvelle théorie de R. Milner « Bigraphs » [http://www.cl.cam.ac.uk/ rm135/Bigr...]).

L’approche orientée service à base de composants est une solution émergente pour résoudre les défis que pose la conception et la réalisation des systèmes logiciels de nouvelle génération. Elle constitue une préoccupation des organismes de normalisation internationaux (OMG, OASIS, W3C, notamment). Nous citons notamment : Les propositions des nouveaux standards sur les architectures orientées service et à base de composant [http://www.osoa.org/display/Main/Se...]. Les travaux autour du modèle LwCCM de l’OMG, parallèlement à des travaux académiques qui ont notamment conduit à la définition du modèle à composants multi-échelle comme Fractal et sa spécialisation Think pour l’embarqué. Le profil MARTE, défini par l’OMG pour la modélisation et l’analyse des systèmes temps réel embarqués, intègre un package appelé NFP qui permet de décrire des propriétés non-fonctionnelles, propriétés que nous ciblons pour guider la reconfiguration dynamique.

Les contributions envisagées par cette étude portent sur la reconfiguration dynamique guidée par les modèles dans le processus de développement des systèmes logiciels embarqués. Elles cibleront à la fois le niveau modélisation et le niveau plates-formes d’exécution (middleware). Par ailleurs, l’étude s’intéresse au support du processus de raffinement pour le passage automatisée et fiable des modèles vers l’implémentation sans rupture de chaîne. Il est envisagé de réaliser une plate-forme ouverte intégrant processus, méthodologies, outils de modélisation, de production, de validation et d’exécution des systèmes logiciels embarqués à architecture dynamique. Cette plate-forme constituera un instrument de recherche et un environnement de développement de référence notamment pour les applications logicielles embarquées distribuées et critiques.

 

Objectifs du travail

Dans ce travail nous projetons d’explorer les directions de recherche nécessaires pour promouvoir le nouveau paradigme de développement guidé par les modèles des nouvelles architectures logicielles reconfigurables. De façon plus précise, nous nous intéressons à la coordination distribuée soutenant le processus de reconfiguration aux différents niveaux d’une architecture logicielle orientées service et à base de composant. Pour implanter la coordination, les algorithmes auto-stabilisants seront explorés. Ces algorithmes ne nécessitent pas une configuration initiale du système pour atteindre une configuration correcte. Ils peuvent servir de base pour des solutions de coordination pour la gestion de la cohérence de la reconfiguration. Les contributions de ce sujet se répartissent sur trois axes :

  • Le premier axe porte sur l’élaboration d’un modèle de calcul et de codage des algorithmes distribués pour bâtir un fondement formel permettant de maîtriser la complexité des mécanismes de coordination par auto-stabilisation.
  • Le deuxième axe porte sur l’élaboration des nouveaux mécanismes de coordination. Pour maîtriser cette tâche, deux phases seront distinguées. Dans un premier temps, l’effort portera uniquement sur la coordination horizontale sous l’hypothèse d’architecture monolithique des noeuds de déploiement. Un seul niveau de communication sera traité. Dans un second temps, nous procéderons à la généralisation pour couvrir à la fois la coordination verticale et la coordination horizontale. Nous étudierons alors les architectures multi-niveaux dans les noeuds pour gérer les nouvelles contraintes d’interdépendance entres les configurations des différents niveaux.
  • Le troisième axe porte sur l’élaboration d’une méthodologie pour développer des systèmes intégrés adaptables pour les logiciels dynamiquement reconfigurables embarqués. En effet, les efforts des deux étapes précédentes peuvent amener à établir des modèles pour capturer les différentes facettes de la reconfiguration, mais il faut établir un processus de développement permettant à la fois de spécifier les besoins de reconfiguration à différents niveaux de l’architecture.

 

Références

  1. K. Drira, et al. A framework of models for QoS-oriented adaptive deployment of multi-layer communication services in group cooperative activities. Computer Communications, 31(13):3003_3017, 2008.
  2. K. Drira, et al. Context-aware adaptation for group communication support applications with dynamic architecture. System and Information Sciences Notes (ISSN : 1753-2310 (Print)), 2(1):88_92, September 2007.
  3. K. Drira, et al. Using graph grammars for interaction style description, application to service-oriented architectures. International Journal on Computer Systems Science Engineering, 21(4):293_299, July 2006.
  4. B.Hamid et al. Designing Reconfigurable Component Systems with a Model Based Approach, ARTIST Workshop on Adaptive and Reconfigurable Embedded Systems, Saint Louis, MO, USA, avril 2008.
  5. B.Hamid et al. Designing fault-tolerant component based applications with a model driven approach, IFIP Workshop on Software Technologies for Future Embedded and Ubiquitous Systems (SEUS 2008) LNCS 5287.
  6. B.Hamid et al. Self-stabilizing distributed algorithm for resolving conflicts, International Workshop on Reliability in Decentralized Distributed Systems, 2007, LNCS 4806.