Berapa biaya untuk membangun perangkat lunak: terdiri dari apa anggaran pengembangan aplikasi



Kami menerbitkan terjemahan materi oleh Alexander Savchenko, seorang karyawan Django Stars. Dia memberi tahu cara mengevaluasi biaya pembuatan aplikasi seluler, dengan mempertimbangkan item biaya langsung dan tidak langsung.

Menentukan biaya pengembangan aplikasi spesifik adalah tugas penting bagi perusahaan dan programmer yang bekerja secara mandiri. Perlu segera mengatakan bahwa itu tidak mungkin untuk mencapai akurasi 100%, tetapi ulasan ini akan membantu Anda lebih dekat ke kebenaran maksimum perkiraan.

Skillbox merekomendasikan: Kursus praktis "Pengembang Mobile PRO" .
Kami mengingatkan Anda: untuk semua pembaca "Habr" - diskon 10.000 rubel saat mendaftar untuk kursus Skillbox apa pun menggunakan kode promosi "Habr".

Anda mengevaluasi bukan baris kode, tetapi produk secara keseluruhan


Ketika saya berbicara tentang pengembangan aplikasi, maksud saya proyek ini sebagai satu sistem, bukan satu baris kode. Dengan demikian, implementasinya mencakup arsitektur, komunikasi, pengujian, penilaian kualitas dan semua yang biasanya termasuk dalam proses ini.

Selain biaya langsung (waktu yang dihabiskan khusus untuk mengerjakan aplikasi), ada biaya tidak langsung yang tidak selalu diperhitungkan:

  • Selain pengembangan, Anda perlu menguji aplikasi, menganalisisnya, dan siap untuk melakukan kampanye pemasaran, jika perlu. Selain itu, selalu ada berbagai jenis pengeluaran yang tidak terduga, yang akan kita bahas di bawah ini.
  • Analisis kelayakan ide dan metode untuk implementasinya. Apa yang awalnya tampak seperti ide yang keren, dalam praktiknya bisa sulit untuk diterapkan. Selain itu, Anda harus mengevaluasi daya saing aplikasi Anda: jika ada banyak analog, mungkin ada baiknya untuk berpikir lagi dan memutuskan apakah akan menerapkan ide Anda dalam praktik.
  • Pitching ide kepada investor. Investor hanya tertarik pada satu hal - apakah proyek akan dapat menghasilkan uang. Sekalipun konsepnya menarik, tetapi tidak ada argumen dalam bentuk rencana bisnis atau prototipe, maka investor tidak mungkin mendukung Anda. Penting untuk menilai kemungkinan pendapatan dan biaya berdasarkan realitas ini.
  • Kerja tim. Aplikasi berkualitas tinggi dimungkinkan melalui kolaborasi antara anggota tim yang berbeda, yang masing-masing adalah pakar di bidangnya.

Anda juga perlu mempertimbangkan hal-hal penting seperti:

  • Komunikasi. Untuk rekonsiliasi item pengeluaran, Anda harus selalu menjaga jari Anda pada denyut nadi alur kerja. Dan ini berarti komunikasi yang konstan dengan anggota tim lainnya. Antara lain, mereka harus memiliki pemahaman yang baik tentang apa yang sedang mereka kerjakan dan tahu nuansa positioning proyek.
  • Perencanaan dan brainstorming. Gagasan baru selalu baik, tetapi, sayangnya, tidak ada yang bisa menjamin bahwa sesi berikutnya dari sesi curah pendapat akan memberikan jawaban untuk semua pertanyaan dan membantu untuk bekerja lebih jauh.
  • Tugas tambahan. Selama pengembangan, Anda bisa mendapatkan ide dan saran baru. Beberapa dari mereka akan membutuhkan penggunaan waktu tambahan dan sumber daya tenaga kerja.

Kami memperhitungkan faktor implisit


Masalah utama dalam proses menilai biaya pembuatan aplikasi adalah bahwa pada awal perjalanan kita tidak tahu kesulitan apa yang akan kita hadapi. Ini terutama berlaku untuk ide-ide yang belum ada yang diimplementasikan.

Untuk mengevaluasi sebagian besar faktor yang diketahui yang mempengaruhi proses pengembangan dan biayanya, perlu untuk melakukan analisis, dan itu juga harus mencakup asumsi bahwa masalah dan tugas baru muncul selama pekerjaan, seperti yang disebutkan di atas.

