scieee AI-readable full text Open interactive document viewer

SWHID : identifiant intrinsèque universel pour les logiciels

Louvet, Violaine

Abstract

Software Heritage collecte le code source publiquement disponible de nombreux projets de logiciels et suit leur développement. Ce diaporama a été présenté dans le cadre du séminaire du Consortium DataCite France. Violaine Louvet est ambassadrice Software Heritage.

Full text

SWHID : identifiant intrinsèque universel pour les logiciels Violaine Louvet Séminaire du Consortium DataCite France, novembre 2025 cb Le logiciel de recherche Le logiciel dans la science ouverte Omniprésent dans la recherche Elément essentiel des processus de recherche dans la quasi totalité des disciplines scientifiques Approche qui peut être différente d’une communauté à l’autre selon que le logiciel est un outil, un résultat ou un objet d’études Intrinsèquement ancré dans l’ouverture La plupart des développements réalisés dans les laboratoires de recherche le sont sous licence libre Le logiciel libre est né dans la pratique universitaire, précurseur du mouvement de la science ouverte Mais il n’est intégré que très récemment dans les politiques de science ouverte Et en dehors des « circuits » habituels de publications, citations ... Le logiciel n’est pas une publication comme les autres Publications Statiques Linéaires Granularité simple Version finale figée Données Relativement stables Structurées (tableaux, bdd) Métadonnées standards Version unique Logiciels Dynamiques Modulaires Versionnés Granularité multiple Les défis spécifiques du logiciel Granularité multiple Un logiciel n’est pas un objet monolithique : Le projet complet Une version spécifique (release) Un commit particulier Un répertoire Un fichier précis Même une ligne de code ! Besoin pour la reproductibilité On doit pouvoir retrouver la version EXACTE du code utilisé dans une expérience, y compris dépendances et environnement, pas juste « version 2.0 ». La citation du logiciel Dans l’idéal Pour la citation, on doit pouvoir référencer : Non seulement le logiciel complet Mais aussi une fonction spécifique réutilisée Ou un algorithme particulier dans un fichier ... Mais la plupart du temps On donne l’url du dépôt du logiciel sur la forge sur laquelle il est développé, ou le site web du chercheur où on peut télécharger l’archive des sources ... Pourquoi ce n’est pas satisfaisant ? La mise à disposition d’un code ayant été utilisé pour un article est un pré-requis à la reproductibilité et à l’éthique scientifique. C’est une excellente chose ! Mais le faire via le dépôt d’une forge, ou un site web présente des risques pour la pérennisation de l’accès au code Car ce sont des ressources qui peuvent disparaître Le chercheur change de laboratoire et déplace sa page web La forge est fermée : par exemple Google Code et Gitorious ... Mais aussi car le code a évolué sur le dépôt depuis la publication Software Heritage : la « bibliothèque d’Alexandrie » du code Infrastructure portée par l’Inria et l’Unesco Dédiée à l’archivage du « patrimoine logiciel mondial de l’humanité » Trois missions de Software Heritage : collecte, préservation, partage du code source des logiciels rendus publics. Quelques éléments chiffrés Plus de 26 milliards de fichiers sources Plus de 400 millions de projets Codes provenant de toutes les forges majeures (GitHub, GitLab, Bitbucket...) qui sont moissonnées automatiquement Le SWHID : un identifiant adapté au logiciel Qu’est-ce qu’un SWHID ? SWHID = Software Hash IDentifier Principe fondamental : identifiant intrinsèque Identifiant extrinsèque vs intrinsèque Identifiant extrinsèque : par exemple, DOI Attribué par une autorité centralisée Nécessite un enregistrement A généralement un coût Identifiant intrinsèque : par exemple SWHID Calculé à partir du contenu même du code Aucune autorité centrale requise Gratuit et instantané, vérifiable par n’importe qui Complémentarité des identifiants ID Rôle Force Usage DOI Citation académique formelle Reconnaissance institutionnelle, métadonnées riches Publier une version "officielle" HAL-ID Référencement institutionnel Intégration bibliographie FR, modération Valoriser dans contexte institutionnel SWHID Accès au contenu exact Pérennité, granularité, vérifiabilité Garantir reproductibilité scientifique Intégration du SWHID dans HAL Collaboration depuis 2018 CCSD / Inria / Software Heritage Mode 1 : Dépôt avec code Upload du code dans HAL Transfert automatique vers SWH SWHID généré et intégré Mode 2 : Dépôt avec SWHID Code déjà dans SWH Dépôt du SWHID + métadonnées Extraction codemeta.json Avantage Curation par les équipes de modération HAL Workflow : de Software Heritage au catalogue des logiciels de l’ESR Archiver sur Software Heritage Obtenir le SWHID Déposer sur HAL Catalogue des logiciels de l’ESR Pourquoi ce workflow ? •Pérennité : archivage sur 50+ ans •Citabilité : identifiant unique •Visibilité : référencement national Le catalogue ESR •Recense les logiciels de la recherche française •Alimenté automatiquement via HAL •Valorise les productions logicielles Conclusions 1Le logiciel n’est pas un document comme les autres Objet vivant, versionné, modulaire Besoin d’identifiants adaptés 2Software Heritage = archive pérenne du code Mission patrimoniale 50+ milliards d’artefacts 3SWHID = norme ISO depuis avril 2025 Standard ouvert international Identifiant intrinsèque 4Complémentarité avec DOI et HAL-ID Citation + métadonnées + reproductibilité Références https://www.swhid.org/ https://www.softwareheritage.org/software-hash-identifier-swhid/ https://www.softwareheritage.org/software-heritage-faq/#3_Referencing_ and_identification https: //programminghistorian.org/fr/lecons/preserver-logiciels-recherche https://www.pid-network.de/en/news/events/pids-fuer-software https://zenodo.org/records/15750889 https://logiciels.catalogue-esr.fr/