Seorang teman saya bertanya berapa biaya untuk membangun sebuah aplikasi website yang menjadi layanan toko elektronik (webstore) miliknya.
Saat saya sebutkan sejumlah angka, dia terpana dan berkata, “Waduh, kok mahal sih mas. Sama aku ada yang nawarin cuma 500 ribu lho..”
Dengan bercanda saya pun menjawab, “Ya berarti tawaran dari temenmu itu lebih mahal lagi, 500 ribu dollar kan sekitar 4,5 milyar rupiah
”
Dibarengi senyum kecutnya, teman saya meminta penjelasan mengapa kok tidak ada harga yang standar dalam pengembangan aplikasi perangkat lunak apapun.
Maka dengan ditemani secangkir kopi panas dan sepiring singkong goreng saya pun memberikan kuliah gratis sekalian promosi juga, hahahaha..
Sebenarnya membangun sebuah aplikasi perangkat lunak atau dalam skala yang kompleks adalah sistem informasi berbasiskan teknologi informasi dapat dianalogikan seperti membangun sebuah bangunan fisik.
Perlu ada perencanaan, pengawasan dan evaluasi dalam pelaksanaan pembangunannya. Seperti halnya membangun rumah, harga dan kualitas material bangunan akan berpengaruh pada total biaya yang harus dikeluarkan.
Namun sekalipun kualitas materialnya sama, jika nilai jasa para pelaksana pembangunannya berbeda maka akan berdampak pula pada total biaya yang harus dikeluarkan. Selain tentunya biaya-biaya nonteknis lainnya.
Nah, kira-kira membangun sebuah aplikasi perangkat lunak komputer pun seperti itu. Sebab dalam suatu aplikasi perangkat lunak komputer pun terdapat arsitektur, tata-kelola dan disebabkan kebutuhannya berinteraksi dengan manusia maka harus pula memenuhi unsur-unsur komunikasi visual yang nyaman bagi penggunanya.
Jadi untuk mengukur kualitas dari suatu aplikasi software komputer apa saja yang harus kita pertimbangkan?
Lakukan scoring yang disesuaikan dengan standar Anda, misalkan 0-10 dengan mempertimbangkan tolok ukur sebagai berikut:
- Dokumentasi
- Pengalaman, reputasi dan usia vendor
- Layanan purna jual
- Garansi pengembalian uang/dana
- Garansi penggantian produk
- Garansi pemeliharaan
- Pelatihan
- Jasa konsultansi
- Kode Sumber Program
- Lisensi Penggunaan
- Dihitung berdasarkan komputer klien
- Dihitung berdasarkan komputer server
- Dihitung berdasarkan kapasitas hard disk
- Dihitung berdasarkan jumlah prosesor
- Diijinkan untuk didistribusikan ulang dengan syarat tertentu
- Teknologi/Platform/Framework yang digunakan
- Skalabilitas
- Performa
- Kemudahan Penggunaan
- Tingkat Keamanan Sistem
- Lakukan audit teknis terhadap sistem dimana tentunya sebaiknya Anda memiliki kode sumber program aplikasinya.
- Lakukan pengujian menggunakan alat-alat maupun metode pembobolan sistem keamanan yang ada.
- Manfaatkan software berbasis FOSS karena hingga saat ini masih minim diserang oleh program-program jahat yang berbahaya seperti virus, trojan, dsb.
- Komponen Biaya
Dokumentasi sebuah produk adalah hal yang menandakan keseriusan pengembang/produsennya.
Dengan dokumentasi yang baik, lengkap dan terpetakan dengan baik sangat membantu bagi para konsumennya.
Pelajari dokumentasi yang ada dari suatu produk aplikasi software, minimalnya tentang bagaimana menggunakan produk tersebut dan fitur apa saja yang dikompilasi di dalamnya.
Tentunya semakin mudah dan lengkap manual penggunaan dari produk tersebut maka skor yang diraih pun semakin besar.
Demikian pula dengan kelengkapan fiturnya.
Bagaimana pun juga usia sebuah vendor dalam menjalankan bisnisnya memiliki pengaruh besar untuk memberikan gambaran tingkat kepercayaan konsumen kepadanya.
Namun selain usia, faktor pengalaman dan reputasi pun memegang peranan penting.
Cari rekomendasi dan referensi sebanyak-banyaknya dari suatu vendor. Cara paling efisien dan efektif adalah menggunakan milis.
Pastikan mengenai layanan purnal jual (after sales service) yang diberikan oleh vendor terkait dengan aplikasi software komputer tersebut.
Setidaknya pastikan mengenai hal-hal berikut:
Biasanya ada garansi pengembalian uang/dana dalam kurun waktu tertentu dengan syarat-syarat mengikat.
Hal ini penting untuk memastikan bahwa jika ternyata Anda tidak puas dengan produk tersebut karena tidak sesuai dengan yang dijanjikan maka uang bisa ditarik kembali.
Sebaik apapun QC dari suatu produk dari produsen, setidaknya pasti terjadi 1 unit produk cacat yang terdistribusikan ke konsumen.
Pastikan apakah jika Anda memperoleh produk cacat maka akan diberikan penggantian oleh produsen.
Aplikasi software komputer biasanya secara teknis memiliki celah yang dinamakan bug (lubang pada kode program komputer) atau error (galat/tidak optimalnya operasi suatu kode program komputer).
Pastikan apakah jika terjadi hal tersebut maka Anda dapat memperoleh perbaikan atasnya. Selain itu pastikan juga mengenai cara perbaikannya.
Biasanya beberapa vendor menggunakan strategi terbalik. Mereka mengenakan biaya yang besar pada saat pelatihan operasional aplikasi software komputer dibandingkan harga paket produknya sendiri.
Untuk itu pastikan sebelumnya apakah kira-kira Anda bisa mengoperasikan aplikasi software tersebut tanpa pelatihan terbimbing dari produsen atau memerlukannya.
Jika memerlukannya maka hitung rasio biaya dan nilai produk apabila vendor mengenakan biaya tambahan untuk pelaksanaannya.
Biasanya ada beberapa vendor yang memberikan gratis produk aplikasi software komputernya. Mereka akan mengenakan biaya pada saat pengguna memerlukan konsultasi maupun pelatihan untuk menggunakannya.
Jadi pastikan pula pada bagian ini, jangan sampai Anda terjebak dalam biaya-biaya yang tak terduga di belakangnya.
Setiap aplikasi software komputer dibangun menggunakan bahasa pemograman (language programing) yang terdiri atas beberapa baris kode program.
Biasanya kode sumber (source code) program aplikasi software komputer tidak didistribusikan kepada klien/konsumennya dan menjadi hak cipta pengembangnya.
Padahal kode sumber ini sangat penting jika Anda ingin mengembangkannya sendiri di kemudian hari maupun melakukan audit atasnya.
Biasanya harga aplikasi software komputer akan lebih mahal jika didistribusikan bersama dengan kode sumbernya.
Anda pun harus berhati-hati untuk masalah ini. Masing-masing vendor memiliki kebijakan berbeda-beda mengenai penerapan masalah lisensi.
Setidaknya lisensi umum yang ada sekarang terdiri atas:
Biasanya aplikasi software komputer yang dijual per pake lisensinya dihitung atas jumlah komputer klien yang diinstalasi.
Jika Anda hanya memiliki satu unit komputer stand-alone atau hanya satu hingga tiga komputer klien saja yang menggunakannya maka lisensi jenis ini lebih efisien.
Di organisasi-organisasi besar hampir seluruhnya membangun suatu sistem jaringan komunikasi data elektronik dalam berbagai platform dan framework.
Tentunya sesuai dengan hierarki umum pada suatu sistem jaringan komunikasi data elektronik terdapat minimalnya satu komputer server yang melayani kebutuhan data maupun layanan tertentu dari komputer-komputer klien yang terhubung di dalamnya.
Lisensi yang hanya dihitung berdasarkan komputer server yang terinstalasi jelas lebih menguntungkan.
Hal ini disebabkan sebanyak apapun nanti Anda menambah jumlah komputer klien yang terintegrasi dalam sistem jaringan komunikasi data elektronik yang mengaksesnya biasanya tidak akan menambah biaya lisensi penggunaan aplikasi softwarenya.
Jelas konsep ini lebih menguntungkan bagi Anda yang memiliki sistem jaringan komunikasi data elektronik sehingga dapat berbagi pakai data melalui database terpadu.
Walaupun jarang dijumpai, ada beberapa vendor yang menetapkan lisensi penggunaan software komputer hasil pengembangannya berdasarkan sistem sewa/pemanfaatan.
Jadi vendor akan mengenakan biaya berdasarkan konsumsi kapasitas hard disk yang menampung database dari aplikasi perangkat lunak komputernya berdasarkan kapasitas byte.
Di beberapa unit komputer, ada yang di dalamnya terpasang lebih dari satu prosesor.
Biasanya hal ini diterapkan di komputer-komputer server yang memiliki beban akses yang tinggi sehingga dapat meningkatkan performa layanannya secara maksimal.
Beberapa vendor aplikasi software menerapkan sistem lisensi penggunaan produknya berdasarkan jumlah prosesor dari setiap komputer yang mengaksesnya.
Terkait dengan gerakan FOSS (free open source software) maka beberapa pengembang aplikasi perangkat lunak komputer menggubah beberapa kesepakatan lisensi pemanfaatannya berdasarkan prinsip distribusi.
Biasanya mereka mengijinkan para pengguna aplikasi softwarenya untuk mendistribusikan ulang dengan tetap harus mencantumkan bahwa pemilik dan pengembangnya adalah vendor tersebut.
Teknologi/platform/framework yang digunakan memberikan peranan penting dalam menentukan kualitas suatu produk aplikasi perangkat lunak komputer.
Misalnya aplikasi software berbasis Java jelas akan memiliki harga jual yang lebih tinggi dibandingkan menggunakan Visual Basic karena kemampuannya yang lintas platform.
Masalah framework pun memiliki andil yang cukup berpengaruh dalam menentukan kualitas suatu aplikasi software.
Masalah skalabilitas juga penting Anda ketahui. Terutama yang terkait dengan kemampuan aplikasi server basis datanya.
Server basis data sekelas MS-SQL, MySQL, Oracle, PostgreSQL dan DB2 tentu saja jauh sekali dibandingkan dengan MS-Access dan DBase.
Anda bisa bayangkan, satu database MySQL mampu menampung data hingga 70 juta rekaman!
Jadi jika Anda menginginkan aplikasi yang kira-kira memiliki umur ekonomis panjang, perhatikan masalah ini.
Tetapi jika menurut Anda transaksi data yang dikelola tidak terlalu tinggi maka tidak terlalu diperlukan menggunakan software database besar tersebut.
Ujilah software dengan memberikan beban transaksi yang besar. Jika untuk sekedar menampilkan satu laporan saja memerlukan waktu yang lama maka sebaiknya keinginan Anda untuk membeli produk tersebut dipikir ulang lagi.
Ini adalah poin yang tidak kalah penting. Secanggih apapun proses yang ada di belakangnya, tetap saja yang berhadapan langsung dengan pengguna adalah tampilan antar muka penggunannya (user interface).
Jika Anda merasa tampilannya tidak nyaman dan sulit digunakan, sebaiknya berikan skor tidak terlalu tinggi dalam evaluasi.
Ini adalah hal yang sangat kritis, apalagi saat ini begitu maraknya aksi pembobolan oleh sekelompok oknum terhadap sistem yang dimiliki oleh pihak lain.
Jika Anda tidak memiliki cukup literasi dan referensi mengenai hal ini, mungkin tips berikut dapat digunakan:
Nah, ini adalah bagian yang sangat sensitif bagi para calon konsumen ![]()
Tentunya setiap konsumen menginginkan produk yang seberkualitas mungkin dengan harga seminimal mungkin, hahahaha..
Namun dalam hal ini komponen biaya yang harus Anda keluarkan tetap harus dalam rasio yang wajar dengan yang dikompensasikan oleh vendor.
Pastikan biaya-biaya apa saja yang harus Anda tanggung selama menggunakan produk tersebut dan kompensasi apa saja yang diterima atasnya.
Jika menurut Anda komponen-komponen biaya tersebut masih wajar maka berikanlah skor yang setara di daftar penilaian yang dibuat.
Baiklah, setelah Anda bersusah payah menyusun daftar penilaian maka sekarang lakukan perbandingan antara beberapa produk.
Tentunya produk terbaik yang akan Anda pilih bukan?
Topik yang mungkin Terkait:
- AWAS, Jangan Terjebak Harga Aplikasi Software Murah!!
- Open Source Software = Freeware = Software Gratis = Layanan Gratis?
- Manajemen Proyek Pengembangan Aplikasi Perangkat Lunak Komputer
- Harga BBM Melangit? Buka Toko On-line Saja!
- Fakta Tentang Kehandalan FOSS (Free Open Source Software)
- Menyusun Proposal Teknis Pengembangan Aplikasi Software
- Anggaran TI (Information Technology Budgeting) Bagian V
- Pemanfaatan CMM (Capability Maturity Model) Dalam Pengembangan Aplikasi Software
- Data Lebih Lengkap Soal Razia Illegal Software Di Tempat Publik
- Tips Menghitung Anggaran Biaya Software Development/Engineering
- Alasan Mengapa Saya Tidak Suka Seminar (padahal beberapa kali jadi pembicara di seminar)
- Legalkah Polisi Merazia dan Menyita serta Menahan Pemilik Software Bajakan?
- Anggaran TI (Information Technology Budgeting) Bagian VI
- Saya Anti Microsoft?
- Sistem Informasi “Bukan” Sekedar Software Engineering!




