Metode Agile untuk Pengembangan Perangkat Lunak - Agile Methodology Part 1

Dewasa ini perangkat lunak berkembang sangat pesat hingga merambah berbagai sektor. Pengembangan perangkat lunak tidak serta merta dilakukan begitu saja tanpa adanya suatu perencanaan. Dalam pengembangan sebuah perangkat lunak, digunakan metode supaya pengembangannya dapat berjalan dengan terstruktur dan terpantau, serta dalam penyelesaiannya dapat memenuhi target. Secara garis besar pengembangan perangkat lunak dibagi menadi dua metode, yaitu metode konvensional dan dan metode Agile.
Metode konvensional lebih bersifat kaku dan sederhana sehingga mudah untuk diikuti. Contoh dari metode konvensional adalah metode Waterfall yang dulu banyak digunakan, Spiral, Incremental, V model, dan sebagainya. Sedangkan contoh metode dari Agile yaitu Crystal, Scrum, dan Extreme Programming. Pada artikel ini akan membahas mengenai metode pengembangan perangkat lunak menggunakan metode Agile khususnya metode Scrum.

Sumber: https://hackernoon.com/drafts/6t8232hs.png


Agile Software Development atau pengembangan perangkat lunak Agile dikenalkan pada tahun 2001 tepatnya pada bulan Februari 2001. Hal yang memicu adanya metode Agile adalah pada saat itu pengembangan suatu perangkat lunak mengalami masalah dimana perusahaan dihadapkan pada proses yang semakin banyak dan terus bertambah serta berubah dengan cepat. Karena hal tersebut banyak bermunculan masalah yang terjadi dalam perusahaan, oleh karena itu pada saat itu para tokoh pengembang perangkat lunak melakukan suatu pertemuan untuk membahas tentang permasalahan tersebut. Pada pertemuan tersebut para pengembang bergabung dan menentukan atau membuat suatu metode baru untuk menyelesaikan permasalahan yang ada, kemudian metode tersebut dijadikan suatu prinsip dalam mengembangkan suatu perangkat lunak.

Pada metode Agile terdapat beberapa manifesto yang telah disepakati, yaitu sebagai berikut:

  • Mengutamakan Individual dan Interaksi lebih diutamakan daripada proses dan peralatan yang digunakan.
  • Mengutamakan penyelesaian produk daripada mengutamakan dokumentasi.
  • Mengutamakan berkolaborasi dengan customer daripada negosiasi kontrak.
  • Mengutamakan perubahan daripada mengikuti rencana yang sudah ada.
Selain manifesto tersebut, dalam metode Agile terdapat beberapa pendekatan, yaitu sebagai berikut:
  • Bekerja sebagai tim.
  • Bekerja dengan iterasi yang singkat.
  • Menyampaikan setiap iterasi.
  • Berfokus pada prioritas bisnis.
  • Teliti dan dapat beradaptasi secara terus-menerus.
Pada perencanaan dalam pengembangan perangkat lunak dengan menggunakan metode Agile, terdapat sebuah prinsip yang dinamakan Onion Agile Planning. Kenapa dinamakan onion? Karena prinsip ini jika digambarkan akan membentuk sebuah gambar perencanaan yang di dalamnya terdapat banyak layer atau beberapa level seperti pada gambar berikut ini.


Sumber: http://agilelucero.com/wp-content/uploads/2014/09/agile-planning-onion.png

Pada penyusunan rencana dalam prinsip ini para pengembang diharuskan untuk melakukan suatu pertemuan dengan tim dimana dalam pertemuan tersebut membahas mengenai apa yang akan dilakukan hari ini?, Apa yang sudah dilakukan?, Apa kendala yang ditemui oleh tim?, dan sebagainya. Pertemuan tersebut dilakukan setiap hari dengan durasi 10 - 15 menit tidak boleh lebih supaya tim dapat berkomunikasi dengan memanfaatkan waktu yang seefektif dan seefisien mungkin.
Kumpulan dari diskusi yang dilakukan tiap hari tersebut terkumpul dan menjadi sebuah iterasi atau dalam metode Scrum disebut Sprint dimana dalam seuatu proses pengembangan Sprint akan digabungkan menjadi sebuah Release. Selanjutnya gabungan dari Release akan membentuk suatu produk utuh yang dapat dijadikan sebagai sebuah Portfolio dari perusahaan. Portfolio itulah yang dapat digunakan oleh suatu perusahaan untuk membuat suatu Strategy.

Comments

Read other articles

2016 Wajib Banget Punya OPPO R7s