Projet :
LANDE

Précédent : Langages déclaratifs
Remonter : Conception et validation de logiciels
Suivant : Logiciels
Domaines d'applications
Mots clés : Sûreté, confidentialité,
intégrité, logiciel critique, carte à puce, commerce
électronique, génération de jeux de test, outil de débogage, base
de données déductive, architecture sécurisée .
Résumé :
Les deux cibles privilégiées du projet Lande sont:
- 1.
- Les applications qui exigent un degré de confiance
très important justifiant l'emploi de techniques reposant sur
des méthodes formelles. Il peut s'agir de logiciels critiques
pour la confidentialité ou l'intégrité des informations, la
sécurité des personnes.
- 2.
- Les logiciels complexes ou qui nécessitent des
modifications fréquentes (aide à la démonstration,
reconnaissance de la parole, systèmes qui mettent en oeuvre
des ensembles de règles devant suivre les évolutions du
marché ou de la législation): il s'agit du domaine
d'excellence des langages de programmation logique.
De par sa nature même, le projet LANDE est
orienté «technologie» plutôt que «domaine d'application». Les
domaines cités ici sont donc des illustrations de travaux passés
ou en cours, plutôt que des centres d'intérêt du projet.
On peut identifier deux cibles privilégiées pour les outils
formels et les langages de haut niveau qui sont au coeur de nos
activités:
- La première concerne les applications exigeant un degré de
confiance très important qui justifie l'emploi de techniques
reposant sur des méthodes formelles. Il peut s'agir de
logiciels critiques pour la confidentialité ou l'intégrité des
informations, la sécurité des personnes. Sur ce thème, nous
travaillons (dans le cadre de Dyade et d'une collaboration avec
Bull-CP8) à l'application de techniques
d'analyse de programmes à la vérification de programmes Java,
avec comme domaine d'application les cartes à puce, notamment
pour le commerce électronique (cf modules 6.1.3 et 7.3). On peut citer
également dans cette catégorie nos travaux sur la génération
automatique de jeux de test qui se poursuivent en collaboration
avec l'éditeur d'outils de tests Attol Testware et des
industriels utilisateurs comme Siemens et Spacebell (cf module
7.2).
- La seconde cible de nos travaux concerne les logiciels
complexes ou qui nécessitent des modifications fréquentes: on
peut citer par exemple l'aide à la démonstration, la
reconnaissance de la parole, les systèmes qui mettent en oeuvre
des ensembles de règles (de fonctionnement d'une organisation,
de facturation, de réservation, etc.) devant suivre les
évolutions du marché ou de la législation. Il s'agit du domaine
d'excellence des langages de programmation logique. La mise en
oeuvre du langage
Prolog réalisée dans
le projet a notamment été utilisée pour la programmation d'un
module de recherche de composants logiciels, pour la
reconnaissance de partitions musicales (cf module 5). Nos travaux sur les
explications dans les bases de données déductives (cf module
6.1.5) sont en cours
d'application dans le domaine de la publicité ciblée pour la
télévision à la demande (avec Next Century Media). Nous avons
également entamé une collaboration industrielle (cf module
7.1) qui nous permettra
d'appliquer nos techniques de débogage à des logiciels de
facturation hospitalière (avec Mission Critical) et de
diagnostic de matériels défectueux (avec Dassault
Electronique). Les langages d'architectures de logiciels
constituent une démarche plus récente pour le développement de
logiciels complexes. Sur ce thème, nous sommes impliqués dans
une action industrielle en préparation sur la conception
d'architectures sécurisées. Cette action regroupera Matra
SI, AQL, TNI et
deux projets de l'Irisa: EP-ATR et
LANDE.

Précédent : Langages déclaratifs
Remonter : Conception et validation de logiciels
Suivant : Logiciels