Vérification intelligente des bogues pour les logiciels

Thomas Neele. Crédit: Université de technologie d’Eindhoven

Les ordinateurs et les logiciels sont plus importants que jamais. Dans les systèmes tels que les voitures, les avions et les appareils médicaux, il est essentiel de mettre en œuvre des logiciels sans défauts majeurs ou «bogues». Ph.D. de l’Université de technologie d’Eindhoven. Le candidat Thomas Neele a développé trois techniques pour une vérification des bogues plus intelligente et plus rapide, basées sur la méthode de vérification des modèles.

La vérification de modèle est l’une des techniques les plus rigoureuses pour vérifier les logiciels. Il examine toutes les choses possibles qu’un système logiciel peut faire, et les «états» dans lesquels il peut se trouver, pour vérifier s’il fonctionne comme requis. Le défi est que le logiciel se compose souvent de nombreuses parties qui fonctionnent en parallèle. Cela peut provoquer une explosion du nombre d’états qui doivent être étudiés, rendant la vérification des modèles coûteuse et peut-être même ingérable. Neele a exploré de nouvelles façons de résoudre ce problème en réduisant le nombre d’états à vérifier.

Garder à l’esprit l’objectif du logiciel

Les trois nouvelles techniques de réduction développées par Neele ont un point commun: elles prennent en compte l’exigence des états. Cette information supplémentaire signifie qu’il est plus facile de voir quels états n’ont pas besoin d’être vérifiés. Pour pouvoir observer simultanément le comportement et les exigences du système, Neele a d’abord développé une nouvelle façon structurée de montrer la combinaison comportement-exigence.

La première technique réduit le nombre d’états en regroupant des états similaires. Cela permet même de travailler avec un nombre infini d’états. La seconde approche vérifie si les parties qui travaillent en parallèle exécutent parfois une tâche de manière indépendante. Dans ce cas, il n’est pas nécessaire d’étudier tous les états possibles. La dernière technique vérifie si certains éléments de données sont pertinents et les supprime s’ils ne le sont pas.

Rendre les logiciels plus sûrs et plus rapides

À l’avenir, ces idées contribueront à réduire le coût de développement et le temps de mise sur le marché des logiciels critiques pour la sécurité. Cela peut rendre les soins de santé de haute technologie plus abordables et donc plus accessibles à tous. De plus, les techniques de Neele peuvent aider à éliminer les bogues dangereux des systèmes tels que les avions. Actuellement, l’application des idées de Neele et la vérification des modèles en général nécessitent une grande expertise. Pour permettre une adoption généralisée, il est nécessaire de développer un système entièrement automatisé qui décide quelle approche est la plus appropriée pour une application particulière.


Les ordinateurs seront bientôt en mesure de se réparer eux-mêmes – les services informatiques sont-ils pour le coup?


Plus d’information:
Réductions pour les jeux de parité et la vérification des modèles: research.tue.nl/files/160672035/20200916_Neele.pdf

Fourni par
Université de technologie d’Eindhoven

Citation:
Vérification intelligente des bogues pour les logiciels (14 septembre 2020)
récupéré le 15 septembre 2020
depuis https://techxplore.com/news/2020-09-smart-bug-checking-software.html

Ce document est soumis au droit d’auteur. En dehors de toute utilisation équitable à des fins d’étude ou de recherche privées, aucune
une partie peut être reproduite sans autorisation écrite. Le contenu est fourni seulement pour information.