È legale riutilizzare il codice nei progetti di altri clienti?

22

Lavoro come sviluppatore di software indipendente per applicazioni mobili. Un cliente mi chiede di sviluppare un'app mobile. Quindi al momento sto calcolando il tempo e lo sforzo per scrivere un'offerta per questo progetto.

L'app stessa verrà utilizzata solo per un certo periodo poiché è correlata a un determinato evento dopo di ciò se sarà inutile. Ma la funzionalità di base dell'app sarà riutilizzabile per gli altri clienti che desiderano avere un'app simile per il loro evento.

Al momento mi chiedo se è OK sviluppare l'app per il cliente, permettergli di pagare lo sviluppo e riutilizzare parte del codice sorgente per l'app di un altro cliente?

Quindi quale sarebbe il modo migliore per me per affrontare questo scenario?

  • A chi appartiene il codice sorgente dell'app?
  • Devo dare il codice sorgente al cliente mentre pagava lo sviluppo?
  • Se devo, posso ancora conservarne una copia e riutilizzarla in seguito?
  • Devo chiedere al cliente di riutilizzare il codice?
  • Devo lavorare con un qualche tipo di modello di licenza qui. E lasciare che il primo cliente paghi solo una certa parte dello sviluppo in modo da poter riutilizzare il codice senza problemi?

Spero di aver chiarito la mia situazione. Non vedo l'ora che tu risponda.

    
posta Flo 30.01.2012 - 12:43
fonte

6 risposte

26

Devi decidere prima di iniziare il progetto, che manterrà la proprietà del codice.

Se ti consentono felicemente di mantenere la proprietà, allora puoi usarlo in altri progetti. Se desiderano assumerne la proprietà, è un punto di negoziazione.

    
risposta data 30.01.2012 - 12:51
fonte
6

Poiché non hai ancora un contratto, devi risolvere questi problemi con il cliente prima di firmare il contratto finale. Da quanto ho capito, questo accadrà se il cliente è d'accordo con le tue stime su tempi e costi, quindi è qualcosa che dovresti pensare a discutere con il cliente ora, insieme ai requisiti. Queste sono cose che sono spesso incluse in un documento del genere. Ciò che è incluso dovrebbe essere gradito sia a te che alla persona che paga il prodotto, sebbene a seconda della persona o dell'organizzazione, potresti non ottenere tutto ciò che desideri.

Se non hai molta esperienza nello scrivere contratti, o se hai domande molto specifiche, la persona migliore da chiedere sarebbe un avvocato specializzato in contratti e diritto commerciale - saprebbero se ciò che hai scritto sarebbe alzarsi in tribunale se ci dovesse essere un problema. Non vorresti che un errore nel tuo contratto causasse problemi in seguito.

    
risposta data 30.01.2012 - 13:03
fonte
4

Le risposte finora sono state eccellenti. Sono pienamente d'accordo con il consiglio di:

  • chiedi a un avvocato
  • redigi un contratto ogni volta che lavori con qualcuno
  • continua a lavorare con il tuo avvocato
  • L'utile!

In questa situazione, sai già che la "funzionalità di base dell'app sarà riutilizzabile per gli altri clienti", e infatti sono sicuro che tu e altri avete già sperimentato situazioni in cui conoscete alcune funzionalità o framework di base - siano essi web, mobili, desktop o altro - saranno riutilizzati. Intendo davvero, perché non dovremmo riutilizzare qualcosa che sappiamo funziona e ci è familiare? Probabilmente lo facciamo tutti sempre.

Potrebbe non funzionare per te, ma ha funzionato per me nel corso degli anni:

  • Mangia il costo di sviluppo di tutto ciò che pensi di riutilizzare, conservare proprietà e concedetela in licenza ai vostri clienti. Nessun cambio di denaro esterno mani in questo processo, per mantenere la proprietà chiara.

In questa situazione, con l'aiuto di un avvocato, puoi chiarire che i tuoi clienti pagano per tutto ciò che è stato creato sulla base delle funzionalità di base fornite, che possiedono quella personalizzazione ma non la base, e tu continui a essere libero di sviluppare per gli altri in modo simile.

Se il cliente richiede esclusività di utilizzo, allora puoi offrirlo a un prezzo che ti retribuisce per il tempo, l'impegno e l'impossibilità di venderlo a chiunque altro in futuro.

Il lato negativo, ovviamente, è che stai sviluppando qualcosa gratuitamente. Devi essere certo che sarà riutilizzabile, e che gli altri ti pagheranno, altrimenti è un brutto gioco d'azzardo. Ma se hai intenzione di diventare uno sviluppatore indipendente per un po 'di tempo e avere una base di clienti - o almeno vuoi - questa linea di pensiero potrebbe essere qualcosa da considerare a lungo termine.

E parla con un avvocato!

    
risposta data 30.01.2012 - 16:21
fonte
3

To whom belongs the source code of the app? Do I have to give the source code to the customer as they paid for the development?

Dipende dal contratto. In generale, devi chiedere al cliente ciò che è noto come esclusività . Ad esempio, potresti caricare molto di più per lo sviluppo esclusivo (e quindi il cliente sarà il proprietario del codice); in alternativa puoi dire che il cliente dovrà pagare di meno, ma tu sei legalmente proprietario della fonte. È possibile fornire / installare la versione del software solo binario ai clienti in modo che i clienti debbano venire da te per le modifiche.

If I have to, can I still keep a copy of it and reuse it later? Do I have to ask the customer to reuse the code?

Generalmente, conservare una copia non è illegale / non etico. Puoi usarlo quando il cliente chiede più sviluppo. Tuttavia, la distribuzione di codice (a qualcun altro) se l'accordo era esclusivo, non è giusto.

Do I have to work with some kind of licensing model here. And let the first customer only pay a certain part of the development so I can reuse the code without any concerns?

Non solo dal punto di vista del riutilizzo del codice in caso contrario, il processo di licenza deve essere lì per definire tutti gli elementi del cliente e le vostre preoccupazioni. Quindi è necessario patente indipendentemente anche se l'accordo è unilaterale. Inoltre, dovresti includere disposizioni per lo sviluppo futuro in seguito per lo stesso cliente.

    
risposta data 30.01.2012 - 13:19
fonte
-1

Puoi sempre usare nel tuo codice altre librerie, ad esempio l'open source. Ovviamente il cliente non avrà diritti d'autore su di loro. In casi particolari, puoi usare le librerie scritte da te. Il cliente paga per la personalizzazione - quella parte, progettata per lui e per le sue esigenze aziendali. Tutto ciò che non è specifico dell'utente e deve essere utilizzato in più progetti può essere la tua libreria. Non vedo nessun problema lì.

Il problema potrebbe essere se riutilizzi l'interfaccia o la logica aziendale o addirittura riveli lo stesso progetto a qualcun altro. Il codice di utilità è qualcosa di cui il cliente di solito non è consapevole e non gliene importa.

    
risposta data 30.01.2012 - 16:43
fonte
-1

Le altre risposte stanno semplificando le cose. Non intendo avere una risposta completa, solo per sottolineare alcune cose.

  1. Puoi concedere diritti o puoi concedere diritti esclusivi.
  2. Se si concedono diritti esclusivi, è possibile mantenerlo come parte del contratto, si conserveranno i diritti non esclusivi. (Questo ti permetterà di usare il codice / programma personalmente)
  3. Anche se non si forniscono diritti esclusivi, è comunque possibile fornire diritti non esclusivi per l'utilizzo, la modifica e la distribuzione del codice sorgente. I due non si escludono a vicenda.
risposta data 30.01.2012 - 17:14
fonte

Leggi altre domande sui tag