Quali sono i metodi per stimare il valore del codice sorgente?


10

Ho lavorato ad alcuni progetti sul mio tempo libero negli ultimi mesi. Recentemente sono stato contattato da amici per creare una startup, e questo codice sorgente sarebbe molto prezioso per noi.

Come co-fondatore, questo codice potrebbe contare qualcosa nel capitale dell'azienda e può essere scambiato con azioni. Ma come puoi stimarne il valore? Moltiplichi solo i salari standard del settore per il tempo che ho trascorso su di esso o ci sono altri metodi?


3
Puoi controllare la risposta di Joel Spolsky su un altro sito SE, all'avvio. Spiega in dettaglio l'equità tra azionisti delle startup.
Hakan Deryal,

Risposte:


10

Il sistema COCOMO ha al suo interno un modello per stimare i tempi di scrittura del software. Dato che il tempo è denaro, otterrai anche il valore del software dal punto di vista di "quanto costerebbe che qualcuno lo scriva". L'attuale formulazione di questo modello è il COCOMO II che ha uno strumento web piuttosto carino .

Con questo strumento Web, si può passare da una stima delle dimensioni (non si ha una stima, si hanno numeri effettivi di quanto sia grande il codice ...) e si ottengono i costi stimati di pianificazione, test e sviluppo.

Supponendo che 20k sloc (righe di codice sorgente) e un valore di $ 10k / mese per lo sviluppatore (e tutte le altre cose siano nominali) si ottiene un tempo stimato di 79,3 persone al mese per farlo (ricordate, si tratta di pianificazione, costruzione e test) per un valore di $ 793k.

Questo valore dovrebbe essere considerato come il minimo del valore del codice. Il valore effettivo sarebbe più elevato perché genera entrate ed è la proprietà intellettuale fondamentale della potenziale azienda.


4
Non sono d'accordo sul fatto che esiste un valore minimo da codificare, è possibile che il progetto sloc 1M sia completamente privo di valore se non crea valore per i clienti.
Massimo

@MaximR: sono d'accordo, ma almeno c'è qualche tentativo di definire una misura, mentre affermare di essere il proprietario di fatto e il padrone di tutto ciò che ruota attorno a una startup perché contribuisci con il codice originale sembra un po 'inverosimile e ingenuamente idealista per me. È una carta giusta per (provare a) giocare, ma sarà più efficace se puoi eseguirne il backup. Alla fine, ciò che l'OP vuole qui è il potere di contrattazione, e questo gli darebbe un po '(se è corretto o no è un problema diverso, ma dà un certo vantaggio).
haylem

1
@MaximR se esiste un valore reale nel codice che può essere commercializzato, il valore del codice è maggiore del tempo necessario per scriverlo da zero. Questo è ciò che identifica il modello: il tempo di scrivere il codice. Se il codice è privo di valore, la società fondata su di esso è altrettanto priva di valore e il valore attribuito all'azienda è pari a circa lo zero. La domanda che questo cerca di rispondere è "se scrivo 20.000 righe di codice e investi $ 800.000 in società, quale sarebbe la suddivisione delle azioni?"

@MichaelT Se la domanda è che 1 persona investe $ 800k e un'altra acconsentirà a scrivere 20k righe di codice - questo è un metodo equo. Tuttavia, se la persona ha già scritto 20k di codice, il valore di questo per l'autore è solo quello per cui può venderlo a qualcun altro. E il valore per l'azienda / altro fondatore non è altro che ciò che dovrà pagare qualcun altro per ottenerlo.
Massimo

@haylem Il punto giusto, ma penso che anche la comprensione dell'economia di base possa aiutare. E altri fondatori potrebbero non essere abbastanza creduloni da sostenere l'argomento "Ho speso 400 ore su questo, pagami". Altrimenti la raccolta di tutte le risposte su codegolf.stackexchange.com non avrebbe prezzo
MaximR

9

Non confondere il tuo tempo speso per quello che vale. Hai anche avuto l'idea, progettato e rischiato il tuo tempo per costruirlo. Questo va ben oltre il costo di un programmatore assunto.

A partire da ora, dovresti possedere il 100% dell'avvio. Spetta al resto dei potenziali partner mostrare ciò che valgono. Vorrei che quelle parti dipendessero anche dalla produzione di qualcosa (vendite, marketing, contatti industriali, codifica aggiuntiva, ecc.).


2
+1 Quanto valeva il motore di ricerca di Google nei primi tempi? Il tempo impiegato per svilupparlo? No, ne è valsa la pena molto di più a causa dei futuri miliardi che potrebbero essere ricavati da esso.
MarkJ,

