Aller au contenu
FR

Soutenances du 01-04-2026

1 soutenance à ED Mathématiques et Informatique

Université de Bordeaux

ED Mathématiques et Informatique

  • Diminuer les frictions entre les utilisateurs et les mainteneurs de bibliothèques logicielles

    par Gustave MONCE (LaBRI - Laboratoire Bordelais de Recherche en Informatique)

    Cette soutenance a lieu à 14h00 - Amphi LaBRI LaBRI, UMR CNRS 5800 351, cours de la Libération

    devant le jury composé de

    • Jean-Remy FALLERI - Professeur des universités - Bordeaux INP - Directeur de these
    • Anne ETIEN - Professeure des universités - Université Lille 1 - Rapporteur
    • Jannik LAVAL - Maître de conférences - Université Lumière Lyon 2 - Rapporteur
    • Djamel EDDINE-KHELLADI - Chargé de recherche - CNRS - Examinateur
    • Hicham LAKHLEF - Professeur des universités - Bordeaux INP - Examinateur
    • Thomas DEGUEULE - Chargé de recherche - CNRS - CoDirecteur de these

    Résumé

    Les bibliothèques logicielles sont largement utilisées dans le développement logiciel moderne par les développeurs afin d'intégrer dans une application des fonctionnalités déjà implémentées par d'autres développeurs. Une telle dépendance à du code tiers pose des problèmes de maintenance, de compatibilité et d'évolution, tant pour les développeurs de clients que pour ceux de bibliothèques. Dans cette thèse, nous analysons la relation et les frontières qui existent entre les bibliothèques et les clients. Une particularité des applications utilisant des bibliothèques est la présence et la consommation d'interfaces de programmation d'applications (APIs). Ces APIs constituent la principale frontière d'interaction que le développeur utilise pour consommer une fonctionnalité spécifique d'une bibliothèque. Cette frontière permet le transfert de données dans les deux sens, du client vers la bibliothèque, et de la bibliothèque vers le client. Les développeurs de bibliothèques manquent souvent de connaissances sur les usages réels de leurs bibliothèques, ce qui empêche une évolution correcte et sûre. À l'inverse, les développeurs de clients rencontrent souvent des difficultés à trouver un équilibre entre la mise à jour vers la dernière version de leurs dépendances et le maintien de la compatibilité sans casser leur code. En effet, la mise à jour des dépendances expose les clients au risque de changements cassants (BCs) provenant de leurs dépendances. Bien que certains travaux existent déjà sur certains types de problèmes de compatibilité, d'autres restent inexplorés. Nous proposons, en nous appuyant sur l'existence de telles frontières, de nouvelles méthodes pour aider les bibliothèques à comprendre leurs usages et les clients à comprendre les changements de comportement auxquels ils sont confrontés.