Mit welchen Methoden kann der Quellcode geschätzt werden?

10

Ich habe in den letzten Monaten an einem Projekt in meiner Freizeit gearbeitet. Kürzlich wurde ich von Freunden angesprochen, um ein Startup zu erstellen, und dieser Quellcode wäre für uns sehr wertvoll.

Als Mitbegründer könnte dieser Kodex für etwas im Kapital des Unternehmens zählen und gegen Aktien eingetauscht werden. Aber wie können Sie seinen Wert schätzen? Multiplizieren Sie nur die branchenüblichen Löhne mit der Zeit, die ich dafür aufgewendet habe, oder gibt es andere Methoden?

Antoine
quelle
3
Sie können Joel Spolskys Antwort auf einer anderen SE-Site, onstartups, überprüfen. Es erklärt detailliert das Eigenkapital zwischen Aktionären bei Startups.
Hakan Deryal

Antworten:

10

Das COCOMO- System enthält ein Modell zur Schätzung der Zeit zum Schreiben von Software. Da Zeit Geld ist, erhalten Sie den Wert der Software auch aus der Perspektive, "wie viel es kosten würde, wenn jemand sie schreibt". Die aktuelle Formulierung dieses Modells ist das COCOMO II, das ein ziemlich schönes Web-Tool hat .

Mit diesem Web-Tool können Sie von einer Schätzung der Größe (Sie haben keine Schätzung, Sie haben tatsächliche Zahlen darüber, wie groß der Code ist ...) die geschätzten Planungs-, Test- und Entwicklungskosten abrufen.

Unter der Annahme von 20.000 Sloc (Quellcodezeilen) und einem Wert von 10.000 USD / Monat für Entwickler (und allen anderen nominellen Dingen) erhalten Sie eine geschätzte Zeit von 79,3 Personenmonaten, um dies zu tun (denken Sie daran, dies ist Planung, Bau und Test). für einen Wert von 793.000 $.

Dieser Wert sollte als Minimum des Wertes des Codes angesehen werden. Der tatsächliche Wert wäre höher, da er Umsatz generiert und das zentrale geistige Eigentum des potenziellen Unternehmens ist.


quelle
4
Ich bin nicht der Meinung, dass Code einen Mindestwert hat. Sie können ein 1M-Sloc-Projekt völlig wertlos machen, wenn es keinen Wert für die Kunden schafft.
MaximR
@MaximR: Ich stimme dem zu, aber zumindest gibt es einen Versuch, eine Messung zu definieren, während die Behauptung, dass Sie der De-facto-Eigentümer und Meister von allem sind, was sich um ein Startup dreht, weil Sie den ursprünglichen Code beisteuern, etwas weit hergeholt scheint und naiv idealistisch für mich. Es ist eine faire Karte zum Spielen, aber es ist effektiver, wenn Sie sie sichern können. Am Ende will das OP hier Verhandlungsmacht, und das würde ihm etwas geben (ob es richtig ist oder nicht, ist ein anderes Thema, es gibt jedoch eine gewisse Hebelwirkung).
Haylem
1
@MaximR Wenn der vermarktbare Code einen echten Wert hat, ist der Wert des Codes größer als die Zeit, die erforderlich wäre, um ihn von Grund auf neu zu schreiben. Das ist es, was das Modell identifiziert - die Zeit, um den Code zu schreiben. Wenn der Code wertlos ist, ist das darauf basierende Unternehmen ähnlich wertlos und der Wert, der in das Unternehmen investiert wird, beträgt einige Prozent von Null. Die Frage, die damit beantwortet werden soll, lautet: "Wenn ich 20.000 Codezeilen schreibe und Sie 800.000 US-Dollar in das Unternehmen investieren, wie würde sich die Aufteilung der Aktien auswirken?"
@MichaelT Wenn die Frage lautet, dass eine Person 800.000 USD investiert und eine andere Person zustimmt, 20.000 Codezeilen zu schreiben, ist dies eine faire Methode. Wenn die Person jedoch bereits 20.000 Code geschrieben hat, ist der Wert für den Autor nur das, wofür sie ihn an eine andere Person verkaufen kann. Und der Wert für das Unternehmen / den anderen Gründer ist nicht mehr als der Wert, den jemand anderes dafür zahlen muss.
MaximR
@ Haylem Fair Point, aber ich denke, das Verständnis der zugrunde liegenden Wirtschaft kann auch helfen. Und andere Gründer sind vielleicht nicht leichtgläubig genug, um sich für das Argument "Ich habe 400 Stunden damit verbracht, bezahle mich" zu entscheiden. Andernfalls wäre das Sammeln aller Antworten auf codegolf.stackexchange.com von unschätzbarem
Wert
9

