Les principes FAIR ont été imaginés en premier lieu pour les données de la recherche. Plusieurs tentatives d’adaptation aux logiciels de recherche ont ensuite été proposées (nous vous en parlions par exemple ici et ici). Cependant, selon les auteurs du préprint « CODE beyond FAIR » déposé dans HAL en février 2025, ces tentatives ne prennent pas en compte les problèmes liés à la complexité des logiciels et ne proposent pas de pistes de mise en œuvre concrètes.
C’est la raison pour laquelle les auteurs de cet article proposent une feuille de route complète vers un standard qui inclut toutes les parties prenantes de l’écosystème des logiciels de recherche : auteurs et contributeurs, mais également instituts de recherche, financeurs, bibliothèques et éditeurs. Pour ne pas décourager les acteurs et tenir compte de leur diversité, la feuille de route se veut graduelle : certaines actions sont catégorisées comme obligatoires, alors que d’autres sont recommandées ou facultatives.
La première partie de l’article détaille les actions que les auteurs et contributeurs sont invités à mettre en place, et que l’on peut résumer par l’acronyme CODE :
Ouvrir
- Publier son code source sur une forge publique (obligatoire)
- Sauvegarder son dépôt sur une archive dédiée, comme Software Heritage (obligatoire)
- Associer une licence au logiciel, de préférence une licence open source (fortement recommandé)
- Déclarer les auteurs et les titulaires de droits (facultatif)
Documenter
- Choisir des noms ayant du sens pour les variables et les fonctions (recommandé)
- Commenter le code (recommandé)
- Fournir des exemples d’utilisation documentés, des notebooks ou des tutoriels (recommandé)
- Documenter l’API (facultatif)
Exécuter (permettre à d’autres équipes d’exécuter le logiciel afin de rendre les résultats reproductibles)
- Lister les dépendances logicielles et matérielles (recommandé)
- Fournir un environnement virtuel (via un conteneur ou une machine virtuelle) ou une méthode pour construire un environnement identique (facultatif)
- Fournir une suite de tests (facultatif)
- Montrer un exemple d’utilisation réelle avec les résultats attendus (facultatif)
Collaborer de façon ouverte, ce qui peut se faire à différents niveaux :
- Inviter les utilisateurs à faire part de leurs commentaires via des issues : signalements de problèmes, propositions de nouvelles fonctionnalités… (optionnel)
- Définir des limites : décrire le niveau de maintenance et d’assistance que les développeurs pourront fournir, et les types de demandes de fonctionnalités qui seront pris en compte (optionnel)
- Permettre à chacun de contribuer au développement du logiciel, expliquer les règles et méthodes de contribution (optionnel)
- Construire et animer une communauté autour du logiciel (optionnel)
Dans une seconde partie, les auteurs de l’article listent les actions qui peuvent être menées par les autres parties prenantes :
Les institutions sont invitées à :
- Soutenir le développement de logiciels en investissant dans les ressources humaines nécessaires et en créant un cadre juridique adapté (pour guider les auteurs dans le choix d’un licence par exemple) (obligatoire)
- Promouvoir les logiciels, par exemple en reconnaissant la création et le développement de logiciels comme des contributions prises en compte lors des campagnes de recrutement et de promotion (recommandé)
- Construire de meilleures forges institutionnelles (optionnel)
Les financeurs sont invités à :
- Soutenir les logiciels sur le long terme, en élargissant leurs programmes de subventions pour y inclure la maintenance des logiciels existants (obligatoire)
- Promouvoir la reproductibilité, en demandant la publication des logiciels de recherche sous des licences open source, sauf exceptions légitimes (recommandé)
- Faciliter les collaborations, en réfléchissant à des modèles de financement alternatifs pour financer des développeurs ou encourager les contributions logicielles (optionnel)
Les bibliothèques sont invitées à :
- Accompagner l’archivage des logiciels, via Software Heritage (obligatoire)
- Assurer la curation des métadonnées de logiciels, par exemple dans HAL (obligatoire)
- Participer à la construction de catalogues de logiciels, par exemple institutionnels (recommandé)
Les éditeurs sont invités à :
- S’assurer que, lors de la publication d’un article, le code associé est réellement partagé (obligatoire)
- Mettre en place des solutions permettant de relier les publications, les codes et les données (recommandé)
- Identifier les différents mécanismes déjà testés pour évaluer les logiciels associés aux publications, et proposer une approche unifiée permettant à la communauté scientifique d’adopter celui qui lui convient le mieux (optionnel)
Retrouvez bien évidemment plus de détails sur les actions recommandées dans le document source : Roberto Di Cosmo, Sabrina Granger, Konrad Hinsen, Nicolas Jullien, Daniel Le Berre, et al.. CODE beyond FAIR. 2025 ⟨hal-04930405⟩, sous licence CC-BY 4.0.


