Apa metode untuk memperkirakan nilai kode sumber?


10

Saya telah mengerjakan beberapa proyek di waktu luang saya selama beberapa bulan terakhir. Baru-baru ini saya didekati oleh teman-teman untuk membangun startup, dan kode sumber ini akan sangat berharga bagi kami.

Sebagai salah satu pendiri, kode ini dapat menghitung sesuatu di modal perusahaan, dan ditukar dengan saham. Tetapi bagaimana Anda bisa memperkirakan nilainya? Apakah Anda hanya melipatgandakan upah standar industri pada saat saya habiskan untuk itu, atau apakah ada metode lain?


3
Anda dapat memeriksa jawaban Joel Spolsky di situs SE lain, onstartups. Ini menjelaskan ekuitas antara pemegang saham pada startup secara detail.
Hakan Deryal

Jawaban:


10

Sistem COCOMO memiliki model untuk memperkirakan waktu untuk menulis perangkat lunak. Karena waktu adalah uang, Anda kemudian juga mendapatkan nilai perangkat lunak dari perspektif "berapa biaya untuk meminta seseorang menulisnya". Formulasi saat ini dari model ini adalah COCOMO II yang memiliki alat web yang agak bagus .

Dengan alat web ini, seseorang dapat pergi dari estimasi ukuran (Anda tidak memiliki estimasi, Anda memiliki angka aktual seberapa besar kodenya ...) dan mendapatkan estimasi biaya perencanaan, pengujian, dan pengembangan.

Dengan asumsi 20k sloc (baris kode sumber) dan nilai $ 10k / bulan untuk pengembang (dan semua hal lainnya sedang nominal) Anda mendapatkan perkiraan waktu 79,3 orang bulan untuk melakukannya (ingat, ini perencanaan, konstruksi, dan pengujian) untuk nilai $ 793k.

Nilai ini harus dianggap sebagai nilai minimum dari kode. Nilai aktual akan lebih tinggi karena menghasilkan pendapatan dan merupakan kekayaan intelektual inti dari perusahaan potensial.


4
Saya tidak setuju bahwa ada nilai minimum untuk kode, Anda dapat membuat proyek sloc 1M benar-benar tidak berharga jika tidak menciptakan nilai bagi pelanggan.
MaximR

@MaximR: Saya setuju dengan itu, tapi setidaknya ada beberapa upaya untuk mendefinisikan pengukuran, sedangkan mengklaim bahwa Anda adalah pemilik de-facto dan menguasai semua yang berputar di sekitar startup karena Anda berkontribusi kode asli tampaknya agak dibuat-buat. dan secara naif idealis bagi saya. Ini kartu yang adil untuk (mencoba), tetapi akan lebih efektif jika Anda dapat mencadangkannya. Pada akhirnya, apa yang diinginkan OP di sini adalah kekuatan tawar-menawar, dan itu akan memberinya beberapa (apakah itu benar atau tidak adalah masalah yang berbeda, itu memang memberikan sedikit pengaruh).
haylem

1
@ MaximR jika ada nilai nyata untuk kode yang dapat dipasarkan, nilai kode lebih besar dari waktu yang diperlukan untuk menulisnya dari awal. Itulah yang diidentifikasi model - waktu untuk menulis kode. Jika kode itu tidak berharga, maka perusahaan yang didirikan di atasnya juga tidak berharga dan nilai yang dimasukkan ke dalam perusahaan adalah beberapa persen dari nol. Pertanyaan yang coba diatasi adalah "jika saya menulis 20.000 baris kode dan Anda menginvestasikan $ 800.000 ke dalam perusahaan, apa jadinya pembagian saham?"

@MichaelT Jika pertanyaannya adalah 1 orang berinvestasi $ 800k dan yang lain akan setuju untuk menulis 20k baris kode - ini adalah metode yang adil. Namun, jika orang tersebut sudah menulis 20k kode - nilai itu untuk penulis hanya untuk apa mereka dapat menjualnya kepada orang lain. Dan nilai bagi perusahaan / pendiri lain tidak lebih dari apa yang harus dibayar orang lain untuk mendapatkannya.
MaximR

