SCRUM: Si Populer dalam Pengembangan Software
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:
-
- Membuat dan mengatur product backlog,
- Berkaitan erat dengan bisnis dan tim untuk memastikan semua orang memahami tiap pekerjaan dalam product backlog,
- Memberikan panduan yang jelas kepada tim tentang fitur mana yang akan dikirimkan,
- 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.
- Product Backlog
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:
-
- Sprint Planning
Meeting di awal setiap periode sprint di mana tim merencanakan semua pekerjaan yang akan diselesaikan. - Daily Scrum
Meeting singkat yang diadakan setiap hari untuk sinkronisasi pekerjaan antar tim. - Sprint Review
Meeting yang diadakan di akhir periode sprint untuk mendemonstrasikan pekerjaan yang sudah diselesaikan pada stakeholders dan menerima feedback. - Sprint Retrospective
Meeting yang diadakan di akhir periode sprint untuk refleksi kinerja tim dan perbaikan ke depannya. - The Sprint
Sprint merupakan suatu work-cycle dengan periode berbatas waktu yang mana tim harus menyelesaikan pekerjaan yang sudah direncanakan.
- Sprint Planning
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
- Daulay, M. S. 2007. Mengenal Hardware-Software dan Pengelolaan Instalasi Komputer.
- Harris, Chandler. Agile scrum artifacts. https://www.atlassian.com/agile/scrum/artifacts. Diakses pada 2 April 2023.
- Scrum.org. What is Scrum? https://www.scrum.org/learning-series/what-is-scrum. Diakses pada 2 April 2023.
- Kneafsey, Simon. The Five Scrum Events”. https://www.thescrummaster.co.uk/scrum/the-five-scrum-events. Diakses pada 2 April 2023.
Penulis: Mahasiswa S-1 Informatika UII
- Asista Ainun Jannatin
- Hanuga Fathur Chaerulisma
- Ihwan Dwi Rizky Fitriawan
[/FA]