Verwechseln Sie Ihre Zeit nicht damit, was es wert ist. Sie hatten auch die Idee, Ihre Zeit zu entwerfen und zu riskieren, um sie zu bauen. Dies geht weit über die Kosten eines angestellten Programmierers hinaus.

Ab sofort sollten Sie 100% des Startups besitzen. Es liegt an den übrigen potenziellen Partnern, zu zeigen, was sie wert sind. Ich würde diesen Anteil auch davon abhängig machen, etwas zu produzieren (Vertrieb, Marketing, Branchenkontakte, zusätzliche Codierung usw.).

JeffO
quelle
2
+1 Wie viel war die Google-Suchmaschine in den frühen Tagen wert? Nur die Zeit, die für die Entwicklung aufgewendet wurde? Nein, es war viel mehr wert wegen der zukünftigen Milliarden, die daraus gemacht werden konnten.
MarkJ
Ich verstehe jetzt, dass sich die aufgewendete Zeit nicht auf den tatsächlichen Wert bezieht. Auch andere Mitbegründer werden Geld investieren und in Bereichen arbeiten und arbeiten, die mich nicht wirklich interessieren. Und obwohl ich als Unterhaltung daran gearbeitet habe, bin ich nicht derjenige, der auf die Idee gekommen ist, daraus etwas zu machen ein echtes Produkt und (versuchen) Geld damit zu verdienen. Ich halte es also nicht für gerechtfertigt, dass ich 100% besitze, da ich nicht der einzige sein werde, der Risiken eingeht.
Antoine
6

Startwert, Endwert, Fairness verkaufen

Sie können sich bei dieser Verhandlung Zeit und Kummer sparen, wenn Sie den Code in Bezug auf das betrachten, was für Ihr MVP (Minimum Viable Product) benötigt wird. Wenn der Code die Hälfte des MVP ist, brauchen Sie aus Fairnessgründen etwas dafür. Wenn der Code 10%, 5% oder sogar nur 1% des Aufwands beträgt, ist dies viel weniger wichtig.

Wenn Sie Geld oder mehr Eigenkapital verlangen (hmm, das klingt wie ein Oxymoron), stellen Sie sicher, dass Sie es aus Fairness-Sicht gut verkaufen können, so dass Sie die vielen Herausforderungen auf dem Weg zum Verkauf überstehen können Produkt.

Betrachten Sie die Dinge auch symmetrisch. Schreiben Ihre Partner auch Code und können sie Ihren Beitrag einholen oder übertreffen? Wie viel zahlen Sie Ihren Partnern für ihr Interesse an dem resultierenden Code, wenn das Geschäft endet? Der Ton und die Erwartungen, die Sie jetzt festlegen, bestimmen zum großen Teil den Ton und die Erwartungen später.

Software Engineering Economics

Ich betrachte Dr. Barry Boehm als den Vater der Software-Engineering-Ökonomie. Zu seinen Errungenschaften gehörte es, COCOMO zu erfinden, die Theory-W-Methode zur Verwaltung von Projekten vorzuschlagen und ein Modell von Softwareentwicklungsmodellen namens MBASE zu erstellen . Seine Modelle diskutieren Produktmodelle, die beschreiben, was erstellt wurde oder wurde (wie UML-Diagramme), Prozessmodelle (wie Scrum, Wasserfall usw.), Eigenschaftsmodelle, die Attribute des Produkts oder der Organisation beschreiben (Kosten, Zeitplan, Zuverlässigkeit) und Erfolgsmodelle .

Erfolgsmodell und potenzielle Exit-Strategie

