Les recherches de Dyer visent à rationaliser les pratiques de vérification des logiciels

2024-08-23 08:34:02

Alors que le domaine informatique continue de se développer et d’évoluer rapidement, nombreux sont ceux qui ont souvent du mal à suivre les dernières technologies, même les ingénieurs en logiciel.

Un nouveau projet de l’Université du Nebraska–Lincoln vise à aider tout le monde à rester à jour en optimisant les processus des chercheurs en génie logiciel. Grâce à une nouvelle subvention de la National Science Foundation, Robert Dyer, professeur adjoint à la School of Computing, dirigera une nouvelle initiative visant à aider les chercheurs en génie logiciel à améliorer leurs pratiques de test et de vérification grâce à des techniques et outils automatisés avancés.

Les ingénieurs logiciels utilisent des outils de vérification pour rechercher des bugs, maintenir des performances élevées et détecter des vulnérabilités de sécurité. Cependant, le grand nombre d’outils de vérification à disposition des ingénieurs peut rendre difficile l’identification et la localisation des outils adaptés à un projet spécifique. Cela rend également difficile le test d’un si grand nombre d’outils, car il faut des programmes de test réalistes pour montrer que les outils fonctionnent.

« À l’heure actuelle, les gens se contentent de rechercher un programme qui semble raisonnable, d’y insérer manuellement un bug, puis de modifier le code pour l’adapter au framework afin qu’il puisse réellement fonctionner », explique Dyer. « C’est un processus entièrement ad hoc, très fastidieux et sujet aux erreurs. »

Lire aussi  battre Manchester United et récupérer sa magie

Le projet proposé par Dyer, « Adaptable Realistic Benchmark Generator for Verification (ARG-V) », rationalisera ce processus, en éliminant la nécessité de créer et d’injecter de faux bugs ou de rechercher manuellement des référentiels pour du code compatible. ARG-V trouvera et convertira automatiquement les programmes de référentiels de code en repères (ou vérificateurs sur des exemples de programmes) puis les classera afin qu’ils soient accessibles par recherche.

« Nous essayons de l’automatiser afin de pouvoir trouver des programmes déjà existants qui ont les propriétés qui nous intéressent, puis de mettre à jour ou de modifier automatiquement les programmes afin qu’ils fonctionnent dans ce cadre de test dont nous disposons », a déclaré Dyer.

Les tests de performance peuvent rapidement devenir obsolètes à mesure que les logiciels évoluent. Il est donc essentiel de mettre à jour fréquemment les référentiels en ligne avec de nouveaux tests de performance pour une vérification précise et efficace. ARG-V recherchera les programmes de test candidats dans les référentiels open source qui contiennent les constructions de programme appropriées, puis appliquera des transformations systématiques définies par l’utilisateur pour préparer les programmes de test candidats à l’utilisation.

Lire aussi  Idris Elba domine la bande-annonce de Phantom Liberty pour Cyberpunk 2077

« PAClab a été conçu pour un cas d’utilisation très spécifique : un outil d’analyse de programme, générant des tests de performance spécifiques à cet outil », a déclaré Dyer. « L’idée est désormais de prendre ce que nous avons appris avec PAClab et d’essayer de le généraliser pour qu’il prenne en charge n’importe quel outil. »

Pour y parvenir, Dyer et son équipe de recherche, ainsi que des collaborateurs de l’université d’État de Boise, participeront à SV-Comp, la compétition internationale sur la vérification de logiciels, organisée par une solide communauté en ligne d’ingénieurs en vérification de logiciels. Des membres de la communauté du monde entier se réunissent lors de la conférence annuelle pour rivaliser afin de créer de meilleurs tests de performance que tout le monde pourra utiliser.

Dyer et son équipe prévoient d’assister à la conférence deux fois tout en travaillant sur le projet et de solliciter les commentaires de la communauté pour développer et peaufiner davantage leur produit.

« L’idée est que si nous obtenons de meilleurs tests et que nous testons tous ces outils sur des choses plus réalistes et plus performantes, et que nous repoussons les limites de ce à quoi ressemblent ces tests, ces outils devraient s’améliorer au fil des ans », a déclaré Dyer. « Les tests devraient devenir de plus en plus difficiles, et les outils de vérification doivent s’améliorer de plus en plus chaque année. »

Lire aussi  Découverte du projet Genome of Switzerland: lancement du séquençage des premiers génomes complets

Dyer a déclaré qu’il pensait que ce projet aiderait non seulement les chercheurs en vérification de logiciels à améliorer leurs processus, mais qu’il aurait également un impact positif sur le domaine de l’ingénierie logicielle et sur la communauté dans son ensemble.

« Ma philosophie est de trouver quelque chose qui a un impact important. Comment améliorer la sécurité ? Eh bien, il faut avoir de meilleurs outils. Comment améliorer les outils ? Il faut de bons chercheurs et la capacité d’itérer plus rapidement. Plus vite nous itérons sur ces outils d’analyse de programme, plus vite nous obtenons des outils capables d’identifier les bugs de sécurité, les vulnérabilités et les problèmes de performance. Au fur et à mesure que nous obtenons de meilleurs outils, l’ensemble du secteur du logiciel s’améliore de plus en plus », a déclaré Dyer. « Ainsi, tous les logiciels que nous créons seront plus robustes et plus rapides, et tout le monde en bénéficiera. Nous fonctionnons à ce niveau inférieur dans l’espoir que si nous améliorons la base, cela améliorera tout le reste. »



#Les #recherches #Dyer #visent #rationaliser #les #pratiques #vérification #des #logiciels
1724408818

Facebook
Twitter
LinkedIn
Pinterest

Leave a Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.