Chap 6 - Scrum
Chap 6 - Scrum
● Pendekatan agile lainnya adalah Scrum. Kata scrum diambil dari posisi
awal di rugby di mana tim rugby membentuk kerumunan dan
berjuang untuk menguasai bola. Scrum adalah menitikberatkan pada
kerja sama tim, mirip dengan apa yang dilakukan dalam bermain
rugby.
Anggota tim pengembangan sistem menyadari bahwa keberhasilan proyek
adalah yang paling penting, dan keberhasilan individu adalah yang kedua.
● Ini adalah metode agile/tangkas yang cocok untuk proyek yang lebih
kompleks dengan tindakan yang perlu dilakukan secara terus
menerus.
1. Pemilik Produk
Pemilik produk dapat dipandang sebagai pencipta project creator
karena dia mengekspresikan visi untuk produk. Pemilik produk juga
bertanggung jawab atas rencana awal proyek, rilis produk, dan penilaian
akhir.
2. Master Scrum
Scrum Master memainkan banyak peran, termasuk sebagai pelatih
tim, penasihat yang berpengetahuan luas, pengembang
berpengalaman, dan fasilitator. Seorang Scrum Master harus memiliki
pengetahuan tentang praktek tangkas dan memiliki pengalaman untuk
membantu tim. Scrum Master adalah fasilitator tim, tetapi terkadang
mengambil peran untuk mengatasi rintangan bagi mereka. Budaya grup
bergantung pada Scrum Master. Dia memilih tim anggota, mengatur dan
memoderasi pertemuan Scrum, dan memoderasi konflik secara internal
dan secara eksternal.
3. Anggota Tim
- Bekerja untuk membuat dan meningkatkan cerita pengguna.
- Hasilkan perkiraan.
- Disiplin untuk menyelesaikan pekerjaan.
- Bersedia untuk berpartisipasi dalam kegiatan apapun untuk
membantu proyek.
Anggota tim dipilih karena soft skill dan technical skill mereka. Ingat soft
skill itu termasuk komunikasi dan membangun hubungan. Anggota
mungkin termasuk desainer, coders, pakar antarmuka pengguna, penguji,
dan pakar domain yang mengetahui tentang bisnis dan pelanggan.
Backlog Produk
Product backlog terdiri dari fitur dan desainer kiriman lainnya yang
ditujukan untuk produk berdasarkan cerita pengguna. Produk backlog juga
mencantumkan bug untuk diperbaiki atau bahkan aplikasi yang perlu
didokumentasikan.
Gambar 6.5 adalah product backlog registry. Kisah pengguna dijelaskan secara
singkat di kolom kedua. Kolom lain menjelaskan siapa yang akan mendapat
manfaat dari menyelesaikan setiap cerita pengguna, sumber daya apa yang akan
dibutuhkan, dan bagaimana kita akan tahu kapan cerita pengguna selesai dan
diterima.
Daftar cerita pengguna diatur ulang sehingga cerita pengguna yang paling
penting muncul di bagian atas. Ada banyak cara untuk memprioritaskan cerita
pengguna, tetapi hal-hal kecil yang dapat ditangani dengan cepat sangat cocok
untuk daftar teratas. Meskipun daftar ini tidak secara ketat diurutkan dalam waktu
pemrosesan terpendek, ini mendorong untuk menyelesaikan sesuatu.
Menyelesaikan banyak tugas kecil bisa lebih mendorong daripada menangani
satu tugas besar. Kisah pengguna perlu dipahami oleh semua orang di tim untuk
mengerjakan daftar. Cerita pengguna yang tidak jelas dapat ditempatkan lebih
jauh pada daftar backlog produk.
Siklus Sprint
Menyimpan daftar di backlog produk adalah satu hal, tetapi registri tidak
menyelesaikan apa pun kecuali tim mulai mengerjakan cerita pengguna dalam
daftar.
Sprint backlog dibuat untuk memilih cerita pengguna yang harus segera
diselesaikan.
Siklus sprint dapat bervariasi panjangnya, namun sebagian besar
perusahaan menetapkan dua minggu sebagai lamanya dari siklus sprint. Itu
memberi tim waktu dua minggu untuk mengirim beberapa cerita pengguna dan
kemudian memutuskan apakah produk siap untuk dirilis. Itu mungkin tampak
mustahil pada awalnya, tetapi begitu sebuah tim berhasil menjadi kebiasaan
siklus dua minggu, itu mulai menjadi rutin dan memuaskan pada saat yang sama.
Pada akhir siklus dua minggu, tim perlu menentukan apakah produk harus
dirilis. Pertanyaan pertama adalah, “Apakah rilis produk potensial ini
memiliki nilai?” Produk (yang aplikasi atau situs web yang sedang dikerjakan
tim) harus memiliki nilai lebih dari rilis sebelumnya. Pertanyaan kedua adalah,
"Apakah rilis produk siap dikirim?" Tim harus sudah selesai dan
menguji fitur baru berdasarkan cerita pengguna. Itu harus bekerja dan bebas dari
kesalahan. Rilis dua minggu memiliki banyak keuntungan. Semangat tim tetap
tinggi karena mudah untuk mengukur prestasi. Melengkapi produk lebih nyata
bagi tim. Jika tim dapat mengatasi masalah dalam waktu singkat, hanya perlu
beberapa rilis dua minggu untuk mendapatkan seluruh proyek selesai.
Keuntungan lain termasuk umpan balik terus menerus yang didapat tim dari
pelanggan. Pendek rilis adalah prototipe. Reaksi pelanggan sangat berharga.
Gambar 6.6 menunjukkan proses dan orang-orang yang terlibat dalam siklus
sprint. Perhatikan bahwa pemilik proyek, tim pengembang, dan produk perangkat
lunak yang baru dikembangkan semuanya memiliki peran untuk dimainkan.
Sprint adalah siklus pendek aktivitas pengembangan tim yang berlangsung
hanya dua hingga empat minggu, dengan tim rapat setiap hari selama sprint
untuk membuat rilis baru yang siap dikirim.
Kanban
Kanban adalah konsep yang dikembangkan oleh Toyota untuk mencapai
cara penyampaian produk yang lebih efektif dan efisien. Arti kata dalam
bahasa Inggris adalah “signboard”, metode mengarahkan konsumen ke
area tertentu untuk menemukan produk atau mengarahkan karyawan ke
lokasi untuk mengisi kembali barang. Konsep kanban banyak digunakan
dalam pengembangan perangkat lunak saat ini.
Elemen kunci dari sistem kanban yang diterapkan pada pengembangan
perangkat lunak adalah:
1. Visualisasikan alur kerja.
2. Menjaga Work-in-process (WIP) sekecil mungkin.
3. Mengevaluasi kembali alur kerja, menetapkan kembali prioritas jika perlu.
4. Berusaha untuk perbaikan terus-menerus, menghilangkan kemacetan
dan mengevaluasi batas WIP.
Kanban didasarkan pada sistem Pull/Tarik. Berikut ini contohnya: Sebuah cerita
pengguna baru diperkenalkan yang menyatakan bahwa situs web perusahaan
harus diperbarui. Pemberitahuan ini berarti bahwa “Card” kanban harus dibuat.
Pekerjaan ini kebetulan menjadi prioritas tinggi, sehingga ditarik dari kolom
“backlog” ke kolom “sprint”. Segera itu ditarik ke dalam kolom "to-do". Ketika
desainer Web mulai mengerjakannya, mereka menarik tugas ke kolom "doing".
Setelah halaman web baru dibuat, tugas ditarik ke kolom "verify" sehingga tautan
dapat diuji dan divalidasi. Saat pengujian selesai, tugas ditarik ke kolom "done".
Konsep sistem pull/tarik membantu memastikan akuntabilitas dan tanggung
jawab ketika proyek membutuhkan tim orang.