Ora capisco che il tempo speso non si riferisce al valore reale. Inoltre, altri cofondatori ci metteranno dei soldi, e il lavoro e il tempo in aree a cui non sono veramente interessato. E anche se ho lavorato su questo come intrattenimento, non sono quello che è venuto con l'idea di trasformarlo in un prodotto reale e (prova) a ricavarne dei soldi. Quindi non credo sia giustificato possedere il 100%, in quanto non sarò l'unico a correre dei rischi.
Antoine,

6

Valore iniziale, valore finale, equità di vendita

È possibile risparmiare tempo e angoscia per questa negoziazione se si considera il codice in relazione a ciò che sarà necessario per il proprio MVP (prodotto minimo praticabile). Se il codice è metà dell'MVP, per correttezza hai bisogno di qualcosa per questo. Se il codice è del 10%, 5% o anche solo l'1% dello sforzo, sarà molto meno importante.

Se richiedi denaro o maggiore equità (hmm, che suona come un ossimoro), assicurati di poter fare un buon lavoro vendendolo dal punto di vista dell'equità in un modo che possa resistere a quelle che potrebbero essere molte sfide lungo la strada per vendere il Prodotto.

Inoltre, considera le cose simmetricamente. I tuoi partner scriveranno anche codice e potranno o raggiungeranno o supereranno il tuo contributo? Quanto pagherai ai tuoi partner per il loro interesse per il codice risultante se l'azienda termina? Il tono e le aspettative che hai impostato ora in gran parte determineranno il tono e le aspettative in seguito.

Economia dell'ingegneria del software

Considero il Dr. Barry Boehm il padre dell'economia del software engineering. Tra i suoi successi c'era l'invenzione di COCOMO, la proposta del metodo Theory-W per la gestione dei progetti e la creazione di un modello di modelli di sviluppo software chiamato MBASE . I suoi modelli discutono di modelli di prodotto che descrivono ciò che è o è stato costruito (come diagrammi UML), modelli di processo (come Scrum, cascata, ecc.), Modelli di proprietà che descrivono gli attributi del prodotto o dell'organizzazione (costo, pianificazione, affidabilità) e modelli di successo .

Modello di successo e strategia di uscita potenziale

Dovresti certamente pensare se il tuo successo si basa su qualcosa di formale come Theory-W o qualcosa di informale come IKIWISI (lo saprò quando lo vedrò). Il modello di successo potrebbe anche aiutarti a stabilire le aspettative per quanto tempo e impegno impiegherai nella tua start-up, quali criteri usi per andare / non andare, hai bisogno di pivot, vendere o chiudere l'attività e la distribuzione di risorse sia in caso di eventi di successo o fallimento. Mio nonno è stato lanciato alcuni anni fa titoli che avevano un nome come "Silver Screen Limited Partnership 7" che essenzialmente stavano finanziando un film di Hollywood che è iniziato prima del film, poi si è concluso dopo che il film era stato girato nelle sale (questo era pre-DVD giorni). Se fossi in te, mi assicurerei che il mio avvio non sia stato un impegno permanente prima di iniziare.

Un prototipo non è un prodotto

Uno dei primi articoli di Boehm che ho letto includeva un diagramma che confrontava graficamente un prototipo con un prodotto. Ha usato un quadrato per il prototipo e una griglia di quadrati tre alti e tre larghi per il prodotto. A seconda del tuo senso di fiducia rispetto al realismo, potresti respingere questa nozione o iniziare a ricordare progetti passati in cui le dimensioni del prodotto erano 25 o 81 o 100 volte il costo e lo sforzo dei prototipi.

Valorizzare il tuo contributo unico

Per valutare il tuo codice nel contesto dell'avvio, probabilmente dovresti anche valutare il tuo ruolo e la sua unicità all'avvio. Se sei lo sviluppatore e i tuoi partner sono i finanziatori o i venditori, sei un po 'come il proverbiale maiale e sono i polli che vanno in affari per un ristorante che serve la colazione. Rischiano poco fino a quando non scrivono un assegno e possono forse funzionare relativamente poco fino a quando non c'è qualcosa da vendere. Se siete ciascuno degli sviluppatori, potenzialmente se non hanno un codice da mettere nel piatto all'inizio, potrebbe rivelarsi un'impresa molto sbilenco. Nella misura in cui il film " The Social Network " ritrae le cose correttamente, c'è un avvio di grande successo che ha avuto partner che hanno fatto molto poco e che hanno fatto uno sforzo minimo durante la realizzazione del prodotto.

Avvio con Start Ups

