/ scrum

7 Langkah Mudah Implementasi SCRUM

Bagi mereka yang berkecimpung di dunia IT pastilah tidak asing dengan istilah scrum. Terlebih lagi, scrum telah banyak dijadikan salah satu mata perkuliahan pada jurusan IT. Telah banyak perusahaan IT di berbagai penjuru dunia yang menerapkan metoda scrum untuk penyelesaian berbagai project karena metoda terdahulu, yaitu water fall dianggap telah ketinggalan zaman. Bahkan dengan penerapan scrum yang benar, output kerja dapat dicapai dua kali lipat dengan effort setengah kalinya, sesuai judul buku yang ditulis oleh penemu scrum, Jeff Sutherland: "Scrum: The Art of Doing Twice the Work in Half the Time".

Di dalam scrum terdapat 3 pelaku: PO (Product Owner), SM (Scrum Master) dan Team. Secara garis besar, implementasi scrum memenuhi langkah-langkah berikut.

1. Memilih Product Owner

product owner

PO merupakan jembatan antara masalah dengan penyelesaian masalah. PO haruslah memegang visi mengenai apa yang akan dilakukan dan dicapai serta mampu menyusun prioritas penyelesaian dari masalah-masalah yang dihadapi. Peran PO tidak lain adalah perepresentasi apa yang diinginkan dan apa yang dibuat. Sebagai contoh sederhana, pada pengerjaan suatu projek terdapat 10 pembagian masalah yang akan dikerjakan. Kita dapat katakan 10 masalah tersebut sebagai 10 tugas, maka seorang PO haruslah mampu menyusun prioritas dari 10 tugas tersebut kemudian mempertimbangkan risiko dan segala kemungkinan dari setiap tugas. PO dapat memantau progress tugas secara keseluruhan melalui burdown chart.

2. Menghimpun Team

scrum team

Scrum team merupakan para eksekutor dengan ukuran yang kecil, yaitu 3-9 orang saja (Sutherland, 2014). Team terdiri dari orang-orang yang berkapasitas untuk mewujudkan visi yang dibentuk oleh PO, artinya setiap orang memiliki keahlian yang dibutuhkan. Apabila suatu project terdiri dari tugas-tugas backend, ui web, mobile, design, maka setidaknya team harus terdiri dari 4 orang.

3. Memilih Scrum Master

scrum master

Seorang SM akan memimpin team untuk menjalankan penyelesaian tugas secara efisien dengan cara melakukan breakdown suatu tugas (apabila diperlukan), identifikasi penghambat, dan membatu team menyingkirkan hambatan tersebut.

4. Membuat Backlog Product

backlog product

Ketika seorang PO membagi suatu project ke dalam daftar 10 tugas dengan prioritas yang telah diurutkan, maka daftar 10 tugas tersebut merupakan backlog product. Untuk dapat mengestimasi seberapa besar upaya yang akan dikeluarkan untuk menyeselaikan suatu tugas, dibutuhkan pandangan team pada tiap poin. Apakah requirement sudah cukup lengkap? Apakah ukuran setiap tugas sudah cukup ataukah harus dilakukan breakdown untuk membagi tugas tersebut menjadi sub-sub tugas dengan ukuran yang lebih relevan? Apakah setiap tugas nantinya dapat didemonstrasikan ketika telah selesai dikerjakan?

Setelah pertanyaan-pertanyaan di atas terjawab, team dapat menentukan story points atau ukuran setiap tugas pada backlog, story points ini bukanlah didasarkan pada jumlah hari pengerjaan, melainkan didasarkan pada tingkat usaha pengerjaan dengan membandingkan setiap tugas dengan tugas lainnya. Skala yang banyak digunakan yaitu bilangan Fibonacci (1, 2, 3, 5, 8, 13, 21, ..). Tidak ada patokan yang pasti untuk memilih bilangan untuk tugas pertama, akan tetapi pemilihan bilangan ini haruslah konsisten. Sebagai contoh untuk menggambarkan konsistensi tersebut, pda tugas pertama diberi bilangan 3 maka tugas lainnya dengan tingkat usaha serupa dapat diberi bilangan yang sama, tugas lain dengan usaha hampir dua kali lipat dapat diberi bilangan 5, dan seterusnya.

