04.07.2013 Views

Modélisation des systèmes temps-réel répartis embarqués pour la ...

Modélisation des systèmes temps-réel répartis embarqués pour la ...

Modélisation des systèmes temps-réel répartis embarqués pour la ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

<strong>Modélisation</strong> <strong>des</strong> <strong>systèmes</strong> <strong>temps</strong>-<strong>réel</strong> <strong>répartis</strong> <strong>embarqués</strong><br />

créé. Dans le cadre de nos travaux, nous nous focalisons sur les réseaux de Petri. En fonction <strong>des</strong><br />

résultats <strong>des</strong> analyses formelles, cette étape peut conduire à un raffinement de <strong>la</strong> <strong>des</strong>cription de<br />

l’application afin de préciser <strong>la</strong> structure de l’application.<br />

Tout au long du processus de conception, il doit être possible d’exploiter <strong>la</strong> <strong>des</strong>cription de l’application<br />

selon différents aspects ; ceci permet de s’assurer de <strong>la</strong> validité de l’architecture. Nous<br />

décrivons <strong>des</strong> règles de génération <strong>pour</strong> différents <strong>la</strong>ngages de programmation, plus particulièrement<br />

Ada, C et Java. Nous présentons également <strong>des</strong> règles de traduction <strong>pour</strong> <strong>la</strong> production d’un<br />

réseau de Petri, de sorte qu’il soit possible d’analyser certaines propriétés comportementales. Le<br />

système ainsi obtenu peut être testé afin de s’assurer du respect <strong>des</strong> contraintes non fonctionnelles<br />

spécifiées dans <strong>la</strong> modélisation initiale.<br />

I-3 Organisation de <strong>la</strong> thèse<br />

Notre thèse est présentée comme suit. Dans le chapitre II, nous étudions d’abord différentes<br />

approches utilisées <strong>pour</strong> <strong>la</strong> configuration <strong>des</strong> intergiciels. La configuration <strong>des</strong> intergiciels peut être<br />

abordée sous différents aspects, qui peuvent éventuellement être complémentaires. Nous montrons<br />

comment les <strong>la</strong>ngages de <strong>des</strong>cription d’architecture constituent une bonne solution à notre problématique.<br />

Le chapitre III conclut notre état de l’art par une étude détaillée du <strong>la</strong>ngage AADL. Nous<br />

montrons comment ce <strong>la</strong>ngage peut être exploité <strong>pour</strong> décrire précisément l’organisation d’une<br />

application ; une telle précision de <strong>des</strong>cription permet d’extraire toutes les informations nécessaires<br />

à <strong>la</strong> mise en p<strong>la</strong>ce d’un intergiciel adapté. Nous présentons également les évolutions de<br />

syntaxe que nous avons proposées <strong>pour</strong> faciliter <strong>la</strong> <strong>des</strong>cription de l’assemb<strong>la</strong>ge <strong>des</strong> applications et<br />

les communications.<br />

Le chapitre IV présente <strong>la</strong> façon dont nous exploitons AADL dans le cadre de nos travaux.<br />

Nous étudions tout d’abord <strong>la</strong> pertinence d’AADL comme <strong>la</strong>ngage de configuration <strong>pour</strong> décrire<br />

efficacement une application et son déploiement. Nous montrons ainsi comment AADL peut être<br />

intégré au sein d’outils existants <strong>pour</strong> fournir un <strong>la</strong>ngage de <strong>des</strong>cription portable entre différents<br />

outils.<br />

Nous montrons ensuite comment mettre en p<strong>la</strong>ce un processus de conception complet <strong>pour</strong><br />

<strong>la</strong> vérification et <strong>la</strong> production automatique d’une application et de l’intergiciel associé. La mise<br />

en p<strong>la</strong>ce d’un tel processus implique l’identification <strong>des</strong> constructions architecturales décrites en<br />

AADL et <strong>la</strong> spécification d’un exécutif. Nous décrivons un ensemble de directives architecturales<br />

permettant de guider l’utilisateur dans <strong>la</strong> <strong>des</strong>cription de l’application et nous donnons leur signification<br />

en terme de spécification comportementale.<br />

Les chapitres V et VI détaillent <strong>la</strong> façon dont nous traduisons une <strong>des</strong>cription AADL en une<br />

application exécutable. Nous y exploitons les concepts introduits dans le chapitre IV <strong>pour</strong> traduire<br />

les constructions AADL en <strong>la</strong>ngage de programmation et configurer l’intergiciel correspondant.<br />

Nous nous basons <strong>pour</strong> ce<strong>la</strong> sur l’architecture d’intergiciel schizophrène et son imp<strong>la</strong>ntation de<br />

référence, PolyORB.<br />

Le chapitre VII présente finalement l’exploitation que nous pouvons faire d’une <strong>des</strong>cription<br />

AADL <strong>pour</strong> vérifier formellement l’architecture correspondante. Nous utilisons le model checking<br />

<strong>pour</strong> valider <strong>la</strong> structure de l’application vis-à-vis <strong>des</strong> flux d’exécution. Les constructions formelles<br />

que nous déduisons de <strong>la</strong> <strong>des</strong>cription AADL se basent sur les mêmes spécifications d’exécutif<br />

que celles que nous avons définies <strong>pour</strong> <strong>la</strong> génération de code. Nous pouvons ainsi analyser le<br />

comportement de l’application qui sera générée.<br />

Le chapitre VIII constitue une mise en application de notre méthodologie. Nous présentons<br />

4 c○ 2007 Thomas Vergnaud

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!