Uno studio dell’UOC descrive l’importanza dei contributori non codificati nella sostenibilità di questo tipo di progetto
I sistemi open source sono un tipo di software che può essere liberamente modificato e distribuito. I progetti open source sono al centro dell’infrastruttura della nostra società digitale , ma sono suscettibili di notevoli problemi di sostenibilità perché molte persone li utilizzano ma pochissimi contribuiscono al loro sviluppo . Ricerca di Javier Cánovas (membro della Facoltà di Informatica, Multimedialità e Telecomunicazioni dell’UOC e ricercatore presso il gruppo Systems, Software and Models Research Lab ( SOM Research Lab ) presso l’ IN3 Internet Interdisciplinary Institute), insieme a Jordi Cabot (professore di ricerca ICREA e capogruppo), ha analizzato i profili degli utenti coinvolti in questi progetti. I risultati mostrano che la presenza di contributori che non sviluppano codice è molto significativa e che esiste anche un certo grado di specializzazione tra queste persone. Secondo i ricercatori, questi dati ” demistificano l’idea che solo gli sviluppatori guidano progetti open source ” e potrebbero essere utilizzati per progettare nuove strategie per migliorare la sostenibilità di tali iniziative.
Completare il quadro parziale dei progetti open source
La struttura dei progetti open-source dipende fondamentalmente sia dalla comunità dei contributori (che mantengono vivi i progetti) sia dalla loro collaborazione in modo attivo e arricchente. Tuttavia, la stragrande maggioranza della ricerca su queste comunità si concentra sullo studio dei profili degli utenti responsabili della programmazione e di altre attività tecniche, come la revisione o la combinazione di codice. “Questo è solo un quadro parziale di ciò in cui consiste realmente un progetto open source e di come va avanti, che è generalmente basato su una comunità di utenti che si occupano di un’ampia varietà di compiti (come marketing, promozione e design), che aiutano anche a redigere la documentazione o prendono parte alle discussioni sull’evoluzione futura del progetto”, ha spiegato Javier Cánovas.
Per comprendere più a fondo le dinamiche di collaborazione nei sistemi open-source, i ricercatori hanno analizzato i 100 progetti più importanti di npm (npm è il gestore di pacchetti per Node.js, uno dei server di applicazioni Web più popolari) trovati su GitHub, uno dei principali social piattaforma di codifica. “Questo studio ci ha permesso di verificare che attività non codificate (non tecniche), come segnalare un problema, suggerire un miglioramento, partecipare a una discussione o semplicemente reagire ai commenti di altre persone (ad esempio con un’emoji per comunicare accettazione di una proposta), sono una caratteristica comune nei sistemi open-source .In effetti, la loro presenza è altamente significativa, a dimostrazione del loro coinvolgimento nella vita del progetto”, ha sottolineato Javier Cánovas.
Divisione dei compiti del progetto
Lo studio ha anche esaminato se i contributori del progetto di solito hanno un unico compito o se svolgono più compiti e, quindi, i diversi ruoli si sovrappongono. I risultati mostrano che ci sono utenti che contribuiscono al progetto solo con attività non tecniche , che integrerebbero il lavoro delle persone che si concentrano sulla programmazione e sullo sviluppo del codice, che, al contrario, avrebbero poco coinvolgimento in altri compiti .
Questi dati forniscono nuovi indizi per la progettazione di strategie di onboarding e governance che facilitino l’evoluzione di questi utenti e una migliore collaborazione tra i vari ruoli. “Nella maggior parte dei progetti open source, gli sforzi per attirare e coinvolgere nuovi contributori sono chiaramente rivolti agli sviluppatori, ma ciò significa che perdono l’opportunità di attrarre altri tipi di profili che potrebbero essere più facili da inserire e potrebbero anche aiutare il progresso e il lungo -sostenibilità a termine del progetto”, hanno osservato gli autori dello studio.
“In effetti”, hanno aggiunto, “i progetti interessati ad attrarre più contributori tecnici dovrebbero anche compiere uno sforzo aggiuntivo per aiutare alcuni dei contributori non tecnici a prendere parte alla parte di programmazione , poiché questa non è un’evoluzione naturale”.
Studiare l’evoluzione della comunità nel tempo
Questa ricerca fa parte del lavoro del SOM Research Lab incentrato sull’ottimizzazione e sulla promozione della collaborazione dei contributori nei sistemi open source , che ha diverse ramificazioni. “L’aspetto più significativo in questo momento è considerare la dimensione temporale, ovvero come lo stato di un progetto e la sua comunità si evolvono nel tempo”, ha affermato il ricercatore.
Altre linee di lavoro in quest’area includono lo studio dei meccanismi per attrarre nuovi contributori a progetti open source, esplorare nuovi modi di visualizzare i contributi dei membri della comunità o proporre soluzioni per definire regole (o modelli) di governance della comunità .
Questo progetto di ricerca UOC contribuisce all’obiettivo di sviluppo sostenibile ( SDG ) 9 ( Industria, innovazione e infrastrutture) .
Articolo correlato
Cánovas Izquierdo, JL, Cabot, J. Sull’analisi dei ruoli non codificanti nello sviluppo open source. Empir Software Ita 27, 18 (2022). https://doi.org/10.1007/s10664-021-10061-x
Leave a Reply