@Haylem Fair point, tapi saya pikir memahami ekonomi yang mendasarinya juga bisa membantu. Dan pendiri lain mungkin tidak cukup mudah tertipu untuk argumen "Saya menghabiskan 400 jam untuk ini, bayar saya". Kalau tidak, koleksi semua jawaban di codegolf.stackexchange.com akan sangat berharga
MaximR

9

Jangan bingung waktu Anda dihabiskan untuk apa itu layak. Anda juga memiliki ide, merancang dan mempertaruhkan waktu Anda untuk membangunnya. Ini jauh melampaui biaya programmer yang disewa.

Sampai sekarang, Anda harus memiliki 100% dari startup. Terserah mitra potensial lainnya untuk menunjukkan nilai mereka. Saya akan membuat saham tersebut bergantung pada menghasilkan sesuatu juga (penjualan, pemasaran, kontak industri, coding tambahan, dll.).


2
+1 Berapakah nilai mesin pencari Google pada hari-hari awal? Hanya waktu yang digunakan untuk mengembangkannya? Tidak, itu jauh lebih berharga karena miliaran masa depan yang dapat dibuat darinya.
MarkJ

Saya mengerti sekarang bahwa waktu yang dihabiskan tidak berhubungan dengan nilai aktual. Juga, pendiri lain akan menaruh uang di dalamnya, dan bekerja dan waktu di daerah saya tidak benar-benar tertarik. Dan meskipun saya telah bekerja di ini sebagai hiburan, saya bukan orang yang datang dengan ide untuk mengubahnya menjadi produk nyata dan (coba) hasilkan uang darinya. Jadi saya tidak berpikir itu dibenarkan bahwa saya memiliki 100%, karena saya tidak akan menjadi satu-satunya yang mengambil risiko.
Antoine

6

Nilai Awal, Nilai Akhir, Keadilan Penjualan

Anda dapat menghemat waktu dan sakit hati selama negosiasi ini jika Anda mempertimbangkan kode sehubungan dengan apa yang akan dibutuhkan untuk MVP Anda (produk minimum yang layak). Jika kodenya setengah dari MVP, untuk keadilan Anda perlu sesuatu untuk itu. Jika kodenya 10%, 5%, atau bahkan hanya 1% dari upaya, itu akan menjadi masalah yang jauh lebih sedikit.

Jika Anda memang menuntut uang atau ekuitas yang lebih besar (hmm, kedengarannya seperti sebuah oxymoron), pastikan Anda dapat melakukan pekerjaan dengan baik menjualnya dari perspektif keadilan dengan cara yang dapat bertahan melalui apa yang mungkin banyak tantangan di sepanjang cara untuk menjual produk.

Juga, pertimbangkan hal-hal secara simetris. Apakah mitra Anda juga akan menulis kode dan dapatkah mereka mengejar atau melampaui kontribusi Anda? Berapa Anda akan membayar mitra Anda untuk minat mereka dalam kode yang dihasilkan jika bisnis berakhir? Nada dan harapan yang Anda tetapkan sekarang sebagian besar akan mengatur nada dan harapan nanti.

Ekonomi Rekayasa Perangkat Lunak

Saya menganggap Dr. Barry Boehm sebagai bapak ekonomi rekayasa perangkat lunak. Di antara prestasinya adalah menciptakan COCOMO, mengusulkan metode Teori-W dalam mengelola proyek, dan membuat model model pengembangan perangkat lunak yang disebut MBASE . Modelnya membahas model produk yang menggambarkan apa yang telah atau telah dibangun (seperti diagram UML), model proses (seperti Scrum, air terjun, dll), model properti yang menggambarkan atribut produk atau organisasi (biaya, jadwal, ketergantungan), dan model sukses .

Model Keberhasilan dan Potensi Strategi Keluar

