Assemblage de composants digne de confiance: de l'expression des besoins à la spécification – TACOS
Le projet TACOS propose une approche par composants pour la sp´ecification de syst`emes sˆurs, depuis
l'expression des besoins jusqu'`a une sp´ecification formelle, en utilisant ou adaptant des langages et des
outils existants. Le domaine d'application choisi est celui du transport ; ce choix r´epond `a une demande
forte de la R´egion Lorraine concernant la certification de tels syst`emes. Ces syst`emes, `a la fois distribu´es
et embarqu´es, n´ecessitent l'expression de propri´et´es fonctionnelles et non fonctionnelles, incluant entre
autres des contraintes temporelles et de disponibilit´e. Notre proposition est motiv´ee par :
1. une demande de plus en plus forte des d´ecideurs pour la certification et la justification de la confiance
`a accorder aux logiciels dans de tels syst`emes
2. e rˆole d'une approche rigoureuse pour l'expression des besoins, n´ecessaire pour la construction de
syst`emes dignes de confiance r´epondant aux caract´eristiques de l'environnement.
Le projet vise `a r´epondre aux questions suivantes :
- Au niveau de l'expression des besoins : comment prendre en compte des propri´et´es non fonctionnelles
d`es les premi`eres ´etapes du d´eveloppement ? Est-il possible de combiner l'utilisation des diagrammes de
contexte introduits par Jackson avec la m´ethode d'analyse des besoins KAOS? Peut-on les combiner avec
l'utilisation de certains diagrammes UML ?
- Au niveau de la sp´ecification : est-il possible d'utiliser la m´ethode formelle B avec des extensions
comme par exemple le calcul des dur´ees ou en coop´eration avec d'autres formalismes tels que CSP ou les
automates temporis´es ?
Les VERROUS SCIENTIFIQUES suivants ont ´et´e identifi´e dans les approches par composants existantes :
1. L'identification de la bonne abstraction pour l'expression d'un composant. La sp´ecification d'un composant
doit contenir les informations n´ecessaires pour son utilisation dans un contexte donn´e. Un composant
peut lui-mˆeme ˆetre d´efini comme une combinaison de composants existants. Dans ce cas, toutes les informations
n´ecessaires `a la coop´eration entre les divers composants doivent ˆetre connues. Comment savoir
si l'introduction d'un composant dans l'architecture d'un syst`eme peut ˆetre accept´ee ou refus´ee ? Cette
question rel`eve du probl`eme connu sous le nom d'interop´erabilit´e : comment peut-on s'assurer qu'un composant
donn´e est correctement utilis´e par le syst`eme client et que les ressources requises par ce composant
sont disponibles ?
2.Le besoin de langages de haut niveau pour exprimer les composants et leur assemblage, depuis l'expression
des besoins jusqu'`a la sp´ecification. Ces langages doivent ˆetre suffisamment riches pour exprimer des
m´ecanismes d'assemblage entre composants et prendre en compte la v´erification de la compatibilit´e et de
l'interop´erabilit´e. Des outils supports sont n´ecessaires pour la cr´edibilit´e de l'approche.
3. Les syst`emes embarqu´es. Dans le domaine d'application choisi, les aspects temps r´eel sont cruciaux,
aspects pour lesquels peu d'´etudes ont ´et´e r´ealis´ees au niveau de l'expression des besoins. Quelques
extensions de B avec la logique temporelle permettent d'exprimer des sp´ecifications temps r´eelles.
4. La tra¸cabilit´e entre le mod`ele des besoins et la sp´ecification. La notion de composant s'applique
aussi bien au niveau de la solution logicielle que de l'expression des besoins. Ce point rel`eve encore du
domaine de la recherche. La sp´ecification d'un syst`eme consiste `a transformer le mod`ele des besoins
en une architecture de syst`eme. Le probl`eme est de trouver des r`egles de transformation permettant la
transformation des ´el´ements du mod`ele des besoins en ´el´ements de la sp´ecification du syst`eme qui forment
un ensemble coh´erent de composants.
Le projet TACOS portera sur les trois grands axes suivants :
1. L'expression de propri´et´es non fonctionnelles au niveau de l'expression des besoins.
2. La sp´ecification d'un assemblage de composants digne de confiance. L'approche doit se d´ecliner au
niveau de la sp´ecification des composants, au niveau de l'assemblage des composants et au niveau de la
v´erification de l'assemblage.
3. La tra¸cabilit´e entre l'expression des besoins et la sp´ecification des composants.
LE CARACT`ERE INNOVANT DU PROJET r´eside dans l'utilisation de composants au niveau de la
sp´ecification avec un int´erˆet particulier pour leur assemblage : description, v´erification et outils de preuve.
Le d´efi est de construire des syst`emes dignes de confiance qui satisfassent les besoins, avec comme domaine
d'application celui des syst`emes de transport. Afin de construire le bon syst`eme, les besoins doivent ˆetre
formalis´es. L'approche propos´ee est un atout important pour aborder le probl`eme de la certification : la
d´efinition de la confiance est abord´ee au niveau du produit avec l'utilisation de composants dignes de
confiance, mais aussi au niveau du processus de d´eveloppement avec l'assemblage digne de confiance de
composants.
LES RETOMBEES SCIENTIFIQUES DU PROJET seront :
1. La construction de syst`emes logiciels dignes de confiance `a partir de composants existants. 2. Une
approche incr´ementale pour sp´ecifier et v´erifier l'assemblage de composants. 3. L'expression de besoins
non fonctionnels et leur int´egration dans la sp´ecification
Coordination du projet
Université
L'auteur de ce résumé est le coordinateur du projet, qui est responsable du contenu de ce résumé. L'ANR décline par conséquent toute responsabilité quant à son contenu.
Partenariat
Aide de l'ANR 502 970 euros
Début et durée du projet scientifique :
- 36 Mois