Jakie są metody szacowania wartości kodu źródłowego?

10

Od kilku miesięcy pracuję nad jakimś projektem dotyczącym mojego wolnego czasu. Ostatnio znajomi poprosili mnie o zbudowanie startupu, a ten kod źródłowy byłby dla nas bardzo cenny.

Jako współzałożyciel ten kod może liczyć na coś w kapitale spółki i być wymieniany na akcje. Ale jak oszacować jego wartość? Czy pomnożysz płace standardowe w branży przez czas, jaki na nie spędziłem, czy też istnieją inne metody?

Antoine
źródło
3
Możesz sprawdzić odpowiedź Joela Spolsky'ego na innej stronie SE, onstartups. Wyjaśnia szczegółowo sprawiedliwość między akcjonariuszami w startupach.
Hakan Deryal

Odpowiedzi:

10

System COCOMO ma w sobie model do oszacowania czasu na napisanie oprogramowania. Ponieważ czas to pieniądz, zyskujesz także wartość oprogramowania z perspektywy „ile kosztowałoby, gdyby ktoś go napisał”. Obecna formuła tego modelu to COCOMO II, który ma dość ładne narzędzie internetowe .

Dzięki temu narzędziu internetowemu można przejść od oszacowania rozmiaru (nie masz oszacowania, masz rzeczywistą liczbę, jak duży jest kod ...) i uzyskać szacunkowe koszty planowania, testowania i programowania.

Zakładając, że 20 tys. Sloców (wiersze kodu źródłowego) i wartość 10 000 USD miesięcznie dla programisty (i wszystkie inne rzeczy są nominalne) otrzymujesz szacunkowy czas na 79,3 miesiąca na zrobienie tego (pamiętaj, to jest planowanie, budowa i testowanie) o wartości 793 tys. USD.

Wartość tę należy traktować jako minimum wartości kodu. Rzeczywista wartość byłaby wyższa, ponieważ generuje przychody i jest podstawową własnością intelektualną potencjalnej firmy.


źródło
4
Nie zgadzam się z tym, że kod ma minimalną wartość, możesz mieć projekt Sloc 1M, który jest całkowicie bezwartościowy, jeśli nie tworzy wartości dla klientów.
MaximR
@MaximR: Zgadzam się z tym, ale przynajmniej jest jakaś próba zdefiniowania pomiaru, podczas gdy twierdzenie, że jesteś de facto właścicielem i mistrzem wszystkiego, co kręci się wokół startupu, ponieważ wkładasz oryginalny kod, wydaje się nieco przesadne i dla mnie naiwnie idealistyczny. Jest to uczciwa karta do (próby) zagrania, ale będzie bardziej skuteczna, jeśli będzie można ją wykonać. W końcu to, czego OP chce tutaj, to siła przetargowa, a to dałoby mu trochę (czy to prawda, czy nie, to inna kwestia, to jednak daje pewną dźwignię).
haylem,
1
@ MaximR, jeśli istnieje jakakolwiek rzeczywista wartość kodu, którą można wprowadzić na rynek, wartość kodu jest większa niż czas potrzebny na napisanie go od zera. To właśnie identyfikuje model - czas na napisanie kodu. Jeśli kod jest bezwartościowy, wówczas firma na nim oparta jest podobnie bezwartościowa, a wartość wprowadzona do firmy wynosi jakiś procent zero. Pytanie, na które próbuje się odpowiedzieć, brzmi: „jeśli napiszę 20 000 wierszy kodu i zainwestujesz 800 000 USD w spółkę, czym byłby podział akcji?”
@MichaelT Jeśli pytanie brzmi, że 1 osoba zainwestuje 800 000 USD, a inna zgodzi się napisać 20 000 wierszy kodu - jest to uczciwa metoda. Jeśli jednak osoba już napisała 20 tys. Kodu - wartość tego autora jest tylko tym, za co może go sprzedać komuś innemu. A wartość dla firmy / innego założyciela to nie więcej niż to, co będzie musiał zapłacić komuś innemu, aby go zdobyć.
MaximR,
@haylem Fair point, ale myślę, że zrozumienie podstawowej ekonomii może również pomóc. Inni założyciele mogą nie być na tyle naiwni, by argumentować „spędziłem 400 godzin na tym, zapłać mi”. W przeciwnym razie zbiór wszystkich odpowiedzi na codegolf.stackexchange.com byłby bezcenny
MaximR
9