Anda tentu harus memikirkan apakah kesuksesan Anda didasarkan pada sesuatu yang formal seperti Theory-W atau sesuatu yang informal seperti IKIWISI (Saya akan mengetahuinya ketika saya melihatnya). Model sukses mungkin juga membantu Anda menetapkan harapan untuk berapa banyak waktu dan usaha akan masuk ke awal Anda, kriteria apa yang Anda gunakan untuk pergi / tidak jalan, perlu berputar, menjual atau menutup bisnis, dan distribusi aset baik pada saat terjadi sukses atau gagal. Kakek saya mendirikan beberapa sekuritas tahun lalu yang memiliki nama seperti "Silver Screen Limited Partnership 7" yang pada dasarnya mendanai film Hollywood yang dimulai sebelum film, kemudian berakhir setelah film itu diputar di bioskop (ini adalah pra-DVD hari). Jika aku jadi kamu, aku akan memastikan bahwa permulaanku bukanlah komitmen seumur hidup sebelum dimulai.

Prototipe Bukan Produk

Salah satu makalah Boehm pertama yang saya baca termasuk diagram yang secara grafis membandingkan prototipe dengan produk. Dulu kotak untuk prototipe dan kotak kotak tiga tinggi dan tiga lebar untuk produk. Tergantung pada rasa percaya diri Anda terhadap realisme, Anda dapat menolak gagasan ini atau mulai mengingat kembali proyek-proyek sebelumnya di mana dimensi produk adalah 25 atau 81 atau 100 kali lipat biaya dan upaya prototipe.

Menilai Kontribusi Unik Anda

Untuk menilai kode Anda dalam konteks start up, Anda mungkin juga harus menghargai peran Anda dan keunikannya untuk start up. Jika Anda adalah pengembang dan mitra Anda adalah pendukung keuangan atau wiraniaga, Anda seperti babi biasa dan mereka adalah ayam yang masuk ke bisnis untuk restoran yang menyajikan sarapan. Mereka berisiko kecil sampai mereka menulis cek, dan mungkin relatif sedikit bekerja sampai ada sesuatu untuk dijual. Jika Anda masing-masing pengembang, berpotensi jika mereka tidak memiliki kode untuk dimasukkan ke dalam pot di awal, itu mungkin berubah menjadi usaha yang sangat miring. Sejauh film " Jejaring Sosial " menggambarkan segalanya dengan benar, ada permulaan yang sangat sukses yang memiliki mitra yang sangat sedikit yang melakukan sedikit usaha ketika produk itu dibuat.

Memulai dengan Memulai

Berhati-hatilah bagaimana Anda mengikat diri Anda dengan mitra untuk memulai. Buat perjanjian operasi yang mencakup sebanyak mungkin apa yang mungkin terjadi selama masa start up. Pertimbangkan pelingkupan dengan sangat sempit, dan mengikuti model lean start up. Temukan cara aman untuk mencoba proyek tim. Sekolah adalah cara yang bagus. Beberapa universitas dan sponsor lain telah menciptakan hal-hal seperti Rapid Start Up School . Metode yang sangat luas untuk merasakan seperti apa start upnya adalah dengan berpartisipasi dalam Start Up Weekend . Ada inkubator yang disponsori komunitas dan komersial serta ruang kerja bersama. Pengalaman saya yang terbatas terjadi di tempat-tempat seperti Gangplank (saya menikmati program yang sangat murah untuk Start Up Weekend) dan Cohoots.

Gunakan Perlindungan

Anda harus selalu melindungi diri Anda secara hukum, finansial, dan fisik. Tanggung jawab pidana dan perdata dapat terjadi sehubungan dengan permulaan. Jika bisnis meminjam uang atau mempekerjakan seseorang yang memotong jari mereka, Anda mungkin akan terjebak dengan beberapa tagihan yang sulit dibayar. Anda perlu menggunakan prosedur akuntansi yang baik dan mungkin memerlukan asuransi, dan Anda harus melindungi diri sendiri dan pasangan Anda agar tidak berada di lereng yang licin.

