# Presentasi: Katalog Buku Lokal Python · SMA · Lanjutan · Sesi 32 · 60 menit Proyek: Katalog Buku Lokal ## 1. Presentasi: Katalog Buku Lokal · 3 menit SMA · Lanjutan, sesi 32; proyek Katalog Buku Lokal, sesi 17–32. VS Code, Python 3, ekstensi Python dan Python Debugger dari Microsoft. Buka seluruh folder hasil ekstraksi, pilih Python: Select Interpreter, lalu Terminal → New Terminal. Jalankan python latihan.py 0 untuk A dan python latihan.py 1 untuk B; gunakan py/python3 bila sesuai interpreter perangkat. Contoh diuji dengan CPython 3.12.14. Pasang breakpoint pada perubahan value, F5 untuk debug, F10 untuk Step Over. Screenshot VS Code memakai Output dari eksekusi helper; praktik siswa memakai terminal terintegrasi atau Run Python File. Jika Tkinter diperlukan, uji python -m tkinter pada interpreter yang sama. Pembungkus lab dan support.py disediakan mentor, bukan materi prasyarat awal. Siswa memisahkan logika, parsing/penyimpanan, dan tampilan; tentukan kontrak data serta kasus gagal. Gunakan pertanyaan sebelum memberi solusi. Prasyarat jalur: Dapat menulis fungsi yang terpisah dari GUI, memakai callback Tkinter sederhana, mengelola list/dictionary, memvalidasi input, dan menyimpan JSON. Audit awal mendahului CSV, SQL, serta pengujian otomatis. Dukungan: Siswa mencatat keputusan, memisahkan tanggung jawab fungsi, dan menguji kasus baru. Pemula tetap dimulai dari dasar; Lanjutan memakai brief mandiri, bukti uji, serta revisi pengguna. [Kebijakan belajar] Siswa menentukan solusi dari brief, menyusun kasus uji, dan menjelaskan keputusan. Mentor memberi petunjuk bertahap. Jangan habiskan satu jam untuk mengenalkan nama fitur. Gunakan sisa waktu untuk masalah kecil, penelusuran hasil, dan variasi mandiri; jika siswa belum siap, ulangi contoh minimum. Gunakan struktur folder sumber/data/uji, coba .venv pada salinan proyek melalui interpreter VS Code, serta simpan riwayat perubahan sederhana (versi bernama atau Git lokal terbimbing). Tetap gunakan pustaka standar; instal paket bukan prasyarat. Minimum proyek: Katalog terminal dengan ID buku, pencarian, ubah, hapus, serta database SQLite lokal. Pengayaan: Setelah hasil minimum lolos, buat satu variasi aturan atau data pada proyek Katalog Buku Lokal dan bandingkan hasilnya; jangan menambah banyak fitur sekaligus. Transfer: Mentor mengubah satu aturan atau data pada Katalog Buku Lokal. Siswa memprediksi akibat, memilih bagian yang perlu diubah, dan menyusun satu uji baru. [Estimasi tugas] Jenis: Presentasi karya · 60 menit. Estimasi awal; perlu validasi mentor di kelas Alur: Pembuka dan cek bekal 5 menit → Konsep dan demo 3 menit → Persiapan sumber 2 menit → Demonstrasi siswa 24 menit → Pertanyaan dan umpan balik 21 menit → Simpan, refleksi dan cadangan waktu 5 menit Titik awal: Lanjutkan berkas latihan/proyek yang sudah disimpan; contoh mentor adalah acuan, bukan hasil siswa. Minimum: Uji data baru dari penguji Penguji menambah judul berapostrof serta meminta ubah ID yang tidak ada; data valid harus tetap utuh dan hasil dapat dijelaskan. Kerjakan perubahan di Visual Studio Code (VS Code); serahkan sumber .py dan folder proyek, README, data sintetis, serta tabel hasil uji, unittest, database latihan, dan laporan sesuai proyek, dan catatan uji. Bukti pemahaman: Tunjukkan satu bagian yang dibuat sendiri, satu keputusan dan satu perbaikan; jawab satu pertanyaan menggunakan sumber karya. Pengayaan: Pilih satu masukan yang berguna, revisi bagian terkait dan tunjukkan hasil uji ulang; tidak perlu menambah fitur baru. Blok demonstrasi kelas: 19–24 menit. Blok seluruh giliran demonstrasi kelas; bukan waktu bicara per siswa. Umpan balik mempunyai slot terpisah. Jika hasil minimum dan probe sudah terbukti, lanjut ke pengayaan atau refleksi; tidak perlu menghabiskan jatah waktu. Jika belum, kurangi variasi dan catat penguatan. Presentasi bergiliran: 4 menit/siswa; kapasitas rencana 4 siswa, 4 menit pergantian. Grup 1–4 siswa: gunakan sisa blok untuk latihan penjelasan atau pertanyaan singkat; tidak perlu memperpanjang bicara demi mengisi waktu. Private menggunakan varian tersendiri. Varian private (satu siswa): Pembuka dan cek bekal 5 menit → Konsep dan demo 3 menit → Persiapan sumber 2 menit → Demonstrasi siswa 15 menit → Pertanyaan dan umpan balik 30 menit → Simpan, refleksi dan cadangan waktu 5 menit. Blok 15 menit: sekitar 5 menit demonstrasi dan 10 menit penjelasan/probe; 30 menit uji, masukan dan revisi. Catat uji kelas: jumlah siswa, menit aktual, bantuan, hasil minimum, hasil probe dan penguatan berikutnya. Slot slide ini 3 menit di dalam alur sesi, bukan tambahan. ## 2. Hari ini kita dapat… · 2 menit SMA · Lanjutan, sesi 32; proyek Katalog Buku Lokal, sesi 17–32. VS Code, Python 3, ekstensi Python dan Python Debugger dari Microsoft. Buka seluruh folder hasil ekstraksi, pilih Python: Select Interpreter, lalu Terminal → New Terminal. Jalankan python latihan.py 0 untuk A dan python latihan.py 1 untuk B; gunakan py/python3 bila sesuai interpreter perangkat. Contoh diuji dengan CPython 3.12.14. Pasang breakpoint pada perubahan value, F5 untuk debug, F10 untuk Step Over. Screenshot VS Code memakai Output dari eksekusi helper; praktik siswa memakai terminal terintegrasi atau Run Python File. Jika Tkinter diperlukan, uji python -m tkinter pada interpreter yang sama. Pembungkus lab dan support.py disediakan mentor, bukan materi prasyarat awal. Siswa memisahkan logika, parsing/penyimpanan, dan tampilan; tentukan kontrak data serta kasus gagal. Gunakan pertanyaan sebelum memberi solusi. Prasyarat jalur: Dapat menulis fungsi yang terpisah dari GUI, memakai callback Tkinter sederhana, mengelola list/dictionary, memvalidasi input, dan menyimpan JSON. Audit awal mendahului CSV, SQL, serta pengujian otomatis. Dukungan: Siswa mencatat keputusan, memisahkan tanggung jawab fungsi, dan menguji kasus baru. Pemula tetap dimulai dari dasar; Lanjutan memakai brief mandiri, bukti uji, serta revisi pengguna.Target kurikulum: Mampu menjelaskan dan menerapkan presentasi katalog Target khusus: Mampu menjelaskan dan menerapkan presentasi katalog [Kebijakan belajar] Siswa menentukan solusi dari brief, menyusun kasus uji, dan menjelaskan keputusan. Mentor memberi petunjuk bertahap. Jangan habiskan satu jam untuk mengenalkan nama fitur. Gunakan sisa waktu untuk masalah kecil, penelusuran hasil, dan variasi mandiri; jika siswa belum siap, ulangi contoh minimum. Gunakan struktur folder sumber/data/uji, coba .venv pada salinan proyek melalui interpreter VS Code, serta simpan riwayat perubahan sederhana (versi bernama atau Git lokal terbimbing). Tetap gunakan pustaka standar; instal paket bukan prasyarat. Minimum proyek: Katalog terminal dengan ID buku, pencarian, ubah, hapus, serta database SQLite lokal. Pengayaan: Setelah hasil minimum lolos, buat satu variasi aturan atau data pada proyek Katalog Buku Lokal dan bandingkan hasilnya; jangan menambah banyak fitur sekaligus. Transfer: Mentor mengubah satu aturan atau data pada Katalog Buku Lokal. Siswa memprediksi akibat, memilih bagian yang perlu diubah, dan menyusun satu uji baru. [Estimasi tugas] Jenis: Presentasi karya · 60 menit. Estimasi awal; perlu validasi mentor di kelas Alur: Pembuka dan cek bekal 5 menit → Konsep dan demo 3 menit → Persiapan sumber 2 menit → Demonstrasi siswa 24 menit → Pertanyaan dan umpan balik 21 menit → Simpan, refleksi dan cadangan waktu 5 menit Titik awal: Lanjutkan berkas latihan/proyek yang sudah disimpan; contoh mentor adalah acuan, bukan hasil siswa. Minimum: Uji data baru dari penguji Penguji menambah judul berapostrof serta meminta ubah ID yang tidak ada; data valid harus tetap utuh dan hasil dapat dijelaskan. Kerjakan perubahan di Visual Studio Code (VS Code); serahkan sumber .py dan folder proyek, README, data sintetis, serta tabel hasil uji, unittest, database latihan, dan laporan sesuai proyek, dan catatan uji. Bukti pemahaman: Tunjukkan satu bagian yang dibuat sendiri, satu keputusan dan satu perbaikan; jawab satu pertanyaan menggunakan sumber karya. Pengayaan: Pilih satu masukan yang berguna, revisi bagian terkait dan tunjukkan hasil uji ulang; tidak perlu menambah fitur baru. Blok demonstrasi kelas: 19–24 menit. Blok seluruh giliran demonstrasi kelas; bukan waktu bicara per siswa. Umpan balik mempunyai slot terpisah. Jika hasil minimum dan probe sudah terbukti, lanjut ke pengayaan atau refleksi; tidak perlu menghabiskan jatah waktu. Jika belum, kurangi variasi dan catat penguatan. Presentasi bergiliran: 4 menit/siswa; kapasitas rencana 4 siswa, 4 menit pergantian. Grup 1–4 siswa: gunakan sisa blok untuk latihan penjelasan atau pertanyaan singkat; tidak perlu memperpanjang bicara demi mengisi waktu. Private menggunakan varian tersendiri. Varian private (satu siswa): Pembuka dan cek bekal 5 menit → Konsep dan demo 3 menit → Persiapan sumber 2 menit → Demonstrasi siswa 15 menit → Pertanyaan dan umpan balik 30 menit → Simpan, refleksi dan cadangan waktu 5 menit. Blok 15 menit: sekitar 5 menit demonstrasi dan 10 menit penjelasan/probe; 30 menit uji, masukan dan revisi. Catat uji kelas: jumlah siswa, menit aktual, bantuan, hasil minimum, hasil probe dan penguatan berikutnya. Slot slide ini 2 menit di dalam alur sesi, bukan tambahan. Menyelesaikan tugas inti: Presentasi: Katalog Buku Lokal. Mencoba satu perubahan dan menjelaskan hasilnya. Menunjukkan bagian yang dikerjakan sendiri. ## 3. Pahami konsepnya · 3 menit SMA · Lanjutan, sesi 32; proyek Katalog Buku Lokal, sesi 17–32. VS Code, Python 3, ekstensi Python dan Python Debugger dari Microsoft. Buka seluruh folder hasil ekstraksi, pilih Python: Select Interpreter, lalu Terminal → New Terminal. Jalankan python latihan.py 0 untuk A dan python latihan.py 1 untuk B; gunakan py/python3 bila sesuai interpreter perangkat. Contoh diuji dengan CPython 3.12.14. Pasang breakpoint pada perubahan value, F5 untuk debug, F10 untuk Step Over. Screenshot VS Code memakai Output dari eksekusi helper; praktik siswa memakai terminal terintegrasi atau Run Python File. Jika Tkinter diperlukan, uji python -m tkinter pada interpreter yang sama. Pembungkus lab dan support.py disediakan mentor, bukan materi prasyarat awal. Siswa memisahkan logika, parsing/penyimpanan, dan tampilan; tentukan kontrak data serta kasus gagal. Gunakan pertanyaan sebelum memberi solusi. Prasyarat jalur: Dapat menulis fungsi yang terpisah dari GUI, memakai callback Tkinter sederhana, mengelola list/dictionary, memvalidasi input, dan menyimpan JSON. Audit awal mendahului CSV, SQL, serta pengujian otomatis. Dukungan: Siswa mencatat keputusan, memisahkan tanggung jawab fungsi, dan menguji kasus baru. Pemula tetap dimulai dari dasar; Lanjutan memakai brief mandiri, bukti uji, serta revisi pengguna. Brief baru menguji apostrof dan ID tidak ada. SQL berparameter menjaga data sebagai nilai, bukan bagian perintah. [Kebijakan belajar] Siswa menentukan solusi dari brief, menyusun kasus uji, dan menjelaskan keputusan. Mentor memberi petunjuk bertahap. Jangan habiskan satu jam untuk mengenalkan nama fitur. Gunakan sisa waktu untuk masalah kecil, penelusuran hasil, dan variasi mandiri; jika siswa belum siap, ulangi contoh minimum. Gunakan struktur folder sumber/data/uji, coba .venv pada salinan proyek melalui interpreter VS Code, serta simpan riwayat perubahan sederhana (versi bernama atau Git lokal terbimbing). Tetap gunakan pustaka standar; instal paket bukan prasyarat. Minimum proyek: Katalog terminal dengan ID buku, pencarian, ubah, hapus, serta database SQLite lokal. Pengayaan: Setelah hasil minimum lolos, buat satu variasi aturan atau data pada proyek Katalog Buku Lokal dan bandingkan hasilnya; jangan menambah banyak fitur sekaligus. Transfer: Mentor mengubah satu aturan atau data pada Katalog Buku Lokal. Siswa memprediksi akibat, memilih bagian yang perlu diubah, dan menyusun satu uji baru. [Estimasi tugas] Jenis: Presentasi karya · 60 menit. Estimasi awal; perlu validasi mentor di kelas Alur: Pembuka dan cek bekal 5 menit → Konsep dan demo 3 menit → Persiapan sumber 2 menit → Demonstrasi siswa 24 menit → Pertanyaan dan umpan balik 21 menit → Simpan, refleksi dan cadangan waktu 5 menit Titik awal: Lanjutkan berkas latihan/proyek yang sudah disimpan; contoh mentor adalah acuan, bukan hasil siswa. Minimum: Uji data baru dari penguji Penguji menambah judul berapostrof serta meminta ubah ID yang tidak ada; data valid harus tetap utuh dan hasil dapat dijelaskan. Kerjakan perubahan di Visual Studio Code (VS Code); serahkan sumber .py dan folder proyek, README, data sintetis, serta tabel hasil uji, unittest, database latihan, dan laporan sesuai proyek, dan catatan uji. Bukti pemahaman: Tunjukkan satu bagian yang dibuat sendiri, satu keputusan dan satu perbaikan; jawab satu pertanyaan menggunakan sumber karya. Pengayaan: Pilih satu masukan yang berguna, revisi bagian terkait dan tunjukkan hasil uji ulang; tidak perlu menambah fitur baru. Blok demonstrasi kelas: 19–24 menit. Blok seluruh giliran demonstrasi kelas; bukan waktu bicara per siswa. Umpan balik mempunyai slot terpisah. Jika hasil minimum dan probe sudah terbukti, lanjut ke pengayaan atau refleksi; tidak perlu menghabiskan jatah waktu. Jika belum, kurangi variasi dan catat penguatan. Presentasi bergiliran: 4 menit/siswa; kapasitas rencana 4 siswa, 4 menit pergantian. Grup 1–4 siswa: gunakan sisa blok untuk latihan penjelasan atau pertanyaan singkat; tidak perlu memperpanjang bicara demi mengisi waktu. Private menggunakan varian tersendiri. Varian private (satu siswa): Pembuka dan cek bekal 5 menit → Konsep dan demo 3 menit → Persiapan sumber 2 menit → Demonstrasi siswa 15 menit → Pertanyaan dan umpan balik 30 menit → Simpan, refleksi dan cadangan waktu 5 menit. Blok 15 menit: sekitar 5 menit demonstrasi dan 10 menit penjelasan/probe; 30 menit uji, masukan dan revisi. Catat uji kelas: jumlah siswa, menit aktual, bantuan, hasil minimum, hasil probe dan penguatan berikutnya. Slot slide ini 3 menit di dalam alur sesi, bukan tambahan. Brief baru menguji apostrof dan ID tidak ada. SQL berparameter menjaga data sebagai nilai, bukan bagian perintah. ## 4. Telusuri kode sebelum menjalankan · 0 menit SMA · Lanjutan, sesi 32; proyek Katalog Buku Lokal, sesi 17–32. VS Code, Python 3, ekstensi Python dan Python Debugger dari Microsoft. Buka seluruh folder hasil ekstraksi, pilih Python: Select Interpreter, lalu Terminal → New Terminal. Jalankan python latihan.py 0 untuk A dan python latihan.py 1 untuk B; gunakan py/python3 bila sesuai interpreter perangkat. Contoh diuji dengan CPython 3.12.14. Pasang breakpoint pada perubahan value, F5 untuk debug, F10 untuk Step Over. Screenshot VS Code memakai Output dari eksekusi helper; praktik siswa memakai terminal terintegrasi atau Run Python File. Jika Tkinter diperlukan, uji python -m tkinter pada interpreter yang sama. Pembungkus lab dan support.py disediakan mentor, bukan materi prasyarat awal. Siswa memisahkan logika, parsing/penyimpanan, dan tampilan; tentukan kontrak data serta kasus gagal. Gunakan pertanyaan sebelum memberi solusi. Prasyarat jalur: Dapat menulis fungsi yang terpisah dari GUI, memakai callback Tkinter sederhana, mengelola list/dictionary, memvalidasi input, dan menyimpan JSON. Audit awal mendahului CSV, SQL, serta pengujian otomatis. Dukungan: Siswa mencatat keputusan, memisahkan tanggung jawab fungsi, dan menguji kasus baru. Pemula tetap dimulai dari dasar; Lanjutan memakai brief mandiri, bukti uji, serta revisi pengguna.variant memilih kasus 0 atau 1. value menjadi hasil aktual; expected adalah oracle pada pembungkus uji. Fokus pada bagian KONSEP. Helper dan mock disediakan agar input serta widget dapat diuji berulang. Prediksi kasus A: ["Ayu's",0]; B: ["Bima's",0]. Jangan tampilkan jawaban sebelum siswa memprediksi. [Kebijakan belajar] Siswa menentukan solusi dari brief, menyusun kasus uji, dan menjelaskan keputusan. Mentor memberi petunjuk bertahap. Jangan habiskan satu jam untuk mengenalkan nama fitur. Gunakan sisa waktu untuk masalah kecil, penelusuran hasil, dan variasi mandiri; jika siswa belum siap, ulangi contoh minimum. Gunakan struktur folder sumber/data/uji, coba .venv pada salinan proyek melalui interpreter VS Code, serta simpan riwayat perubahan sederhana (versi bernama atau Git lokal terbimbing). Tetap gunakan pustaka standar; instal paket bukan prasyarat. Minimum proyek: Katalog terminal dengan ID buku, pencarian, ubah, hapus, serta database SQLite lokal. Pengayaan: Setelah hasil minimum lolos, buat satu variasi aturan atau data pada proyek Katalog Buku Lokal dan bandingkan hasilnya; jangan menambah banyak fitur sekaligus. Transfer: Mentor mengubah satu aturan atau data pada Katalog Buku Lokal. Siswa memprediksi akibat, memilih bagian yang perlu diubah, dan menyusun satu uji baru. [Estimasi tugas] Jenis: Presentasi karya · 60 menit. Estimasi awal; perlu validasi mentor di kelas Alur: Pembuka dan cek bekal 5 menit → Konsep dan demo 3 menit → Persiapan sumber 2 menit → Demonstrasi siswa 24 menit → Pertanyaan dan umpan balik 21 menit → Simpan, refleksi dan cadangan waktu 5 menit Titik awal: Lanjutkan berkas latihan/proyek yang sudah disimpan; contoh mentor adalah acuan, bukan hasil siswa. Minimum: Uji data baru dari penguji Penguji menambah judul berapostrof serta meminta ubah ID yang tidak ada; data valid harus tetap utuh dan hasil dapat dijelaskan. Kerjakan perubahan di Visual Studio Code (VS Code); serahkan sumber .py dan folder proyek, README, data sintetis, serta tabel hasil uji, unittest, database latihan, dan laporan sesuai proyek, dan catatan uji. Bukti pemahaman: Tunjukkan satu bagian yang dibuat sendiri, satu keputusan dan satu perbaikan; jawab satu pertanyaan menggunakan sumber karya. Pengayaan: Pilih satu masukan yang berguna, revisi bagian terkait dan tunjukkan hasil uji ulang; tidak perlu menambah fitur baru. Blok demonstrasi kelas: 19–24 menit. Blok seluruh giliran demonstrasi kelas; bukan waktu bicara per siswa. Umpan balik mempunyai slot terpisah. Jika hasil minimum dan probe sudah terbukti, lanjut ke pengayaan atau refleksi; tidak perlu menghabiskan jatah waktu. Jika belum, kurangi variasi dan catat penguatan. Presentasi bergiliran: 4 menit/siswa; kapasitas rencana 4 siswa, 4 menit pergantian. Grup 1–4 siswa: gunakan sisa blok untuk latihan penjelasan atau pertanyaan singkat; tidak perlu memperpanjang bicara demi mengisi waktu. Private menggunakan varian tersendiri. Varian private (satu siswa): Pembuka dan cek bekal 5 menit → Konsep dan demo 3 menit → Persiapan sumber 2 menit → Demonstrasi siswa 15 menit → Pertanyaan dan umpan balik 30 menit → Simpan, refleksi dan cadangan waktu 5 menit. Blok 15 menit: sekitar 5 menit demonstrasi dan 10 menit penjelasan/probe; 30 menit uji, masukan dan revisi. Catat uji kelas: jumlah siswa, menit aktual, bantuan, hasil minimum, hasil probe dan penguatan berikutnya. Slide acuan opsional; tidak perlu dipresentasikan ulang. ## 5. Siapkan lab dan proyekmu · 2 menit SMA · Lanjutan, sesi 32; proyek Katalog Buku Lokal, sesi 17–32. VS Code, Python 3, ekstensi Python dan Python Debugger dari Microsoft. Buka seluruh folder hasil ekstraksi, pilih Python: Select Interpreter, lalu Terminal → New Terminal. Jalankan python latihan.py 0 untuk A dan python latihan.py 1 untuk B; gunakan py/python3 bila sesuai interpreter perangkat. Contoh diuji dengan CPython 3.12.14. Pasang breakpoint pada perubahan value, F5 untuk debug, F10 untuk Step Over. Screenshot VS Code memakai Output dari eksekusi helper; praktik siswa memakai terminal terintegrasi atau Run Python File. Jika Tkinter diperlukan, uji python -m tkinter pada interpreter yang sama. Pembungkus lab dan support.py disediakan mentor, bukan materi prasyarat awal. Siswa memisahkan logika, parsing/penyimpanan, dan tampilan; tentukan kontrak data serta kasus gagal. Gunakan pertanyaan sebelum memberi solusi. Prasyarat jalur: Dapat menulis fungsi yang terpisah dari GUI, memakai callback Tkinter sederhana, mengelola list/dictionary, memvalidasi input, dan menyimpan JSON. Audit awal mendahului CSV, SQL, serta pengujian otomatis. Dukungan: Siswa mencatat keputusan, memisahkan tanggung jawab fungsi, dan menguji kasus baru. Pemula tetap dimulai dari dasar; Lanjutan memakai brief mandiri, bukti uji, serta revisi pengguna. VS Code, Python 3, ekstensi Python dan Python Debugger dari Microsoft. Buka seluruh folder hasil ekstraksi, pilih Python: Select Interpreter, lalu Terminal → New Terminal. Jalankan python latihan.py 0 untuk A dan python latihan.py 1 untuk B; gunakan py/python3 bila sesuai interpreter perangkat. Contoh diuji dengan CPython 3.12.14. Pasang breakpoint pada perubahan value, F5 untuk debug, F10 untuk Step Over. Screenshot VS Code memakai Output dari eksekusi helper; praktik siswa memakai terminal terintegrasi atau Run Python File. Jika Tkinter diperlukan, uji python -m tkinter pada interpreter yang sama. Pembungkus lab dan support.py disediakan mentor, bukan materi prasyarat awal. [Kebijakan belajar] Siswa menentukan solusi dari brief, menyusun kasus uji, dan menjelaskan keputusan. Mentor memberi petunjuk bertahap. Jangan habiskan satu jam untuk mengenalkan nama fitur. Gunakan sisa waktu untuk masalah kecil, penelusuran hasil, dan variasi mandiri; jika siswa belum siap, ulangi contoh minimum. Gunakan struktur folder sumber/data/uji, coba .venv pada salinan proyek melalui interpreter VS Code, serta simpan riwayat perubahan sederhana (versi bernama atau Git lokal terbimbing). Tetap gunakan pustaka standar; instal paket bukan prasyarat. Minimum proyek: Katalog terminal dengan ID buku, pencarian, ubah, hapus, serta database SQLite lokal. Pengayaan: Setelah hasil minimum lolos, buat satu variasi aturan atau data pada proyek Katalog Buku Lokal dan bandingkan hasilnya; jangan menambah banyak fitur sekaligus. Transfer: Mentor mengubah satu aturan atau data pada Katalog Buku Lokal. Siswa memprediksi akibat, memilih bagian yang perlu diubah, dan menyusun satu uji baru. [Estimasi tugas] Jenis: Presentasi karya · 60 menit. Estimasi awal; perlu validasi mentor di kelas Alur: Pembuka dan cek bekal 5 menit → Konsep dan demo 3 menit → Persiapan sumber 2 menit → Demonstrasi siswa 24 menit → Pertanyaan dan umpan balik 21 menit → Simpan, refleksi dan cadangan waktu 5 menit Titik awal: Lanjutkan berkas latihan/proyek yang sudah disimpan; contoh mentor adalah acuan, bukan hasil siswa. Minimum: Uji data baru dari penguji Penguji menambah judul berapostrof serta meminta ubah ID yang tidak ada; data valid harus tetap utuh dan hasil dapat dijelaskan. Kerjakan perubahan di Visual Studio Code (VS Code); serahkan sumber .py dan folder proyek, README, data sintetis, serta tabel hasil uji, unittest, database latihan, dan laporan sesuai proyek, dan catatan uji. Bukti pemahaman: Tunjukkan satu bagian yang dibuat sendiri, satu keputusan dan satu perbaikan; jawab satu pertanyaan menggunakan sumber karya. Pengayaan: Pilih satu masukan yang berguna, revisi bagian terkait dan tunjukkan hasil uji ulang; tidak perlu menambah fitur baru. Blok demonstrasi kelas: 19–24 menit. Blok seluruh giliran demonstrasi kelas; bukan waktu bicara per siswa. Umpan balik mempunyai slot terpisah. Jika hasil minimum dan probe sudah terbukti, lanjut ke pengayaan atau refleksi; tidak perlu menghabiskan jatah waktu. Jika belum, kurangi variasi dan catat penguatan. Presentasi bergiliran: 4 menit/siswa; kapasitas rencana 4 siswa, 4 menit pergantian. Grup 1–4 siswa: gunakan sisa blok untuk latihan penjelasan atau pertanyaan singkat; tidak perlu memperpanjang bicara demi mengisi waktu. Private menggunakan varian tersendiri. Varian private (satu siswa): Pembuka dan cek bekal 5 menit → Konsep dan demo 3 menit → Persiapan sumber 2 menit → Demonstrasi siswa 15 menit → Pertanyaan dan umpan balik 30 menit → Simpan, refleksi dan cadangan waktu 5 menit. Blok 15 menit: sekitar 5 menit demonstrasi dan 10 menit penjelasan/probe; 30 menit uji, masukan dan revisi. Catat uji kelas: jumlah siswa, menit aktual, bantuan, hasil minimum, hasil probe dan penguatan berikutnya. Slot slide ini 2 menit di dalam alur sesi, bukan tambahan. Ekstrak ZIP, lalu Open Folder di VS Code. Pilih interpreter; buka terminal terintegrasi. Jalankan python latihan.py 0 atau 1. ## 6. Acuan: Katalog Buku Lokal · 0 menit SMA · Lanjutan, sesi 32; proyek Katalog Buku Lokal, sesi 17–32. VS Code, Python 3, ekstensi Python dan Python Debugger dari Microsoft. Buka seluruh folder hasil ekstraksi, pilih Python: Select Interpreter, lalu Terminal → New Terminal. Jalankan python latihan.py 0 untuk A dan python latihan.py 1 untuk B; gunakan py/python3 bila sesuai interpreter perangkat. Contoh diuji dengan CPython 3.12.14. Pasang breakpoint pada perubahan value, F5 untuk debug, F10 untuk Step Over. Screenshot VS Code memakai Output dari eksekusi helper; praktik siswa memakai terminal terintegrasi atau Run Python File. Jika Tkinter diperlukan, uji python -m tkinter pada interpreter yang sama. Pembungkus lab dan support.py disediakan mentor, bukan materi prasyarat awal. Siswa memisahkan logika, parsing/penyimpanan, dan tampilan; tentukan kontrak data serta kasus gagal. Gunakan pertanyaan sebelum memberi solusi. Prasyarat jalur: Dapat menulis fungsi yang terpisah dari GUI, memakai callback Tkinter sederhana, mengelola list/dictionary, memvalidasi input, dan menyimpan JSON. Audit awal mendahului CSV, SQL, serta pengujian otomatis. Dukungan: Siswa mencatat keputusan, memisahkan tanggung jawab fungsi, dan menguji kasus baru. Pemula tetap dimulai dari dasar; Lanjutan memakai brief mandiri, bukti uji, serta revisi pengguna.Contoh proyek: Katalog terminal dengan ID buku, pencarian, ubah, hapus, serta database SQLite lokal. Baca README untuk cakupan dan perintah. Untuk aplikasi berjendela, screenshot berasal dari HWND Tk milik contoh; untuk terminal, screenshot menunjukkan lab sesi terkait, bukan layar aplikasi GUI. Demo proyek menjalankan assertion konsep inti. [Kebijakan belajar] Siswa menentukan solusi dari brief, menyusun kasus uji, dan menjelaskan keputusan. Mentor memberi petunjuk bertahap. Jangan habiskan satu jam untuk mengenalkan nama fitur. Gunakan sisa waktu untuk masalah kecil, penelusuran hasil, dan variasi mandiri; jika siswa belum siap, ulangi contoh minimum. Gunakan struktur folder sumber/data/uji, coba .venv pada salinan proyek melalui interpreter VS Code, serta simpan riwayat perubahan sederhana (versi bernama atau Git lokal terbimbing). Tetap gunakan pustaka standar; instal paket bukan prasyarat. Minimum proyek: Katalog terminal dengan ID buku, pencarian, ubah, hapus, serta database SQLite lokal. Pengayaan: Setelah hasil minimum lolos, buat satu variasi aturan atau data pada proyek Katalog Buku Lokal dan bandingkan hasilnya; jangan menambah banyak fitur sekaligus. Transfer: Mentor mengubah satu aturan atau data pada Katalog Buku Lokal. Siswa memprediksi akibat, memilih bagian yang perlu diubah, dan menyusun satu uji baru. [Estimasi tugas] Jenis: Presentasi karya · 60 menit. Estimasi awal; perlu validasi mentor di kelas Alur: Pembuka dan cek bekal 5 menit → Konsep dan demo 3 menit → Persiapan sumber 2 menit → Demonstrasi siswa 24 menit → Pertanyaan dan umpan balik 21 menit → Simpan, refleksi dan cadangan waktu 5 menit Titik awal: Lanjutkan berkas latihan/proyek yang sudah disimpan; contoh mentor adalah acuan, bukan hasil siswa. Minimum: Uji data baru dari penguji Penguji menambah judul berapostrof serta meminta ubah ID yang tidak ada; data valid harus tetap utuh dan hasil dapat dijelaskan. Kerjakan perubahan di Visual Studio Code (VS Code); serahkan sumber .py dan folder proyek, README, data sintetis, serta tabel hasil uji, unittest, database latihan, dan laporan sesuai proyek, dan catatan uji. Bukti pemahaman: Tunjukkan satu bagian yang dibuat sendiri, satu keputusan dan satu perbaikan; jawab satu pertanyaan menggunakan sumber karya. Pengayaan: Pilih satu masukan yang berguna, revisi bagian terkait dan tunjukkan hasil uji ulang; tidak perlu menambah fitur baru. Blok demonstrasi kelas: 19–24 menit. Blok seluruh giliran demonstrasi kelas; bukan waktu bicara per siswa. Umpan balik mempunyai slot terpisah. Jika hasil minimum dan probe sudah terbukti, lanjut ke pengayaan atau refleksi; tidak perlu menghabiskan jatah waktu. Jika belum, kurangi variasi dan catat penguatan. Presentasi bergiliran: 4 menit/siswa; kapasitas rencana 4 siswa, 4 menit pergantian. Grup 1–4 siswa: gunakan sisa blok untuk latihan penjelasan atau pertanyaan singkat; tidak perlu memperpanjang bicara demi mengisi waktu. Private menggunakan varian tersendiri. Varian private (satu siswa): Pembuka dan cek bekal 5 menit → Konsep dan demo 3 menit → Persiapan sumber 2 menit → Demonstrasi siswa 15 menit → Pertanyaan dan umpan balik 30 menit → Simpan, refleksi dan cadangan waktu 5 menit. Blok 15 menit: sekitar 5 menit demonstrasi dan 10 menit penjelasan/probe; 30 menit uji, masukan dan revisi. Catat uji kelas: jumlah siswa, menit aktual, bantuan, hasil minimum, hasil probe dan penguatan berikutnya. Slide acuan opsional; tidak perlu dipresentasikan ulang. Buka contoh proyek sebagai folder terpisah. Jalankan python demo.py terlebih dahulu. Terapkan tugas pada proyek siswa. ## 7. Praktik bersama mentor · 0 menit SMA · Lanjutan, sesi 32; proyek Katalog Buku Lokal, sesi 17–32. VS Code, Python 3, ekstensi Python dan Python Debugger dari Microsoft. Buka seluruh folder hasil ekstraksi, pilih Python: Select Interpreter, lalu Terminal → New Terminal. Jalankan python latihan.py 0 untuk A dan python latihan.py 1 untuk B; gunakan py/python3 bila sesuai interpreter perangkat. Contoh diuji dengan CPython 3.12.14. Pasang breakpoint pada perubahan value, F5 untuk debug, F10 untuk Step Over. Screenshot VS Code memakai Output dari eksekusi helper; praktik siswa memakai terminal terintegrasi atau Run Python File. Jika Tkinter diperlukan, uji python -m tkinter pada interpreter yang sama. Pembungkus lab dan support.py disediakan mentor, bukan materi prasyarat awal. Siswa memisahkan logika, parsing/penyimpanan, dan tampilan; tentukan kontrak data serta kasus gagal. Gunakan pertanyaan sebelum memberi solusi. Prasyarat jalur: Dapat menulis fungsi yang terpisah dari GUI, memakai callback Tkinter sederhana, mengelola list/dictionary, memvalidasi input, dan menyimpan JSON. Audit awal mendahului CSV, SQL, serta pengujian otomatis. Dukungan: Siswa mencatat keputusan, memisahkan tanggung jawab fungsi, dan menguji kasus baru. Pemula tetap dimulai dari dasar; Lanjutan memakai brief mandiri, bukti uji, serta revisi pengguna.Demo kurikulum: Di VS Code, peragakan contoh minimum untuk Uji data baru dari penguji. Minta prediksi sebelum menjalankan dan bandingkan dengan siswa menjelaskan parameter serta commit Tugas rinci: Uji data baru dari penguji Siswa memisahkan logika, parsing/penyimpanan, dan tampilan; tentukan kontrak data serta kasus gagal. Gunakan pertanyaan sebelum memberi solusi. [Kebijakan belajar] Siswa menentukan solusi dari brief, menyusun kasus uji, dan menjelaskan keputusan. Mentor memberi petunjuk bertahap. Jangan habiskan satu jam untuk mengenalkan nama fitur. Gunakan sisa waktu untuk masalah kecil, penelusuran hasil, dan variasi mandiri; jika siswa belum siap, ulangi contoh minimum. Gunakan struktur folder sumber/data/uji, coba .venv pada salinan proyek melalui interpreter VS Code, serta simpan riwayat perubahan sederhana (versi bernama atau Git lokal terbimbing). Tetap gunakan pustaka standar; instal paket bukan prasyarat. Minimum proyek: Katalog terminal dengan ID buku, pencarian, ubah, hapus, serta database SQLite lokal. Pengayaan: Setelah hasil minimum lolos, buat satu variasi aturan atau data pada proyek Katalog Buku Lokal dan bandingkan hasilnya; jangan menambah banyak fitur sekaligus. Transfer: Mentor mengubah satu aturan atau data pada Katalog Buku Lokal. Siswa memprediksi akibat, memilih bagian yang perlu diubah, dan menyusun satu uji baru. [Estimasi tugas] Jenis: Presentasi karya · 60 menit. Estimasi awal; perlu validasi mentor di kelas Alur: Pembuka dan cek bekal 5 menit → Konsep dan demo 3 menit → Persiapan sumber 2 menit → Demonstrasi siswa 24 menit → Pertanyaan dan umpan balik 21 menit → Simpan, refleksi dan cadangan waktu 5 menit Titik awal: Lanjutkan berkas latihan/proyek yang sudah disimpan; contoh mentor adalah acuan, bukan hasil siswa. Minimum: Uji data baru dari penguji Penguji menambah judul berapostrof serta meminta ubah ID yang tidak ada; data valid harus tetap utuh dan hasil dapat dijelaskan. Kerjakan perubahan di Visual Studio Code (VS Code); serahkan sumber .py dan folder proyek, README, data sintetis, serta tabel hasil uji, unittest, database latihan, dan laporan sesuai proyek, dan catatan uji. Bukti pemahaman: Tunjukkan satu bagian yang dibuat sendiri, satu keputusan dan satu perbaikan; jawab satu pertanyaan menggunakan sumber karya. Pengayaan: Pilih satu masukan yang berguna, revisi bagian terkait dan tunjukkan hasil uji ulang; tidak perlu menambah fitur baru. Blok demonstrasi kelas: 19–24 menit. Blok seluruh giliran demonstrasi kelas; bukan waktu bicara per siswa. Umpan balik mempunyai slot terpisah. Jika hasil minimum dan probe sudah terbukti, lanjut ke pengayaan atau refleksi; tidak perlu menghabiskan jatah waktu. Jika belum, kurangi variasi dan catat penguatan. Presentasi bergiliran: 4 menit/siswa; kapasitas rencana 4 siswa, 4 menit pergantian. Grup 1–4 siswa: gunakan sisa blok untuk latihan penjelasan atau pertanyaan singkat; tidak perlu memperpanjang bicara demi mengisi waktu. Private menggunakan varian tersendiri. Varian private (satu siswa): Pembuka dan cek bekal 5 menit → Konsep dan demo 3 menit → Persiapan sumber 2 menit → Demonstrasi siswa 15 menit → Pertanyaan dan umpan balik 30 menit → Simpan, refleksi dan cadangan waktu 5 menit. Blok 15 menit: sekitar 5 menit demonstrasi dan 10 menit penjelasan/probe; 30 menit uji, masukan dan revisi. Catat uji kelas: jumlah siswa, menit aktual, bantuan, hasil minimum, hasil probe dan penguatan berikutnya. Slide acuan opsional; tidak perlu dipresentasikan ulang. Siapkan sumber karya dan bukti revisi. Latih penjelasan singkat dengan teman. Tidak perlu merakit ulang contoh mentor. ## 8. Contoh pengerjaan: kasus A · 0 menit SMA · Lanjutan, sesi 32; proyek Katalog Buku Lokal, sesi 17–32. VS Code, Python 3, ekstensi Python dan Python Debugger dari Microsoft. Buka seluruh folder hasil ekstraksi, pilih Python: Select Interpreter, lalu Terminal → New Terminal. Jalankan python latihan.py 0 untuk A dan python latihan.py 1 untuk B; gunakan py/python3 bila sesuai interpreter perangkat. Contoh diuji dengan CPython 3.12.14. Pasang breakpoint pada perubahan value, F5 untuk debug, F10 untuk Step Over. Screenshot VS Code memakai Output dari eksekusi helper; praktik siswa memakai terminal terintegrasi atau Run Python File. Jika Tkinter diperlukan, uji python -m tkinter pada interpreter yang sama. Pembungkus lab dan support.py disediakan mentor, bukan materi prasyarat awal. Siswa memisahkan logika, parsing/penyimpanan, dan tampilan; tentukan kontrak data serta kasus gagal. Gunakan pertanyaan sebelum memberi solusi. Prasyarat jalur: Dapat menulis fungsi yang terpisah dari GUI, memakai callback Tkinter sederhana, mengelola list/dictionary, memvalidasi input, dan menyimpan JSON. Audit awal mendahului CSV, SQL, serta pengujian otomatis. Dukungan: Siswa mencatat keputusan, memisahkan tanggung jawab fungsi, dan menguji kasus baru. Pemula tetap dimulai dari dasar; Lanjutan memakai brief mandiri, bukti uji, serta revisi pengguna.Hasil awal yang diuji di Python: ["Ayu's",0]. Cocokkan angka, tipe, dan satuan. Screenshot menunjukkan satu kasus komponen saja. [Kebijakan belajar] Siswa menentukan solusi dari brief, menyusun kasus uji, dan menjelaskan keputusan. Mentor memberi petunjuk bertahap. Jangan habiskan satu jam untuk mengenalkan nama fitur. Gunakan sisa waktu untuk masalah kecil, penelusuran hasil, dan variasi mandiri; jika siswa belum siap, ulangi contoh minimum. Gunakan struktur folder sumber/data/uji, coba .venv pada salinan proyek melalui interpreter VS Code, serta simpan riwayat perubahan sederhana (versi bernama atau Git lokal terbimbing). Tetap gunakan pustaka standar; instal paket bukan prasyarat. Minimum proyek: Katalog terminal dengan ID buku, pencarian, ubah, hapus, serta database SQLite lokal. Pengayaan: Setelah hasil minimum lolos, buat satu variasi aturan atau data pada proyek Katalog Buku Lokal dan bandingkan hasilnya; jangan menambah banyak fitur sekaligus. Transfer: Mentor mengubah satu aturan atau data pada Katalog Buku Lokal. Siswa memprediksi akibat, memilih bagian yang perlu diubah, dan menyusun satu uji baru. [Estimasi tugas] Jenis: Presentasi karya · 60 menit. Estimasi awal; perlu validasi mentor di kelas Alur: Pembuka dan cek bekal 5 menit → Konsep dan demo 3 menit → Persiapan sumber 2 menit → Demonstrasi siswa 24 menit → Pertanyaan dan umpan balik 21 menit → Simpan, refleksi dan cadangan waktu 5 menit Titik awal: Lanjutkan berkas latihan/proyek yang sudah disimpan; contoh mentor adalah acuan, bukan hasil siswa. Minimum: Uji data baru dari penguji Penguji menambah judul berapostrof serta meminta ubah ID yang tidak ada; data valid harus tetap utuh dan hasil dapat dijelaskan. Kerjakan perubahan di Visual Studio Code (VS Code); serahkan sumber .py dan folder proyek, README, data sintetis, serta tabel hasil uji, unittest, database latihan, dan laporan sesuai proyek, dan catatan uji. Bukti pemahaman: Tunjukkan satu bagian yang dibuat sendiri, satu keputusan dan satu perbaikan; jawab satu pertanyaan menggunakan sumber karya. Pengayaan: Pilih satu masukan yang berguna, revisi bagian terkait dan tunjukkan hasil uji ulang; tidak perlu menambah fitur baru. Blok demonstrasi kelas: 19–24 menit. Blok seluruh giliran demonstrasi kelas; bukan waktu bicara per siswa. Umpan balik mempunyai slot terpisah. Jika hasil minimum dan probe sudah terbukti, lanjut ke pengayaan atau refleksi; tidak perlu menghabiskan jatah waktu. Jika belum, kurangi variasi dan catat penguatan. Presentasi bergiliran: 4 menit/siswa; kapasitas rencana 4 siswa, 4 menit pergantian. Grup 1–4 siswa: gunakan sisa blok untuk latihan penjelasan atau pertanyaan singkat; tidak perlu memperpanjang bicara demi mengisi waktu. Private menggunakan varian tersendiri. Varian private (satu siswa): Pembuka dan cek bekal 5 menit → Konsep dan demo 3 menit → Persiapan sumber 2 menit → Demonstrasi siswa 15 menit → Pertanyaan dan umpan balik 30 menit → Simpan, refleksi dan cadangan waktu 5 menit. Blok 15 menit: sekitar 5 menit demonstrasi dan 10 menit penjelasan/probe; 30 menit uji, masukan dan revisi. Catat uji kelas: jumlah siswa, menit aktual, bantuan, hasil minimum, hasil probe dan penguatan berikutnya. Slide acuan opsional; tidak perlu dipresentasikan ulang. Input memakai variant 0. Bandingkan hasil dengan prediksimu. Klik gambar untuk membaca detail. ## 9. Presentasikan karya · 24 menit · 24 menit SMA · Lanjutan, sesi 32; proyek Katalog Buku Lokal, sesi 17–32. VS Code, Python 3, ekstensi Python dan Python Debugger dari Microsoft. Buka seluruh folder hasil ekstraksi, pilih Python: Select Interpreter, lalu Terminal → New Terminal. Jalankan python latihan.py 0 untuk A dan python latihan.py 1 untuk B; gunakan py/python3 bila sesuai interpreter perangkat. Contoh diuji dengan CPython 3.12.14. Pasang breakpoint pada perubahan value, F5 untuk debug, F10 untuk Step Over. Screenshot VS Code memakai Output dari eksekusi helper; praktik siswa memakai terminal terintegrasi atau Run Python File. Jika Tkinter diperlukan, uji python -m tkinter pada interpreter yang sama. Pembungkus lab dan support.py disediakan mentor, bukan materi prasyarat awal. Siswa memisahkan logika, parsing/penyimpanan, dan tampilan; tentukan kontrak data serta kasus gagal. Gunakan pertanyaan sebelum memberi solusi. Prasyarat jalur: Dapat menulis fungsi yang terpisah dari GUI, memakai callback Tkinter sederhana, mengelola list/dictionary, memvalidasi input, dan menyimpan JSON. Audit awal mendahului CSV, SQL, serta pengujian otomatis. Dukungan: Siswa mencatat keputusan, memisahkan tanggung jawab fungsi, dan menguji kasus baru. Pemula tetap dimulai dari dasar; Lanjutan memakai brief mandiri, bukti uji, serta revisi pengguna.Instruksi: Uji data baru dari penguji Rincian kurikulum: Uji data baru dari penguji Penguji menambah judul berapostrof serta meminta ubah ID yang tidak ada; data valid harus tetap utuh dan hasil dapat dijelaskan. Kerjakan perubahan di Visual Studio Code (VS Code); serahkan sumber .py dan folder proyek, README, data sintetis, serta tabel hasil uji, unittest, database latihan, dan laporan sesuai proyek, dan catatan uji. Keputusan siswa: Pilih respons ketika ID tidak ditemukan. Batas cakupan: 64 sesi × 1 jam; empat proyek: analisis CSV, katalog SQLite, inventaris dua tampilan, lalu perpustakaan mini. Data sintetis 10–30 entri; SQL berparameter, transaksi, unittest, dan laporan lokal. Tidak memerlukan server, login, atau distribusi .exe. Semua file dibuka sebagai satu folder proyek di VS Code dengan interpreter terpilih, terminal terintegrasi, serta debugger. Berkas bukti: python-sma-lanjutan-S32-kode-siswa. Jangan menyelesaikan tugas siswa; catat mandiri/petunjuk/bantuan. Hasil minimum: Uji data baru dari penguji Penguji menambah judul berapostrof serta meminta ubah ID yang tidak ada; data valid harus tetap utuh dan hasil dapat dijelaskan. Kerjakan perubahan di Visual Studio Code (VS Code); serahkan sumber .py dan folder proyek, README, data sintetis, serta tabel hasil uji, unittest, database latihan, dan laporan sesuai proyek, dan catatan uji. Pengayaan: Pilih satu masukan yang berguna, revisi bagian terkait dan tunjukkan hasil uji ulang; tidak perlu menambah fitur baru. [Kebijakan belajar] Siswa menentukan solusi dari brief, menyusun kasus uji, dan menjelaskan keputusan. Mentor memberi petunjuk bertahap. Jangan habiskan satu jam untuk mengenalkan nama fitur. Gunakan sisa waktu untuk masalah kecil, penelusuran hasil, dan variasi mandiri; jika siswa belum siap, ulangi contoh minimum. Gunakan struktur folder sumber/data/uji, coba .venv pada salinan proyek melalui interpreter VS Code, serta simpan riwayat perubahan sederhana (versi bernama atau Git lokal terbimbing). Tetap gunakan pustaka standar; instal paket bukan prasyarat. Minimum proyek: Katalog terminal dengan ID buku, pencarian, ubah, hapus, serta database SQLite lokal. Pengayaan: Setelah hasil minimum lolos, buat satu variasi aturan atau data pada proyek Katalog Buku Lokal dan bandingkan hasilnya; jangan menambah banyak fitur sekaligus. Transfer: Mentor mengubah satu aturan atau data pada Katalog Buku Lokal. Siswa memprediksi akibat, memilih bagian yang perlu diubah, dan menyusun satu uji baru. [Estimasi tugas] Jenis: Presentasi karya · 60 menit. Estimasi awal; perlu validasi mentor di kelas Alur: Pembuka dan cek bekal 5 menit → Konsep dan demo 3 menit → Persiapan sumber 2 menit → Demonstrasi siswa 24 menit → Pertanyaan dan umpan balik 21 menit → Simpan, refleksi dan cadangan waktu 5 menit Titik awal: Lanjutkan berkas latihan/proyek yang sudah disimpan; contoh mentor adalah acuan, bukan hasil siswa. Minimum: Uji data baru dari penguji Penguji menambah judul berapostrof serta meminta ubah ID yang tidak ada; data valid harus tetap utuh dan hasil dapat dijelaskan. Kerjakan perubahan di Visual Studio Code (VS Code); serahkan sumber .py dan folder proyek, README, data sintetis, serta tabel hasil uji, unittest, database latihan, dan laporan sesuai proyek, dan catatan uji. Bukti pemahaman: Tunjukkan satu bagian yang dibuat sendiri, satu keputusan dan satu perbaikan; jawab satu pertanyaan menggunakan sumber karya. Pengayaan: Pilih satu masukan yang berguna, revisi bagian terkait dan tunjukkan hasil uji ulang; tidak perlu menambah fitur baru. Blok demonstrasi kelas: 19–24 menit. Blok seluruh giliran demonstrasi kelas; bukan waktu bicara per siswa. Umpan balik mempunyai slot terpisah. Jika hasil minimum dan probe sudah terbukti, lanjut ke pengayaan atau refleksi; tidak perlu menghabiskan jatah waktu. Jika belum, kurangi variasi dan catat penguatan. Presentasi bergiliran: 4 menit/siswa; kapasitas rencana 4 siswa, 4 menit pergantian. Grup 1–4 siswa: gunakan sisa blok untuk latihan penjelasan atau pertanyaan singkat; tidak perlu memperpanjang bicara demi mengisi waktu. Private menggunakan varian tersendiri. Varian private (satu siswa): Pembuka dan cek bekal 5 menit → Konsep dan demo 3 menit → Persiapan sumber 2 menit → Demonstrasi siswa 15 menit → Pertanyaan dan umpan balik 30 menit → Simpan, refleksi dan cadangan waktu 5 menit. Blok 15 menit: sekitar 5 menit demonstrasi dan 10 menit penjelasan/probe; 30 menit uji, masukan dan revisi. Catat uji kelas: jumlah siswa, menit aktual, bantuan, hasil minimum, hasil probe dan penguatan berikutnya. Slot slide ini 24 menit di dalam alur sesi, bukan tambahan. Uji data baru dari penguji Penguji menambah judul berapostrof serta meminta ubah ID yang tidak ada; data valid harus tetap utuh dan hasil dapat dijelaskan. Kerjakan perubahan di Visual Studio Code (VS Code); serahkan sumber .py dan folder proyek, README, data sintetis, serta tabel hasil uji, unittest, database latihan, dan laporan sesuai proyek, dan catatan uji. Jelaskan satu keputusan dan satu perbaikan. Jawab satu pertanyaan dengan menunjukkan bukti. ## 10. Bandingkan dengan kasus B · 0 menit SMA · Lanjutan, sesi 32; proyek Katalog Buku Lokal, sesi 17–32. VS Code, Python 3, ekstensi Python dan Python Debugger dari Microsoft. Buka seluruh folder hasil ekstraksi, pilih Python: Select Interpreter, lalu Terminal → New Terminal. Jalankan python latihan.py 0 untuk A dan python latihan.py 1 untuk B; gunakan py/python3 bila sesuai interpreter perangkat. Contoh diuji dengan CPython 3.12.14. Pasang breakpoint pada perubahan value, F5 untuk debug, F10 untuk Step Over. Screenshot VS Code memakai Output dari eksekusi helper; praktik siswa memakai terminal terintegrasi atau Run Python File. Jika Tkinter diperlukan, uji python -m tkinter pada interpreter yang sama. Pembungkus lab dan support.py disediakan mentor, bukan materi prasyarat awal. Siswa memisahkan logika, parsing/penyimpanan, dan tampilan; tentukan kontrak data serta kasus gagal. Gunakan pertanyaan sebelum memberi solusi. Prasyarat jalur: Dapat menulis fungsi yang terpisah dari GUI, memakai callback Tkinter sederhana, mengelola list/dictionary, memvalidasi input, dan menyimpan JSON. Audit awal mendahului CSV, SQL, serta pengujian otomatis. Dukungan: Siswa mencatat keputusan, memisahkan tanggung jawab fungsi, dan menguji kasus baru. Pemula tetap dimulai dari dasar; Lanjutan memakai brief mandiri, bukti uji, serta revisi pengguna.Hasil pembanding yang diuji di Python: ["Bima's",0]. Jika hasil A dan B sama, jelaskan sifat yang diuji, misalnya reset atau input berbeda yang sama-sama ditolak. Minta satu kasus baru dengan harapan buatan siswa. [Kebijakan belajar] Siswa menentukan solusi dari brief, menyusun kasus uji, dan menjelaskan keputusan. Mentor memberi petunjuk bertahap. Jangan habiskan satu jam untuk mengenalkan nama fitur. Gunakan sisa waktu untuk masalah kecil, penelusuran hasil, dan variasi mandiri; jika siswa belum siap, ulangi contoh minimum. Gunakan struktur folder sumber/data/uji, coba .venv pada salinan proyek melalui interpreter VS Code, serta simpan riwayat perubahan sederhana (versi bernama atau Git lokal terbimbing). Tetap gunakan pustaka standar; instal paket bukan prasyarat. Minimum proyek: Katalog terminal dengan ID buku, pencarian, ubah, hapus, serta database SQLite lokal. Pengayaan: Setelah hasil minimum lolos, buat satu variasi aturan atau data pada proyek Katalog Buku Lokal dan bandingkan hasilnya; jangan menambah banyak fitur sekaligus. Transfer: Mentor mengubah satu aturan atau data pada Katalog Buku Lokal. Siswa memprediksi akibat, memilih bagian yang perlu diubah, dan menyusun satu uji baru. [Estimasi tugas] Jenis: Presentasi karya · 60 menit. Estimasi awal; perlu validasi mentor di kelas Alur: Pembuka dan cek bekal 5 menit → Konsep dan demo 3 menit → Persiapan sumber 2 menit → Demonstrasi siswa 24 menit → Pertanyaan dan umpan balik 21 menit → Simpan, refleksi dan cadangan waktu 5 menit Titik awal: Lanjutkan berkas latihan/proyek yang sudah disimpan; contoh mentor adalah acuan, bukan hasil siswa. Minimum: Uji data baru dari penguji Penguji menambah judul berapostrof serta meminta ubah ID yang tidak ada; data valid harus tetap utuh dan hasil dapat dijelaskan. Kerjakan perubahan di Visual Studio Code (VS Code); serahkan sumber .py dan folder proyek, README, data sintetis, serta tabel hasil uji, unittest, database latihan, dan laporan sesuai proyek, dan catatan uji. Bukti pemahaman: Tunjukkan satu bagian yang dibuat sendiri, satu keputusan dan satu perbaikan; jawab satu pertanyaan menggunakan sumber karya. Pengayaan: Pilih satu masukan yang berguna, revisi bagian terkait dan tunjukkan hasil uji ulang; tidak perlu menambah fitur baru. Blok demonstrasi kelas: 19–24 menit. Blok seluruh giliran demonstrasi kelas; bukan waktu bicara per siswa. Umpan balik mempunyai slot terpisah. Jika hasil minimum dan probe sudah terbukti, lanjut ke pengayaan atau refleksi; tidak perlu menghabiskan jatah waktu. Jika belum, kurangi variasi dan catat penguatan. Presentasi bergiliran: 4 menit/siswa; kapasitas rencana 4 siswa, 4 menit pergantian. Grup 1–4 siswa: gunakan sisa blok untuk latihan penjelasan atau pertanyaan singkat; tidak perlu memperpanjang bicara demi mengisi waktu. Private menggunakan varian tersendiri. Varian private (satu siswa): Pembuka dan cek bekal 5 menit → Konsep dan demo 3 menit → Persiapan sumber 2 menit → Demonstrasi siswa 15 menit → Pertanyaan dan umpan balik 30 menit → Simpan, refleksi dan cadangan waktu 5 menit. Blok 15 menit: sekitar 5 menit demonstrasi dan 10 menit penjelasan/probe; 30 menit uji, masukan dan revisi. Catat uji kelas: jumlah siswa, menit aktual, bantuan, hasil minimum, hasil probe dan penguatan berikutnya. Slide acuan opsional; tidak perlu dipresentasikan ulang. Input kini memakai variant 1. Cari nilai yang berubah atau tetap. Jelaskan alasan hasilnya. ## 11. Uji dan perbaiki dengan bukti · 11 menit SMA · Lanjutan, sesi 32; proyek Katalog Buku Lokal, sesi 17–32. VS Code, Python 3, ekstensi Python dan Python Debugger dari Microsoft. Buka seluruh folder hasil ekstraksi, pilih Python: Select Interpreter, lalu Terminal → New Terminal. Jalankan python latihan.py 0 untuk A dan python latihan.py 1 untuk B; gunakan py/python3 bila sesuai interpreter perangkat. Contoh diuji dengan CPython 3.12.14. Pasang breakpoint pada perubahan value, F5 untuk debug, F10 untuk Step Over. Screenshot VS Code memakai Output dari eksekusi helper; praktik siswa memakai terminal terintegrasi atau Run Python File. Jika Tkinter diperlukan, uji python -m tkinter pada interpreter yang sama. Pembungkus lab dan support.py disediakan mentor, bukan materi prasyarat awal. Siswa memisahkan logika, parsing/penyimpanan, dan tampilan; tentukan kontrak data serta kasus gagal. Gunakan pertanyaan sebelum memberi solusi. Prasyarat jalur: Dapat menulis fungsi yang terpisah dari GUI, memakai callback Tkinter sederhana, mengelola list/dictionary, memvalidasi input, dan menyimpan JSON. Audit awal mendahului CSV, SQL, serta pengujian otomatis. Dukungan: Siswa mencatat keputusan, memisahkan tanggung jawab fungsi, dan menguji kasus baru. Pemula tetap dimulai dari dasar; Lanjutan memakai brief mandiri, bukti uji, serta revisi pengguna.Gangguan kurikulum: Test menghapus database kerja pengguna. Cek: Siswa menjelaskan parameter serta commit Script lab berisi kasus yang dapat diuji; error pembelajaran yang disengaja dijelaskan pada sesi. bug pada proyek siswa dianalisis terpisah. Ubah satu variabel, hindari mengubah expected hanya untuk membuat label hijau. [Kebijakan belajar] Siswa menentukan solusi dari brief, menyusun kasus uji, dan menjelaskan keputusan. Mentor memberi petunjuk bertahap. Jangan habiskan satu jam untuk mengenalkan nama fitur. Gunakan sisa waktu untuk masalah kecil, penelusuran hasil, dan variasi mandiri; jika siswa belum siap, ulangi contoh minimum. Gunakan struktur folder sumber/data/uji, coba .venv pada salinan proyek melalui interpreter VS Code, serta simpan riwayat perubahan sederhana (versi bernama atau Git lokal terbimbing). Tetap gunakan pustaka standar; instal paket bukan prasyarat. Minimum proyek: Katalog terminal dengan ID buku, pencarian, ubah, hapus, serta database SQLite lokal. Pengayaan: Setelah hasil minimum lolos, buat satu variasi aturan atau data pada proyek Katalog Buku Lokal dan bandingkan hasilnya; jangan menambah banyak fitur sekaligus. Transfer: Mentor mengubah satu aturan atau data pada Katalog Buku Lokal. Siswa memprediksi akibat, memilih bagian yang perlu diubah, dan menyusun satu uji baru. [Estimasi tugas] Jenis: Presentasi karya · 60 menit. Estimasi awal; perlu validasi mentor di kelas Alur: Pembuka dan cek bekal 5 menit → Konsep dan demo 3 menit → Persiapan sumber 2 menit → Demonstrasi siswa 24 menit → Pertanyaan dan umpan balik 21 menit → Simpan, refleksi dan cadangan waktu 5 menit Titik awal: Lanjutkan berkas latihan/proyek yang sudah disimpan; contoh mentor adalah acuan, bukan hasil siswa. Minimum: Uji data baru dari penguji Penguji menambah judul berapostrof serta meminta ubah ID yang tidak ada; data valid harus tetap utuh dan hasil dapat dijelaskan. Kerjakan perubahan di Visual Studio Code (VS Code); serahkan sumber .py dan folder proyek, README, data sintetis, serta tabel hasil uji, unittest, database latihan, dan laporan sesuai proyek, dan catatan uji. Bukti pemahaman: Tunjukkan satu bagian yang dibuat sendiri, satu keputusan dan satu perbaikan; jawab satu pertanyaan menggunakan sumber karya. Pengayaan: Pilih satu masukan yang berguna, revisi bagian terkait dan tunjukkan hasil uji ulang; tidak perlu menambah fitur baru. Blok demonstrasi kelas: 19–24 menit. Blok seluruh giliran demonstrasi kelas; bukan waktu bicara per siswa. Umpan balik mempunyai slot terpisah. Jika hasil minimum dan probe sudah terbukti, lanjut ke pengayaan atau refleksi; tidak perlu menghabiskan jatah waktu. Jika belum, kurangi variasi dan catat penguatan. Presentasi bergiliran: 4 menit/siswa; kapasitas rencana 4 siswa, 4 menit pergantian. Grup 1–4 siswa: gunakan sisa blok untuk latihan penjelasan atau pertanyaan singkat; tidak perlu memperpanjang bicara demi mengisi waktu. Private menggunakan varian tersendiri. Varian private (satu siswa): Pembuka dan cek bekal 5 menit → Konsep dan demo 3 menit → Persiapan sumber 2 menit → Demonstrasi siswa 15 menit → Pertanyaan dan umpan balik 30 menit → Simpan, refleksi dan cadangan waktu 5 menit. Blok 15 menit: sekitar 5 menit demonstrasi dan 10 menit penjelasan/probe; 30 menit uji, masukan dan revisi. Catat uji kelas: jumlah siswa, menit aktual, bantuan, hasil minimum, hasil probe dan penguatan berikutnya. Slot slide ini 11 menit di dalam alur sesi, bukan tambahan. Catat keadaan awal dan hasil yang diharapkan. Jalankan satu kasus sah dan satu kasus gagal. Perbaiki satu penyebab, lalu ulangi kedua uji. ## 12. Periksa sebelum selesai · 10 menit Kriteria sesi: Siswa menjelaskan parameter serta commit Simpan versi awal dan akhir; catat harapan, hasil aktual, satu alasan perubahan, dan bentuk bantuan. Lanjut jika hasil minimum dapat diulang, satu perubahan baru dapat dikerjakan, dan siswa menjelaskan satu perbaikan. Catat bentuk bantuan; bila belum siap, ulangi keterampilan yang belum tampak sebelum menambah konsep. [Kebijakan belajar] Siswa menentukan solusi dari brief, menyusun kasus uji, dan menjelaskan keputusan. Mentor memberi petunjuk bertahap. Jangan habiskan satu jam untuk mengenalkan nama fitur. Gunakan sisa waktu untuk masalah kecil, penelusuran hasil, dan variasi mandiri; jika siswa belum siap, ulangi contoh minimum. Gunakan struktur folder sumber/data/uji, coba .venv pada salinan proyek melalui interpreter VS Code, serta simpan riwayat perubahan sederhana (versi bernama atau Git lokal terbimbing). Tetap gunakan pustaka standar; instal paket bukan prasyarat. Minimum proyek: Katalog terminal dengan ID buku, pencarian, ubah, hapus, serta database SQLite lokal. Pengayaan: Setelah hasil minimum lolos, buat satu variasi aturan atau data pada proyek Katalog Buku Lokal dan bandingkan hasilnya; jangan menambah banyak fitur sekaligus. Transfer: Mentor mengubah satu aturan atau data pada Katalog Buku Lokal. Siswa memprediksi akibat, memilih bagian yang perlu diubah, dan menyusun satu uji baru. [Estimasi tugas] Jenis: Presentasi karya · 60 menit. Estimasi awal; perlu validasi mentor di kelas Alur: Pembuka dan cek bekal 5 menit → Konsep dan demo 3 menit → Persiapan sumber 2 menit → Demonstrasi siswa 24 menit → Pertanyaan dan umpan balik 21 menit → Simpan, refleksi dan cadangan waktu 5 menit Titik awal: Lanjutkan berkas latihan/proyek yang sudah disimpan; contoh mentor adalah acuan, bukan hasil siswa. Minimum: Uji data baru dari penguji Penguji menambah judul berapostrof serta meminta ubah ID yang tidak ada; data valid harus tetap utuh dan hasil dapat dijelaskan. Kerjakan perubahan di Visual Studio Code (VS Code); serahkan sumber .py dan folder proyek, README, data sintetis, serta tabel hasil uji, unittest, database latihan, dan laporan sesuai proyek, dan catatan uji. Bukti pemahaman: Tunjukkan satu bagian yang dibuat sendiri, satu keputusan dan satu perbaikan; jawab satu pertanyaan menggunakan sumber karya. Pengayaan: Pilih satu masukan yang berguna, revisi bagian terkait dan tunjukkan hasil uji ulang; tidak perlu menambah fitur baru. Blok demonstrasi kelas: 19–24 menit. Blok seluruh giliran demonstrasi kelas; bukan waktu bicara per siswa. Umpan balik mempunyai slot terpisah. Jika hasil minimum dan probe sudah terbukti, lanjut ke pengayaan atau refleksi; tidak perlu menghabiskan jatah waktu. Jika belum, kurangi variasi dan catat penguatan. Presentasi bergiliran: 4 menit/siswa; kapasitas rencana 4 siswa, 4 menit pergantian. Grup 1–4 siswa: gunakan sisa blok untuk latihan penjelasan atau pertanyaan singkat; tidak perlu memperpanjang bicara demi mengisi waktu. Private menggunakan varian tersendiri. Varian private (satu siswa): Pembuka dan cek bekal 5 menit → Konsep dan demo 3 menit → Persiapan sumber 2 menit → Demonstrasi siswa 15 menit → Pertanyaan dan umpan balik 30 menit → Simpan, refleksi dan cadangan waktu 5 menit. Blok 15 menit: sekitar 5 menit demonstrasi dan 10 menit penjelasan/probe; 30 menit uji, masukan dan revisi. Catat uji kelas: jumlah siswa, menit aktual, bantuan, hasil minimum, hasil probe dan penguatan berikutnya. Slot slide ini 10 menit di dalam alur sesi, bukan tambahan. Tugas inti selesai dan dapat dijalankan ulang. Satu perubahan dicoba dan dijelaskan. Sumber tersimpan; bantuan dicatat. ## 13. Jelaskan keputusanmu · 3 menit SMA · Lanjutan, sesi 32; proyek Katalog Buku Lokal, sesi 17–32. VS Code, Python 3, ekstensi Python dan Python Debugger dari Microsoft. Buka seluruh folder hasil ekstraksi, pilih Python: Select Interpreter, lalu Terminal → New Terminal. Jalankan python latihan.py 0 untuk A dan python latihan.py 1 untuk B; gunakan py/python3 bila sesuai interpreter perangkat. Contoh diuji dengan CPython 3.12.14. Pasang breakpoint pada perubahan value, F5 untuk debug, F10 untuk Step Over. Screenshot VS Code memakai Output dari eksekusi helper; praktik siswa memakai terminal terintegrasi atau Run Python File. Jika Tkinter diperlukan, uji python -m tkinter pada interpreter yang sama. Pembungkus lab dan support.py disediakan mentor, bukan materi prasyarat awal. Siswa memisahkan logika, parsing/penyimpanan, dan tampilan; tentukan kontrak data serta kasus gagal. Gunakan pertanyaan sebelum memberi solusi. Prasyarat jalur: Dapat menulis fungsi yang terpisah dari GUI, memakai callback Tkinter sederhana, mengelola list/dictionary, memvalidasi input, dan menyimpan JSON. Audit awal mendahului CSV, SQL, serta pengujian otomatis. Dukungan: Siswa mencatat keputusan, memisahkan tanggung jawab fungsi, dan menguji kasus baru. Pemula tetap dimulai dari dasar; Lanjutan memakai brief mandiri, bukti uji, serta revisi pengguna.Minta siswa menunjuk fungsi, baris, atau data yang relevan. Minta kontrak data, satu penolakan tanpa mutasi, serta respons terhadap perubahan data penguji. [Kebijakan belajar] Siswa menentukan solusi dari brief, menyusun kasus uji, dan menjelaskan keputusan. Mentor memberi petunjuk bertahap. Jangan habiskan satu jam untuk mengenalkan nama fitur. Gunakan sisa waktu untuk masalah kecil, penelusuran hasil, dan variasi mandiri; jika siswa belum siap, ulangi contoh minimum. Gunakan struktur folder sumber/data/uji, coba .venv pada salinan proyek melalui interpreter VS Code, serta simpan riwayat perubahan sederhana (versi bernama atau Git lokal terbimbing). Tetap gunakan pustaka standar; instal paket bukan prasyarat. Minimum proyek: Katalog terminal dengan ID buku, pencarian, ubah, hapus, serta database SQLite lokal. Pengayaan: Setelah hasil minimum lolos, buat satu variasi aturan atau data pada proyek Katalog Buku Lokal dan bandingkan hasilnya; jangan menambah banyak fitur sekaligus. Transfer: Mentor mengubah satu aturan atau data pada Katalog Buku Lokal. Siswa memprediksi akibat, memilih bagian yang perlu diubah, dan menyusun satu uji baru. [Estimasi tugas] Jenis: Presentasi karya · 60 menit. Estimasi awal; perlu validasi mentor di kelas Alur: Pembuka dan cek bekal 5 menit → Konsep dan demo 3 menit → Persiapan sumber 2 menit → Demonstrasi siswa 24 menit → Pertanyaan dan umpan balik 21 menit → Simpan, refleksi dan cadangan waktu 5 menit Titik awal: Lanjutkan berkas latihan/proyek yang sudah disimpan; contoh mentor adalah acuan, bukan hasil siswa. Minimum: Uji data baru dari penguji Penguji menambah judul berapostrof serta meminta ubah ID yang tidak ada; data valid harus tetap utuh dan hasil dapat dijelaskan. Kerjakan perubahan di Visual Studio Code (VS Code); serahkan sumber .py dan folder proyek, README, data sintetis, serta tabel hasil uji, unittest, database latihan, dan laporan sesuai proyek, dan catatan uji. Bukti pemahaman: Tunjukkan satu bagian yang dibuat sendiri, satu keputusan dan satu perbaikan; jawab satu pertanyaan menggunakan sumber karya. Pengayaan: Pilih satu masukan yang berguna, revisi bagian terkait dan tunjukkan hasil uji ulang; tidak perlu menambah fitur baru. Blok demonstrasi kelas: 19–24 menit. Blok seluruh giliran demonstrasi kelas; bukan waktu bicara per siswa. Umpan balik mempunyai slot terpisah. Jika hasil minimum dan probe sudah terbukti, lanjut ke pengayaan atau refleksi; tidak perlu menghabiskan jatah waktu. Jika belum, kurangi variasi dan catat penguatan. Presentasi bergiliran: 4 menit/siswa; kapasitas rencana 4 siswa, 4 menit pergantian. Grup 1–4 siswa: gunakan sisa blok untuk latihan penjelasan atau pertanyaan singkat; tidak perlu memperpanjang bicara demi mengisi waktu. Private menggunakan varian tersendiri. Varian private (satu siswa): Pembuka dan cek bekal 5 menit → Konsep dan demo 3 menit → Persiapan sumber 2 menit → Demonstrasi siswa 15 menit → Pertanyaan dan umpan balik 30 menit → Simpan, refleksi dan cadangan waktu 5 menit. Blok 15 menit: sekitar 5 menit demonstrasi dan 10 menit penjelasan/probe; 30 menit uji, masukan dan revisi. Catat uji kelas: jumlah siswa, menit aktual, bantuan, hasil minimum, hasil probe dan penguatan berikutnya. Slot slide ini 3 menit di dalam alur sesi, bukan tambahan. Input serta data yang saya gunakan adalah… Saya memilih aturan ini karena… Bukti pengujian saya menunjukkan… ## 14. Apa yang perlu diuji berikutnya? · 2 menit SMA · Lanjutan, sesi 32; proyek Katalog Buku Lokal, sesi 17–32. VS Code, Python 3, ekstensi Python dan Python Debugger dari Microsoft. Buka seluruh folder hasil ekstraksi, pilih Python: Select Interpreter, lalu Terminal → New Terminal. Jalankan python latihan.py 0 untuk A dan python latihan.py 1 untuk B; gunakan py/python3 bila sesuai interpreter perangkat. Contoh diuji dengan CPython 3.12.14. Pasang breakpoint pada perubahan value, F5 untuk debug, F10 untuk Step Over. Screenshot VS Code memakai Output dari eksekusi helper; praktik siswa memakai terminal terintegrasi atau Run Python File. Jika Tkinter diperlukan, uji python -m tkinter pada interpreter yang sama. Pembungkus lab dan support.py disediakan mentor, bukan materi prasyarat awal. Siswa memisahkan logika, parsing/penyimpanan, dan tampilan; tentukan kontrak data serta kasus gagal. Gunakan pertanyaan sebelum memberi solusi. Prasyarat jalur: Dapat menulis fungsi yang terpisah dari GUI, memakai callback Tkinter sederhana, mengelola list/dictionary, memvalidasi input, dan menyimpan JSON. Audit awal mendahului CSV, SQL, serta pengujian otomatis. Dukungan: Siswa mencatat keputusan, memisahkan tanggung jawab fungsi, dan menguji kasus baru. Pemula tetap dimulai dari dasar; Lanjutan memakai brief mandiri, bukti uji, serta revisi pengguna.Catat prasyarat yang belum kuat sebelum menambah mekanik. Pengayaan: Pilih satu masukan yang berguna, revisi bagian terkait dan tunjukkan hasil uji ulang; tidak perlu menambah fitur baru. [Kebijakan belajar] Siswa menentukan solusi dari brief, menyusun kasus uji, dan menjelaskan keputusan. Mentor memberi petunjuk bertahap. Jangan habiskan satu jam untuk mengenalkan nama fitur. Gunakan sisa waktu untuk masalah kecil, penelusuran hasil, dan variasi mandiri; jika siswa belum siap, ulangi contoh minimum. Gunakan struktur folder sumber/data/uji, coba .venv pada salinan proyek melalui interpreter VS Code, serta simpan riwayat perubahan sederhana (versi bernama atau Git lokal terbimbing). Tetap gunakan pustaka standar; instal paket bukan prasyarat. Minimum proyek: Katalog terminal dengan ID buku, pencarian, ubah, hapus, serta database SQLite lokal. Pengayaan: Setelah hasil minimum lolos, buat satu variasi aturan atau data pada proyek Katalog Buku Lokal dan bandingkan hasilnya; jangan menambah banyak fitur sekaligus. Transfer: Mentor mengubah satu aturan atau data pada Katalog Buku Lokal. Siswa memprediksi akibat, memilih bagian yang perlu diubah, dan menyusun satu uji baru. [Estimasi tugas] Jenis: Presentasi karya · 60 menit. Estimasi awal; perlu validasi mentor di kelas Alur: Pembuka dan cek bekal 5 menit → Konsep dan demo 3 menit → Persiapan sumber 2 menit → Demonstrasi siswa 24 menit → Pertanyaan dan umpan balik 21 menit → Simpan, refleksi dan cadangan waktu 5 menit Titik awal: Lanjutkan berkas latihan/proyek yang sudah disimpan; contoh mentor adalah acuan, bukan hasil siswa. Minimum: Uji data baru dari penguji Penguji menambah judul berapostrof serta meminta ubah ID yang tidak ada; data valid harus tetap utuh dan hasil dapat dijelaskan. Kerjakan perubahan di Visual Studio Code (VS Code); serahkan sumber .py dan folder proyek, README, data sintetis, serta tabel hasil uji, unittest, database latihan, dan laporan sesuai proyek, dan catatan uji. Bukti pemahaman: Tunjukkan satu bagian yang dibuat sendiri, satu keputusan dan satu perbaikan; jawab satu pertanyaan menggunakan sumber karya. Pengayaan: Pilih satu masukan yang berguna, revisi bagian terkait dan tunjukkan hasil uji ulang; tidak perlu menambah fitur baru. Blok demonstrasi kelas: 19–24 menit. Blok seluruh giliran demonstrasi kelas; bukan waktu bicara per siswa. Umpan balik mempunyai slot terpisah. Jika hasil minimum dan probe sudah terbukti, lanjut ke pengayaan atau refleksi; tidak perlu menghabiskan jatah waktu. Jika belum, kurangi variasi dan catat penguatan. Presentasi bergiliran: 4 menit/siswa; kapasitas rencana 4 siswa, 4 menit pergantian. Grup 1–4 siswa: gunakan sisa blok untuk latihan penjelasan atau pertanyaan singkat; tidak perlu memperpanjang bicara demi mengisi waktu. Private menggunakan varian tersendiri. Varian private (satu siswa): Pembuka dan cek bekal 5 menit → Konsep dan demo 3 menit → Persiapan sumber 2 menit → Demonstrasi siswa 15 menit → Pertanyaan dan umpan balik 30 menit → Simpan, refleksi dan cadangan waktu 5 menit. Blok 15 menit: sekitar 5 menit demonstrasi dan 10 menit penjelasan/probe; 30 menit uji, masukan dan revisi. Catat uji kelas: jumlah siswa, menit aktual, bantuan, hasil minimum, hasil probe dan penguatan berikutnya. Slot slide ini 2 menit di dalam alur sesi, bukan tambahan. Sumber API: https://docs.python.org/3/tutorial/controlflow.html