Anda di halaman 1dari 4

zin menjawab terkait pertanyaan diatas.

1. Apa yang dimaksud dengan Agile Development?


Jawab:
Pengembangan perangkat lunak dengan metode pengembangan Agile merupakan
pengulangan proses dari proses pengumpulan/rekayasa kebutuhan yang melibatkan
pengguna (end-user) dan pemangku kepentingan (stakeholder) yang langsung diikuti dengan
proses desain dan implementasi untuk kemudian hasil dari proses desain dan
implementasi ini akan ditunjukkan kembali kepada pengguna (end-user) dan pemangku
kepentingan (stakeholder), sehingga dapat masuk kembali ke proses pengumpulan/rekayasa
kebutuhan yang kemudian akan diteruskan kembali ke proses desain dan implementasi, begitu
seterusnya, sampai apa yang dibutuhkan pengguna (end-user) dan pemangku kepentingan
sudah dianggap terpenuhi dan sesuai dengan
waktu pengerjaan yang telah ditentukan. Penggunaan metode ini harus melihat apakah
pengguna dan pemangku kepentingan dapat selalu ikut dalam setiap putaran proses
pengembangan perangkat lunak. Ilustrasi proses pengulangan pada metode pengembangan
Agile adalah sebagai berikut:
Metode Agile merupakan pengembangan dengan cara inkremental (penambahan secara
bertahap melalui proses pengulangan), di mana pengulangan yang dilakukan berskala kecil,
dan khas atau memiliki karakteristik yang sama. Setiap peluncuran dari
produk yang telah diperbaiki ditunjukkan ke pihak-pihak terkait untuk dievaluasi setiap dua atau
tiga minggu. Pengembangan dengan metode ini melibatkan pihak-pihak terkait untuk
mendapatkan masukan dan umpan balik secara cepat terkait dengan kebutuhan dari perangkat
lunak. Dokumentasi pada metode Agile dibuat seminimal mungkin dan
banyak diganti dengan komunikasi secara informal dibandingkan pertemuan formal dan
dokumentasi tertulis. Pengujian pada pengembangan Agile dimasukkan ke dalam proses
desain dan implementasi, sehingga jika disebutkan terkait proses desain dan
implementasi maka di dalamnya sudah termasuk proses pengujian. Proses pengulangan pada
pengembangan perangkat lunak Agile bisa jadi menghasilkan model atau prototipe
atau dokumentasi desain, sehingga tidak selalu berupa program komputer yang diperbaiki. Hal
ini berbeda dengan pengembangan berbasis perencanaan di mana setiap
proses dilakukan dengan tahapan yang jelas dan dengan alur yang telah ditentukan, dimana
keluaran dari sebuah tahapan proses akan menjadi masukan dari tahapan proses
selanjutnya.

✓ Prinsip Metode Agile


1. Keterlibatan pelanggan
(customer)
Pelanggan sebaiknya terlibat secara langsung sepanjang proses
pengembangan perangkat lunak. Peran dari pelanggan adalah
memprioritaskan tersedianya kebutuhan sistem dan mengevaluasi
pengulangan dari sistem yang dibuat terkait perubahan yang
diperlukan.
2. Memfasilitasi perubahan
Mengharapkan adanya perubahan kebutuhan sistem, sehingga desain
sistem dapat dilakukan untuk memfasilitasi perubahan ini.

3. Pengiriman secara inkramental (pertambahan dengan pengulangan secara bertahap)


Perangkat lunak dikembangkan dengan cara bertahap (increment),
dengan pelanggan menspesifikasikan kebutuhan perangkat lunak
pada setiap tahapan pengulangan.

4. Memelihara kesederhanaan (simplicity)


Fokus pada kesederhanaan perangkat lunak yang dikembangkan dan
proses pengembangannya. Jika dimungkinkan, perlu adanya proses
pengurangan (eliminasi) yang secara aktif mengurangi kompleksitas
dari perangkat lunak.

5. Manusia lebih difokuskan, bukan proses


Keterampilan/kemampuan tim pengembang sebaiknya dikenali dan
dimanfaatkan. Anggota tim sebaiknya dibiarkan untuk menggunakan
cara kerja mereka sendiri tanpa proses yang ditentukan secara kaku.

✓ Dengan menjalankan prinsip-prinsip metode Agile maka dapat fokus pada nilai- nilai sebagai
berikut.
1. Individu dan interaksi dibandingkan dengan proses dan perkakas/perangkat (tools).
2. Perangkat lunak yang dapat bekerja dibandingkan dokumentasi yang
menyeluruh.
3. Kolaborasi dengan pelanggan dibandingkan negosiasi kontrak.
4. Merespon perubahan dibandingkan mengikuti perencanaan.