Nie myl swojego czasu na to, co jest warte. Miałeś również pomysł, zaprojektowałeś i zaryzykowałeś swój czas, aby go zbudować. To znacznie więcej niż koszt wynajętego programisty.

Na razie powinieneś posiadać 100% startupu. Reszta potencjalnych partnerów zależy od tego, ile jest warta. Uzależniłbym również udziały od tworzenia czegoś (sprzedaż, marketing, kontakty branżowe, dodatkowe kodowanie itp.).

JeffO
źródło
2
+1 Ile była warta wyszukiwarka Google na początku? Czas poświęcony na jego opracowanie? Nie, było o wiele więcej warte ze względu na przyszłe miliardy, które można z tego zrobić.
MarkJ
Rozumiem teraz, że spędzony czas nie odnosi się do rzeczywistej wartości. Ponadto inni współzałożyciele włożą w to pieniądze, a także pracę i czas w obszarach, które mnie tak naprawdę nie interesują. I chociaż pracowałem nad tym jako rozrywką, nie jestem tym, który wpadł na pomysł, aby zamienić je w prawdziwy produkt i (spróbuj) zarabiać na tym pieniądze. Nie sądzę więc, aby posiadanie 100% było uzasadnione, ponieważ nie tylko ja podejmę ryzyko.
Antoine,
6

Wartość początkowa, wartość końcowa, uczciwość sprzedaży

Możesz zaoszczędzić czas i ból serca podczas negocjacji, jeśli weźmiesz pod uwagę kod w stosunku do tego, co będzie potrzebne dla twojego MVP (minimalny opłacalny produkt). Jeśli kod jest połową MVP, dla uczciwości potrzebujesz czegoś do tego. Jeśli kod wynosi 10%, 5%, a nawet zaledwie 1% wysiłku, będzie to miało o wiele mniejsze znaczenie.

Jeśli żądasz pieniędzy lub większego kapitału (hmm, to brzmi jak oksymoron), upewnij się, że możesz zrobić dobrą robotę sprzedając je z perspektywy uczciwości w sposób, który może przetrwać wiele wyzwań na drodze do sprzedaży produkt.

Rozważ też symetrycznie. Czy Twoi partnerzy również piszą kod i czy będą w stanie nadrobić lub przekroczyć Twój wkład? Ile zapłacisz swoim partnerom za zainteresowanie uzyskanym kodem, jeśli firma zakończy działalność? Dźwięk i oczekiwania, które ustawiłeś teraz, w dużej mierze ustalą ton i oczekiwania później.

Inżynieria oprogramowania

Uważam, że dr Barry Boehm jest ojcem ekonomii inżynierii oprogramowania. Jednym z jego osiągnięć było wynalezienie COCOMO, zaproponowanie metody zarządzania projektami Theory-W oraz stworzenie modelu modeli rozwoju oprogramowania o nazwie MBASE . Jego modele omawiają modele produktów, które opisują to, co jest lub zostało zbudowane (jak diagramy UML), modele procesów (takie jak Scrum, wodospad itp.), Modele właściwości opisujące atrybuty produktu lub organizacji (koszt, harmonogram, niezawodność) i modele sukcesu .

Model sukcesu i strategia potencjalnego wyjścia

