Mengenal Scrum dalam Manajemen Software Development

Muhammad Budhiluhoer 20 November 2023

Mengenal Scrum dalam Manajemen Software Development

Dalam merancang sebuah produk baru, orang-orang acap kali membuat gambaran besar dan target yang sangat mendetail dan terperinci. Pembuatan rencana kerjanya saja membutuhkan waktu yang lama. Sayangnya, yang sering kali terjadi adalah terlalu fokus pada detail sehingga menomorduakan efektifitas waktu dan menomortigakan efisiensi biaya. Proses tersebut lambat, tak terprediksi, dan sering kali tidak menghasilkan produk yang diinginkan orang-orang.

Demi memangkas semua detail pekerjaan sia-sia tersebut, selama 20 tahun terakhir, sebagai pelatih dan konsultan ratusan perusahaan, Jeff Sutherland tak pernah lelah memperkenalkan metode Scrum ke seluruh dunia. Kini, Scrum tak hanya diaplikasikan untuk proyek di bidang teknologi saja, tetapi juga di ranah pendidikan, jurnalistik, hingga sesuatu yang personal seperti merancang pesta pernikahan.

Hal luar biasa yang membedakan Scrum dengan metode manajemen yang lain adalah kemampuan dalam merancang konsep evaluasi berkesinambungan untuk menjaring respon dari pelanggan secepatnya. Dengan scrum, tak ada hal sia-sia yang akan dilalukan.

Scrum

Scrum (n): Kerangka kerja yang dipergunakan untuk menjawab persoalan adaptif kompleks, sekaligus memupuk kreativitas dan produktivitas dalam rangka menghasilkan produk bernilai tambah setinggi mungkin.

"Scrum membantu saya membangun GO-JEK dari nol. Pahami buku ini untuk memetik esensi menjadi pemimpin yang menginspirasi seluruh tim anda."
- Alamanda Shantika, digital activist dan pendiri Binar Academy.

Scrum adalah kerangka proses yang telah digunakan untuk mengelola pengembangan produk kompleks sejak awal 1990-an. Scrum bukan proses ataupun teknik untuk membuat produk, melainkan kerangka kerja guna menerapkan berbagai proses dan teknik. Scrum menjadikan efektivitas relatif praktik pengembangan produk dan manajemen proyek terlihat jelas, sehingga membantu kita memperbaiki proses.

Nama Scrum diambil dari istilah permainan Rugbi yang merupakan fase setelah terjadinya pelanggaran, Sebanyak tiga pemain dari masing-masing tim berdempetan dan saling berhadapan untuk memperebutkan bola.

Pengertian Scrum yang terdapat pada permainan Rugbi :
Scrum dilakukan setelah terjadi pelanggaran, sebanyak tiga pemain dari masing-masing tim berdempetan dan saling berhadapan untuk memperebutkan bola.
Sumber : https://juara.bolasport.com/read/sport/lainnya/174872-berkenalan-dengan-rugbi-tujuh-olahraga-rugbi-versi-lembut

Tim Scrum

Three Scrum Team

sumber gambar : https://www.quora.com/Why-cant-the-Scrum-Master-and-the-Product-Owner-be-the-same-person

Tim Scrum terdiri atas Pemilik Produk, Tim Pengembang dan Scrum Master. Tim scrum ini ada yang berperan dalam mengelola dan lintas-fungsi.

Product Owner

Pemiliki Produk bertanggung jawab memaksimalkan nilai tambah produk dan pekerjaan Tim pengembang. Pemiliki produk merupakan orang satu-satunya yang bertanggung jawab untuk mengelola Backlog Produk (daftar kebutuhan yang mungkin saja terdapat pada produk). Manajemen Backlog produk mencakup :

  • Penyampaian butir-butir dalam Backlog produk dengan jelas.
  • Pengurutan butir-butir Backlog produk sebaik-baiknya meraih target dan misi.
  • Pengoptimal nilai tambah dalam pekerjaan yang dilaksanakan Tim Pengembang.
  • Kewajiban untuk menyediakan Bakclog produk dengan jelas, tranparan, mudah dimengerti.
  • Kewajiban untuk memastikan Tim Pengembang memahami butir-butir dalam Backlog produk.

Unsur-unsur diatas boleh dipresentasikan sendiri oleh Pemilik produk atau diserahkan kepada Tim pengembang. Namun, yang bertanggung jawab tetap Pemiliki produk. Agar Pemilik produk dapat sukses, maka seluruh Tim harus menghormati keputusannya. Keputusan Pemiliki produk tercermin dalam isi dan urutan Backlog produk.

