Thèse de Edlira Nano


Sujet :
Obsolescence logicielle : analyse et stratégies de remédiation

Date de début : 15/01/2023
Date de fin (estimée) : 15/01/2026

Encadrant : Aurélien Tabard

Résumé :

Cette thèse de doctorat vise à analyser l'obsolescence logicielle ainsi que des stratégies de remédiation.

Notre première étude de cas porte sur l'écosystème Android, le système d'exploitation le plus utilisé au monde, où les appareils sont rarement mis à jour plus de deux ans après leur sortie. Nous avons étudié les obstacles au développement et à la maintenance d'Android à travers 12 entretiens avec des acteurs clés de l'écosystème, complétés par une étude ethnographique lors de conférences et une analyse de la littérature technique. Nous montrons comment les flux de code circulent entre les différents acteurs de l'écosystème, ce qui freine les mises à jour, et nous analysons comment ces acteurs répartissent leurs efforts de maintenance à différents niveaux afin de servir leurs intérêts stratégiques. Le manque de mises à jour se manifeste au niveau du noyau, i.e. au cœur d'Android, car le code des fabricants de téléphones et de systèmes sur puce diverge de plus en plus du code du noyau Linux d'origine. Nous montrons que Google, principal acteur de l'écosystème, tente de résoudre les problèmes de maintenance en transférant la responsabilité aux fabricants de téléphones. Comme ces derniers sont les moins enclins à maintenir, le problème persiste, entraînant une fin de vie prématurée des appareils. En parallèle, nous analysons comment certains vendeurs de smartphones et acteurs alternatifs libres et open source mettent en œuvre des stratégies de maintenance pour assurer la continuité des appareils sur de plus longues périodes

Notre seconde étude de cas porte sur la maintenance de Debian, un système d'exploitation basé sur le noyau Linux, développé en open source par une communauté internationale depuis plus de 30 ans. Nous avons participé à cinq réunions communautaires et mené douze entretiens avec des acteurs clés de l'écosystème, complétés par l'analyse de la littérature technique. Le travail de maintenance de Debian est structuré à différents niveaux, tant techniques que sociaux : au niveau du code, des paquets, du noyau Linux et de l'infrastructure interne à la communauté. Les relations sociales entre les membres de Debian et avec les développeurs externes jouent un rôle essentiel dans le processus de maintenance. La pérennité de la communauté – résolution des conflits, prévention de l'épuisement professionnel, création d'un environnement de travail et social inclusif, fidélisation des membres et recrutement de nouveaux – apparaît comme un enjeu majeur pour le maintien des fondements sociaux. Nos résultats mettent en lumière les pratiques de développement, et le rôle de l'infrastructure technique et sociale développée par la communauté Debian  pour maintenir un système d'exploitation robuste et durable.

En nous appuyant sur l'analyse de ces deux systèmes d'exploitation, nous analysons comment  les flux de code circulent entre les acteurs et comment se met en place leur maintenance. Les points de rupture de maintenance qui apparaissent peuvent être d'ordre technique (obfuscation du code, absence de documentation, mauvaises pratiques de codage) ou socio-économique (manque de volonté de maintenir, positions de pouvoir et domination de certains acteurs clés au sein des écosystèmes, dépendances privées sur des composants essentiels logiciels, contrats d'exclusivité logicielle ou absence de politiques publiques garantissant la pérennité du système). Nous examinons l'équilibre entre ouverture et fermeture dans le développement et la maintenance des logiciels. Nous analysons comment les stratégies de maintenance à long terme se placent à la fois sur le plan technique : au niveau du développement logiciel; sur le plan social : les interactions sociales entre développeurs; et sur le plan infrastructurel : les outils et le soin infrastructurel au service des activités de maintenance. Enfin, cette étude propose plusieurs recommandations réglementaires en matière de pratiques de codage durables, et de politiques publiques interdisant les freins et venant en soutien à la maintenance des systèmes d'exploitation.


Jury :
Bugeau AurélieProfesseur(e)Université de BordeauxRapporteur(e)
Maraninchi FlorenceProfesseur(e)Université Grenoble AlpesRapporteur(e)
Di Cosmo RobertoProfesseur(e)Université Paris Cité détaché à l'INRIAExaminateur​(trice)
Jean-Daubias StéphanieProfesseur(e)Université Claude Bernard Lyon 1Examinateur​(trice)
Schulz SébastienChargé(e) de RechercheCenter Internet et Société Paris, CNRSExaminateur​(trice)
Maudet NolwennMaître de conférenceUniversité de StrasbourgInvité(e)