Sie sollten sich sicherlich überlegen, ob Ihr Erfolg auf etwas Formalem wie Theory-W oder etwas Informellem wie IKIWISI basiert (ich werde es wissen, wenn ich es sehe). Das Erfolgsmodell kann Ihnen auch dabei helfen, Erwartungen zu setzen, wie viel Zeit und Mühe in Ihr Start-up investiert wird, welche Kriterien Sie für Go / No-Go verwenden, wie Sie das Geschäft schwenken, verkaufen oder schließen müssen und wie Sie die Vermögenswerte für beide Fälle verteilen von Erfolg oder Misserfolg. Mein Großvater hatte vor einigen Jahren Wertpapiere mit dem Namen "Silver Screen Limited Partnership 7" aufgeschlagen, die im Wesentlichen die Finanzierung eines Hollywood-Films darstellten, der vor dem Film begann und dann endete, nachdem der Film in den Kinos lief (dies war eine Pre-DVD) Tage). Wenn ich Sie wäre, würde ich sicherstellen, dass mein Start-up keine lebenslange Verpflichtung war, bevor es begann.

Ein Prototyp ist kein Produkt

Eines der ersten von mir gelesenen Böhm-Papiere enthielt ein Diagramm, in dem ein Prototyp grafisch mit einem Produkt verglichen wurde. Für den Prototyp wurde ein Quadrat und für das Produkt ein Quadrat mit drei hohen und drei breiten Quadraten verwendet. Abhängig von Ihrem Gefühl des Vertrauens im Vergleich zum Realismus können Sie diesen Gedanken entweder ablehnen oder sich an frühere Projekte erinnern, bei denen die Abmessungen des Produkts das 25- oder 81-fache oder das 100-fache der Kosten und des Aufwands der Prototypen betrugen.

Wertschätzung Ihres einzigartigen Beitrags

Um Ihren Code im Kontext des Starts zu bewerten, sollten Sie wahrscheinlich auch Ihre Rolle und ihre Einzigartigkeit für den Start bewerten. Wenn Sie der Entwickler sind und Ihre Partner die Geldgeber oder Verkäufer sind, sind Sie wie das sprichwörtliche Schwein und sie sind die Hühner, die für ein Restaurant Geschäfte machen, das Frühstück serviert. Sie riskieren wenig, bis sie einen Scheck ausstellen, und arbeiten möglicherweise vergleichsweise wenig, bis etwas zu verkaufen ist. Wenn Sie jeder Entwickler sind, möglicherweise wenn er zu Beginn keinen Code zum Einfügen in den Pot hat, könnte sich dies als sehr einseitiges Unterfangen herausstellen. In dem Maße, in dem der Film " The Social Network " die Dinge richtig darstellt, gibt es ein äußerst erfolgreiches Start-up, bei dem Partner, die sehr wenig getan haben, bei der Herstellung des Produkts nur sehr wenig Aufwand betrieben haben.

Starten mit Start-ups

Seien Sie sehr vorsichtig, wie Sie sich für einen Start an Partner binden. Erstellen Sie eine Betriebsvereinbarung, die so viel wie möglich von dem abdeckt, was während des Startlebens passieren kann. Betrachten Sie das Scoping sehr eng und folgen Sie einem Lean-Start-up-Modell. Finden Sie sichere Möglichkeiten, um Teamprojekte auszuprobieren. Die Schule ist ein großartiger Weg. Einige Universitäten und andere Sponsoren haben Dinge wie die Rapid Start Up School geschaffen . Eine weit verbreitete Methode, um einen Eindruck davon zu bekommen, wie ein Start-up aussehen könnte, ist die Teilnahme an einem Start-up-Wochenende . Es gibt gemeinschaftliche und kommerziell gesponserte Inkubatoren und Coworking Spaces. Meine begrenzte Erfahrung trat an Orten wie Gangplank (ich habe das sehr preiswerte Programm für das Start Up Weekend genossen) und Cohoots auf.

Verwenden Sie Schutz

Sie sollten sich immer rechtlich, finanziell und physisch schützen. Die strafrechtliche und zivilrechtliche Haftung kann im Zusammenhang mit einem Start erfolgen. Wenn das Unternehmen Geld leiht oder jemanden anstellt, der sich den Finger abschneidet, könnten Sie mit einigen Rechnungen stecken bleiben, die schwer zu bezahlen sind. Sie müssen solide Buchhaltungsverfahren anwenden und benötigen möglicherweise eine Versicherung. Sie müssen sich und Ihre Partner davor schützen, sich auf einem rutschigen Hang zu befinden.

Ein paar Warnmeldungen