Tim Pengembang

Tim Pengembang terdiri atas para pekerja ahli yang bertugas menggarap dan menyelesaikan produk secara sedikit demi sedikit untuk dirilis pada akhir Sprint. Tim pengembang dirancang dan diberi kewenangan oleh organisasi untuk melakukan pengelolaan.

Tim pengembang memiliki karakeristik sebagai berikut :

  • Tim Pengembang yang bertugas mengubah Bakclog produk menjadi produk jadi, tanpa diatur oleh pihak luar.
  • Dalam satu tim termuat semua keahlian yang dibutuhkan untuk menghasilkan produk yang baik.
  • Semua anggota Tim pengembang memiliki kedudukan yang sama sebagai Pengembang, apapun tugasnya.
  • Setiap anggota Tim pengembang mungkin memiliki keterampilan khusus, tetapi tanggung jawab dipikul Tim pengembang sabagai satu kesatuan.

Jumlah anggota Tim pengembang tidak boleh terlalu banyak agar tetap gesit dan juga tidak boleh terlalu sedikit agar bisa menyelesaikan tugas secara signifikan dalam kurun satu Sprint. Kurang dari tiga anggota dapat mengurangi tingkat produktifitas. Maka standar dari anggota pengembang terdiri dari 3 orang.

Scrum Master

Scrum master bertanggung jawab untuk memastikan bahwa Scrum dipahami dan dijalankan, yakni dengan mengawasi tim agar betul-betul menaati teori, praktik dan aturan Scrum. Scrum master adalah pemimpin yang berlaku sebagai pembantu Tim Scrum.

  1. Layanan Scrum Master kepada Pemiliki Produk
  • Mencari teknik-teknik untuk memanajemen Bakclog produk yang efektif.
  • Membantu Tim scrum memahami perlunya kejelasan dan keringkasan dalam butir-butir di Backlog produk.
  • Memastikan bahwa Pemilik Produk tahu pasti mengurutkan Backlog produk seperti apa untuk memaksimalkan nilai tambah.
  • Memahami dan mempraktikan prinsip-prinsip manajemen proyek tangkas (Agile).
  • Memfasilitasi kegiatan dalam Scrum sesuai permintaan dan kebutuhan.
  1. Layanan Scrum Master kepada Tim pengembang
  • Melatih Tim pengembang untuk melakukan pengelolaan dan aktivitas lintas-fungsi.
  • Membnatuk Tim pengembang untuk menciptakan produk bernilai tinggi.
  • Menyingkirkan hambatan yang menyendat pada kemajuan Tim Pengembang.
  • Memfasilitasi kegiatan dalam Scrum sesuai permintaan dan kebutuhan.
  • Melatih Tim pengembang dalam memahami dan menerapkan Scrum.

Kegiatan dalam Scrum

Sprint

Sprint dapat dianggap sebagai poros atau jantung Scrum. Sprint adalah jangka waktu 1 bulan atau kurang yang diisi dengan pengerjaan produk yang fungsional dan berpotensi. Sepanjang pengembangan produk berjalan, idealnya setiap Sprint memiliki durasi yang sama, tidak diubah-ubah.

Sprint terdiri atas :

  • Perancangan Sprint
  • Pertamuan harian
  • Pekerjaan untuk mengembangkan produk itu sendiri
  • Ulasan Sprint
  • Refleksi Sprint

Pada saat Sprint terjadi :

  • Dilarang membuat perubahan yang bisa mengagalkan target Sprint.
  • Target kualitas tidak boleh dikurangi.
  • Cakupan kerjaan boleh diklarifikasi dan dinegosasi ulang oleh Pemiliki produk dan Tim pengembang, bilamana diperoleh informasi baru.

Pembatalan Sprint hanya boleh dilakukan oleh Pemiliki produk, sekalipun dia boleh membatalkan berdasarkan masukan dari Scrum master dan Tim pengembang. Sprint dibatalkan apabila Terget Sprint menjadi usang. Ini mungkin terjadi jika perusahaan berubah arah atau kondisi pasar atau teknologi berubah. Secara umum, Sprint hanya boleh dibatalkan apabila tidak berguna lagi. Namun karena Sprint berdurasi pendek, pembatalan jarang terjadi.

Perencanaan Sprint

Pekerjaan yang akan dilaksanakan pada Sprint disiapkan melalui Perencanaan Sprint. Rencana tersebut disusun oleh Tim Scrum secara kolaboratif. Perencanaan Sprint dipatok maksimal 8 jam untuk Sprint berdurasi 1 bulan. Untuk Sprint yang lebih pendek, Perencanaan Sprint malah lebih singkat lagi. Scrum Master memastikan perencanaan Sprint terlaksana dan semua hadirin memahami maksudnya, Scrum master mengajari Tim Scrum agar tidak melebihi patokan waktu.

