August, 2009


21
Aug 09

Agile dan Extreme Programming Dalam Kartun Dilbert

Dilbert - Agile Programming

Dilbert - Agile Programming


Dilbert - Extreme Programming (1)

Dilbert - Extreme Programming (1)


Dilbert - Extreme Programming (2)

Dilbert - Extreme Programming (2)


Dilbert - Extreme Programming (3)

Dilbert - Extreme Programming (3)


Sumber: “Dilbert” on Extreme and Agile Programming


21
Aug 09

Beberapa Mitos Seputar Agile

  1. Silver bullet, dapat digunakan untuk menyelesaikan semua permasalahan.
  2. Tidak semua permasalahan dapat diselesaikan dengan agile. Kondisi dan kultur tim juga berpengaruh terhadap keberhasilan penerapan agile.

  3. Dengan agile, kita dapat melakukan apapun sesuka hati, tanpa aturan yang jelas.
  4. Agile membutuhkan kedisiplinan yang sangat ketat dan aturan yang jelas, karena agile didesain untuk menghadapi lingkungan yang sangat dinamis. Tanpa ini semua, agile tidak akan pernah berhasil.

  5. Tidak memiliki perancangan, dokumentasi, arsitektur, dsb.
  6. Seperti metodologi lain pada umumnya, agile juga membuat perancangan, dokumentasi, arsitektur, dsb. Justru semua ini dilakukan secara transparan dan menitik beratkan pada kebutuhan, kecepatan dan kualitas. Memang kadang kala agile menghasilkan dokumentasi yang minimalis, tapi bukan berarti dokumentasi tersebut dibuat minimalis dengan cara mengabaikan banyak hal esensial sehingga tidak dapat merepresentasikan sistem yang dibangun secara komprehensif. Hal ini karena agile selalu berusaha meminimalisir pemborosan tenaga dan waktu, sehingga menghasilkan iklim kerja yang efektif dan efisien.

  7. Menghasilkan produk yang tidak terjamin kualitasnya.
  8. Pengujian (testing) adalah bagian yang krusial pada agile. Salah satu parameter perangkat lunak yang berkualitas adalah perangkat lunak yang telah lolos uji. Pada metode tradisional, pengujian kadang kala malah dianggap remeh dan hanya untuk seremonial semata.

  9. Tidak digunakan oleh perusahaan-perusahaan besar.
  10. Berdasarkan Forrester Research, 14% enterprise di Amerika Utara dan Eropa telah menggunakan agile, dan 19% lainnya tertarik dan berencana untuk menggunakan agile di masa mendatang. Google dan Yahoo adalah dua dari sekian perusahaan ternama yang telah menggunakan agile.

Dan masih banyak lagi mitos seputar agile…


19
Aug 09

Pengantar

Fakta: sebagian proyek perangkat lunak terlambat, melebihi anggaran, dan tidak dapat memenuhi kebutuhan pasar ketika diluncurkan. Sepertinya ini telah menjadi masalah klasik rekayasa perangkat lunak sejak dahulu kala. Apa yang menyebabkan ini? Banyak faktor, salah satunya adalah kesalahan dalam memilih metodologi.

Ada berbagai jenis metodologi yang digunakan dalam rekayasa perangkat lunak, salah satunya adalah agile. Agile development sendiri masih mencakup berbagai metodologi, antara lain Scrum, Extreme Programming, Agile Unified Process (AUP), Feature-Driven Development, Lean Development, Dynamic System Development Method (DSDM), OpenUP, Agile Modeling, Crystal, dsb. Ciri khas dari semua metodologi agile ini adalah sifat iterative dan incremental, hal ini sangat berbeda dengan metodologi tradisional (baca: waterfall). Sebagai catatan, Scrum adalah metodologi (atau lebih tepatnya framework) yang paling banyak digunakan dan paling berkembang hingga saat ini.

Perubahan yang cepat, kebutuhan pasar yang terus meningkat, menuntut untuk menggunakan suatu metodologi yang fleksibel, responsif, adaptif terhadap perubahan, dan terjamin kualitasnya. Agile memberikan solusi terhadap masalah ini, perusahaan besar seperti Google, Yahoo, Microsoft, Cisco, Siemens, Motorola telah mengembangkan agile untuk meningkatkan bisnis dan menjaga supaya perusahannya tetap kompetitif di pasar.

Secara cepat, kini agile mulai beranjak menjadi de-facto standard untuk proses pengembangan perangkat lunak.