![]() | |||
Joel on Software Pojok Software Joel
| |||
|
Artikel-artikel "Joel on Software" lain dalam bahasa Indonesia Artikel-artikel "Joel on Software" lain dalam bahasa Inggris |
Oleh Joel Spolsky Diterjemahkan oleh Andika Triwidada Rabu, 13 Februari 2002 "Saya tidak tahu apa yang salah pada tim pengembangan saya," pikir sang CEO. "Segalanya berjalan begitu lancar ketika kami memulai projek ini. Untuk beberapa minggu awal, tim bekerja gila-gilaan dan mendapatkan prototipe hebat yang bekerja baik. Tapi setelah itu, segalanya terlihat seperti sangat melambat. Mereka tidak lagi bekerja keras." Dia memilih Driver Titanium Callaway dan menyuruh caddy untuk mengambil limun dingin ber-es. "Mungkin kalau saya memecat beberapa orang yang lambat, hal itu akan memicu semangat mereka!" Sementara itu, tentu saja, tim pengembangan tidak menyadari bahwa ada yang salah. Sebenarnya, tidak ada yang salah. Mereka tepat jadwal. Jangan biarkan hal ini terjadi padamu! Saya akan membocorkan kepadamu sebuah rahasia kecil tentang tipe-tipe manajer non-teknik seperti itu yang akan membuat hidupmu sejuta kali lebih mudah. Sangat sederhana. Sekali engkau tahu rahasiaku, engkau tidak akan pernah mendapat masalah ketika bekerja dengan manajer non-teknik lagi (kecuali engkau terjebak kedalam debat tentang koefisien restitusi dari tongkat golfnya). Sangat jelas bahwa para programer berpikir dalam satu bahasa, dan para MBA dalam bahasa lain. Saya telah beberapa lama merenungi masalah komunikasi dalam manajemen software, karena sangat jelas bagiku bahwa kekuatan dan imbal balik terkumpul kepada para individu langka yang tahu bagaimana menterjemahkan antara para programer dan pada MBA. ![]() Semenjak saya mulai bekerja di industri software, hampir semua software dimana saya ikut mengerjakannya adalah apa yang mungkin boleh disebut sebagai software "spekulatif". Artinya, software itu tidak dibangun untuk pelanggan tertentu -- dia dibangun dengan harapan bahwa berzillion-zillion orang akan membelinya. Tapi banyak pengembang software yang tidak mempunyai kemewahan seperti itu. Mereka mungkin para konsultan yang mengembangkan sebuah projek untuk satu pelanggan, atau mereka mungkin para programer in-house yang mengerjakan suatu entahapa korporat yang rumit untuk akunting (atau apapun yang kalian, para programer in-house lakukan; hal ini agak misterius bagiku). Pernahkan engkau menengarai bahwa pada projek-projek kustom tersebut, satu- satunya penyebab paling umum dari keterlambatan, kegagalan, dan kesengsaraan selalu mengarah kepada, pada dasarnya, "kustomer (tambahkan kata-terlarang disini) itu tidak tahu apa yang mereka inginkan?" Ini adalah tiga versi dari patologi yang sama:
Bila ada satu hal yang dibutuhkan oleh setiap konsultan junior untuk disuntikkan ke kepala mereka dengan bor kelas berat DeWalt 2500 RPM, itu adalah: Kustomer Tidak Tahu Apa Yang Mereka Inginkan. Berhentilah Berharap Kustomer Untuk Tahu Apa Yang Mereka Inginkan. Hal itu tidak akan mungkin terjadi. Hadapilah kenyataan itu. Alih-alih, andaikan bahwa engkau bagaimanapun mesti membangun sesuatu, dan kustomer akan harus menyukainya, tetapi mereka akan sedikit terperanjat. ENGKAU harus melakukan riset. ENGKAU harus menemukan suatu disain yang memecahkan masalah yang dimiliki kustomer dengan cara yang memuaskan. Andaikan engkau duduk di posisi mereka. Bayangkan bahwa engkau baru saja memperoleh $100.000.000 dari penjualan perusahaanmu ke Yahoo!, dan engkau telah memutuskan bahwa sudah saatnya untuk merenovasi dapurmu. Maka engkau menyewa seorang arsitek ahli dengan instruksi untuk membuatnya "sekeren Dapur Will dan Grace". Engkau tidak punya bayangan bagaimana menyelesaikan ini. Engkau tidak tahu bahwa engkau ingin tungku Viking dan pendingin Subzero -- ini bukan kata-kata dalam kamusmu. Engkau ingin si arsitek melakukan sesuatu yang bagus, itulah sebabnya engkau menyewanya. Orang-orang Extreme Programming bilang bahwa solusi untuk ini adalah dengan mengajak kustomer ke dalam ruangan dan melibatkan mereka dalam proses disain pada setiap langkahnya, sebagai anggota tim pengembang. Hal ini, saya pikir, sedikit terlalu "ekstrim". Hal itu seperti kalau arsitekku memintaku hadir ketika mereka mendisain dapur dan memintaku memberi masukan atas setial detil kecil. Hal itu membosankan bagiku, bila aku ingin menjadi arsitek, saya sudah akan menjadi arsitek. Bagaimanapun, engkau tidak benar-benar ingin seorang kustomer di dalam timmu bukan? Perwakilan kustomer besar kemungkinan adalah seorang kuper yang memelas dari bagian Account Payable yang dikirim untuk bekerja dengan para pemrogram karena dia adalah pekerja paling lambat disana dan mereka hampir tidak merasakan ketidakhadirannya. Dan engkau akan menghabiskan semua waktu disainmu menjelaskan berbagai hal dalam kata-kata yang terdiri dari satu suku. Asumsikan bahwa kustomermu tidak tahu apa yang mereka inginkan. Disainlah hal itu oleh dirimu sendiri, berdasarkan pemahamanmu atas domain tersebut. Jika engkau butuh meluangkan waktu untuk belajar tentang domain itu atau seandainya engkau butuh seorang ekspert domain untuk membantumu, itu tidak apa-apa, tapi disain software itu adalah pekerjaanmu. Bila engkau mengerjakan PR domainmu dan membuat suatu UI yang baik, kustomer akan terpuaskan. Sekarang, saya berjanji untuk menceritakan kepadamu sebuah rahasia tentang menterjemahkan antara bahasa para kustomer (atau para manajer non-teknik) dari softwaremu dan bahasa para pemrogram. Engkau tahu bahwa gunung es itu 90% di bawah air? Yah, kebanyakan software seperti itu juga -- ada user inteface cantik yang memerlukan 10% kerja, dan 90% pekerjaan pemrograman tersembunyi di baliknya. Dan jika engkau ikut pertimbangkan fakta bahwa separuh dari waktumu dihabiskan untuk memperbaiki bug, UI hanya mendapat porsi 5% dari pekerjaan. Dan bila engkau batasi dirimu pada bagian visual dari UI, piksel-piksel, apa yang akan kau lihat di PowerPoint, kini kita hanya bicara kurang dari 1%. Itu bukan rahasianya. Rahasianya adalah bahwa Orang Yang Bukan Programmer Tidak Tahu Hal Ini. Ada beberapa 'corollary' yang sangat, sangat penting atas Rahasia Gunung Es. Corollary Penting Pertama. Bila engkau menunjukkan ke seorang bukan programmer suatu screen yang memiliki user interface yang 90% lebih jelek, mereka akan berpikir bahwa programnya 90% lebih buruk.
Corollary Penting Kedua. Bila engkau menunjukkan kepada bukan programmer, sebuah tampilan layar dengan user interface yang 100% cantik, mereka akan berpikir bahwa program hampir jadi.
Corollary Penting Ketiga. Dotcom yang punya situs web yang nampak keren dan terpoles dan sekitar empat halaman web akan memperoleh penilaian lebih tinggi daripada dotcom yang sangat fungsional dengan arsip selama 3700 tahun dan latar belakang bawaan warna kelabu.
Corollary Penting Keempat. Ketika masalah politik menuntut bahwa berbagai manajer atau kustomer non-teknik untuk "sign off" pada suatu projek, beri mereka beberapa versi disain grafis untuk dipilih.
Corollary Penting Kelima. Ketika engkau memamerkan, satu-satunya hal yang berarti adalah tampilan layar. Buatlah dia 100% cantik.
Ingat sang CEO di bagian awal artikel ini? Dia tidak senang karena timnya telah menunjukkan PowerPoint yang hebat di awal -- mockup, dibuat dengan Photoshop, bahkan bukan dengan VB. Dan sekarang mereka benar-benar menyelesaikan berbagai hal di balik layar, terlihat seperti mereka tidak melakukan apapun. Apa yang bisa engkau lakukan tentang ini? Sekali engkau memahami Rahasia Gunung Es, menjadi mudah bekerja dengannya. Pahamilah bahwa sebarang demo yang engkau sajikan di ruang yang digelapkan dengan projektor akan menjadi semua tentang pixel. Bila engkau bisa, bangunlah UI-mu dalam suatu cara sehingga bagian yang belum beres terlihat belum beres. Misalnya, gunakan coret-coretan untuk icon di toolbar sampai fungsionalitasnya siap. Seraya engkau membangun layanan webmu, engkau mungkin ingin mempertimbangkan untuk tidak memunculkan fitur-fitur di halaman awal sampai fitur-fitur tersebut selesai terbangun. Dengan cara itu orang bisa menyaksikan halaman awal berubah dari 3 perintah menjadi 20 perintah ketika lebih banyak hal terbangun. Lebih penting lagi, pastikan bahwa engkau mengendalikan apa yang orang pikir tentang skedul. Sediakan sebuah skedul detil dalam format Excel. Setiap minggu, kirimkan email yang menyelamati diri sendiri yang berbicara tentang bagaimana engkau telah bergerak dari 32% komplit ke 35% komplit dan pada jalurnya untuk mengirimkan pada tanggal 25 Desember. Pastikan bahwa fakta aktual mendominasi sebarang pemikiran tentang apakah projek bergerak maju pada kecepatan yang tepat. Dan jangan biarkan bossmu memakai Driver Titanium Callaway, saya tidak peduli seberapa besar keinginanmu agar dia menang, USGA telah melarang itu dan itu memang tidak fair. Artikel ini aslinya bahasa Inggris dengan judul The Iceberg Secret, Revealed | ||
![]() Joel Spolsky adalah pendiri Fog Creek Software, sebuah perusahaan software kecil di New York City. Dia lulus dari Yale University, dan pernah bekerja sebagai programer dan manajer di Microsoft, Viacom, dan Juno. | |||
Isi halaman-halaman ini mewakili opini dari satu orang.
Semua isi Hak Cipta ©1999-2005 dari Joel Spolsky. Hak Cipta dilindungi Undang-undang