- Bab 6 dari 9
- 25 menit
- 5 soal kuis
Model Iteratif, Spiral, dan Agile dengan Scrum
Di bab ini (8 bagian)
Tujuan bab ini
- Membedakan pendekatan iteratif dan inkremental.
- Menjelaskan model Spiral dan fokusnya pada analisis risiko.
- Memahami empat nilai Agile Manifesto.
- Mengenal alur, acara, dan peran dalam kerangka Scrum.
Ketika Kebutuhan Tidak Bisa Dipastikan di Awal
Waterfall dan V-Model bekerja baik kalau kebutuhan sudah jelas. Tapi bagaimana kalau pengguna sendiri belum tahu persis apa yang mereka mau? Atau produknya terlalu besar untuk dibangun sekaligus? Di sinilah model-model berikut berperan. Semuanya punya kesamaan: pekerjaan dibagi menjadi putaran-putaran, dan produk tumbuh di setiap putaran.
Model Iteratif dan Inkremental
Pada model ini, sistem dibangun bertahap dalam beberapa siklus kecil. Produk tumbuh di setiap iterasi: iterasi 1, iterasi 2, iterasi 3, dan seterusnya.
Dua kata dalam nama model ini punya arti berbeda:
- Iteratif: mengulang siklus untuk menyempurnakan. Fitur yang sama diperbaiki di setiap putaran.
- Inkremental: menambah potongan fungsi di setiap putaran.
Analogi melukis membantu di sini. Pelukis iteratif membuat sketsa kasar seluruh gambar, lalu menebalkan, lalu memberi warna. Pelukis inkremental menyelesaikan bagian langit dulu, lalu gunung, lalu sawah. Dalam praktik, kedua cara sering digabung.
Skenario: Kas Kelas Secara Iteratif
- Iterasi 1: catat iuran dan lihat saldo, dengan tampilan sederhana. Bendahara langsung mencoba dan memberi masukan.
- Iterasi 2: tampilan dirapikan berdasarkan masukan (iteratif), dan fitur daftar siswa yang belum bayar ditambahkan (inkremental).
- Iterasi 3: laporan bulanan yang bisa dicetak ditambahkan.
Keuntungannya, versi awal cepat tersedia untuk diberi masukan. Model ini cocok untuk produk besar dengan prioritas fitur, karena fitur paling penting bisa dikerjakan lebih dulu.
Model Spiral
Model Spiral diperkenalkan oleh Barry Boehm (1986). Setiap putaran melewati empat kuadran, dan semakin keluar spiralnya, semakin matang produknya.
Ciri utama Spiral:
- Berorientasi pada analisis risiko. Manajemen risiko ditempatkan di pusat setiap putaran.
- Menggabungkan prototyping dan Waterfall. Ada prototipe untuk menguji ide, dan ada tahapan terstruktur untuk membangun.
- Cocok untuk proyek besar berisiko tinggi.
Bayangkan setiap putaran spiral dimulai dengan pertanyaan: "Apa risiko terbesar saat ini, dan bagaimana menguranginya?" Kalau risikonya adalah "kita tidak yakin teknologi ini sanggup menangani ribuan pengguna", putaran itu difokuskan membuat prototipe untuk membuktikannya. Kalau risikonya sudah turun, putaran berikutnya membangun bagian yang lebih matang.
Untuk aplikasi kas kelas, Spiral terlalu berat karena risikonya kecil. Spiral lebih masuk akal untuk proyek seperti sistem pembayaran nasional, di mana risiko teknis dan biaya sangat tinggi.
Agile: Empat Nilai Utama
Agile lahir dari Agile Manifesto (2001). Manifesto ini menyebut empat nilai. Hal di kiri lebih diutamakan, meski hal di kanan tetap bernilai.
| Lebih diutamakan | lebih dari | Tetap bernilai |
|---|---|---|
| Individu dan interaksi | lebih dari | Proses dan alat |
| Software yang berfungsi | lebih dari | Dokumentasi menyeluruh |
| Kolaborasi dengan pelanggan | lebih dari | Negosiasi kontrak |
| Merespons perubahan | lebih dari | Mengikuti rencana |
Bagian yang paling sering disalahpahami: Agile tidak berarti dokumentasi atau rencana tidak penting. Prioritasnya saja yang berbeda. Tim Agile tetap membuat rencana, tetapi siap mengubahnya kalau keadaan berubah. Tim Agile tetap menulis dokumentasi, tetapi lebih mengutamakan software yang benar-benar berjalan.
Agile dengan Kerangka Scrum
Scrum adalah kerangka Agile paling populer, dengan rujukan resmi Scrum Guide 2020. Alternatif lain yang juga termasuk Agile adalah Kanban dan Extreme Programming (XP).
Alur Scrum
- Product Backlog: daftar semua pekerjaan yang diinginkan, diurutkan berdasarkan prioritas.
- Sprint Planning: tim memilih pekerjaan dari backlog untuk sprint ini.
- Sprint: periode kerja selama 1 sampai 4 minggu. Setiap hari ada Daily Scrum selama 15 menit.
- Sprint Review: hasil sprint ditunjukkan ke pemangku kepentingan.
- Retrospective: tim mengevaluasi cara kerjanya sendiri dan mencari perbaikan.
Setiap sprint menghasilkan Increment, yaitu potongan produk yang siap dipakai.
Tiga Peran Scrum
| Peran | Tugas |
|---|---|
| Product Owner | Mengelola dan memprioritaskan backlog demi nilai bisnis |
| Scrum Master | Memfasilitasi proses dan menghilangkan hambatan tim |
| Developers | Tim lintas fungsi yang membangun increment |
Perhatikan bahwa Scrum Master bukan "bos" tim. Tugasnya memfasilitasi dan menyingkirkan hambatan. Yang menentukan prioritas backlog adalah Product Owner.
Skenario: Kas Kelas dengan Scrum
Bendahara berperan sebagai Product Owner karena paling paham kebutuhan. Product backlog-nya:
Sprint pertama berlangsung 2 minggu. Di akhir sprint, tim menunjukkan increment ke bendahara di sprint review. Lalu di retrospective, tim sadar mereka sering terlambat karena menunggu desain tampilan, sehingga sprint berikutnya desainer ikut sejak sprint planning.
Kesalahan Umum
- Menyamakan iteratif dan inkremental. Iteratif menyempurnakan, inkremental menambah potongan fungsi.
- Mengira Agile berarti tanpa rencana dan tanpa dokumen. Manifesto menyebut hal di kanan tetap bernilai.
- Menganggap Scrum Master sebagai atasan. Perannya fasilitator, sedangkan prioritas dipegang Product Owner.
- Memakai Spiral untuk proyek kecil berisiko rendah. Analisis risiko di setiap putaran menjadi beban yang tidak perlu.
Rangkuman
- Model iteratif dan inkremental membangun sistem bertahap dalam siklus kecil, dengan versi awal cepat tersedia untuk masukan.
- Spiral (Barry Boehm, 1986) berorientasi pada analisis risiko dan cocok untuk proyek besar berisiko tinggi.
- Agile Manifesto (2001) punya empat nilai yang mengutamakan hal di kiri tanpa membuang hal di kanan.
- Scrum berjalan dari product backlog, sprint planning, sprint 1 sampai 4 minggu dengan daily scrum 15 menit, sprint review, dan retrospective.
- Peran Scrum: Product Owner, Scrum Master, dan Developers, dan setiap sprint menghasilkan increment.
Slide 18 sampai 20 dari deck Software Development Life Cycle (SDLC). Penjelasan lengkapnya ada di mode Baca.

Selesaikan bab ini
- 1. Baca materi
- 2. Kuis (5 soal)
Cek pemahaman
1Model SDLC yang menempatkan analisis risiko di pusat setiap putaran adalah...
2Peran Scrum yang mengelola dan memprioritaskan backlog adalah...
3Menurut Agile Manifesto, dokumentasi tidak bernilai sama sekali.
4Durasi sprint dalam Scrum menurut materi adalah...
5Iteratif berarti menambah potongan fungsi baru di setiap putaran.