22 September 2011

Seperti apa proyek membuat software itu ?

Berhubung bulan depan saya resmi berhenti dari kerja tetap di kantor, dan mulai kembali lagi jadi programmer freelancer, saya akan konsentrasi penuh berjualan software di aespesoft.com dan mengerjakan proyek yang sudah didapat.

Untuk pencitraan saya, mulai sekarang diusahakan selalu, blog ini menggunakan bahasa Indonesia yang baik dan benar, tentunya profesionalitas saya harus ditampakkan dengan kentara bukan? Entah hingga kapan saya bisa tetap bertahan untuk menulis dengan kalimat dan bahasa yang serius, saya coba saja dulu, bila anda seorang yang pakar dalam tata-bahasa, mohon tidak sungkan untuk mengajari saya bila ada kesalahan dalam menulis disini.

Yang hendak saya bagi dalam tulisan ini adalah tentang proses mendapatkan proyek, pengerjaannya dan pengiriman hasil kerja yang biasa saya lakukan terhadap klien saya. Tulisan ini tidak mendetail hanya langkah langkah ringkas dari proses menyeluruh yang dilakukan.

Langkah-langkahnya :
  1. Awal Proyek
  2. Menyirap informasi dari klien
  3. Pembuatan software
  4. Dokumentasi
  5. Laporan progress kerja
  6. Penghantaran hasil kerja

Awal Proyek

Untuk awal proyek ini, adalah cerita tentang bagaimana saya negosiasi dengan calon klien, agar klien tersebut mempercayakan pada saya untuk mengerjakan software yang akan memenuhi kebutuhan klien dalam mempermudah proses kerja dengan komputerisasi.

Proyek yang saya dapatkan biasanya klien datang sendiri karena membaca informasi mengenai saya dari situs aespesoft dan kadang juga dari informasi dari relasi atau rekan sejawat di dunia IT.

Setelah didapatkan informasi ini, yang akan saya lakukan adalah membuat proposal penawaran dengan harga yang masuk akal dan cukup fair. Alhamdulillah sejauh ini, hampir belum pernah ada proyek yang saya kerjakan yang tidak selesai dan mubazir bagi si klien yang bersangkutan.

Proposal penawaran itu biasanya berisi tentang
  • Executive summary, isi ringkas dari proyek tersebut, objektif nya dan tujuannya
  • Project management, yang isinya, 
    • teknis dari software, arsitekturnya seperti apa, menggunakan database apa, sistem jaringannya bagaimana, dsb,
    • fitur aplikasi, akan bisa seperti apa dsb,
    • cost, ini yang penting, biaya yang akan kita tagihkan ada disini, biasanya saya bagi dua, software dan hardware, untuk software sepenuhnya untuk saya dan hardware terserah klien, apakah saya bantu belikan atau klien beli sendiri dengan spesifikasi yang saya beri sebagai panduan, untuk software biasanya saya pecah biayanya per modul/fitur aplikasi yang akan dibuat, hingga klien ada pilihan juga bila hendak membuat atau tidak fitur tersebut.
    • progress schedule, ini perkiraan waktu kerja dari proyek ini
    • contract and terms, ini perjanjian dan kontrak yang harus disepakati, misalnya pengerjaan dimulai bila uang muka sekian persen sudah diberikan, garansi seperti apa dsb
  • Benefits, berisi tentang keuntungan dari penggunaan software yang akan dibuat ini seperti apa, dan apa yang bisa dijanjikan oleh saya terhadap klien bila saya yang dipilih
  • Portofolio, pencantuman aplikasi aplikasi yang pernah dibuat, cukup membantu klien untuk melihat style aplikasi yang pernah dibuat dalam menentukan apakah kita akan dipilih atau tidak
  • Contacts, data dan informasi untuk menghubungi dan mendatangi alamat kita

Contoh cover letter proposal

Contoh progress schedule



Menyirap informasi dari klien

Ini proses yang mungkin harus dilakukan beberapa kali, untuk mendapatkan software seperti apa yang klien inginkan

Yang saya lakukan saat pertemuan ini biasanya, merekam percakapan dan bersama sama dengan klien menggunakan aplikasi peta pikiran (mind-map), salah satu contoh aplikasi ini adalah Mindmanager


Dengan aplikasi ini, membantu memecahkan masalah dan merunut sumber sumber dari pengerjaan aplikasi nanti hingga ke sumbernya. Untuk merekam, biasanya saya dobel dengan menggunakan handphone dan rekam microphone laptop

Hal lain saat menyirap informasi ini tentu masih banyak, misalnya pengumpulan contoh dokumen, contoh laporan yang akan dibuat, dan mungkin demo mockup aplikasi yang kurang lebih akan dibuat seperti apa dilakukan pada langkah ini, untuk mockup salah satu software yang lucu dan cukup baik adalah balsamiq mockup, contohnya


Pembuatan software

Ini proses terberat, terutama menahan diri dari kelakukan menunda-nunda dan teralih perhatian dari pekerjaan karena asyik menggunakan facebook dan twitter, harus sering sering berdoa, a'udzubillah hi minna-facebook-twitteri rojjim...

Dokumentasi

Banyak software yang bagus untuk dokumentasi, dokumentasi biasanya ada 2 macam, dokumentasi yang tipenya sebagai laporan untuk di cetak dan diserahkan pada klien dan dokumentasi sebagai help pendamping aplikasi yang dibuat nanti.

Untuk tipe yang pertama, aplikasi pembantu pembuatannya yang cukup baik adalah Dr explain, aplikasi ini akan menggenerate file help sekaligus dokumen word atau pdf, dari hasil capture2 aplikasi dan annotasi capture tersebut yang kita lakukan


Untuk pembuatan dokumen help pendamping aplikasi, biasanya berbentuk file .chm, aplikasi yang cukup bagus adalah softany winchm


Untuk Dr Explain, dia sudah mempunyai sistem capture yang terintegrasi, lengkap dengan sistem annotasi, annotasi adalah semacam image editor sederhana, misal untuk menambah panah dan text agar penjelasan penggunaan aplikasi lebih ringkas dan file dokumen tidak terlalu panjang.

Untuk winchm, perlu ditambahkan sistem capture, bila sistem capture dalam windows (alt+print screen, di edit dalam ms paint) kurang mencukupi, aplikasi yang sangat baik untuk hal capture dan annotasi nya adalah snag it



Laporan progress kerja

Biasanya secara rutin, antara 2 minggu sekali atau 4 minggu sekali, saya akan datang ke klien, untuk mempresentasikan hasil kerja pembuatan aplikasi ini sudah sejauh mana selesainya.

Software yang diandalkan untuk hal ini tentunya sudah tidak asing, microsoft powerpoint :)

Kunjungan ke klien ini juga sering dilakukan berbarengan dengan proses penagihan biaya pembuatan, bila biaya nya dibuat dalam termin termin pembayaran.

Penghantaran hasil kerja

Setelah pengerjaan selesai, dan klien puas dengan hasil pembuatan aplikasi maka hasil kerja tersebut adalah dalam bentuk :

  1. CD/DVD yang berisi
    1. Installer aplikasi
    2. Softcopy dari dokumen manual penggunaan dan dokumen lain yang terkait
  2. Print-out dokumen aplikasi, berisi lengkap tentang cara instalasi, cara penggunaan aplikasi dan kontak bila ada masalah
  3. Invoice




"Alhamdulillah, semoga semua proyek si agung sagita lancar dan berkah, amiiin..."
*makasih udah ngedoain, yang ikhlas ya :)*