Identifiant pérenne de la notice : 226512630
Notice de type
Notice de regroupement
Note publique d'information : Le développement de logiciels pour les systèmes embarqués présente de nombreux défis.
Cette thèse s'intéresse à ceux posés par les interactions entre les trois phases de
conception, d'implantation et de validation. Nous nous intéressons aux caractéristiques
du langage de conception et aux techniques de compilation qui permettent d'obtenir
dans notre approche l'implantation et un modèle du système. L'analyse de ce modèle
permet la validation de l'implantation, ce qui suppose que ce modèle représente fidèlement
le système implanté. Nous proposons la construction d'un langage de conception basé
sur l'utilisation de composants dont le comportement dynamique est supposé connu.
Nous illustrons cette démarche avec un prototype complet appelé Buzz, dans lequel
les composants sont des composants Think accompagnés de leur modèle comportemental
en BIP. Le compilateur associé à Buzz génère une architecture à composants Think pour
l'implantation et un modèle à composants BIP pour les analyses. Nous évaluons Buzz
à travers deux expériences. La première présente le développement d'un logiciel pour
un exemple simple sur lequel nous démontrons la pertinence des choix techniques. Think
nous permet un support d'implantation complet et BIP rend possible la vérification
d'un ensemble de propriétés dynamiques. La deuxième expérience est un portage de l'implantation
d'un protocole radio utilisé dans des réseaux de capteurs et développée de manière
classique, vers Buzz. Elle démontre l'effectivité de notre proposition en termes de
langage (Buzz structure et simplifie le code original) ainsi qu'en termes d'outils
(compilation et vérification).
Note publique d'information : Software development for embedded systems has many challenges. ln this thesis, we
address those related to the interactions between the three following phases of the
software development process: the design phase, the implementation phase and the validation
phase. We study the design language characteristics and compilation techniques. ln
our approach, they allow the creation of both an implementation of the system and
a model for this implementation. Provided that this model faithfully corresponds to
the implementation, the analysis of the model can validate the implemented system.
We propose a process for building a language based on software components for which
the dynamic behavior is supposed to be given. We illustrate this process with a prototype
called Buzz. Buzz uses Think components enriched with their operation al behavioral
model in BIP. We developed a compiler for Buzz by extending the current Think compiler.
Il generates both an architecture of Think components for the implementation and a
BIP model for the analysis. We evaluate Buzz through two experiments. The first ex
periment details the software development for an academical example on which we show
the soundness of our technical choices. Think provides implementation support (compilation,
optimization, deployment) and BIP allows us to verify the system's dynamic properties.
The second ex periment focuses on porting to Buzz an application convention ail y
developed for a sensor network radio protocol. It underlines the efficiency of our
proposaI both in terms of programming language (the result is more structured and
simpler than the original code) and in terms of compilation tools and verifications.