Thèse soutenue

Vérification de propriétés temporelles sur des logiciels avioniques par analyse dynamique formelle

FR  |  
EN
Auteur / Autrice : Antoine Ferlin
Direction : Virginie Wiels
Type : Thèse de doctorat
Discipline(s) : Sureté de logiciel et calcul de haute performance
Date : Soutenance le 03/09/2013
Etablissement(s) : Toulouse, ISAE
Ecole(s) doctorale(s) : École doctorale Mathématiques, informatique et télécommunications (Toulouse)
Partenaire(s) de recherche : Equipe de recherche : Équipe d'accueil doctoral Modélisation et ingénierie des systèmes (Toulouse, Haute-Garonne)
Laboratoire : Équipe d'accueil doctoral Modélisation et ingénierie des systèmes (Toulouse, Haute-Garonne)

Mots clés

FR  |  
EN

Résumé

FR  |  
EN

La vérification de logiciels est une activité dont l'importance est cruciale pour les logiciels embarqués critiques. Les différentes approches envisageables peuvent être classées en quatre catégories : les méthodes d'analyse statique non formelles, les méthodes d'analyse statique formelles, les méthodes d'analyse dynamique non formelles et les méthodes d'analyse dynamique formelles. L'objectif de cette thèse est de vérifier des propriétés temporelles dans un cadre industriel, par analyse dynamique formelle.La contribution comporte trois parties. Un langage adapté à l'expression des propriétés à vérifier, tirées du contexte industriel d'Airbus, a été dé ni. Il repose notamment sur la logique temporelle linéaire mais également sur un langage d'expressions régulières.La vérification d'une propriété temporelle s'effectue sur une trace d'exécution d'un logiciel, générée à partir d'un cas de test pré-existant. L'analyse statique est utilisée pour générer la trace en fonction des informations nécessaires à la vérification de la propriété temporelle formalisée.Cette approche de vérification propose une solution pragmatique au problème posé par le caractère ni des traces considérées. Des adaptations et des optimisations ont également été mises en œuvre pour améliorer l'efficacité de l'approche et faciliter son utilisation dans un contexte industriel. Deux prototypes ont été implémentés,des expérimentations ont été menées sur différents logiciels d'Airbus.