Mengulas Mengenai Scrum Methodology
Jika Anda terlibat dalam sektor teknologi, ada kemungkinan Anda sudah mengetahui tentang “Scrum” dan “Agile. ” Istilah ini sering muncul di kalangan profesional di dunia teknologi dan terkadang terasa seolah mereka memiliki kosakata tersendiri.
Istilah seperti “perencanaan poker”, “pertemuan singkat”, dan “sprint” merupakan beberapa frasa yang umum digunakan ketika merujuk pada Scrum dan Agile. Tentu saja, bagi yang belum familiar, istilah-istilah ini bisa tampak cukup menakutkan dan membingungkan. Namun, metode ini sebenarnya dapat sangat bermanfaat bagi Anda, karena pendekatannya dapat menyelesaikan permasalahan yang rumit. Metode kerja ini menekankan pentingnya tugas-tugas individual, kemudian mendistribusikannya kepada anggota tim yang paling sesuai untuk menyelesaikan setiap tugas tersebut.
Namun, apakah metode ini eksklusif hanya untuk engineer atau pengembang perangkat lunak? Apakah kita yang bukan engineer pun bisa merasakan keuntungan dari pendekatan ini? Jika demikian, bagaimana langkah awal yang bisa diambil? Untuk mencari jawaban atas pertanyaan tersebut, simak artikel ini untuk memahami lebih dalam mengenai metode Scrum dan cara penerapannya!
Definisi Metodologi Scrum dan Agile
Pertama-tama, penting untuk memahami perbedaan antara scrum dan agile. Metodologi scrum adalah pendekatan iteratif yang termasuk dalam kategori metode Agile tentang bagaimana Anda mengelola dan melaksanakan sebuah proyek.
Metode ini dapat diterapkan pada berbagai jenis proyek, termasuk pengembangan perangkat lunak, pembuatan situs web, pengembangan perangkat keras, pemasaran, perencanaan acara, dan lainnya. Scrum membantu Anda mengatur tim dan menekankan pada pentingnya komunikasi yang efektif antar anggota tim.
Dalam Scrum, setiap “sprint” dimulai dengan sebuah rapat singkat untuk perencanaan dan diakhiri dengan sesi tinjauan. Ini merupakan konsep dasar dari Scrum dalam manajemen proyek.
Proyek yang paling tepat untuk Agile adalah proyek yang memiliki deadline yang agresif, tingkat kerumitan yang tinggi, dan tingkat kebaruan (keunikan) yang tinggi bagi para member tim. Akan lebih baik jika Anda menggunakan Agile saat kita melakukan sesuatu yang baru, atau paling tidak baru bagi tim yang mengerjakannya. Jika itu adalah sesuatu yang tim telah lakukan sebelum berulang-ulang maka tim mungkin tidak memerlukan pendekatan Agile.
Agile merupakan kumpulan “metode dan praktik yang didasarkan pada nilai dan prinsip yang dijelaskan dalam Agile Manifesto,” yang mencakup aspek seperti kerja sama, pengorganisasian oleh anggota tim secara mandiri, serta tim yang terdiri dari berbagai fungsi. Scrum berfungsi sebagai kerangka kerja yang digunakan dalam penerapan pengembangan Agile. Sebuah analogi efektif untuk membedakan antara Scrum dan Agile adalah perbedaan antara sebuah resep dan sebuah diet.
Sebagai contoh, diet vegetarian adalah sekumpulan metode dan praktik yang berpijak pada prinsip dan nilai tertentu. Resep Taco Kacang berfungsi sebagai kerangka kerja yang dapat Anda ikuti untuk menerapkan diet vegetarian yang Anda pilih. Ini menyerupai hubungan antara Agile (diet) dan Scrum (resep yang diikuti). Agile muncul dari teknik yang diterapkan oleh perusahaan-perusahaan Jepang inovatif pada tahun 70-an dan 80-an (seperti Toyota, Fuji, dan Honda). Pada pertengahan tahun 90-an, seorang individu bernama Jeff Sutherland merasa frustrasi dengan perusahaan-perusahaan yang terus terjebak dalam proyek-proyek yang terlambat dan melebihi anggaran.
Ia berusaha menemukan metode yang lebih baik. Penelitiannya membawanya pada perusahaan-perusahaan Jepang tersebut serta metode Agile yang mereka gunakan. Berdasarkan penemuan ini, Sutherland mengembangkan kerangka kerja Scrum. Setelah melalui serangkaian keberhasilan menggunakan metode barunya, Scrum dengan cepat mulai menyebar ke seluruh dunia pengembangan produk. Scrum sendiri dapat dijelaskan melalui poin-poin berikut ini:
- Pemilik produk menyusun daftar prioritas yang dikenal sebagai backlog produk.
- Saat merencanakan sprint, tim mengambil salah satu item dari bagian atas daftar prioritas dan menentukan cara mereka akan menyelesaikannya.
- Tim memiliki jangka waktu tertentu, yang dikenal dengan sprint (biasanya berlangsung antara dua sampai empat minggu) untuk menyelesaikan tugas mereka, dengan pengecekan setiap hari untuk memantau kemajuan (Scrum harian).
- Selama proses tersebut, ScrumMaster memastikan tim tetap fokus pada tujuan yang telah ditetapkan.
- Di akhir sprint, hasil kerja harus siap untuk dikirimkan: bisa diserahkan ke pelanggan, dipajang di toko, atau dipresentasikan kepada para pemangku kepentingan.
- Sprint diakhiri dengan sesi peninjauan sprint dan refleksi.
- Ketika sprint berikutnya dimulai, tim memilih item lain dari backlog produk dan kembali memulai pekerjaan.
Proses ini berlanjut sampai proyek dinyatakan selesai, baik karena batas waktu dan anggaran atau dengan menyelesaikan semua item yang telah ditetapkan sebelumnya.
Jadi, Agile adalah metode project management paling tepat pada proyek yang mendesak dengan kompleksitas dan kebaruan yang signifikan – dan itu bisa saja mulai dari pengembangan software sampai merencanakan wedding.
Manfaat Scrum
Mungkin Anda berpikir metodologi scrum adalah suatu metode kerja yang terbatas pada engineer atau developer. Tapi kerangka kerja itu bisa bermanfaat untuk jenis proyek lain juga.
“Scrum dapat digunakan untuk proyek yang kompleks, peringatannya adalah hasilnya bagus bila ada produk beton yang diproduksi. Jika Anda bekerja dalam pemasaran dan kebutuhan menulis salinan untuk sebuah proyek, pasti bisa bermanfaat bagi tim Anda. ”
David Matthew, seorang Master Scrum Certified untuk Incentive Technology Group
Scrum project management telah digunakan oleh semua orang dari FBI, agen pemasaran, hingga orang-orang konstruksi. Kapan pun Anda perlu menghasilkan beberapa jenis produk, baik itu software atau email campaign, Scrum dapat membantu Anda mengatur tim Anda dan menyelesaikan lebih banyak pekerjaan dalam waktu yang lebih singkat.
Peran di Scrum
Terdapat tiga peran penting yang diperlukan dalam penerapan metode Scrum, yaitu:
- Master Scrum
Bertugas untuk memastikan bahwa prosedur dijalankan, memastikan segala sesuatu berjalan dengan baik, dan melindungi tim dari gangguan. Master Scrum berbeda dengan manajer proyek konvensional dalam berbagai aspek, termasuk fakta bahwa peran ini tidak memberikan arahan harian kepada tim dan tidak membebankan tugas kepada individu.
- Product Owner (Pemilik Produk)
Sering kali dianggap sebagai orang yang paling krusial dalam sebuah proyek. Salah satu tanggung jawab pemilik produk adalah memiliki gambaran jelas mengenai apa yang ingin mereka ciptakan dan menyampaikan visi tersebut kepada tim Scrum. Tugas utama Pemilik Produk adalah untuk memberikan nilai kepada pemangku kepentingan.
- Tim Scrum
Sebuah tim Scrum adalah kumpulan orang yang mampu mengatur pekerjaan mereka sendiri dan merupakan tim dengan keahlian beragam. Anggota tim akan terlibat dalam analisis, implementasi, desain, pengujian, dan kegiatan lainnya. Meskipun individu dapat bergabung ke dalam tim dengan berbagai latar belakang, dalam Scrum, jabatan tersebut tidak terlalu penting.
Metodologi Scrum menekankan bahwa setiap anggota berkontribusi semaksimal mungkin untuk menyelesaikan tugas dalam setiap sprint. Oleh karena itu, individu akan menghabiskan sebagian besar (dan kadang-kadang seluruh) waktu mereka bekerja dalam bidang keahlian yang mereka kuasai, seperti analisis, desain, pengembangan, pengujian, dan lain-lain.
Hal yang Menarik Dari Scrum
Ada beberapa aspek utama dari Scrum yang menarik minat banyak orang untuk menerapkannya, Antara lain:
- Tim yang diorganisasi sendiri dengan penekanan pada kolaborasi kelompok.
- Dokumentasi yang minimal dibutuhkan. Scrum menerapkan metode langsung dalam penugasan dan pengecekan kemajuan.
- Tim Scrum terdiri dari anggota dengan berbagai keahlian yang memungkinkan mereka bekerja bersama sebagai satu kesatuan.
- Adanya komunikasi yang intens dan interaksi yang sering.
- Mengikuti pola kerja yang konsisten dan berulang untuk menyelesaikan tugas dalam jangka waktu maksimal 30 hari.
- Daripada berupaya menyelesaikan seluruh pekerjaan sekaligus, Scrum mendorong untuk menyelesaikan setiap tugas satu per satu sesuai dengan waktu yang telah ditentukan.
- Mengimplementasikan Scrum dapat membuat anggota tim merasa dihargai dan Anda dapat mengetahui siapa yang memiliki keahlian tertentu sehingga tugas dapat dikerjakan tanpa harus menunggu.
Cara Implementasi Scrum
Untuk mencoba metode Scrum, Anda dapat memulai dengan menangani suatu proyek yang sederhana dan singkat. Dengan cara ini, Anda dapat membantu tim Anda membangun cara berpikir yang tepat mengenai metode Scrum. Perlu diingat bahwa, serupa dengan kebanyakan kerja tim, ada anggota yang akan menyukainya dan ada pula yang mungkin tidak.
Ini adalah hal yang wajar, dan Anda harus mendorong anggota tim untuk mencobanya dengan sepenuh hati sebelum mereka menyerah. Jika seseorang akhirnya mundur, bebaskan mereka dari tim dan biarkan orang lain bergabung. Untuk memahami ilustrasi scrum dan langkah awalnya, Anda bisa mengikuti langkah-langkah berikut:
- Bentuk Tim Scrum pertama Anda
Tim terdiri dari 5 hingga 9 individu. Setiap anggota memiliki beragam kompetensi dan bisa mencakup pengembang, penguji, pendukung, perancang, analis bisnis, dan lain-lain. Semua anggota saling berkolaborasi secara terus-menerus. Tim memiliki tanggung jawab untuk memastikan bahwa mereka dapat menghasilkan produk yang dapat dipresentasikan pada akhir setiap sprint.
- Tentukan panjang atau lamanya Sprint Anda
Sprint adalah periode waktu yang berkisar antara 7 hingga 30 hari, dan biasanya tetap konsisten sepanjang proyek berlangsung. Tentukan durasi ini dalam sebuah rapat perencanaan, dan tim harus berkomitmen untuk menyelesaikan tugas tersebut.
Pada akhir sprint, sebaiknya adakan sebuah review atau evaluasi (bisa dalam bentuk rapat) dengan demonstrasi hasil kerja. Di sini, perbaikan akan ditinjau dan direncanakan untuk sprint selanjutnya. Jika Anda masih merasa ragu tentang durasinya, Anda bisa mulai dengan dua minggu terlebih dahulu.
- Tunjuk Seorang Master Scrum
Master Scrum berfungsi sebagai penggerak untuk tim scrum. Mereka memastikan bahwa tim scrum beroperasi secara efisien dan berorientasi pada kemajuan. Jika ada hambatan, Master Scrum akan menangani dan menyelesaikan isu yang ada untuk tim.
Master Scrum dapat dikategorikan sebagai manajer proyek untuk tim tersebut, kecuali orang ini tidak diperbolehkan untuk menentukan apa yang harus dikerjakan oleh tim dan seharusnya tidak terlibat dalam mikro-manajemen. Master Scrum akan mendukung tim dalam merencanakan tugas sprint yang akan datang.
- Tunjuk Pemilik Produk (Product Owner)
Seorang Pemilik Produk harus menjadi individu yang dapat mengawasi dan menjamin bahwa tim mampu menciptakan sebuah produk yang dapat dipresentasikan serta dijual kepada pihak-pihak seperti bisnis, klien, atau siapa pun yang mengharapkan hasil dari proyek tersebut (pembeli akhir).
Umumnya, Pemilik Produk menuliskan kebutuhan yang terkait dengan keinginan terhadap produk dalam bentuk narasi, kemudian mengurutkan item-item sesuai dengan prioritas dalam proses pengembangan dan menambahkannya ke dalam backlog.
- Buat Backlog Produk Awal
Backlog produk adalah kumpulan harapan yang mencakup semua narasi pengguna yang diinginkan untuk dikembangkan dan diselesaikan dalam proyek tersebut. Narasi dengan tingkat kepentingan tertinggi harus diletakkan di bagian atas daftar, sehingga semua simpanan tersusun dengan baik sesuai dengan urutan prioritas cerita. Biasanya, sebuah simpanan terdiri dari dua jenis item pekerjaan:
Epics – Cerita tingkat tinggi yang sketsanya sangat kasar tanpa banyak detail.
Stories – Persyaratan lebih rinci untuk apa yang harus dilakukan (mungkin dilakukan).
Sebuah epics biasanya dapat dibagi menjadi beberapa cerita.
Sebuah cerita biasanya akan dipecah menjadi beberapa tugas terpisah sehingga tim dapat bekerja dan melaporkan progressnya nanti. Stories juga bisa memiliki beberapa tipe seperti development, bug, tugas, dan lain lain. Stories baru dapat ditulis dan ditambahkan ke backlog produk kapan saja dan oleh siapa saja.
Jika sebuah epic meningkat dalam prioritas, sebaiknya masukkan detail yang lebih rinci agar tim dapat mulai mengerjakannya. Pemilik Produk bebas untuk memprioritaskan kembali backlog sesuai dengan keinginan dia.
Contoh stories yang bisa dikembangkan menjadi produk:
- Sebagai power user, saya bisa menentukan file atau folder yang akan di backup berdasarkan ukuran file, tanggal yang dibuat dan tanggal dimodifikasi.
- Sebagai pembelanja buku, saya bisa membaca ulasan sebuah buku pilihan untuk membantu saya memutuskan apakah akan membelinya
- Seorang nasabah bank bisa mengganti PIN-nya
Rencanakan dan Mulailah Sprint Pertama Anda
Mengacu pada prioritas dalam backlog, tim kini memilih item dari daftar (umumnya dari yang paling atas). Mereka kemudian melakukan sesi brainstorming dan menetapkan apa serta berapa banyak yang bisa diselesaikan dalam sprint yang akan datang. Proses ini dikenal sebagai rapat perencanaan sprint. Setelah tim sepakat, sprint dimulai dan mereka bisa mulai mengerjakan proyek tersebut.
Akhiri Arus dan Mulai Sprint Berikutnya
Ketika tenggat waktu telah berlalu dan semua tugas yang direncanakan telah selesai, tim harus menentukan apakah tugas yang belum selesai perlu dipindahkan ke sprint berikutnya atau dikembalikan ke backlog. Setiap kali tim menyelesaikan pekerjaan mereka, mereka dianjurkan untuk melakukan retrospektif yang membahas hal hal yang berjalan baik dan aspek yang perlu diperbaiki untuk sprint mendatang. Setelah itu, pertemuan perencanaan sprint untuk sprint selanjutnya pun dimulai dan proses tersebut diulang.
Tidak ada batasan pada jumlah sprint kecuali jika ada tenggat waktu yang ditetapkan (berdasarkan anggaran atau waktu) atau seluruh backlog telah diselesaikan. Ketika tenggat waktu telah berlalu dan semua tugas yang direncanakan telah selesai, tim harus menentukan apakah tugas yang belum selesai perlu dipindahkan ke sprint berikutnya atau dikembalikan ke backlog. Setiap kali tim menyelesaikan pekerjaan mereka, mereka dianjurkan untuk melakukan retrospektif yang membahas hal-hal yang berjalan baik dan aspek yang perlu diperbaiki untuk sprint mendatang.
Setelah itu, pertemuan perencanaan sprint untuk sprint selanjutnya pun dimulai dan proses tersebut diulang. Tidak ada batasan pada jumlah sprint kecuali jika ada tenggat waktu yang ditetapkan (berdasarkan anggaran atau waktu) atau seluruh backlog telah diselesaikan. Jika kedua kondisi ini tidak terpenuhi, sprint dapat terus berlanjut tanpa batas waktu.
Kegiatan yang harus dilaksanakan dalam Scrum
Sebagai bagian dari scrum, ada beberapa kegiatan yang harus dilakukan, yaitu:
- Rapat Perencanaan
Rapat Perencanaan Sprint merupakan awal dari Scrum. Ini adalah pertemuan di mana semua anggota tim Scrum berkumpul; berkolaborasi dengan Product Owner serta Master Scrum, tim memilih cerita dari backlog dan melakukan brainstorming bersama. Berdasarkan diskusi tersebut, tim Scrum menentukan tingkat kesulitan cerita dan memutuskan mana yang akan dimasukkan ke dalam sprint.
- Menyelesaikan Tugas
Seperti namanya, sangat penting bagi tim untuk menyelesaikan tugas demi kemajuan proyek. Anggota tim mengerjakan epics atau cerita hingga selesai dan kemudian berpindah ke tugas berikutnya. Biasanya, cerita diatur di papan dengan langkah-langkah yang terpisah, sehingga mudah untuk memahami bagaimana kemajuan sprint tersebut.
- Pertemuan Scrum Harian
Dalam setiap siklus sprint, anggota tim Scrum berkumpul selama maksimum lima belas menit setiap hari (biasanya di pagi hari). Tiga poin yang perlu dijelaskan oleh masing-masing anggota adalah:
-
- Apa yang telah saya selesaikan kemarin?
- Apa yang akan saya kerjakan hari ini?
- Sampaikan jika ada kendala yang menghalangi penyelesaian tugas mereka pada hari tersebut.
- Pertemuan Review Sprint
Setelah setiap sprint, tim melaksanakan Rapat Tinjauan Sprint untuk mempresentasikan kemajuan kerja kepada Product Owner dan pihak lain yang berminat. Pertemuan ini harus menyajikan demonstrasi secara langsung, bukan berupa laporan. Pemilik Produk berhak memverifikasi cerita sesuai dengan kriteria penerimaan yang telah ditentukan.
- Rapat Retrospektif
Pertemuan reflektif dilaksanakan setelah sesi ulasan. Tim Scrum berkumpul dan mendiskusikan hal-hal berikut:
- Apa yang telah berjalan dengan baik sepanjang sprint.
- Apa syang tidak sesuai dengan rencana selama sprint.
- Pelajaran yang telah diambil.
- Tindak lanjut yang perlu dilakukan.
Dari diskusi di atas, terlihat bahwa Scrum merupakan pendekatan yang efektif untuk mendukung kemajuan proyek dengan cepat dari hampir semua tipe proyek. Ini sangat bermanfaat dalam memastikan efisiensi untuk setiap organisasi. Jika Anda lebih berminat dengan manajemen proyek yang lebih klasik, Anda dapat membaca artikel kami mengenai berbagai alat manajemen proyek yang dapat membantu Anda, khususnya dalam bentuk digital.