Sejarah Scrum

Sejak penerbitan laporan "Mengurus Pembangunan Sistem Perisian Besar" Winston Royce pada tahun 1970, ramai telah cuba mencari metodologi yang boleh menghapuskan kelemahan model pembangunan Waterfall. Alternatif kepada "air terjun" ialah kaedah Scrum, yang akan dibincangkan sekarang.

Scrum mendapat namanya pada tahun 1986 daripada karya Takeuchi dan Nonaki The New Rules for New Product Development. Dokumen ini berhujah bahawa cara paling berkesan untuk mencapai matlamat adalah untuk memberi pemaju pelan tindakan yang jelas.

Pada tahun 1995, panduan lain, "Pembangunan Perisian dengan Scrum," oleh Sutherland dan Schweiber, muncul. Penerbitan ini telah dikemas kini beberapa kali. Kini ia dianggap sebagai panduan utama untuk pembangunan kaedah ini. Versi semasa Panduan Scrum mengandungi maklumat yang dikemas kini pada 2020.

Peruntukan utama Panduan Scrum mencadangkan bahawa templat pengurusan projek harus berdasarkan fakta bahawa pembangun menyampaikan produk siap dalam tempoh masa yang dipersetujui - sprint. Untuk kejayaan pelaksanaan Scrum, adalah disyorkan untuk menggunakan struktur yang terdiri daripada beberapa elemen: peranan, peristiwa, peraturan dan artifak.

Peranan dalam Scrum

Terdapat tiga peranan dalam Scrum, semuanya membentuk pasukan Scrum:

Pelanggan produk perisian adalah orang yang paling penting dalam projek itu, kerana hanya dia yang memahami sepenuhnya nilainya kepada perniagaan. Pelanggan menerangkan keperluan pengguna produk masa depan kepada pembangun, tetapi dia tidak bertanggungjawab untuk bahagian teknikal proses pembangunan. Pelanggan juga menentukan keutamaan apabila mencipta elemen atau fungsi tertentu dalam produk.

Pembangun diamanahkan dengan pelaksanaan tugas teknikal, kefungsian silang bergantung pada skop aplikasi. Pembangun sibuk membuat tunggakan pecut, menulis kod, menyesuaikan projek dengan matlamat pecut dan tugas lain.

Scrum Master ialah fasilitator pasukan Scrum. Ia menyediakan bantuan kepada pelanggan dan pemaju. Ringkasnya, Scrum Master sibuk berkomunikasi antara mereka yang tidak terlibat dalam projek itu dan orang yang menulis kod. Kadangkala kumpulan pengkod yang berbeza dalam syarikat besar yang sama berkomunikasi dan menyelaras pada mesyuarat agung ahli scrum pasukan ini.

Acara dalam Scrum

Terdapat 5 jenis acara scrum:

Sprint adalah bahagian paling penting dalam Scrum. Ia termasuk perancangan pecut, pendirian harian (scrum harian), semakan dan retrospektif pecut.

Perancangan pecut. Semua ahli pasukan Scrum mengambil bahagian dalam merangka rancangan untuk pecut masa hadapan. Di sinilah idea produk dibentangkan dan setiap ahli pasukan boleh menyatakan pendapat mereka, apa yang dia fikirkan tentang perkara ini. Kemudian pada mesyuarat itu, keutamaan ditentukan dan tarikh akhir diumumkan.

Daily Scrum ialah acara scrum pendek harian, berlangsung tidak lebih daripada 15 minit. Biasanya ia dilakukan untuk merancang kerja pengekod untuk hari ini atau esok. Di Scrum Harian, anda boleh membincangkan isu semasa. Semua pemaju yang terlibat dalam projek itu diwajibkan menyertai bengkel tersebut. Kehadiran Master Scrum dibenarkan, tetapi tidak diperlukan.

Semakan Pecut (Demo) - Tunjukkan hasil yang dibuat semasa pecut. Biasanya acara ini berlaku pada peringkat akhir. Semua orang yang berminat mengambil bahagian di dalamnya.

