Scrum (Tim Rugby), model pengembangan perangkat lunak adalah sejenis pengembangan agile, yang secara bertahap menjadi populer dalam sepuluh tahun terakhir.

Asumsi dasar dari Scrum
Mengembangkan perangkat lunak seperti mengembangkan produk baru. Prosedur akhir dari produk perangkat lunak tidak dapat didefinisikan dari awal. Proses ini memerlukan R&D, kreativitas, percobaan dan kesalahan, sehingga tidak ada proses tetap yang dapat menjamin keberhasilan proyek.
Scrum membandingkan tim pengembangan perangkat lunak dengan tim sepak bola. Ini memiliki tujuan yang jelas dan tertinggi, akrab dengan model dan teknologi terbaik yang diperlukan dalam proses pengembangan, memiliki tingkat otonomi yang tinggi, komunikasi dan kerjasama yang erat, dan memastikan untuk menyelesaikan berbagai tantangan setiap hari dengan tingkat fleksibilitas yang tinggi; Setiap tahap memiliki kemajuan yang jelas menuju tujuan.
Proses Scrum
Proses pengembangan Scrum biasanya dimulai dengan fase 30 hari (atau lebih pendek), dimulai dengan spesifikasi kebutuhan produk baru dari pelanggan, dengan tim pengembangan dan pelanggan memilih bagian mana dari spesifikasi yang akan diselesaikan di awal setiap fase, tim pengembangan harus melakukan yang terbaik untuk menyampaikan hasil setelah 30 hari, dan tim bertemu 15 menit sehari untuk meninjau kemajuan dan jadwal setiap anggota, memahami kesulitan yang dihadapi, dan mencoba menyelesaikan masalah.
Keuntungan dari pendekatan Agile
Apa keuntungan Scrum dibandingkan dengan model pengembangan tradisional.Fitur khas dari model Scrum adalah bahwa ia merespons perubahan. Ia dapat merespons perubahan secepat mungkin.
Ketika sistem tradisional fokus pada perencanaan awal di mana faktor-faktor seperti biaya, ruang lingkup, dan waktu diberikan perhatian, pendekatan agile memberikan penekanan pada kerja tim, kolaborasi pelanggan, dan fleksibilitas. Ketika spesifikasi kebutuhan berubah, tim agile dapat tetap bergerak dan mampu merespons perubahan tersebut. Namun, itu tidak berarti bahwa strategi perencanaan adaptif selalu lebih baik daripada strategi perencanaan prediktif. Mari kita bandingkan kedua strategi pengembangan proyek ini dengan lebih detail.

