Mitos Industri Software Development Indonesia
Mitos Industri Software Development Indonesia - Part 3

Mitos Industri Software Development Indonesia - Part 3

2. Software development = pekerjaan prediktif

Chaos theory adalah sebuah bidang ilmu yang mempelajari sebuah dinamika sistem yang sangat sensitif terhadap keadaan di awal yang menyebabkan keadaan di akhir tidak dapat diprediksi. Lorenz system adalah salah satu contoh dari chaotic system dan sebagai kontras gravitasi dapat dikatakan sebagai sebuah sistem yang memiliki tingkat kepastian yang tinggi.

Adik saya yang sekarang masih duduk di bangku SMA saat ini bekerja paruh waktu di sebuah rumah makan saji cepat yang makanan utamanya adalah burger. Salah satu kebiasaan dari rumah makan saji cepat ini adalah mencari tenaga kerja yang masih duduk di bangku SMA dikarenakan gaji harian seseorang yang masih duduk di bangku SMA jauh lebih murah dibandingkan seseorang yang sudah berkeluarga. Hal ini tidaklah aneh dan bisa diterima oleh akal sehat karena proses untuk membuat burger sifatnya repetitif dan tidak rumit, bahkan seseorang yang masih duduk di bangku SMA pun dapat diberi pelatihan singkat mengenai pembuatan burger kurang dari sehari. Kalau proses mengembangkan software sama dengan proses membuat burger, mungkin cara berpikir bahwa pengembangan software adalah pekerjaan prediktif dapat diterima.

Sayangnya pekerjaan mengembangkan software bukanlah pekerjaan prediktif seperti membuat burger karena software developer tidak pernah membuat software yang sama lebih dari satu kali. Mengembangkan software bukanlah sebuah proses produksi. Bila kita ambil contoh industri otomotif, kita dapat melihat disana ada sebuah divisi R&D (Research & Development) dan ada bagian factory yang bertugas memproduksi mobil yang didisain oleh divisi R&D. Keahlian orang-orang yang berada di divisi R&D berbeda dengan orang-orang yang berada di factory. Orang-orang yang berada di divisi R&D berisi para inovator yang kreatif berbeda dengan orang-orang yang ada di factory yang cukup mengikuti prosedur standard. Para inovator di divisi R&D tidak pernah mendisain mobil yang sama lebih dari satu kali namun orang-orang yang bekerja di lini produksi dapat membuat tipe mobil yang sama berkali-kali dalam sehari. Bila kita ingin menghubungkan sifat pekerjaan software development, maka lebih cocok untuk dihubungkan dengan divisi R&D daripada dengan lini produksi di pabrik. Software developer adalah inovator, bukan buruh pabrik.

Namun sangat disayangkan sekali banyak manajer proyek yang masih menganggap kalau tipe pekerjaan di software development adalah pekerjaan yang dapat diprediksi dari awal seperti pekerjaan membuat burger. Manajer proyek akan berusaha semaksimal mungkin untuk membuat work breakdown structure (WBS) yang mendekati sempurna supaya proyeknya tidak gagal. Dan ketika proyeknya gagal, di proyek berikutnya mereka akan berusaha untuk menghabiskan lebih banyak waktu untuk membuat WBS-nya semakin mendekati sempurna lagi dan kalau perlu kali ini tambahkan buffer. Cara berpikir seperti ini sangat tidak relevan di software development karena kebanyakan teori manajemen proyek yang dianut manajer proyek banyak dilandaskan oleh teori manajemen proyek konstruksi yang sifatnya memang cenderung prediktif. Proses konstruksi bangunan yang banyak menggunakan teori teknik sipil dan teori fisika membuatnya cenderung prediktif. Anda tentu masih ingat di SMA kalau pelajaran fisika sering disebut sebagai ilmu pasti. Kalau saja mengembangkan software didasari oleh rumus-rumus fisika, mungkin kita bisa menggunakan WBS dan kita tidak perlu memiliki software developer yang cerdas, cukup yang sekelas kuli bangunan saja. Andaikan saja manajer proyek ini memiliki kerendahan hati untuk mengakui kalau ilmu manajemen proyek mereka tidak relevan di software development, mungkin lebih banyak software developer saat ini yang bahagia dan tidak menyesali kenapa dirinya adalah seorang software developer.

Coercing people into commitments then blaming them for not meeting those commitments is an abuse.

Mitos ini semakin diperparah oleh salesman yang memberikan janji palsu kepada klien hanya agar dia mendapatkan proyek dari kostumernya. Si salesman akan mendapatkan bonus dari perusahaan karena sudah menggolkan proyek, sedangkan software developer harus menderita karena deadline yang dijanjikan oleh salesman kepada kostumer sering kali tidak masuk akal. Bukankah ini adalah proses pemanipulasian yang sangat kejam? Banyak salesman di perusahaan software yang berpikir kalau membuat software sama seperti membuat mi instan goreng telur. Dan jangan salahkan bila software yang dikembangkan oleh software developer menjadi berkualitas rendah.

Software developers don’t work effectively when they’re pushed into a no-win situation.

Untuk tipe pekerjaan yang memiliki banyak ketidakpastian seperti software development, metode empiris lebih tepat untuk digunakan. Manajer proyek yang mengira kalau tipe pekerjaan software development sifatnya prediktif kemungkinan tidak pernah terlibat atau sudah lama tidak terlibat dalam software development atau memang timnya mengembangkan software sederhana dengan teknologi sederhana yang jumlah penggunanya hanya satu orang.

Bersambung....

...ref : https://medium.com/modern-management/5-mitos-di-industri-software-development-indonesia-df5045350e45...

Share This

Comments