Norme per l’acquisizione di software per la Pubblica Amministrazione¶
L’acquisizione di soluzioni software per la pubblica amministrazione segue il processo descritto nell’articolo 68 del Codice dell’Amministrazione Digitale.
In sintesi, una PA per acquisire software deve sempre effettuare una valutazione comparativa tra le soluzioni disponibili. Le alternative possono essere:
riuso di una soluzione già disponibile, sviluppata e messa a disposizione da un’altra PA;
riuso di una soluzione di software libero sviluppata da terzi;
sviluppo di una nuova soluzione utilizzando sviluppatori interni alla PA;
sviluppo di una nuova soluzione su commissione a un fornitore esterno.
sviluppo ex-novo di una soluzione.
Nel caso in cui la PA decida di acquisire software proprietario o di svilupparne uno nuovo (vale a dire nel caso in cui non sfrutti il riuso di una soluzione già disponibile o di un software libero di terze parti) deve motivare tale scelta attraverso la redazione di una valutazione comparativa scritta. Il software commissionato o sviluppato deve quindi obbligatoriamente essere rilasciato come software libero per favorire il suo riuso da parte di altre amministrazioni.
Il catalogo di Developers Italia è centrale in questo processo di pubblicazione e riuso di software: facilita le operazioni di inserimento di nuove soluzioni da parte delle pubbliche amministrazioni e la consultazione di soluzioni già messe a disposizione.
Le fasi di sviluppo e riuso di software¶
Nel seguito sono descritte nel dettaglio la fase di sviluppo e la fase di riuso di software evidenziando in particolare le interazioni che avvengono con il catalogo.
Diagramma esemplificativo della fase di sviluppo:
La PA “A” decide di sviluppare un ipotetico software “Imago” da zero e lo commissiona a uno sviluppatore (interno o tramite appalto).
La PA “A” acquisisce la completa titolarità di quanto sviluppato.
La PA “A” incarica lo sviluppatore di pubblicare il codice sorgente completo della soluzione con licenza libera, durante o al termine della lavorazione, su uno strumento di code hosting.
Il software viene “registrato” su Developers Italia, per acquisire visibilità nazionale e internazionale.
Diagramma esplicativo della fase di riuso:
La PA “B”, durante la valutazione comparativa, cerca su Developers Italia un software a riuso adatto alle proprie esigenze e trova “Imago”.
La PA “B” scarica liberamente il software dallo strumento di code hosting della PA “A” e lo valuta in autonomia.
La PA “B” incarica uno sviluppatore di personalizzare il software, installarlo, mantenerlo, e formare il proprio personale. Questo sviluppatore può essere lo stesso o un altro, ma deve proporre ogni miglioria per integrazione agli autori originali. Il software non deve essere necessariamente ripubblicato a patto che tutte le personalizzazioni siano integrate dal team di sviluppo originale.
Il software, se personalizzato, dovrà essere pubblicato sulla propria piattaforma di code hosting e nuovamente registrato all’interno di Developers Italia.
In generale, rispetto a questo modello di riuso possiamo sottolineare che le Pubbliche Amministrazioni “A” e “B” non devono neppure contattarsi. La licenza libera regola le condizioni di utilizzo del software. Il software può essere scritto da uno sviluppatore e personalizzato da un altro, questo elimina i vincoli e i “lock-in”. La parte tecnica di pubblicazione è sempre demandata agli sviluppatori poiché è parte integrante del processo di sviluppo. Questo, quindi, è un sistema efficiente e a basso costo.