A Multi-Surface Consistency Audit of Software Citation Metadata
Dit artikel auditeert 117 open-source onderzoeksoftwareprojecten over meerdere machine-leesbare metadatavlakken en stelt vast dat 83,9% ten minste één conflict in een kernveld vertoont, primair gedreven door discrepanties tussen softwarebeschrijvingen en de daarmee geassocieerde publicatiegegevens.
Oorspronkelijk artikel gelicentieerd onder CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Dit is een AI-gegenereerde uitleg van het onderstaande artikel. Het is niet geschreven of goedgekeurd door de auteurs. Raadpleeg het oorspronkelijke artikel voor technische nauwkeurigheid. Lees de volledige disclaimer
In de wereld van de moderne wetenschap is software even essentieel geworden als een microscoop of een telescoop. Het is het instrument dat onderzoekers gebruiken om getallen te verwerken, klimaatverandering te simuleren en het gedrag van atomen te modelleren. Omdat deze software een product is van menselijke arbeid en intellectuele inspanning, is de wetenschappelijke gemeenschap overeengekomen dat het verdient om geciteerd te worden, net als een wetenschappelijk artikel. Wanneer een wetenschapper een specifiek programma gebruikt om een ontdekking te doen, moet hij de mensen die het geschreven hebben, de gebruikte versie en de plaats waar men het kan vinden, de eer geven. Om dit mogelijk te maken, is een systeem gebouwd waarbij softwareprojecten digitale "naambordjes" kunnen achterlaten. Deze tags zijn machineleesbare bestanden die de titel van het project, de namen van de auteurs, het versienummer en een unieke identifier bevatten die aanwijst waar de software online te vinden is. Het idee is dat als een onderzoeker, een bibliothecaris of een computerprogramma naar een van deze tags kijkt, ze allemaal hetzelfde verhaal vertellen over hetzelfde stuk software.
Echter, een recente studie stelde een eenvoudige maar verontrustende vraag: komen deze naambordjes daadwerkelijk met elkaar overeen? De onderzoekers, onder leiding van Pengyin Shan van de University of Illinois, besloten de digitale zelfbeschrijvingen van 117 open-source research software-projecten te auditeren. Ze bekeken zeven verschillende plaatsen waar een project zichzelf zou kunnen beschrijven: een specifiek bestand bedoeld voor citaties, een databestand voor archieven, een record in een publieke registratie waar software wordt gedownload, en de tekst op de hoofdpagina van het project. Ze beschouwden de software als het enkelvoudige object en deze verschillende bestanden als verschillende "oppervlakken" of zijden van dat object. Als het systeem perfect werkt, zou elk oppervlak hetzelfde moeten zeggen. Als ze van mening verschillen, creëert dit verwarring over wie het werk heeft verricht, welke versie is gebruikt en waar de code te vinden is. De studie toonde aan dat het systeem verre van perfect is. Sterker nog, de meerderheid van de onderzochte projecten vertelt verschillende verhalen aan verschillende delen van het internet.
De onderzoekers bouwden een zorgvuldig proces om deze projecten te controleren. Ze verzamelden een groep van zelfs 117 softwaretools, waaronder high-performance computing tools gebruikt voor supercomputing en quantum computing, evenals een kleinere groep tools die waren geaccepteerd door wetenschappelijke tijdschriften. Voor elk project downloadden ze snapshots van de zeven verschillende oppervlakken op één enkele dag. Vervolgens gebruikten ze een computerprogramma om de informatie te normaliseren, waarbij de verschillende bestandsformaten werden vertaald naar een gemeenschappelijke lijst van zes kernfeiten: de titel, de auteur, de versie, het jaar, de licentie en de unieke identifier. Ze vergeleken elk paar oppervlakken die voor een project bestonden om te zien of de feiten overeenkwamen. Om hun methode nauwkeurig te waarborgen, controleerden ze handmatig een grote steekproef van de oordelen van de computer, waarbij ze bevestigden dat hun tool bijna 99 procent van de tijd correct was.
De resultaten toonden een aanzienlijk gebrek aan consistentie. Van de 117 projecten hadden er slechts 62 ten minste twee oppervlakken die vergeleken konden worden. Onder deze 62 projecten bevatten 52 van hen, oftewel ongeveer 84 procent, ten minste één groot conflict tussen hun oppervlakken. Dit betekent dat voor de meeste van deze projecten een persoon die het citatiebestand leest, andere informatie krijgt dan iemand die het archiefrecord of de downloadpagina leest. De onenigheden kwamen het meest voor in de lijsten van auteurs en de titels van de software. Terwijl het jaar en de licentie meestal consistent waren, kwamen de kerngegevens die het werk identificeren vaak niet overeen. De studie vond dat het probleem niet beperkt was tot één type software; het kwam voor in high-performance computing projecten, in tools die zijn beoordeeld door het Journal of Open Source Software, en in pakketten die zijn geaccepteerd door de pyOpenSci community.
Een van de meest voorkomende redenen voor deze conflicten was een specifieke verwarring tussen de software en het wetenschappelijke artikel dat de software beschrijft. In veel gevallen waren de bestanden die bedoeld waren om de software te beschrijven, eigenlijk de software beschrijvend in plaats van het wetenschappelijke artikel over de software. Bijvoorbeeld, een bestand kon de titel van een conferentiepresentatie of de auteur van een tijdschriftartikel vermelden, terwijl een ander bestand de naam van de code zelf vermeldde. Dit gebeurde in de helft van de geverifieerde conflicten. De onderzoekers merkten op dat dit niet noodzakelijkerwijs een fout is in hoe de bestanden zijn geschreven, maar eerder een reflectie is van een diepere verwarring over wat het "citeerbare object" eigenlijk is. Is het de code, of is het het artikel over de code? Wanneer de bestanden naar het artikel proberen te wijzen, stoppen ze vaak met het wijzen naar de software, waardoor de metadata uit elkaar drijven.
Een andere bron van onenigheid kwam van de publieke registers waar software wordt gedownload, zoals PyPI voor Python of npm voor JavaScript. Deze registers gebruiken vaak korte, technische namen voor pakketten, zoals "mpi4py", terwijl de eigen bestanden van de software een beschrijvende titel gebruiken zoals "MPI for Python". Wanneer een computer probeert deze twee oppervlakken te matchen, ziet het een titelverschil. De studie vond dat een groot deel van de titel- en auteur-onenigheden werd gedreven door deze registerrecords. Bovendien ontdekten de onderzoekers dat de meest actuele informatie vaak ontbrak op de plaatsen waar geautomatiseerde tools naar zoeken. De bestanden die packaging tools lezen, zoals de registerrecords, waren het minst waarschijnlijk om persistente identifiers zoals ORCIDs voor auteurs te bevatten, die cruciaal zijn voor het bijhouden van wie het werk heeft verricht.
De studie keek ook naar een specifieke functie genaamd een "preferred citation" (voorkeurscitatie), waarmee een softwareproject gebruikers de instructie kan geven om een ander object te citeren, meestal een artikel, in plaats van de software zelf. De onderzoekers vonden dat in 28 van de 32 projecten die deze functie gebruikten, het volgen van de instructie leidde tot een record dat botste met de eigen metadata van de software. Dit betekent dat zelfs wanneer een project probeert gebruikers naar een specifieke citatie te leiden, de begeleiding vaak wijst naar een record dat conflicteert met de andere informatie die het project over zichzelf heeft gepubliceerd. Dit creëert een situatie waarin een gebruiker die de regels volgt, uiteindelijk een artikel citeert dat niet overeenkomt met de versie van de software die hij daadwerkelijk heeft gebruikt.
De onderzoekers concludeerden dat de huidige infrastructuur voor softwarecitatie incompleet is. Hoewel de tools om metadata te verklaren bestaan en breed worden gebruikt, is er geen systeem aanwezig om te controlen of de verschillende verklaringen met elkaar overeenstemmen. De studie toonde aan dat voor de meerderheid van de projecten die gecontroleerd kunnen worden, de software zichzelf op ten minste één kritiek punt tegenspreekt. Deze fragmentatie betekent dat de eer vaak verdeeld is, de herkomst onduidelijk is en geautomatiseerde systemen het gebruik van research software niet betrouwbaar kunnen volgen. De onderzoekers hebben hun gegevens, hun code en hun lijst met projecten vrijgegeven zodat anderen deze audit kunnen herhalen, kunnen controleren of zaken in de loop van de tijd zijn verbeterd, of de gegevens kunnen gebruiken om tools te bouwen die deze inconsistenties automatisch kunnen oplossen. Het werk benadrukt dat voordat we de digitale kredietstructuur voor software volledig kunnen vertrouwen, we eerst moeten ervoor zorgen dat de software één consistent verhaal vertelt op alle plekken waar hij spreekt.
Verdrinkt u in papers in uw vakgebied?
Ontvang dagelijkse digests van de nieuwste papers die bij uw onderzoekswoorden passen — met technische samenvattingen, in uw taal.