Beberapa Cerita Peringatan

Meskipun itu bukan permulaan, saya tahu sebuah organisasi yang mengizinkan seseorang yang keluar dari pekerjaan dan berada di bawah tekanan keuangan untuk menjadi bendahara mereka. Dia menggabungkan dana dari penjualan tiket untuk jamuan makan untuk sekitar lima ratus orang dengan rekening banknya sendiri. Dia mungkin tidak mengira dia mencuri, tetapi dia jelas menggunakan penilaian yang buruk. Ketika jelas uang itu hilang, ada masalah buruk dengan orang yang dituntut karena penggelapan. Organisasi memiliki asuransi yang memungkinkan perjamuan diadakan, tetapi jika tidak, 500 pembeli tiket itu akan dibiarkan memegang tas itu.

Kasus lain yang saya tahu baru saja dimulai dengan Perseroan Terbatas menjadi kerepotan besar. Ada penilaian terhadap salah satu mitra dan ketika sulit untuk mengumpulkan, pengacara mengirim server proses ke rumah mitra yang lupa mereka mendaftar untuk perusahaan. Ada klaim terhadap pasangan dan tanggapan hukum diperlukan. Setelah kunjungan ke pengadilan dan mencari nasihat hukum, pasangan itu mengurusnya, tetapi sakit kepala ini sering tidak hilang sampai uang nyata keluar dari kantong seseorang.

Bekerjalah dengan tekun, dan lakukan uji tuntas

Membangun tim dan menemukan mitra yang tepat sangat penting. Larry Page berbicara tentang menghabiskan waktu lama mencari mitra untuk menemukan Google.


2

Nilainya sama dengan yang Anda inginkan dengan produk "nyata":

Berapa biaya penggantian ?:
Jika tidak ada produk yang sebanding - berapa biaya untuk merekrut seseorang untuk melakukannya kembali dari awal? Berapa biaya untuk mengerjakan beberapa IP / paten yang terkandung di dalamnya?
Jika ada produk yang sebanding - dalam hal apa produk Anda lebih baik, dalam hal apa itu lebih buruk - apa perbedaan nilai itu?

Biaya "hangus" - waktu yang telah Anda habiskan dan tidak bisa "habiskan" seharusnya tidak relevan dengan keputusan Anda.
Bahkan "biaya" di masa depan tidak relevan dengan harga / nilai - hal-hal dapat bernilai lebih dari apa yang mereka bangun (mis. Mona Lisa bernilai lebih dari tenaga kerja + cat + bingkai + kanvas + 30% margin)


1

Ohloh memiliki artikel wiki tentang bagaimana mereka menghitung biaya untuk proyek yang mereka lacak. Itu tautan ke artikel Wikipedia yang tampaknya cukup menyeluruh.

Ohloh wiki

Saya harap ini membantu.


1

Jika ini adalah teman, mengapa Anda tidak membagi nilai perusahaan secara merata? Secara statistik, startup Anda akan gagal sehingga tidak masalah. Dan jika Anda sangat sukses, Anda masih memiliki banyak uang sehingga tidak masalah.


Saya agak menyukai jawaban ini, tetapi saya juga berpikir bahwa memulai dengan kontribusi yang tidak setara dengan janji imbalan yang sama di masa depan dapat menetapkan harapan yang dapat menyebabkan hilangnya beberapa pertemanan. Paul Allen berjalan menjauh dari Bill Gates dengan banyak uang, tetapi bukunya menunjukkan hal-hal yang tidak sempurna di antara mereka. Woz pada awalnya adalah kontributor teknis yang lebih besar, tetapi Jobs membakar lebih terang, menyala, lalu terbakar lebih terang lagi. Mungkin akan lebih sulit untuk memberikan contoh tentang bagaimana start up yang gagal memengaruhi pertemanan, tetapi saya berharap beberapa mungkin berakhir di pengadilan, dan bahkan lebih dibubarkan.
PengembangDon
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.