Sfide e Tendenze nella Condivisione di Artifact di Ricerca Software
Una studio sulla condivisione, manutenzione e qualità degli artefatti di ricerca software.
― 5 leggere min
Indice
Negli ultimi anni, i ricercatori in ingegneria del software (SE) sono stati incoraggiati a condividere i loro Artefatti di ricerca insieme alle loro pubblicazioni. Gli artefatti possono includere codice, dati e altri materiali che supportano i risultati di un articolo di ricerca. Condividere questi materiali aiuta gli altri a capire, verificare e costruire sul lavoro. Tuttavia, la situazione attuale della condivisione di questi artefatti, insieme alla loro Qualità e impatto, deve essere meglio compresa.
Questo documento si concentra sullo studio e sulla caratterizzazione della condivisione di artefatti nelle pubblicazioni SE. Esamina vari aspetti come il modo in cui i ricercatori condividono i loro artefatti, quanto bene li mantengono, la loro popolarità e la loro qualità.
Raccolta Dati
Per raccogliere dati, abbiamo analizzato 2.196 articoli pubblicati nelle principali conferenze SE dal 2017 al 2022, estraendo un totale di 1.487 artefatti. Le conferenze su cui ci siamo concentrati sono ben considerati nell'industria e noti per i loro elevati standard di ricerca.
Lo studio esamina quattro aree principali:
- Pratiche comuni per la condivisione di artefatti.
- Manutenzione degli artefatti dopo la pubblicazione.
- Popolarità degli artefatti all'interno della comunità.
- La qualità complessiva di questi artefatti.
Pratiche Comuni per la Condivisione di Artefatti
Guardando a come i ricercatori condividono i loro artefatti, è emerso che un numero crescente di pubblicazioni ora include link a questi materiali. La percentuale di articoli che forniscono artefatti è aumentata dal 60,1% nel 2017 all'81,1% nel 2022.
I ricercatori utilizzano piattaforme diverse per memorizzare e condividere artefatti, con GitHub come scelta più popolare. Molti ricercatori preferiscono GitHub per la sua facilità d'uso e familiarità, anche se alcune conferenze raccomandano di usare piattaforme come Zenodo, specificamente progettate per la condivisione di materiali di ricerca. La quota di artefatti su Zenodo è passata dallo 0% nel 2017 al 16% nel 2022.
Python è emerso come il linguaggio di programmazione più usato per questi artefatti, superando Java, che era tradizionalmente favorito. Nel 2022, il 61,1% degli artefatti era scritto in Python, riflettendo la tendenza crescente di usare questo linguaggio versatile nella ricerca.
Manutenzione degli Artefatti
Mantenere gli artefatti nel tempo è cruciale poiché i link possono diventare inattivi o “andare nel buio”, il che è spesso definito come "link rot". Il tasso di link rot è aumentato, rendendo sempre più importante per i ricercatori garantire che i loro artefatti rimangano accessibili.
Dal 2017 al 2022, il tasso di link rot è passato dal 4,8% al 29,8%. Il metodo di archiviazione influisce sulla probabilità di link rot; gli artefatti su unità temporanee avevano un alto tasso di inaccessibilità, mentre quelli memorizzati su GitHub e Zenodo avevano tassi più bassi di scomparsa.
È anche importante che i ricercatori aggiornino i loro artefatti. In media, oltre il 90% degli artefatti ha bisogno di aggiornamenti continui dopo la pubblicazione. Tuttavia, il tasso di aggiornamenti diminuisce nel tempo, con artefatti più vecchi che ricevono più attenzione rispetto a quelli più recenti.
Popolarità degli Artefatti
La popolarità degli artefatti può essere misurata attraverso il numero di stelle che ricevono su GitHub. Molti artefatti ricevono poca attenzione, con il 65% di essi che ha dieci stelle o meno. Questo suggerisce che, nonostante la crescita nella condivisione di artefatti, la maggior parte non ottiene un riconoscimento significativo o un uso reale.
Solo il 3,7% degli artefatti è riuscito a superare le 100 stelle, indicando che mentre c'è un aumento nella condivisione di artefatti, molti di questi materiali non raggiungono un pubblico ampio o hanno un impatto sostanziale.
Qualità degli Artefatti
La qualità degli artefatti condivisi è essenziale per la loro utilità e affidabilità. Questo studio ha anche esaminato la qualità della documentazione e la prevalenza di "code smells", che sono indicatori di potenziali problemi nel codice.
Per gli artefatti Python, oltre il 96% ha attivato avvisi di code smell, indicando che molti artefatti potrebbero non essere all'altezza degli standard. Nel caso degli artefatti Java, il tasso di avvisi era ancora più alto, al 98,3%. I problemi riguardano principalmente le convenzioni di codifica piuttosto che questioni funzionali, il che solleva preoccupazioni sulla qualità complessiva e sulla manutenibilità di questi artefatti.
Risultati e Suggerimenti
Da questa analisi, è chiaro che mentre la condivisione di artefatti sta guadagnando terreno nella comunità SE, rimangono diverse sfide. Per migliorare la qualità e la disponibilità di questi artefatti, si possono fare alcune raccomandazioni chiave:
Migliorare le Linee Guida sulla Preparazione degli Artefatti: Conferenze e riviste dovrebbero fornire linee guida più chiare sulla preparazione degli artefatti, inclusi quali piattaforme utilizzare e come documentare efficacemente gli artefatti.
Promuovere Soluzioni di Archiviazione Sostenibili: Incoraggiare i ricercatori a utilizzare piattaforme consolidate come GitHub e Zenodo per l'archiviazione, minimizzando l'uso di unità temporanee e siti web personali, soggetti a link rot.
Standardizzare le Posizioni degli URL: Gli URL degli artefatti dovrebbero essere chiaramente visibili nelle pubblicazioni, idealmente in una sezione dedicata. Questo li renderebbe più facili da trovare e accedere.
Incoraggiare la Manutenzione Regolare: I ricercatori devono trattare i loro artefatti come progetti in corso piuttosto che come sottomissioni una tantum. Aggiornamenti regolari sono essenziali per mantenere gli artefatti utili.
Concentrarsi sui Miglioramenti della Qualità: Maggiori sforzi dovrebbero essere fatti per migliorare la qualità degli artefatti, in particolare in termini di documentazione. File README chiari e completi possono migliorare significativamente l'usabilità e la riproducibilità.
Aumentare la Consapevolezza sull'Importanza degli Artefatti: La comunità dovrebbe continuare a promuovere un ambiente in cui gli artefatti siano considerati componenti critici della ricerca, non solo materiali supplementari.
Conclusione
L'aumento della trasparenza e della condivisione di artefatti nelle pubblicazioni SE rappresenta un progresso positivo nel campo. Tuttavia, la comunità deve affrontare le problematiche in corso legate alla manutenzione, popolarità e qualità degli artefatti. Attuando questi suggerimenti, i ricercatori e gli organizzatori di conferenze possono migliorare l'efficacia e l'impatto degli artefatti di ricerca, beneficiando infine la comunità più ampia dell'ingegneria del software.
Man mano che gli artefatti di ricerca continuano a svolgere un ruolo cruciale nel facilitare la collaborazione, la verifica e l'avanzamento nell'ingegneria del software, la concentrazione sul miglioramento delle loro pratiche sarà vitale per garantire che i benefici della condivisione di questi materiali siano completamente realizzati.
Titolo: Research Artifacts in Software Engineering Publications: Status and Trends
Estratto: The Software Engineering (SE) community has been embracing the open science policy and encouraging researchers to disclose artifacts in their publications. However, the status and trends of artifact practice and quality remain unclear, lacking insights on further improvement. In this paper, we present an empirical study to characterize the research artifacts in SE publications. Specifically, we manually collect 1,487 artifacts from all 2,196 papers published in top-tier SE conferences (ASE, FSE, ICSE, and ISSTA) from 2017 to 2022. We investigate the common practices (e.g., URL location and format, storage websites), maintenance activities (e.g., last update time and URL validity), popularity (e.g., the number of stars on GitHub and characteristics), and quality (e.g., documentation and code smell) of these artifacts. Based on our analysis, we reveal a rise in publications providing artifacts. The usage of Zenodo for sharing artifacts has significantly increased. However, artifacts stored in GitHub tend to receive few stars, indicating a limited influence on real-world SE applications. We summarize the results and provide suggestions to different stakeholders in conjunction with current guidelines.
Autori: Mugeng Liu, Xiaolong Huang, Wei He, Yibing Xie, Jie M. Zhang, Xiang Jing, Zhenpeng Chen, Yun Ma
Ultimo aggiornamento: 2024-04-10 00:00:00
Lingua: English
URL di origine: https://arxiv.org/abs/2404.06852
Fonte PDF: https://arxiv.org/pdf/2404.06852
Licenza: https://creativecommons.org/licenses/by/4.0/
Modifiche: Questa sintesi è stata creata con l'assistenza di AI e potrebbe presentare delle imprecisioni. Per informazioni accurate, consultare i documenti originali collegati qui.
Si ringrazia arxiv per l'utilizzo della sua interoperabilità ad accesso aperto.
Link di riferimento
- https://www.latex-project.org/lppl.txt
- https://github.com/
- https://zenodo.org/
- https://github.com/github/linguist
- https://hellogithub.com/report/tiobe/
- https://pmd.github.io/latest/pmd_rules_java.html
- https://ra.bdware.cn
- https://github.com/morgen52/SE-artifact
- https://www.acm.org/publications/taps/whitelist-of-latex-packages
- https://dl.acm.org/ccs.cfm
- https://zenodo.org/record/7041714