CS 319 · Pertemuan 4 dari 10
Spec-driven development sebagai pipeline bergerbang — dan deliverable khas sang mandor.
Agenda · 100 menit
Bacaan: bab 8–9
Konsep inti · bab 8
tiap panah adalah artefak markdown · tiap gerbang adalah keputusan manusia (GitHub Spec Kit · BMAD · konsensus lapangan)
Pekerjaan manusia di tiap gerbang
Verifikasi dan kritik — bukan persetujuan pasif. Tanyakan: apa yang terlewat fase ini? Apa yang ambigu? Apa yang akan saya test?
Fase yang dilewati tim
Specify. Terasa lambat, dan melewatinya terasa efisien — sampai Plan mengarang requirement dan Implement mengirimnya dengan penuh keyakinan.
Konsep inti · bab 9
1 · PRD
Apa dan mengapa, untuk manusia. Satu-satunya dokumen yang dibaca stakeholder sampai tuntas.
2 · Arsitektur Sistem
Service, batasan, aliran data. Tempat debat dewan hidup.
3 · Kontrak API
Endpoint, skema, error. Dokumen paling penopang — lewatkan ini dan semua tim hilir patah.
4 · Skema Database
Tabel, migrasi, constraint. Perubahan merambat ke API + task.
5 · Struktur UI
Layar, state, kasus kosong/error. Yang benar-benar dialami pengguna.
6 · Task Breakdown
Item kerja terurut berukuran-agen tempat semua di atas dikompilasi.
Referensi-silang: skema berubah → kontrak API berubah → task berubah. Enam dokumen adalah satu artefak dengan enam tampilan. Mereka adalah bukti dewan sudah melakukan tugasnya.
Contoh · satu fitur, enam tampilan (ringkas)
PRD merchant bisa mengajukan refund invoice terbayar ≤ 30 hari
ARSITEKTUR service baru refunds, bicara ke invoicing + payments, async via queue
API POST /refunds · GET /refunds/{id} · webhook refund.status_changed
400 bad_request · 409 already_refunded · 422 window_expired
SKEMA refunds(id, invoice_id, amount, status[pending|approved|paid|rejected],
reason, created_at) + status_history(refund_id, from, to, at, actor)
UI RequestRefundScreen: nominal terisi, validasi ≤ live,
state: idle / confirming / submitted / done | error(window)
TASKS 1 migrasi 2 core service 3 endpoint 4 webhook 5 UI 6 test e2e
Enam puluh menit total, oleh satu mandor + dewan. Tidak sempurna — referensi-silang dan jujur. Perhatikan error API (409, 422) sudah meng-encode aturan 30 hari dari PRD.
Mode kegagalan · bab 9
Jalankan eksperimen pikiran dampak-perubahan: hapus tiap dokumen malam sebelum implementasi.
Aturan: kontrak adalah dokumen yang tak pernah Anda lewatkan. Ia juga yang bisa dicek secara mekanis oleh verifier Anda (validasi skema).
Studi kasus · bagian 4 dari 10
Menjalankan alur kerja lengkap (Describe → Council Debates → Consensus → Execute) pertama kali untuk fitur refund. Dewan beranggotakan empat (PM, Arsitek, Backend, Data) menghasilkan enam dokumen dalam satu sesi malam.
Lalu verifier membuktikan nilainya: skema spesialis Data memakai amount integer rupiah; kontrak lead Backend bilang desimal. Cek skema deterministik menangkapnya — ketidakcocokan yang akan muncul sebagai bug pembulatan produksi di kolom mata uang. Nol perasaan terlibat.
Kutipan retro: "Dokumen-dokumennya berdebat sehingga kami tidak perlu."
Sprint dokumen · 25 menit · di kelas
Fitur Anda
"Group-split: bagi satu invoice ke beberapa pembayar."
Langkah
Debrief: siapa yang memilih kontrak API? Pertahankan dua pilihan Anda masing-masing satu kalimat.
Tugas A4 · dikumpulkan sebelum Pertemuan 5
Tugas
Ambil ide greenfield (project sampingan, alat organisasi mahasiswa, atau kembangkan Kirana). Hasilkan keenam dokumen — satu jam masing-masing, batas keras. Agen boleh mengetik; Anda meninjau tiap baris.
Deliverable
Enam dokumen (boleh pendek — wajib referensi-silang) · peta referensi-silang (dokumen mana berubah saat tiap dokumen lain berubah) · hole-hunt: satu kontradiksi ditemukan dan diperbaiki, terdokumentasi.
Rubrik
Integritas referensi-silang 40% · ketelitian kontrak API 25% · kejujuran log waktu 15% · hole-hunt 20%.
Berikutnya: pola orkestrasi dan disiplin verifier — bagaimana loop tahu kapan berhenti. Baca bab 10–11.