Cerca
Close this search box.
Cerca
Close this search box.

Dipendenze da Java, chi le licenzia? Il caso dell’Agenzia delle Entrate

Con la nuova metrica, una sola dipendenza non licenziata potrebbe comportare spese ingenti

Java è una spina dorsale per milioni di applicazioni.

Negli anni, le prestazioni, la scalabilità e l’elaborazione più veloce fornite da Java hanno portato allo sviluppo della maggior parte delle applicazioni aziendali in Java, che di conseguenza dipendono dalle sue funzionalità per eseguire alcune attività chiave.

Ad esempio, nell’ambito finanziario dove si utilizzano programmi software per eseguire attività di trading elettronico di front e back office, elaborazione dati ecc., Java ha un ruolo chiave nella scrittura di applicazioni lato server che ricevono dati da un server, li elaborano e inviano i dati elaborati ad altri server o processi.

Da queste dipendenze non è escluso l’applicativo che l’Agenzia delle Entrate mette a disposizione di utenti e aziende allo scopo di utilizzare gli strumenti telematici per la gestione e la riscossione dei tributi. L’utilizzo prevede il download di Java per permetterne il regolare funzionamento.

Fino ad oggi (quasi) nessun problema: le aziende, nel licenziare Java, conteggiavano utenti e processori che utilizzavano Java. Ma con la nuova metrica per dipendenti, che è stata introdotta a gennaio 2023, le carte in tavola cambiano: il nuovo modello di licensing prevede che nel conteggio per l’utilizzo commerciale di Java finisca tutto il personale dell’azienda, non solo gli utenti e i processori che utilizzano i programmi.

Quindi una sola dipendenza degli applicativi utilizzati da versioni Java che richiedono licenza può presentare un conto molto salato. Se il costo di licenza è pari a 15$ al mese/dipendente fino a 999 dipendenti e 5,25$ al mese/dipendente per utenti tra i 40.000 e i 49.000, si potrebbe avere un incremento di spesa fino a 15/20 volte, da moltiplicare per il numero di applicativi che richiedono licenza Java.

Serve licenza? Dipende

Non tutti gli utilizzi di Java richiedono licenza: c’è differenza tra l’aver scaricato un’applicazione Java con licenza GNU (come dalla piattaforma open source OpenJDK) o con agreement BCL/OTN (OracleJDK). Una differenza che ha radici nella storia di Java, che prima dell’acquisto da parte di Oracle era libero per l’uso commerciale.

Nel caso di download da Oracle, che ha aggiunto delle funzionalità proprietarie alla suite Java, gioca un ruolo chiave nel determinare se è richiesta o meno la licenza la versione di Java che è stata scaricata.

Quando ci troviamo davanti le installazioni Java che abbiamo sul nostro pc, dobbiamo prendere in considerazione tutti i software che ci hanno costretto a “metterci in casa” Java e risalire all’agreement e di conseguenza alla versione scaricata. Per un approfondimento su quali versioni richiedono licenza, rimandiamo a questo articolo.

Il caso Agenzia delle Entrate

Arriviamo al caso esemplificativo dell’Agenzia delle Entrate. Per utilizzare le applicazioni su cui dipendono gli strumenti telematici, utenti e aziende devono scaricare Java, secondo quanto specificato dall’Agenzia delle Entrate:

Per eseguire l’installazione del software è necessario utilizzare la Java Virtual Machine versione 1.8 e superiori.

Sotto screenshot dal sito dell’Agenzia delle Entrate (serve autenticazione): 

Il pensiero comune riguardo a queste installazioni è quello che segue: non essendo il download intenzionale, ma “forzato” da un ente esterno (in questo caso l’agenzia fiscale della PA italiana), chi scarica non è responsabile per l’utilizzo di Java (e di conseguenza per la licenza).

Come regola generale potrebbe anche essere valida, ma non dobbiamo tralasciare nulla: quando scopriamo eventuali dipendenze applicative da Java per software di terze parti, dobbiamo andare a leggere quali sono i programmi ISV (Indipendent Software Vendor) per scoprire l’effettiva responsabilità dell’utilizzo di Java.

I programmi ISV sono quelle relazioni tra chi produce una soluzione completa e chi fornisce degli strumenti affinché quella soluzione funzioni e quindi nel nostro caso Oracle con Java. Dalla lettura degli ISV, possono emergere due casi:

  • Dove espressamente indicato, la licenza per Java è in carico a chi ha fornito il software
  • Dove non è stata fatta menzione alcuna a Java, la licenza è in carico a chi ha effettuato il download

Facciamo degli esempi relativi agli ISV.

La software house ACME, affinché il suo software funzioni, ha bisogno di integrare nello stesso anche Oracle Java: pertanto ha stretto un accordo con Oracle in cui si riporta che è ACME che dà il diritto di utilizzare Java e si assume verso Oracle tutte le responsabilità del caso. Se pensiamo al suo largo impiego nella PA, nella ristorazione ad esempio, la non responsabilità sulla licenza ci permette di tirare un sospiro di sollievo.

Diverso è il caso di BLOB: sa che, affinché il suo software possa funzionare, sul client dove girerà il suo applicativo deve essere installato anche Oracle Java ma decide di non fare alcun accordo con Oracle. BLOB lascia all’utente del suo prodotto la responsabilità di ottemperare ad eventuali obblighi verso Oracle.

Ritorniamo al caso dell’Agenzia delle Entrate: chi è responsabile per Oracle Java? C’è un programma ISV tra l’autorità e Oracle? Siamo nel secondo scenario: non risulta esserci alcun accordo tra Oracle e l’Agenzia delle Entrate, per cui l’eventuale licenza di Java è in carico all’utente finale.

A questo punto, dobbiamo valutare le opzioni sul piatto.

La prima idea che ci può venire è presto confutata: dalle prove fatte, gli applicativi dell’Agenzia non funzionano con OpenJDK; pertanto, non possiamo pensare di sostituire Oracle Java con OpenJDK. Quindi per forza di cose dobbiamo avere Oracle Java installato: è un problema?

Abbiamo verificato che gli applicativi dell’Agenzia delle Entrate funzionano con Oracle Java 1.8, versione 202. Quindi funzionano con una versione che risponde ancora alla Binary Code License (BCL), un agreement che prevede l’utilizzo libero in caso di “general purpose”.

Nel General Purpose rientrano tutte quelle attività che sono a supporto della nostra quotidianità aziendale e non concorrono al nostro – per usare le parole di Oracle – «internal business». Quindi, se effettivamente l’utilizzo degli applicativi dell’Agenzia delle Entrate rientra nei casi previsti del General Purpose (e qui è da appurare con il vendor), l’utilizzo NON è soggetto al pagamento della licenza.

Quello che è certo che ogni applicativo software che utilizza Java potrebbe avere uno scenario differente, per cui si consiglia un’indagine approfondita delle dipendenze applicative e delle responsabilità di licenza per Java. Soprattutto in virtù degli elevati costi di licenza che ci aspettano con la nuova metrica, è indispensabile valutare tutte le alternative. Ne abbiamo parlato anche nel nostro ultimo webinar (qui il link per ottenere la registrazione).

In WEGG siamo esperti di licensing Java, quindi se hai bisogno di supporto per approfondire queste tematiche non esitare a contattarci.

Articolo a firma di Giulio Gregori, SAM/ITAM Consultant di WEGG

02-s pattern02

Vorresti approfondire le dipendenze dei tuoi software da Java?

CONTATTACI!