✓ Metode Agile dapat memiliki kemungkinan keberhasilan yang besar untuk dua
jenis pengembangan perangkat lunak berikut.
1. Pengembangan produk di mana perusahaan perangkat lunak mengembangkan produk
dengan ukuran medium untuk dijual.
2. Pengembangan perangkat lunak untuk kepentingan organisasi dan bersifat disesuaikan
kebutuhan organisasi (costumize), di mana diperlukan komitmen dari pelanggan untuk terlibat
dalam proses pengembangan perangkat lunak dan ada beberapa pemangku kepentingan dan
regulasi yang memiliki pengaruh terhadap perangkat lunak yang dikembangkan.

Metode Agile dapat memiliki keberhasilan pada dua kondisi tersebut karena dimungkinkan
komunikasi yang berkelanjutan antara pihak-pihak yang terlibat di dalam
proses pengembangan perangkat lunak dan biasanya perangkat lunak merupakan perangkat
lunak yang berdiri sendiri (stand alone) tanpa harus terkait dengan sistem
perangkat lunak yang lain.

2. Sebutkan dan jelaskan istilah-istilah/terminologi yang ada dalam Scrum!


Jawab:

1. Tim pengembang (development team)


Pengembang perangkat lunak yang dapat mengorganisasikan diri secara mandiri di mana
sebaiknya tidak lebih dari tujuh orang. Orang- orang didalam tim pengembang bertanggung
jawab terhadap
perangkat lunak dan dokumen proyek yang dianggap penting.

2. Produk potensial dapat dikirimkan secara inkramental (potentially shippable Product


increment)
Perangkat lunak yang dikirimkan dari proses sprint yang dilakukan secara inkremental. Ide dari
terminologi ini adalah produk merupakan produk yang memiliki potensial untuk dikirimkan
(potentially shippable)
dalam kondisi selesai dikembangkan sehingga tidak perlu ada pekerjaan tambahan, seperti
misalnya tambahan pengujian yang diperlukan di produk akhir. Namun pada prakteknya, hal ini
tidak selalu dapat dicapai.

3. Catatan dibelakang produk (Product backlog)


Merupakan daftar pekerjaan yang harus dilakukan oleh tim Scrum.
Catatan ini dapat berupa definisi fitur-fitur perangkat lunak, spesifikasi
kebutuhan perangkat lunak, keterangan pengguna (story card), atau deskripsi dari pekerjaan
tambahan yang diperlukan, misalnya definisi arsitektur perangkat lunak atau dokumen
pengguna.

4. Pemilik produk (Product Owner)


Individu (atau bisa juga sekelompok kecil orang) di mana pekerjaannya
adalah mengidentifikasi fitur-fitur produk ataupun kebutuhan dengan
tinjauan yang berkelanjutan agar dapat memenuhi kebutuhan bisnis
utama. Pemilik produk bisa jadi adalah pelanggan atau bisa juga manajer produk di sebuah
perusahaan perangkat lunak atau bisa juga
merupakan perwakilan dari pemangku kepentingan.

5. Scrum
Pertemuan harian dari tim Scrum yang memberikan tinjauan kemajuan
dan prioritas dari pekerjaan yang harus dikerjakan pada hari itu. Idealnya ini adalah pertemuan
secara langsung/tatap muka yang melibatkan semua anggota tim.

6. ScrumMaster
ScrumMaster adalah orang yang bertanggung jawab untuk memastikan proses Scrum benar-
benar dilaksanakan dan memberikan petunjuk kepada tim bagaimana menggunakan Scrum
yang efektif. ScrumMaster menjembatani perusahaan agar tim Scrum tidak melakukan hal-hal
yang tidak sesuai dengan Scrum. ScrumMaster tidak harus berpikir sebagai manajer proyek,
namun lebih untuk memastikan bahwa Scrum dilakukan. Namun pada kenyataannya kedual hal
ini sulit dibedakan antara ScrumMaster dan
manajer proyek.

6. Sprint (lari cepat)


Iterasi atau pengulangan pengembangan, di mana biasanya
berlangsung selama 2 sampai 4 minggu.

7. Velocity (Kecepatan)
Perkiraan seberapa banyak catatan di belakang produk (product backlog) dapat
diimplementasikan dalam sebuah sprint. Memahami kecepatan kerja tim dapat membantu
mereka untuk memperkirakan seberapa besar yang dapat diimplementasikan pada sebuah
sprint dan dapat dijadikan dasar untuk memperbaiki performa.

Sumber Referensi:
BMP MSIM4303 MODUL 06 HAL 6.5-6.8 DAN 6.16-6.17

Anda mungkin juga menyukai