SCRUM: Si Populer dalam Pengembangan Software

Gambar ini dibuat oleh picsart.com menggunakan teknologi AI

Software atau perangkat lunak adalah suatu perangkat yang digunakan untuk mengatur aktivitas kerja komputer. Dalam pengembangan software, kata scrum dan agile sering kali terdengar. Scrum merupakan metode, sedangkan agile merupakan metodologi dalam pengembangan perangkat lunak. Agile digunakan untuk mengembangkan software dengan siklus yang pendek, berulang, dan secara aktif melibatkan pengguna untuk selalu berkolaborasi secara terstruktur dan terorganisir. Scrum dapat membuat tim untuk aktif dalam mengelola kebutuhan pengembangan software. Secara singkat, scrum merupakan kerangka kerja untuk menerapkan agile.

Pada saat ini, scrum menjadi metode yang digemari dalam mengembangkan perangkat lunak karena fleksibilitasnya. Pengembangan perangkat lunak sering kali menjadi proyek dengan skala yang kompleks. Dengan scrum, proyek yang kompleks akan dibagi menjadi bagian yang lebih kecil sehingga mudah untuk dikembangkan. Scrum juga mempermudah proses pivot dalam pengembangan perangkat lunak.

Tim scrum memiliki peran masing-masing dalam menjalankan tugasnya. Secara spesifik, tim scrum membutuhkan tiga peran:

1. Product Owner

Product owner berfokus pada pemahaman bisnis, customer, dan permintaan pasar. Mereka memprioritaskan pekerjaan yang harus diselesaikan oleh tim engineering. Product owner berperan dalam:

    1. Membuat dan mengatur product backlog,
    2. Berkaitan erat dengan bisnis dan tim untuk memastikan semua orang memahami tiap pekerjaan dalam product backlog,
    3. Memberikan panduan yang jelas kepada tim tentang fitur mana yang akan dikirimkan,
    4. Memutuskan kapan produk dikirimkan.

2. Development Team

Dalam tim pengembangan terdapat lima hingga sembilan orang. Beberapa orang ini memiliki perannya masing-masing untuk menjaga efektivitas pekerjaan.

3. Scrum Master

Seorang scrum master biasanya melatih tim, product owner, dan bisnis dalam proses scrum, serta mencari cara untuk menyempurnakan pekerjaan mereka. Mereka memiliki otoritas dan kebebasan untuk menentukan cara penyelesaian terbaik dalam mencapai tujuan.

Scrum adalah framework agile yang terdiri dari beberapa komponen penting untuk mengembangkan software. Berikut ini merupakan beberapa komponen penting dalam scrum:

1. Scrum artifacts

Scrum artifacts merupakan informasi kunci yang mendefinisikan pekerjaan yang harus diselesaikan. Singkatnya, scrum artifacts dapat dilihat sebagai panduan untuk product development plan. Berikut merupakan contoh artifacts yang ada dalam framework scrum:

    • Product Backlog
      Product backlog merupakan suatu daftar pekerjaan yang dibutuhkan untuk memenuhi requirement dari potential customer. Daftar ini diambil dari roadmap dan persyaratannya. Isi daftar ini biasanya diurutkan berdasarkan skala prioritas.
    • Sprint Backlog
      Sprint backlog merupakan daftar pekerjaan yang diambil dari product backlog. Sprint backlog dikerjakan dalam satu periode sprint. Sprint backlog umumnya bersifat fleksibel dan berkembang selama sprint.

2. Sprint

 Sprint merupakan suatu work-cycle berisi beberapa pekerjaan yang harus diselesaikan dalam periode waktu yang telah ditentukan. Sprint adalah inti dari metodologi scrum, apabila tim dapat menjalankan sprint secara tepat maka hasil pekerjaan juga akan meningkat.

 3. Demo Doc

Demo doc merupakan suatu dokumen yang menguraikan langkah-langkah dan skenario untuk didemonstrasikan selama meeting sprint. Demo doc berfungsi sebagai panduan bagi tim untuk menampilkan kemajuan dan pencapaian mereka kepada para stakeholder, termasuk product owner dan pihak berkepentingan lainnya. Demo doc berisi segala informasi mengenai fitur yang diselesaikan selama sprint, setiap perubahan atau peningkatan yang dilakukan pada produk, dan bagaimana fitur baru cocok dengan visi dan tujuan produk.

 4. Retrospective Doc

Retrospective doc adalah rekaman refleksi tim terhadap sprint yang sudah diselesaikan. Dokumen ini dibuat ketika rapat retrospektif sprint, dan biasanya berisi tentang informasi apa saja yang berjalan baik selama sprint, apa yang bisa dilakukan dengan baik, dan tindakan yang akan diambil tim untuk meningkatkan kinerja mereka di sprint mendatang.

5. Scrum Events

Scrum events adalah event berbatas waktu yang merupakan bagian dari framework scrum. Events ini bertujuan untuk membantu tim scrum bekerja sama secara efektif dan efisien. Ada lima events dalam framework scrum, yaitu:

    1. Sprint Planning
      Meeting di awal setiap periode sprint di mana tim merencanakan semua pekerjaan yang akan diselesaikan.
    2. Daily Scrum
      Meeting singkat yang diadakan setiap hari untuk sinkronisasi pekerjaan antar tim.
    3. Sprint Review
      Meeting yang diadakan di akhir periode sprint untuk mendemonstrasikan pekerjaan yang sudah diselesaikan pada stakeholders dan menerima feedback.
    4. Sprint Retrospective
      Meeting yang diadakan di akhir periode sprint untuk refleksi kinerja tim dan perbaikan ke depannya.
    5. The Sprint
      Sprint merupakan suatu work-cycle dengan periode berbatas waktu yang mana tim harus menyelesaikan pekerjaan yang sudah direncanakan.

Scrum menjadi metode yang populer untuk menerapkan agile. Fleksibilitas menjadi daya tarik untuk menerapkan scrum dalam pengembangan perangkat lunak. Scrum menjadi metode yang powerful untuk mengembangkan proyek dengan skala yang kompleks dan berkembang. Scrum perlu dipelajari dan dipahami sebagai upaya penilaian kelayakan pada penerapan terhadap proyek-proyek tertentu.

Referensi

Penulis: Mahasiswa S-1 Informatika UII

  • Asista Ainun Jannatin
  • Hanuga Fathur Chaerulisma
  • Ihwan Dwi Rizky Fitriawan

[/FA]