Z pewnością powinieneś pomyśleć o tym, czy twój sukces opiera się na czymś formalnym, takim jak Teoria-W, czy coś nieformalnego, jak IKIWISI (poznam to, kiedy to zobaczę). Model sukcesu może również pomóc Ci ustalić oczekiwania dotyczące czasu i wysiłku włożonego w rozpoczęcie działalności, jakich kryteriów użyjesz do wyjścia / wyjścia, potrzeby przestawienia się, sprzedaży lub zamknięcia firmy, a także dystrybucji aktywów na wypadek sukcesu lub porażki. Mój dziadek został sprzedany kilka lat temu pod nazwą „Silver Screen Limited Partnership 7”, które zasadniczo finansowały film z Hollywood, który zaczął się przed filmem, a potem skończył po tym, jak film pojawił się w kinach (to było przed DVD) dni). Gdybym był tobą, upewniłbym się, że mój start-up nie był zaangażowaniem na całe życie przed jego rozpoczęciem.

Prototyp nie jest produktem

Jeden z pierwszych artykułów Boehm, które przeczytałem, zawiera diagram, który graficznie porównuje prototyp z produktem. Prototyp wykorzystał kwadrat i siatkę kwadratów o wysokości trzech i trzech szerokości dla produktu. W zależności od poczucia pewności siebie a realizmu możesz albo odrzucić to pojęcie, albo zacząć przypominać poprzednie projekty, w których wymiary produktu były 25 lub 81 lub 100 razy większe niż koszt i wysiłek prototypów.

Ceniąc swój wyjątkowy wkład

Aby docenić swój kod w kontekście start-upu, prawdopodobnie powinieneś również docenić swoją rolę i jego wyjątkowość dla start-upu. Jeśli jesteś deweloperem, a twoi partnerzy są finansowymi lub handlowcami, jesteś trochę jak przysłowiowa świnia i są to kury wchodzące w interesy w restauracji, która serwuje śniadanie. Ryzykują niewiele, dopóki nie wypiszą czeku i być może będą działać stosunkowo mało, dopóki nie będzie czegoś do sprzedania. Jeśli wszyscy jesteście programistami, potencjalnie jeśli nie mają kodu, który mógłby umieścić w puli na początku, może się okazać, że jest to bardzo krzywe przedsięwzięcie. W zakresie, w jakim film „ Sieć społecznościowa ” prawidłowo przedstawia rzeczy, bardzo udany start-up miał partnerów, którzy zrobili bardzo mało, którzy włożyli niewiele wysiłku w tworzenie produktu.

Uruchamianie ze start-upami

Bądź bardzo ostrożny, jak związać się z partnerami na starcie. Opracuj umowę operacyjną, która obejmuje jak najwięcej tego, co może się zdarzyć w trakcie rozruchu. Zastanów się nad określeniem zakresu bardzo wąsko i zgodnie z modelem lean start-up. Znajdź bezpieczne sposoby testowania projektów zespołowych. Szkoła to świetny sposób. Niektóre uniwersytety i inni sponsorzy stworzyli takie rzeczy, jak Rapid Start Up School . Bardzo rozpowszechnioną metodą poznania tego, jak może być start-up, jest udział w Startup Weekend . Istnieją inkubatory społecznościowe i komercyjne oraz przestrzenie coworkingowe. Moje ograniczone doświadczenie występowało w miejscach takich jak Gangplank (podobał mi się ich bardzo tani program na Start Up Weekend) i Cohoots.

Użyj ochrony

Powinieneś zawsze chronić siebie pod względem prawnym, finansowym i fizycznym. Odpowiedzialność karna i cywilna może wystąpić w związku ze start-upem. Jeśli firma pożycza pieniądze lub zatrudnia kogoś, kto odcina im palec, możesz utknąć w trudnych do zapłaty rachunkach. Musisz stosować rzetelne procedury księgowe i może potrzebować ubezpieczenia, a także chronić siebie i swoich partnerów przed znalezieniem się na śliskim zboczu.

Kilka ostrzeżeń

