La digitalizzazione della Pubblica Amministrazione è a un punto di svolta. La legge italiana che sancisce il principio per cui la Pubblica Amministrazione deve preferibilmente acquisire software open source e deve rilasciare in open source tutto il software che sviluppa ha finalmente le sue linee guida attuative che entrano in vigore.

Con le Linee Guida le amministrazioni potranno (e dovranno) pubblicare in Developers Italia tutto il software di loro proprietà acquisito negli anni passati e che acquisiranno d’ora in avanti.

Abbiamo raccontato una prima volta delle linee guida in un post pubblicato nel 2018, “Open Software e Pubblica Amministrazione: online le linee guida sull’acquisizione e il riuso del software”, in cui annunciavamo l’avvio della consultazione pubblica. Nella fase di consultazione abbiamo ricevuto molte osservazioni costruttive, che abbiamo recepito in buona misura. Questo ci ha testimoniato che i tempi sono maturi per adottare in pieno il paradigma open source.

Dopo molti mesi, l’iter di approvazione delle linee guida si è completato con il parere favorevole della Conferenza unificata, il silenzio-assenso della Commissione Europea e infine con la pubblicazione.

Cosa cambia da oggi?

Con l’effettiva entrata in vigore delle linee guida:

Le Pubbliche Amministrazioni dovranno svolgere una valutazione comparativa prima di acquisire software, privilegiando le soluzioni open source (incluse quelle messe a riuso da altre amministrazioni). Lo sviluppo di nuovo software o l’acquisto di licenze di software proprietario dovrà essere motivato. Tutto il software sviluppato per conto della Pubblica Amministrazione dovrà essere reso disponibile con una licenza open source in un repository pubblicamente accessibile e inserito nel catalogo di Developers Italia.

Ci aspettiamo delle ripercussioni virtuose sul mercato, perché con il riuso del software si potrà mettere fine alla duplicazione della spesa (si pensi a tutti gli enti locali che hanno le medesime necessità) in favore del consolidamento di un numero minore di soluzioni software più mature e più sicure.

Inoltre, la competizione tra fornitori si potrà fare sulla capacità di far evolvere il software già esistente invece che sul lock-in, come avviene ora, ovvero spingendo un’amministrazione al rinnovo delle proprie licenze attraverso vincoli tecnologici. Questo permette di aprire il mercato a nuove software house, anche di dimensioni più piccole perché, potendo visionare il codice sorgente delle soluzioni già in uso, potranno beneficiare di una minore asimmetria informativa rispetto alle aziende che abitualmente sono fornitori della Pubblica Amministrazione.

Dalla legge alla pratica

Una legge non è sufficiente senza strumenti che la rendano facilmente applicabile. Per questo abbiamo predisposto:

Gli allegati tecnici delle linee guida . Descrivono le semplici azioni che un fornitore di software deve effettuare per adempiere all’obbligo di rilascio in capo all’amministrazione che commissiona lo sviluppo. Per le Pubbliche Amministrazioni sarà sufficiente aggiungere questo allegato tra i documenti del capitolato di gara e il fornitore si occuperà di tutto il resto.

. Descrivono le semplici azioni che un fornitore di software deve effettuare per adempiere all’obbligo di rilascio in capo all’amministrazione che commissiona lo sviluppo. Per le Pubbliche Amministrazioni sarà sufficiente aggiungere questo allegato tra i documenti del capitolato di gara e il fornitore si occuperà di tutto il resto. Il catalogo del software nel sito di Developers Italia conterrà schede descrittive dettagliate, screenshot e link diretti al codice sorgente, per una piena e immediata valutazione delle soluzioni disponibili.

Uno screenshot del catalogo del software su Developers Italia

Abbiamo concepito il catalogo del software come un vero e proprio motore di ricerca che attraverso il suo crawler cerca automaticamente tutto il software pubblico nei siti di code hosting (GitHub, GitLab, BitBucket ecc.). In ciascun repository di codice sarà sufficiente inserire un semplice file di metadati, chiamato publiccode.yml, contenente informazioni descrittive: funzionalità del software, requisiti, ente titolare, maintainer incaricato (e data di scadenza del contratto di manutenzione), ambiti di utilizzo, rispondenza a normative e altro.

Ciascuna amministrazione dovrà seguire una procedura snella, una tantum, per dichiarare il sito di code hosting scelto: da quel momento il crawler acquisirà tutto il software pubblicato e i relativi aggiornamenti. Il crawler potrà incrociare le informazioni acquisite e rilevare anche le varianti (fork) degli stessi applicativi.

La catalogazione del software pubblico consentirà anche di monitorare e comprendere meglio le necessità tecnologiche delle amministrazioni, aprendo la strada a nuove azioni di governance e ottimizzazione dell’approvvigionamento e dello sviluppo.

Ma c’è di più: il catalogo di Developers Italia potrà ospitare anche il software open source non commissionato dalla Pubblica Amministrazione, ma di potenziale interesse per la stessa.

Aziende, sviluppatori, maintainer: se ritenete che il vostro software rientri in questa categoria potete inserire un file publiccode.yml nel vostro repositorio per entrare nel catalogo.

Inizia oggi la seconda fase del nostro lavoro: il Team per la Trasformazione Digitale e l’Agenzia per l’Italia digitale (Agid) assisteranno le Pubbliche Amministrazioni nel rilascio open source del software di loro proprietà, in attuazione delle linee guida.