Yang mesti dijawab dalam Perencanaan Sprint sebagai berikut:

  • Apa yang bisa diselesaikan pada Sprint?
  • Bagaimana cara mengerjakannya?

Target Sprint adalah tujuan yang dipatok untuk sebuah Sprint. Target Sprint memandu pekerjaan Tim pengembang dalam Sprint tersebut. Target Sprint dicapai dengan cara menyelesaikan butir-butir tertentu dalam Backlog produk. Dalam bekerja Tim pengembang senantiasa berpatokan pada Target Sprint. Untuk memenuhi Target Sprint, Tim pengembang menggarap butir-butir tugas yang telah ditentukan. Jika pekerjaan yang dibutuhkan ternyata lain dengan yang diperkirakan diawal, Tim pengembang berkolaborasi dengan Pemiliki produk guna merunding cakupan Backlog.

Pertemuan Harian

https://images.unsplash.com/photo-1525332193053-dee9e7348624?ixlib=rb-0.3.5&ixid=eyJhcHBfaWQiOjEyMDd9&s=a171c64a1cb121a923c4e95d8308ca9e&auto=format&fit=crop&w=500&q=60

Pertemuan Harian adalah kegiatan yang berdurasi maksimal 15 menit bagi Tim Pengembang untuk menyinkronkan aktivitas dan penyusunan rencana untuk 24 jam kedepan. Dilakukan dengan cara memantau pekerjaan yang sudah dilakukan dan memperkirakan apa saja yang dapt dikerjakan sampai pertemuan selanjutnya.

Dalam pertemuan tersebut, para anggota Tim Pengembang menjelaskan :

  • Apa yang kulakukan kemarin yang turut membantu Tim Pengembang mencapai Target Sprint?
  • Apa yang akan kulakukan hari ini yang dapat turut membantu Tim pengembang mencapai Target Sprint?
  • Apakah kendala yang menghambat aku atau Tim pengembang untuk mencapai Target Sprint?

Pertemuan Harian adalah ajang bagi Tim Pengembang untuk memantau kemajuan menuju Target Sprint dan terselesaikan perkerjaan di Backlog Sprint.

Ulasan Sprint

Ulasan Sprint dilaksanakan pada akhir Sprint untuk memeriksa produk dan menyesuaikan Backlog produk jika perlu.

Ulasan Sprint antara lain terdiri atas unsur berikut :

  • Dihadiri Tim Scrum dan para pemangku kepentingan utama yang diundang Pemilik Produk.
  • Pemiliki Produk menjelaskan butir-butir Backlog produk yang mana saja yang sudah "Selesai" dan mana yang belum.
  • Tim pengembang mendiskusi apa saja yang berjalan mulus pada Sprint terdahulu, masalah apa yang dihadapi, dan bagaimana masalah itu diatasi.
  • Tim pengembang mendemonstrasikan hasil pekerjaan yang sudah "Selesai" dan menjawab pertanyaan terkait.
  • Pemilik Produk membahas kondisi terkini Backlog Produk. Dia menyampaikan perkiraan tanggal penyelesaikan berdasarkan perkembangan yang dicapai (jika perlu)

Refleksi Sprint

Refleksi Sprint merupakan kesempatan bagi Tim Scrum untuk melakukan introfeksi dan menyusun rencana baru dalam rangka memperbaiki proses, guna diterapkan pada Sprint berikutnya. Refleksi Sprint dilakukan sesudah Ulasan Sprint dan sebelum Perencanaan Sprint yang berikutnya. Refleksi sprint berlangsung maksimal 3 jam untuk Sprint 1 bulanan.

Tujuan Refleksi Sprint :

  • Memantau orang-orang, hubungan, proses, dan perangkat yang terlibat pada Sprint terakhir.
  • Mengidentifikasi dan mengurutkan butir-butir penting yang pengerjaannya mulus, serta mengusulkan perbaikan potensial bagi proses.
  • Menyusun rencana untuk mengimplementasi perbaikan dalam cara kerja Tim Scrum.

Pada akhir Refleksi Sprint, Tim Scrum harus sudah mengidentifikasi perbaikan apa saja yang akan diterapkan pada Sprint selanjutnya.

Sumber :

Image

Buku Scrum (Meningkatkan Produktivitas Dua Kali Lipat dalam Waktu Setengahnya Saja), Jeff Sutherland