Apa itu Agile Development ?

Dimas Rizky
DOT Intern
Published in
2 min readJan 16, 2019

Agile merupakan model pengembangan jangka pendek yang memerlukan adaptasi cepat dan pengembangan terhadap perubahan dalam bentuk apapun.Ada beberapa hal yang perlu diperhatikan dalam agile

  1. Interaksi antar personal lebih penting daripada proses dan alat.
  2. Software yang berfungsi lebih penting daripada dokumentasi yang lengkap
  3. Kolaborasi dengan klien lebih penting daripada negoisasi kontrak.
  4. Sikap tanggap lebih penting daripada mengikuti rencana/plan.

Jenis-jenis Agile

1.Extreme Programmning (XP)

2.Adaptive Software Development (ASD)

3.Dynamic Systems Development Method (DSDM)

4.Scrum Methodology.

5.Crystal.

6.Feature Driven Development (FDD)

7.Agile Modeling (AM)

8.Rational Unified Process.

Tujuan Agile

  1. High-value & working App system, dapat menghasilkan perangkat lunak yang mempunyai nilai jual yang tinggi, biaya pembuatan bisa di tekan dan perangkat lunak bisa berjalan dengan baik.
  2. Iterative, incremental, evolutionary, agile adalah metode pengembangan perangkat lunak yang iteratif, selalu mengalami perubahan, dan evolusioner.
  3. Cost control & value-driven development, mengembangkan perangkat lunak yang sesuai dengan kebutuhan pengguna dan tim bisa dengan cepat merespon kebutuhan yang diinginkan pengguna sehingga waktu dan biaya pembuatan perangkat lunak bisa dikontrol.
  4. High-quality production, Kualitas dari perangkat lunak yang dibuat tetap terjaga,meskipun waktu dan biaya lebih sedikit.
  5. Flexible & risk management, Pertemuan dengan klien untuk melakukan tes perangkat lunak dapat sering dilakukan sehingga fungsionalitas perangkat lunak mudah diubah dan akhirnya kegagalan perangkat lunakpun bisa diminimalisir.
  6. Collaboration, Tim pengembang diharuskan sering bertemu untuk membahas perkembangan proyek dan feedback dari klien untuk ditambahkan dalam perangkat lunak, sehingga tim bisa berkolaborasi dengan maksimal.
  7. Self-organizing, self-managing teams, Dengan agile, pengembang dapat memanajemen dirinya sendiri, sedangkan manajer tim hanya bertugas mengkolaborasikan pengembang perangkat lunak dengan klien. Sehingga terciptalah tim yang solid.

Kelebihan dari agile

  • Dapat melakukan review pelanggan mengenai software yang dibuat lebih awal.
  • Pembangunan system dibuat lebih cepat.
  • Perubahan dengan cepat ditangani
  • Jika pada saat pembangunan system terjadi kegagalan kerugian dari segi materi relatif kecil.

Kekurangan dari agile

  • Pengembang harus selalu siap dengan perubahan karena perubahan akan selalu diterima.
  • Agile tidak akan berjalan dengan baik jika komitmen tim kurang.
  • Tidak cocok dalam skala tim yang besar (>20 orang).

Dengan mengesampingkan kelebihan dan kekurangan agile , dapat dikatakan bahwa agile memiliki sifat yang adaptif terhadap suatu perubahan dan interaktif sehingga cocok diterapkan sebagai metode pengembangan software.

Referensi :

--

--