Obwohl es kein Start-up war, kannte ich eine Organisation, die es einer Person, die arbeitslos war und unter finanziellen Belastungen stand, erlaubte, ihr Schatzmeister zu sein. Er mischte die Mittel aus dem Ticketverkauf für ein Bankett für etwa fünfhundert Personen mit seinem eigenen Bankkonto. Er hat vielleicht nicht gedacht, dass er stiehlt, aber er hat definitiv ein schlechtes Urteilsvermögen verwendet. Als klar war, dass das Geld weg war, gab es hässliche Probleme mit der Person, die wegen Unterschlagung angeklagt wurde. Die Organisation hatte eine Versicherung, die die Durchführung des Banketts ermöglichte, aber wenn sie dies nicht getan hätten, wären diese 500 Ticketkäufer mit der Tasche zurückgeblieben.

Ein anderer Fall, den ich kenne, hatte eine beiläufig begonnene Limited Liability Corporation zu großen Problemen gemacht. Es gab ein Urteil gegen einen der Partner, und als es schwierig war, es einzusammeln, schickten Anwälte einen Prozessserver zum Haus des Partners, der vergessen hatte, dass sie sich für das Unternehmen angemeldet hatten. Es gab Ansprüche gegen den Partner und rechtliche Schritte waren erforderlich. Nach Besuchen beim Gericht und der Suche nach Rechtsberatung hat sich der Partner darum gekümmert, aber diese Kopfschmerzen verschwinden oft erst, wenn echtes Geld aus der Tasche eines anderen kommt.

Arbeiten Sie fleißig und führen Sie die Due Diligence durch

Teambildung und die Suche nach den richtigen Partnern sind äußerst wichtig. Larry Page spricht davon, lange nach Partnern zu suchen, um Google zu gründen.

DeveloperDon
quelle
2

Schätzen Sie es genauso wie ein "echtes" Produkt:

Was sind die Wiederbeschaffungskosten?:
Wenn es kein vergleichbares Produkt gibt - wie hoch wären die Kosten, wenn Sie jemanden einstellen würden, der es von Grund auf neu macht? Was wären die Kosten für die Umgehung eines darin enthaltenen IP / Patents?
Wenn es ein vergleichbares Produkt gibt - inwiefern ist Ihr Produkt besser, inwiefern ist es schlechter - was ist dieser Unterschied wert?

Die "versunkenen" Kosten - die Zeit, die Sie bereits verbracht haben und die Sie nicht "nicht ausgeben" können, sollten für Ihre Entscheidung irrelevant sein.
Selbst zukünftige "Kosten" sind für das Preis-Leistungs-Verhältnis nicht so relevant - Dinge können mehr wert sein als das, was sie bauen (zB Mona Lisa ist mehr wert als Arbeit + Farbe + Rahmen + Leinwand + 30% Marge)

MaximR
quelle
1

Ohloh hat einen Wiki-Artikel darüber, wie sie die Kosten für die Projekte berechnen, die sie verfolgen. Es verweist auf einen Wikipedia-Artikel, der gründlich genug erscheint.

Ohloh Wiki

Ich hoffe das hilft.

Ausweichen
quelle
1

Wenn dies Freunde sind, warum teilen Sie den Wert des Unternehmens nicht einfach gleichmäßig auf? Statistisch gesehen schlägt Ihr Start fehl, es spielt also keine Rolle. Und wenn Sie unglaublich erfolgreich sind, haben Sie immer noch viel Geld, also spielt es auch keine Rolle.

Bryan Oakley
quelle
Ich mag diese Antwort irgendwie, aber ich denke auch, dass das Beginnen mit einem ungleichen Beitrag mit dem Versprechen einer gleichen zukünftigen Belohnung eine Erwartung setzen kann, die zum Verlust einiger Freundschaften führen könnte. Paul Allen ging mit viel Geld von Bill Gates weg, aber sein Buch zeigt, dass die Dinge zwischen ihnen nicht perfekt waren. Woz war ursprünglich der größere technische Mitarbeiter, aber Jobs brannte heller, flammte auf und brannte dann wieder heller. Es wäre wahrscheinlich schwieriger, Beispiele dafür zu nennen, wie sich gescheiterte Start-ups auf Freundschaften auswirkten, aber ich gehe davon aus, dass einige wahrscheinlich vor Gericht endeten und sich noch mehr auflösten.
DeveloperDon