Wow komentar yang sangat membantu saya sebagai seorang pembuat aplikasi. Terima Kasih.
Oh ya mas, salam kenal. Masalah bahasa pemograman, apakah mempengaruhi dalam menentukan harga? Terima Kasih.
@ Angga:
Salam kenal Mas Angga.
Jika menggunakan function point system dalam mengkalkulasi beban kerja dan biaya maka bahasa pemograman sangat berpengaruh dalam menentukannya.
Terima kasih dan semoga bermanfaat informasinya.
makasih banget masukanya. beberapa orang terkadang melihat besar kecilnya perusahaan/klien dalam menentukan harga aplikasi kita, bagaimana pendapat Anda
@ echo:
Halo Pak Echo..
Menurut saya sih klien kan sama saja Pak.
Maksudnya dengan skalabilitas berapapun “ongkos” yang harus dikeluarkan untuk melayani mereka kan relatif sama.
Kecuali memang tujuan kita untuk menambah “portfolio” proyek kita sih nggak ada masalah.
Selama biaya operasional masih bisa ditutupi & nggak membuat kita nombok sih nggak ada masalah.
Tapi masa sih semua proyek kita cuma cukup buat nutup ongkos operasional saja?
Kan harus ada profit margin yang lumayan bagus untuk pengembangan investasi dan biaya riset yang biasanya relatif besar di bisnis IT.
Salam..
bos, punya contoh proposal teknis+rab buat perancangan software ga? kalo ada boleh dong…
@ fahmi:
Halo Pak Fahmi..
Proposal Teknis merujuk kepada spesifikasi dari dan feature yang diajukan dalam software yang akan dikembangkan.
Sedangkan mengenai contoh RAB dapat di-download di http://www.setiabudi.name/archives/51
COCOK ! jempolan !
referensi ini bisa dijadikan pedoman untuk menjelaskan ke client nantinya .. thanks
Salam kenal mas…
Kalau begitu karena harga software tidak standard, berarti sejauh mana presentasi kita bisa meyakinkan client pada nilai tambah software yg akan di rancang itulah yg akan menjadi nilai jual lebih… bukan begitu mas ?
Bagus blognya Mas,
. Tapi kadang client jarang peduli plafform atau bahasa pemrogramn apa yang dipakai, mereka inginnya berjalan dan berguna atau tidak software ybs ditempat bisnisnya
Memang sulit menentukan standar harga, karena banyak pekerjaan-perkerjaan siluman berikutnya permintaan client dan walaupun software sama tapi banyak faktor X yang menyebabkan harga berbeda. Jasa jangan samakan dengan cabe