Faktor-faktor dapat dibagi menjadi tiga kategori:

  1. Segala sesuatu yang diketahui saat ini adalah, misalnya, kebutuhan untuk mendaftarkan domain, menyewa hosting dengan karakteristik tertentu, dll.
  2. Faktor-faktor yang masih belum diketahui, tetapi penampilan mereka dapat diprediksi - misalnya, tenggat waktu transfer atau pekerjaan teknis di server.
  3. Faktor-faktor yang tidak diketahui dan sulit diprediksi.

Estimasi biaya pengembangan tahap demi tahap


Kisah pengguna dan tugas pengembang

Pada tahap ini, perlu untuk menggambarkan fungsionalitas sistem dari sudut pandang berbagai kelompok pengguna. Ini, secara kasar, dokumentasi persyaratan eksternal untuk pengembangan produk. Selain itu, Anda perlu mendistribusikan tugas untuk implementasi fungsi-fungsi ini oleh pengembang individu.

Kami menentukan ruang lingkup pekerjaan

Pada awalnya, perlu untuk merumuskan visi aplikasi yang jelas dan memastikan bahwa semua peserta proyek memahami visi ini. Setiap anggota tim juga perlu mengetahui peran mereka dalam proses pengembangan aplikasi web kami.

Pengembang front-end harus tahu versi browser mana yang perlu didukung, apakah versi seluler diperlukan, dll. Spesialis backend harus memahami kemampuan apa yang akan dimiliki administrator, pengguna "tamu", dan apakah integrasi dengan sistem lain diperlukan. Demikian pula, seorang arsitek, perancang antarmuka, analis bisnis, dan perwakilan tim lainnya harus mengetahui nuansa tugas yang penting bagi mereka.

Estimasi waktu implementasi setiap tugas

Setelah seluruh proses pengembangan dibagi menjadi tugas yang terpisah untuk anggota tim tertentu, kami melanjutkan untuk menghitung kerangka waktu untuk pelaksanaan masing-masing tugas ini. Dianjurkan untuk memberikan periode optimis, normal dan pesimis - yaitu, ketika masalah muncul dan batas waktu rusak.

Mungkin terlihat seperti ini: untuk mengembangkan sistem manajemen lalu lintas dalam situasi optimal, dibutuhkan 10 hari; sungguh - sekitar 20 hari; jika masalah muncul, maka sebulan. Anda juga perlu mempertimbangkan faktor koreksi, yaitu sekitar 95%.


Estimasi istilah


Perhitungan lead time dengan memperhitungkan faktor koreksi 95%

Ilustrasi menunjukkan contoh menghitung waktu pelaksanaan tugas individu. Untuk Manajemen Lalu Lintas, ini adalah 33 hari, dan penyimpangan dari perkiraan tanggal juga dimungkinkan.

Apa yang harus dilakukan jika peringkat aplikasi web terlalu tinggi atau rendah


Jika Anda tidak terlalu menyukai hasil akhir, yaitu, harga aplikasi ternyata terlalu tinggi atau rendah (dalam kasus terakhir, mungkin tidak masuk akal untuk bekerja dengan jumlah seperti itu), coba jalankan perhitungan lagi.

Jika aplikasi terlalu murah, pikirkan berapa banyak orang yang terlibat dalam pembuatannya, apakah semua tahapan dan tugas diperhitungkan.

Jika, sebaliknya, ternyata banyak, cari lebih banyak solusi anggaran, kurangi jumlah anggota tim yang terlibat dalam proyek, tetapkan prioritas yang sedikit berbeda.

Sebagai kesimpulan, saya akan mengatakan bahwa ketika menilai biaya pembuatan aplikasi web, perlu untuk memperhitungkan semua detail, termasuk faktor yang diketahui dan tidak diketahui yang dapat memengaruhi proses pengembangan.

Kesalahan perhitungan itu sendiri memungkinkan tim untuk memahami ruang lingkup pekerjaan dan meminimalkan risiko. Aturan utamanya adalah tidak terburu-buru, tetapi juga hati-hati dengan keinginan Anda.

Skillbox merekomendasikan:

Source: https://habr.com/ru/post/id421731/


All Articles