Sprint Retrospective - perbincangan tentang keputusan larian pecut. Ahli pasukan berkongsi pendapat mereka tentang cara mereka menghadapi tugasan yang diberikan kepada mereka dan cara meningkatkan hasil kerja pada masa hadapan.

Di samping itu, penapisan tunggakan kadangkala dijalankan - Penapisan Tunggakan. Ia membincangkan item tertunggak, persediaan untuk pecut seterusnya, dan mengutamakan tugas semasa.

Artifak

Artifak scrum ialah kerja yang berlaku pada akhir projek atau pecut. Terdapat tiga artifak - tunggakan produk, tunggakan pecut, dan kenaikan. Setiap daripada mereka diperlukan untuk penghantaran perisian tepat pada masanya kepada pengguna. Terdapat juga artifak tambahan (carta bakar dan banyak lagi).

Komponen yang termasuk dalam artifak pecut:

Tunggakan produk - antara muka dan ciri hujung belakang.

Tunggakan pecut ialah senarai tugasan yang perlu dilakukan semasa lelaran. Mereka dipersetujui sebelum bermulanya larian pecut.

Kenaikan - Jumlah bilangan item tunggakan perisian yang dibuat semasa pecut dan nilai kenaikan yang dibuat sebelum itu. Kenaikan baharu yang telah siap mesti ditunjukkan sebelum tamat larian pecut. Ini bermakna anda mempunyai versi berfungsi yang memenuhi keperluan pasukan scrum.

Item tunggakan produk - ia mesti dilengkapkan semasa lelaran pecut. Sebagai peraturan, elemen dibahagikan kepada beberapa tugas kecil.

Matlamat pecut ialah tugasan yang perlu diselesaikan (buat item tunggakan atau tugas lain).

Burndown pecut ialah kerja yang ditinggalkan sebelum tamat pecut. Carta terbakar adalah sama ada menaik atau menurun. Semuanya bergantung kepada kesukaran yang dihadapi oleh ahli pasukan semasa bekerja. Ia bukan penunjuk kemajuan, tetapi hanya satu cara untuk menyelesaikan masalah dan insentif.

Keluaran Produk/Carta Pembakaran Produk ialah carta yang dilukis oleh Scrum Master sebelum tamat pecut seterusnya. Paksi mendatar ialah pecut, paksi menegak ialah jumlah kerja yang tinggal.

Peraturan rangka kerja scrum

Peranan, peristiwa dan artifak adalah asas Scrum, tetapi terdapat peraturan lain selain ini. Kesemuanya meningkatkan kecekapan proses kerja. Berikut ialah senarai peraturan tersebut:

  • Pasukan scrum termasuk pelanggan perisian, master scrum dan pembangun.
  • Semua larian pecut hendaklah sama panjang.
  • Selepas menyelesaikan satu pecut, kerja pada yang baharu serta-merta bermula.
  • Pecut sentiasa bermula dengan rancangan.
  • Ahli pasukan mempunyai scrum pagi pada permulaan hari kerja mereka.
  • Setiap pecut disemak semasa setiap pecut. Ini meningkatkan komunikasi antara pasukan dan pihak berkepentingan.
  • Ia tidak disyorkan untuk menukar tunggakan pecut semasa pecut.

Had dalam Scrum

Bersama-sama dengan kelebihan yang jelas, Scrum juga mempunyai kelemahan:

  • Scrum sering menyebabkan pengurangan dalam jumlah kerja yang dilakukan kerana kekurangan tarikh akhir yang sama.
  • Dengan penglibatan yang rendah atau keengganan untuk bekerjasama di kalangan peserta projek, terdapat peluang yang besar untuk gagal hasilnya.
  • Struktur scrum sukar digunakan dalam pasukan besar, tetapi masih boleh dilakukan. Terdapat rangka kerja penskalaan untuk ini: LeSS, SAFe, Nexus dan lain-lain.
  • Pemergian seorang atau lebih ahli daripada pasukan di tengah-tengah projek tidak menjejaskan projek dengan baik.