Chociaż nie był to start-up, znałem organizację, która pozwoliła osobie, która była bez pracy i znajdowała się w trudnej sytuacji finansowej, aby być jej skarbnikiem. Wspólnie pomieszał fundusze ze sprzedaży biletów na bankiet dla około pięciuset osób z własnym kontem bankowym. Może nie myślał, że kradnie, ale zdecydowanie użył złego osądu. Kiedy stało się jasne, że pieniądze zniknęły, istniały brzydkie problemy z oskarżeniem o sprzeniewierzenie. Organizacja miała ubezpieczenie, które pozwalało na zorganizowanie bankietu, ale gdyby tego nie zrobili, 500 kupujących bilety pozostałoby z torbą.

Inny znany mi przypadek, w którym przypadkowo rozpoczęta spółka z ograniczoną odpowiedzialnością przekształciła się w duże kłopoty. Został wydany wyrok przeciwko jednemu z partnerów, a gdy trudno było go zebrać, prawnicy wysłali serwer procesów do domu partnera, który zapomniał, że podpisali umowę z firmą. Były roszczenia wobec partnera i wymagane były prawne odpowiedzi. Po wizytach w sądzie i po zasięgnięciu porady prawnej partner się tym zajął, ale te bóle głowy często nie ustępują, dopóki z kieszeni kogoś nie wyjdą prawdziwe pieniądze.

Pracuj sumiennie i staraj się

Budowanie zespołu i znalezienie odpowiednich partnerów jest niezwykle ważne. Larry Page mówi o tym, jak długo szukać partnerów do założenia Google.

DeveloperDon
źródło
2

Oceń to tak samo, jak produkt „prawdziwy”:

Jaki jest koszt wymiany ?:
Jeśli nie ma porównywalnego produktu - jaki byłby koszt zatrudnienia kogoś, aby ponownie to zrobić od zera? Jaki byłby koszt obejścia niektórych praw własności intelektualnej / patentu zawartych?
Jeśli istnieje porównywalny produkt - w jaki sposób jest on lepszy, w jaki sposób jest gorzej - jaka jest ta różnica?

Koszt „zatopiony” - czas, który już spędziłeś i nie możesz „wydać”, nie powinien mieć znaczenia dla Twojej decyzji.
Nawet przyszłe „koszty” nie są tak istotne dla ceny / wartości - rzeczy mogą być warte więcej niż koszt budowy (np. Mona Lisa jest warta więcej niż robocizna + farba + rama + płótno + 30% marży)

MaximR
źródło
1

Ohloh ma artykuł na wiki, w jaki sposób obliczają koszty śledzonych projektów. Odsyła do artykułu w Wikipedii, który wydaje się wystarczająco dokładny.

Ohloh Wiki

Mam nadzieję, że to pomoże.

uchylanie się
źródło
1

Jeśli są to przyjaciele, dlaczego nie podzielisz równomiernie wartości firmy? Statystycznie rzecz biorąc, uruchomienie nie powiedzie się, więc nie będzie miało znaczenia. A jeśli odniesiesz wielki sukces, cóż, nadal będziesz mieć dużo pieniędzy, więc to też nie będzie miało znaczenia.

Bryan Oakley
źródło
Podoba mi się ta odpowiedź, ale myślę też, że rozpoczęcie od nierównego wkładu z obietnicą równej przyszłej nagrody może ustalić oczekiwania, które mogą doprowadzić do utraty niektórych przyjaźni. Paul Allen odszedł od Billa Gatesa z dużą ilością pieniędzy, ale jego książka pokazuje, że między nimi nie było idealnie. Woz początkowo był największym współpracownikiem technicznym, ale Jobs płonął jaśniej, palił się, a potem znów płonął jaśniej. Prawdopodobnie trudniej byłoby podać przykłady tego, w jaki sposób nieudane start-upy wpłynęły na przyjaźnie, ale spodziewam się, że kilka prawdopodobnie zakończyło się w sądzie, a jeszcze bardziej rozwiązane.
DeveloperDon