Guida7 min di lettura
Proprietà del codice sorgente: a chi appartiene il software su misura
La proprietà del codice sorgente di un software commissionato a un esterno non passa al cliente in automatico: la legge italiana non lo dice in modo esplicito, quindi conta il contratto. Va scritto chi ha i diritti d'uso, se e quando si consegna il codice e cosa resta allo sviluppatore.

La proprietà del codice sorgente di un software commissionato a un professionista esterno non passa al cliente in automatico. La legge italiana sul diritto d'autore protegge i programmi per computer, ma non dice in modo esplicito a chi spettino i diritti quando il software è sviluppato su commissione. Per questo conta quello che è scritto nel contratto: chi può usare, modificare e rivendere il programma, se e quando viene consegnato il codice sorgente, e quali parti restano allo sviluppatore.
È una delle domande che conviene fare prima di iniziare, insieme a quella sul prezzo. Dopo, è molto più difficile sistemarla.
Che cos'è il codice sorgente e perché conta?
Il codice sorgente è il testo scritto dal programmatore, nel linguaggio di programmazione, da cui nasce il programma. Chi ha il codice sorgente può leggerlo, correggerlo, aggiungere funzioni e affidarne la manutenzione a qualcun altro.
Senza il codice sorgente hai solo il programma funzionante. Puoi usarlo, ma se lo sviluppatore smette di lavorare, cambia mestiere o chiude, nessun altro può modificarlo senza riscriverlo. È la situazione di molte aziende con vecchi gestionali che nessuno sa più toccare.
Cosa dice la legge italiana sul software?
La legge sul diritto d'autore, la 633 del 1941, tutela i programmi per elaboratore come opere dell'ingegno. Distingue due tipi di diritti.
I diritti morali, come quello di essere riconosciuto autore, restano sempre alla persona che ha scritto il programma e non si possono cedere.
I diritti di utilizzazione economica, cioè riprodurre, modificare, distribuire il programma, si possono cedere o concedere in licenza.
Per il software scritto da un dipendente durante il suo lavoro, la legge è chiara: salvo patto contrario, i diritti economici spettano al datore di lavoro. Per il software commissionato a un professionista o a un'azienda esterna, invece, manca una regola espressa. Le interpretazioni dei giuristi e dei tribunali non sono uniformi e dipendono anche dal tipo di contratto. Per questo il contratto deve dirlo in modo esplicito. Per una questione concreta, il riferimento resta un avvocato esperto di proprietà intellettuale.
Che differenza c'è fra licenza d'uso e cessione dei diritti?
Con una licenza d'uso puoi usare il programma, alle condizioni scritte nella licenza, ma i diritti restano a chi l'ha sviluppato. È il modello dei software commerciali e dei servizi in abbonamento: paghi per usarli, e la proprietà resta al produttore.
Con una cessione dei diritti di utilizzazione economica, quei diritti passano a te. Puoi modificare il programma, farlo modificare da altri e, se il contratto lo prevede, perfino rivenderlo.
Fra i due estremi ci sono molte combinazioni: licenza esclusiva o non esclusiva, perpetua o a tempo, limitata alla tua azienda o estesa. Nessuna è giusta in assoluto. Conta che sia scritta e che corrisponda a quello che ti serve.
Cosa scrivere nel contratto di sviluppo?
Le clausole che controllo sempre sono queste.
- Chi detiene i diritti di utilizzazione economica del software sviluppato, e da quando.
- Se il codice sorgente viene consegnato, in che forma e in quale momento.
- Quali componenti preesistenti dello sviluppatore sono inclusi, e con quale licenza li puoi usare.
- Quali componenti di terzi, come librerie open source, sono usati e con quali licenze.
- Chi è proprietario dei dati, che devono restare tuoi in ogni caso.
- Cosa succede se il rapporto si interrompe: consegna del codice, dei dati, delle credenziali dei server.
Il momento del passaggio è spesso legato al pagamento: i diritti passano al saldo. È una regola equilibrata, perché tutela chi ha lavorato e chi ha pagato.
Come funziona nei miei progetti?
Nei progetti su misura che realizzo, il software e il codice scritti per il cliente passano a lui al saldo, e lo mettiamo per iscritto nel contratto. Restano miei i componenti riusabili, cioè le parti generiche che uso in più progetti, come accessi, permessi o generazione dei documenti. Il cliente ha il diritto di usarli all'interno del suo programma.
È un equilibrio che conviene a entrambi. Il cliente non paga da zero parti già costruite e collaudate, e io posso continuare a migliorarle per tutti.
Diverso è il caso dei miei prodotti in abbonamento, come ROOMIO, il gestionale per strutture ricettive. Lì il software resta mio e il cliente lo usa con un abbonamento, mentre i dati della struttura restano del cliente.
E il codice open source dentro il programma?
Quasi ogni software moderno usa componenti open source, cioè codice pubblico che chiunque può usare rispettando una licenza. È normale e utile: sono componenti usati da migliaia di progetti, controllati e aggiornati.
Le licenze però non sono tutte uguali. Alcune, come MIT o Apache, permettono quasi ogni uso chiedendo di citare l'autore. Altre, come la famiglia GPL, chiedono in certi casi di distribuire con la stessa licenza anche il codice che le usa. Per un gestionale usato solo in azienda di solito non è un problema, ma chi sviluppa deve sapere cosa sta usando e dirlo.
Cosa succede se lo sviluppatore sparisce?
È il rischio che il contratto deve coprire. Le protezioni pratiche sono tre.
La prima è avere il codice sorgente in un archivio a cui hai accesso, per esempio un repository intestato all'azienda, aggiornato durante tutto il lavoro.
La seconda è la documentazione: istruzioni su come installare il programma, com'è organizzato, dove sono i dati e le credenziali dei servizi usati.
La terza, per software molto critici, è il deposito del codice presso un terzo, che lo consegna al cliente se lo sviluppatore non può più garantire il servizio. È uno strumento usato soprattutto nei progetti grandi.
Anche le scelte tecniche contano. Un programma scritto con tecnologie diffuse, documentato e ordinato, può essere preso in mano da un altro sviluppatore. Un programma scritto con strumenti rari o senza ordine no, anche se hai il codice.
E con un software in abbonamento?
Con un SaaS il software non sarà mai tuo, ed è normale. Quello che deve restare tuo sono i dati. Prima di firmare, verifica come si esportano, in quale formato e cosa succede ai dati se smetti di pagare o se il servizio chiude.
È uno dei criteri che spiego nella guida su gestionale su misura o software pronto. Le clausole su proprietà e consegna conviene inserirle fin dal capitolato del software, così si ritrovano nella proposta.
Chi è proprietario dei dati e delle credenziali dei server?
I dati sono tuoi, sempre, qualunque sia l'accordo sul codice. Il contratto dovrebbe dirlo in modo esplicito e prevedere come riaverli in un formato leggibile, anche se il rapporto con lo sviluppatore o con il fornitore si interrompe.
Lo stesso vale per tutto ciò che sta intorno al programma. Il dominio, l'account del server, gli account dei servizi esterni, come l'invio delle email o il servizio di pagamento, conviene che siano intestati alla tua azienda, con lo sviluppatore che vi accede come collaboratore. Se sono intestati allo sviluppatore, il contratto deve prevedere il loro passaggio.
Un elenco aggiornato di questi accessi, conservato in un posto sicuro, evita brutte sorprese il giorno in cui cambi fornitore.
E le modifiche fatte su un software di terzi?
Quando uno sviluppatore personalizza un programma che non è tuo, come un gestionale commerciale o una piattaforma di e-commerce, i diritti sul programma restano al produttore. Le personalizzazioni scritte su commissione possono invece essere regolate nel contratto come qualsiasi altro codice.
Va però considerato un limite pratico: quelle modifiche funzionano solo dentro quel programma. Se un giorno lo abbandoni, le personalizzazioni restano lì. Per questo, quando una parte del lavoro è molto specifica della tua azienda, a volte conviene costruirla come programma separato e collegarlo, così resta utilizzabile anche cambiando il resto.
Ne parliamo?
Se stai per commissionare un software, o se ne hai uno di cui non sai bene cosa ti spetta, raccontami la situazione. Ti spiego come imposterei proprietà, consegna del codice e assistenza, da far verificare al tuo legale. Trovi come lavoro nella pagina sul gestionale su misura, sulla consulenza tecnica e sul rinnovo dei software vecchi. Mi scrivi dalla pagina contatti.
Crediti delle immagini
- Copertina: foto di Ilya Pavlov su Unsplash