Fai molta attenzione a come ti leghi ai partner per iniziare. Elaborare un accordo operativo che copra quanto più possibile ciò che potrebbe accadere durante la vita dell'avviamento. Prendi in considerazione l'ambito molto stretto e segui un modello di avvio snello. Trova modi sicuri per provare i progetti di gruppo. La scuola è un ottimo modo. Alcune università e altri sponsor hanno creato cose come Rapid Start Up School . Un metodo molto diffuso per avere un'idea di come potrebbe essere una start-up è partecipare a un weekend di start-up . Ci sono incubatori di comunità e commercialmente sponsorizzati e spazi di coworking. La mia esperienza limitata si è verificata in posti come Gangplank (mi è piaciuto il loro programma molto economico per Start Up Weekend) e Cohoots.

Usa protezione

Dovresti sempre proteggerti legalmente, finanziariamente e fisicamente. La responsabilità civile e penale può verificarsi in relazione a una messa in servizio. Se l'azienda prende in prestito denaro o assume qualcuno che si stacca il dito, potresti rimanere bloccato con alcune fatture che sono difficili da pagare. È necessario utilizzare solide procedure contabili e potrebbe essere necessaria un'assicurazione, inoltre è necessario proteggere se stessi e i propri partner dal ritrovarsi su una pista scivolosa.

Alcune storie cautelative

Sebbene non fosse una start-up, conoscevo un'organizzazione che permetteva a una persona che era senza lavoro ed era sotto stress finanziario di essere il suo tesoriere. Ha unito i fondi della vendita dei biglietti per un banchetto per circa cinquecento persone con il proprio conto bancario. Potrebbe non aver pensato di rubare, ma ha sicuramente usato un giudizio mediocre. Quando fu chiaro che il denaro era sparito, c'erano brutti problemi con la persona sottoposta a processo per appropriazione indebita. L'organizzazione aveva un'assicurazione che consentiva di organizzare il banchetto, ma se non lo fossero stati quei 500 acquirenti di biglietti sarebbero rimasti in possesso della borsa.

Un altro caso che conosco ha avuto una Limited Liability Corporation avviata casualmente in grandi seccature. C'è stato un giudizio contro uno dei partner e quando è stato difficile raccogliere, gli avvocati hanno inviato un server di elaborazione a casa del partner che si era dimenticato di aver firmato per l'azienda. Sono state presentate denunce nei confronti del partner ed erano richieste risposte legali. Dopo le visite in tribunale e la richiesta di consulenza legale, il partner se ne è preso cura, ma questi mal di testa spesso non vanno via finché i soldi veri non escono di tasca propria.

Lavora diligentemente e fai due diligence

Il team building e la ricerca dei partner adeguati sono estremamente importanti. Larry Page parla del passare molto tempo alla ricerca di partner per fondare Google.


2

Valutalo come se fosse un prodotto "reale":

Qual è il costo di sostituzione?
Se non ci sono prodotti comparabili, quale sarebbe un costo per assumere qualcuno per rifarlo da zero? Quale sarebbe il costo per aggirare alcuni IP / brevetti contenuti all'interno?
Se esiste un prodotto comparabile - in che modo il tuo prodotto è migliore, in che modo è peggio - quanto vale questa differenza?

Il costo "affondato" - il tempo che hai già trascorso e non puoi "non spendere" dovrebbe essere irrilevante per la tua decisione.
Persino i "costi" futuri non sono così rilevanti per il prezzo / valore: le cose possono valere più di quanto costano da costruire (ad esempio, Mona Lisa vale più di manodopera + vernice + cornice + tela + margine del 30%)


1

Ohloh ha un articolo wiki su come calcolano i costi per i progetti che seguono. Si collega a un articolo di Wikipedia che sembra abbastanza approfondito.

Ohloh wiki

Spero che questo aiuti.


1

Se questi sono amici, perché non dividi equamente il valore dell'azienda? Statisticamente parlando la tua startup fallirà quindi non importa. E se hai un enorme successo, beh, avrai comunque un sacco di soldi, quindi non importa neanche.


In qualche modo mi piace questa risposta, ma penso anche che iniziare con un contributo ineguale con la promessa di una pari ricompensa futura possa stabilire un'aspettativa che potrebbe portare alla perdita di alcune amicizie. Paul Allen si allontanò da Bill Gates con molti soldi, ma il suo libro mostra che le cose non erano perfette tra loro. Woz era originariamente il maggiore collaboratore tecnico, ma Jobs bruciò più luminoso, si incendiò, quindi bruciò di nuovo più luminoso. Probabilmente sarebbe più difficile dare esempi di come le start-up fallite abbiano influenzato le amicizie, ma mi aspetto che alcuni probabilmente siano finiti in tribunale e ancora più dissolti.
Sviluppatore:
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.