Dengan demikian, pendekatan pengembangan tradisional (waterfall, juga dikenal sebagai berbasis rencana) adalah linier, dengan semua fase proses terjadi secara berurutan. Pendekatan ini bergantung pada alat yang dapat diprediksi dan pengalaman yang dapat diprediksi. Setiap proyek mengikuti siklus hidup yang sama, termasuk kelayakan, perencanaan, desain, konstruksi, pengujian, produksi, dukungan, dan seterusnya, seperti yang ditunjukkan di bawah.
Seluruh proyek direncanakan sebelumnya tanpa ruang untuk mengubah persyaratan, misalnya PMBOK dan PRINCE2 dari PMI sangat ketat dan terkontrol. Mereka menguraikan berbagai fase perencanaan proyek dari awal hingga akhir dan mengasumsikan bahwa Anda sudah memiliki semua persyaratan dan informasi yang Anda butuhkan di awal.
Agile dianggap sebagai strategi pengembangan perangkat lunak yang lebih modern, karena dirancang terutama untuk mengatasi beberapa kekurangan dari pendekatan waterfall yang lebih prediktif. Ini adalah model pengembangan perangkat lunak yang mendorong pengembangan dan pengujian iteratif sepanjang siklus hidup pengembangan perangkat lunak suatu proyek.
Gambaran Umum Proses Scrum
Scrum adalah kerangka kerja yang menetapkan peran, acaraartefak, dan aturan/pedoman untuk menerapkan pola pikir itu. Dengan kata lain, Agile adalah pola pikir dan Scrum adalah kerangka kerja yang menetapkan proses untuk menerapkan filosofi agile.
Scrum dan agile tidaklah sama tetapi scrum adalah salah satu proses agile. Mereka didasarkan pada pengembangan iteratif. Persyaratan dan solusi dari agile diperoleh melalui asosiasi antara tim lintas fungsi dan tim yang terorganisir sendiri, dan ketika diterapkan dengan benar dapat membantu tim mengatasi masalah kompleks dengan secara bertahap menyampaikan produk dengan nilai tertinggi sambil mengurangi risiko.
Scrum melibatkan inspeksi dan adaptasi yang cepat, kerja tim ditingkatkan oleh filosofi kepemimpinan, akuntabilitas dan pengorganisasian diri, praktik terbaik rekayasa yang membantu dalam penyampaian perangkat lunak berkualitas tinggi dengan cepat.
Istilah Kunci dari Scrum
Backlog: semua tugas yang dapat diprediksi, termasuk semua tugas fungsional dan non-fungsional.
Sprint: Periode waktu untuk pengembangan generasi, umumnya paling lama 30 hari sebagai siklus. Selama waktu ini, tim pengembangan perlu menyelesaikan backlog yang telah dirumuskan, dan hasil akhirnya adalah produk yang dapat disampaikan secara bertahap.
Sprint backlog: Tugas-tugas yang perlu diselesaikan dalam siklus sprint.
Time-box: Slot waktu untuk pertemuan. Misalnya, time-box dari setiap pertemuan scrum harian adalah 15 menit.
Pertemuan perencanaan sprint: Diadakan sebelum memulai setiap sprint. Biasanya satu hari (8 jam). Tugas yang akan dirumuskan dalam pertemuan ini adalah: pemilik produk dan anggota tim menguraikan backlog menjadi modul fungsional kecil, memutuskan berapa banyak modul fungsional kecil yang perlu diselesaikan dalam sprint yang akan datang, dan menentukan prioritas tugas dari Product Backlog ini. Selain itu, pertemuan perlu membahas secara rinci bagaimana menyelesaikan modul fungsional kecil ini sesuai kebutuhan. Beban kerja modul-modul ini dihitung dalam jam.
Pertemuan Scrum Harian: diadakan oleh anggota tim pengembangan, biasanya 15 menit. Setiap anggota pengembangan perlu melaporkan tiga proyek kepada Scrum Master: Apa yang telah diselesaikan hari ini? Apakah Anda mengalami hambatan? Apa yang akan Anda lakukan? Melalui pertemuan ini, anggota tim dapat memahami kemajuan proyek satu sama lain.
Pertemuan tinjauan sprint: Setelah setiap Sprint, tim akan mempresentasikan hasil Sprint kepada Pemilik Produk dan personel terkait lainnya. Umumnya, pertemuan ini berlangsung selama 4 jam.
Retrospektif Sprint terjadi setelah Tinjauan Sprint dan sebelum Perencanaan Sprint. Ini adalah pertemuan paling lama tiga jam untuk satu bulan Sprint. Sesi retrospektif pada dasarnya adalah pertemuan “perbaikan” yang diadakan untuk menemukan cara dan sarana untuk mengidentifikasi potensi jebakan, kesalahan masa lalu, dan mencari cara baru untuk menghindari kesalahan tersebut, yang dihadiri oleh semua — pemilik produk, pemimpin scrum, anggota tim pengembangan, dan secara opsional dengan para pemangku kepentingan.
Pemimpin Scrum: Seorang anggota tim yang bertanggung jawab untuk mengawasi seluruh proses Scrum dan merevisi rencana.
Pemilik Produk yang memiliki produk atas nama perusahaan adalah bagian dari tim Scrum. Namun, seorang pemilik produk tidak memiliki wewenang atas anggota tim lainnya, sama seperti Pemimpin Scrum. Seorang Pemilik Produk bertanggung jawab untuk merawat produk selama periode waktu yang panjang dan bertanggung jawab untuk mencapai keberhasilan produk. Sebagai pemilik produk, Anda harus berinteraksi langsung dengan pelanggan dan pengguna, tim pengembangan, dan pemangku kepentingan kunci lainnya, seperti yang ditunjukkan pada gambar di bawah.
Sebuah Scrum Tim adalah kumpulan individu (biasanya antara lima hingga sembilan anggota) yang bekerja sama untuk memberikan peningkatan produk yang diperlukan. Kerangka kerja Scrum mendorong tingkat komunikasi yang tinggi di antara anggota tim, sehingga tim dapat:
- Mengikuti tujuan bersama
- mematuhi norma dan aturan yang sama
- saling menghormati

Bagaimana Scrum Bekerja?
Proses Scrum dibedakan dari proses agile lainnya oleh konsep dan praktik tertentu, dibagi menjadi tiga kategori Peran (pemilik produkpemimpin scrum, tim pengembangan dan pemangku kepentingan lainnya), acara, artefak, dan aturan.
Untuk memulai proses Scrum, seorang pemilik produk membuat daftar keinginan yang diprioritaskan yang disebut backlog produk. Selama perencanaan sprint backlog diukur untuk kompleksitas dan nilai bisnis (prioritas). Pemilik produk (klien) dan tim pengembangan menentukan item backlog mana yang ditambahkan ke sprint. Tim memiliki sejumlah waktu tertentu (disebut sprint, biasanya dua hingga empat minggu) untuk menyelesaikan pekerjaannya, tetapi bertemu setiap hari untuk menilai kemajuannya (Scrum harian). Sepanjang jalan, Pemimpin Scrum menjaga tim tetap fokus pada tujuannya. Di akhir sprint, tim meninjau kemajuan mereka, menunjukkan produk yang berfungsi kepada klien, dan meninjau apa yang berjalan baik atau apa yang perlu mereka tingkatkan untuk sprint berikutnya. Kemudian siklus diulang.

This post is also available in Deutsch, English, Español, فارسی, Français, 日本語, Polski, Portuguese, Ру́сский, Việt Nam, 简体中文 and 繁體中文.