Thèse soutenue

Développement d'applications logicielles sûres de fonctionnement : une approche dirigée par la conception

FR  |  
EN
Auteur / Autrice : Quentin Enard
Direction : Charles Consel
Type : Thèse de doctorat
Discipline(s) : Informatique
Date : Soutenance le 06/05/2013
Etablissement(s) : Bordeaux 1
Ecole(s) doctorale(s) : École doctorale des sciences physiques et de l’ingénieur (Talence, Gironde ; 1995-....)
Partenaire(s) de recherche : Laboratoire : Laboratoire bordelais de recherche en informatique - Laboratoire Bordelais de Recherche en Informatique / LaBRI
Jury : Président / Présidente : Mohamed Mosbah
Examinateurs / Examinatrices : Charles Consel, Nicolas Loriant
Rapporteurs / Rapporteuses : Christophe Dony, Marc-Olivier Killijian

Résumé

FR  |  
EN

Dans de nombreux domaines tels que l’avionique, la médecine ou la domotique, les applications logicielles jouent un rôle de plus en plus important, allant jusqu’à être critique pour leur environnement. Afin de pouvoir faire confiance à ces applications, leur développement est contraint par des exigences de sûreté de fonctionnement. En effet il est nécessaire de démontrer que ces exigences de haut-niveau sont prises en compte tout au long du cycle de développement et que des solutions concrètessont mises en œuvre pour parvenir à les respecter. De telles contraintes rendent le développement d’applications sûres de fonctionnement particulièrement complexe et difficile. Faciliter ce processus appelle à la recherche de nouvelles approches dedéveloppement qui intègrent des concepts de sûreté de fonctionnement et guident les développeurs lors de chacune des étapesnécessaires à la production d’une nouvelle application digne de confiance.Cette thèse propose ainsi de s’appuyer sur une approche dirigée par la conception pour guider le développement des applications sûres de fonctionnement. Cette approche est concrétisée à travers une suite d’outils nommée DiaSuite et offre du support dédié à chaque étape du développement. En particulier, un langage de conception permet de décrire à la fois les aspects fonctionnels et non-fonctionnels des applications en se basant sur un paradigme dédié et en intégrant des concepts de sûreté de fonctionnement tels que le traitement des erreurs. A partir de la description d’une application, du support est généré pour guider les phases d’implémentation et de vérification. En effet, la génération d’un framework de programmation dédié permet de guider l’implémentation tandis que la génération d’un modèle formel permet de guider la vérification statique de l’application et qu’un support de simulation permet de faciliter les tests. Cette approche est évaluée grâce à des cas d’études réalisés dans les domaines de l’avionique et de l’informatique ubiquitaire.