Backlog ditulis pada papan scrum yang mana dapat berupa papan fisik atau document sheet yang bersifat transparan (dapat diakses oleh setiap pelaku scrum). Salah satu contoh dari backlog terlihat pada gambar berikut.

5. Perencanaan Sprint

sprint planning

Sprint yang ideal berdurasi kurang dari satu bulan, umumnya digunakan 1 atau 2 mingguan. Dari sekian banyak tugas pada suatu* backlog* yang telah dibuat, setiap anggota team melihat urutan dari yang paling atas kemudian memilih tugas-tugas yang akan dia kerjakan seoptimal mungkin yang dapat diselesaikan dalam satu sprint. Dengan kata lain, anggota team bertanggung jawab penuh atas tugas yang ia pilih. Berbeda dengan metoda konvensional dimana pembagian tugas menjadi tanggung jawab atasan terhadap bawahan-bawahannya.
Ketika sprint berlangsung, backlog tidak boleh diubah, ditambah atau dikurangi. Apabila suatu tugas tidak selesai dalam satu sprint, penyelesaian tugas tersebut dapat dilanjutkan pada sprint berikutnya namun tentu saja hal ini harus dihindari karena tidak selesainya suatu tugas pada 1 sprint mengindikasikan melesetnya story points yang telah diimplementasikan atau tugas tersebut seharusnya dapat di-breakdown agar story points lebih relevan.

Apabila telah dilakukan beberapa kali sprint, rata-rata story points setiap sprint dapat dijadikan kecepatan kerja tim dalam suatu sprint. Dari sini, SM dapat mempertimbangkan apakah kecepatan ini dapat ditambah atau dikurangi pada sprint berikutnya untuk mendapatkan pencapaian kerja yang lebih optimal.

6. Daily Scrum Meeting

daily scrum meeting

Setiap hari, para pelaku sprint melakukan review secara proaktif mengenai apa yang sedang dikerjakan, kesulitan apa yang dihadapi, dan dengan panduan dari SM mencari solusi bersama untuk penyelesaian masalah tersebut. Daily Scrum Meeting biasanya dilakukan dengan standing meeting karena hanya berlangsung singkat, tidak lebih dari 15 menit. Hal ini bertujuan agar meeting tidak lantas memakan waktu banyak dan mengganggu keberlangsungan pengerjaan tugas-tugas pada sprint itu sendiri.

7. Sprint Retrospective

sprint retrospective

Pada akhir periode sprint, setiap anggota team berkewajiban menyampaikan pencapaian kerja yang telah dilakukan dengan mendemonstasikan tugas yang telah ia buat. Tugas tersebut tentu harus selesai dalam arti telah diuji dan berfungsi seperti yang diinginkan. Sprint retrospective meeting bersifat terbuka, tidak hanya para pelaku sprint yang diperbolehkan hadir, tetapi juga para pemegang kepentingan seperti client dan management.

Setelah sprint berlangsung beberapa kali atau dalam periode yang telah ditentukan dapat dilakukan meeting guna merefleksikan etos kerja dan pencapaian yang telah didapatkan. Review dapat dilakukan berdasarkan burdown chart. Di sini, semua pihak dengan kepala dingin dan secara bijak membahas kinerja yang selama ini telah dilakukan, mengidentifikasi kekurangan, dan memberikan masukan-masukan yang diperlukan guna meningkatkan pencapaian pada periode selanjutnya. Seluruh pelaku scrum harus secara terbuka mengungkapkan isu-isu yang kiranya perlu diangkat atau hal apa yang telah dilewatkan namun ternyata penting untuk dilakukan.