Scratch: Find the Bug dengan Scratch

🐞 Find the Bug – Belajar Debugging dengan Scratch

Media pembelajaran interaktif berbasis web untuk Informatika dan Koding & Kecerdasan Artifisial.


Gambar 1. Tampilan permainan “Find the Bug” pada layar awal. 1.

A. Tujuan Pembelajaran

·       Siswa memahami bahwa program dapat memiliki kesalahan dan perlu diuji secara bertahap.

·       Siswa mampu menjelaskan fungsi backdrop, sprite, event, perulangan, perpindahan posisi, dan pengaturan ukuran dalam proyek Scratch.

·       Siswa mampu membaca potongan blok Scratch dan memperkirakan perilaku program.

·       Siswa mampu menemukan bagian program yang menyebabkan perilaku tidak sesuai tujuan, lalu mengusulkan perbaikannya.

·       Siswa mampu menguji program, mengamati hasil, dan melakukan refleksi terhadap proses pemecahan masalah.

B. Keterkaitan dengan Deep Learning

Pembelajaran mendalam pada kegiatan ini tidak berhenti pada meniru blok. Siswa diajak memahami alasan sebuah blok digunakan, mencoba program, mengamati hasil, menemukan masalah, memperbaiki, lalu menjelaskan kembali temuannya. Proses tersebut membuat belajar lebih berkesadaran, bermakna, dan menyenangkan.

Berkesadaran: Siswa menyadari bahwa setiap perubahan blok dapat memengaruhi perilaku permainan.

Bermakna: Siswa melihat langsung hubungan antara kode, gerak sprite, backdrop, timer, dan tujuan permainan.

Menggembirakan: Kegiatan dikemas sebagai misi menemukan bug sehingga siswa belajar melalui tantangan.

C. Konsep Berpikir Komputasional yang Muncul

Konsep

Contoh dalam proyek

Dekomposisi

Permainan dibagi menjadi layar awal, level pertama, level kedua, layar akhir, dan kode tiap sprite.

Pengenalan pola

Siswa membandingkan perilaku Beetle pada beberapa backdrop dan mengenali pola perubahan ukuran/posisi.

Algoritma

Urutan blok menentukan apa yang dilakukan sprite sejak bendera hijau diklik sampai permainan selesai.

Debugging

Siswa menguji, menemukan perilaku yang salah, mencari penyebab, lalu memperbaiki program.


 

1. Mengenal Tantangan “Find the Bug”

Find the Bug adalah permainan sederhana dengan misi menemukan sprite Beetle yang ditempatkan pada beberapa situasi. Dari sudut pandang belajar pemrograman, permainan ini menarik karena siswa tidak hanya membuat tampilan, tetapi juga harus memastikan program berjalan sesuai rencana.

Inti tantangannya adalah debugging. Jika Beetle terlalu besar, terlalu kecil, salah posisi, muncul pada waktu yang tidak tepat, atau permainan tidak berpindah ke level berikutnya, siswa perlu mencari bagian program yang menyebabkan masalah tersebut.

2. Menyiapkan Layar Awal

Permainan dimulai dengan sebuah panggung. Backdrop Chalkboard digunakan sebagai layar awal. Backdrop tersebut diubah menjadi format vektor, diberi judul “Find the bug”, kemudian diberi nama “start”. Backdrop kosong yang tidak dipakai dihapus.

Gambar 2. Backdrop Chalkboard yang digunakan untuk layar awal

Gambar 3. Contoh penempatan judul “Find the bug” pada backdrop.

Selanjutnya, tambahkan backdrop Spotlight dari kategori Music. Backdrop ini digunakan ketika permainan masuk ke level pertama.

Gambar 4. Backdrop Spotlight untuk level pertama

Logika awalnya sederhana: ketika bendera hijau diklik, Stage mengganti backdrop menjadi “start”. Pada halaman 2 sumber, blok tersebut dituliskan sebagai when flag clicked → switch backdrop to [start]

3. Level Pertama: Menemukan Beetle

Pada level pertama, siswa menambahkan sprite Beetle. Ketika permainan berpindah ke Spotlight, Beetle dibuat kecil dan ditempatkan pada bola disko. Tujuannya adalah membuat Beetle tidak langsung terlihat oleh pemain.


Gambar 5. Sprite Beetle yang digunakan dalam permainan.

Gambar 6. Saat backdrop menjadi Spotlight, Beetle diperkecil dan dipindahkan ke koordinat tertentu.

Perhatikan hubungan antarblok. Blok “when backdrop switches to [Spotlight]” menjadi pemicu. Setelah pemicu terjadi, ukuran Beetle diubah menjadi 20% dan Beetle dipindahkan ke x: 13, y: 132.

Ketika Beetle ditemukan dan diklik, program memainkan suara Pop sampai selesai lalu berpindah ke backdrop berikutnya.

Gambar 7. Event ketika Beetle diklik: suara Pop dimainkan lalu backdrop berpindah. Sumber: halaman 3.

Uji sederhana untuk siswa: klik bendera hijau, lalu klik Beetle. Apakah Beetle tampil besar di Chalkboard dan menjadi kecil ketika berada di Spotlight? Jika hasilnya berbeda, itulah saatnya mulai mencari bug.

4. Gangguan Burung Beo: Membuat Sprite Bergerak

Pada bagian berikutnya, ditambahkan sprite Parrot sebagai pengganggu. Parrot perlu tetap tegak, bergerak terus, dan terlihat seperti mengepakkan sayap.

Gambar 8. Sprite Parrot sebagai pengganggu permainan. 

Gambar 9. Pengaturan gaya rotasi left-right dan arah terbang Parrot. 

Mengapa pengaturan rotasi penting? Karena siswa ingin Parrot berubah arah secara horizontal tanpa berputar terbalik. Pada sumber, gaya rotasi diatur menjadi “left-right” dan arah ditetapkan 35.

Gambar 10. Perulangan gerak Parrot: bergerak, memantul saat menyentuh tepi, lalu terus mengganggu permainan.

Blok forever membuat gerakan terus berlangsung. Di dalamnya terdapat move 10 steps dan if on edge, bounce. Dengan demikian, Parrot terus bergerak di Stage.

Gambar 11. Animasi Parrot: next costume, perubahan color effect, dan jeda waktu.

Bagian ini juga mengajarkan bahwa gerak yang terlihat hidup tidak selalu membutuhkan banyak kode. Beberapa blok sederhana yang diulang dengan urutan tepat sudah dapat menghasilkan animasi.

5. Level Kedua: Membuat Beetle Lebih Sulit Ditemukan

Setelah pemain menyelesaikan level pertama, permainan dapat dilanjutkan ke level kedua. Silahkan gunakan backdrop Urban. Beetle dibuat kecil dan ditempatkan pada lokasi yang lebih sulit diperhatikan.

Gambar 12. Contoh suasana Urban yang digunakan untuk level kedua. 

Gambar 13. Beetle diperkecil menjadi 20% dan ditempatkan pada koordinat baru.

Salah satu ide penting pada level ini adalah posisi sprite terhadap objek lain. Jika Beetle seharusnya berada di belakang objek, pengaturan layer perlu diperhatikan.

Gambar 14. Contoh penggunaan pengaturan layer agar Beetle berada di belakang.

6. Layar Akhir dan Penggunaan Timer

Permainan membutuhkan tanda selesai. Backdrop Chalkboard digunakan lagi dan diberi nama “end”. Beetle kemudian ditampilkan pada layar akhir. Timer ditampilkan sebagai bagian dari hasil permainan.

Gambar 15. Beetle ditampilkan pada layar akhir dan dapat mengatakan waktu yang diperlukan.

Sebaliknya, pada layar awal timer tidak perlu ditampilkan. Karena itu, ketika backdrop menjadi “start”, bagian say dapat dikosongkan.

Gambar 16. Timer disembunyikan pada layar awal. 

Ketika permainan masuk ke Spotlight, timer di-reset agar pengukuran waktu dimulai kembali untuk level pertama.

 

Gambar 17. Timer diatur ulang ketika permainan masuk ke level pertama.

7. Belajar Debugging: Jangan Takut Salah

Kesalahan dalam program bukan tanda bahwa siswa gagal. Kesalahan justru dapat menjadi petunjuk untuk memahami cara kerja program. Guru dapat membiasakan siswa menggunakan siklus sederhana: buat → jalankan → amati → temukan masalah → perbaiki → uji kembali.

1.       Amati perilaku yang tidak sesuai tujuan.

2.       Tentukan kapan kesalahan terjadi.

3.       Cari blok yang berhubungan dengan kejadian tersebut.

4.       Ubah satu bagian pada satu waktu agar penyebab perubahan mudah dilacak.

5.       Jalankan kembali program dan bandingkan hasilnya.

8. Rangkuman Kode dan Alur Permainan

Dokumen sumber halaman 8 merangkum kode Beetle, Parrot, dan Stage. Ringkasan berikut ditulis ulang agar lebih mudah dibaca siswa.

Stage

when flag clicked
→ switch backdrop to [start]

 Beetle — Level pertama

when backdrop switches to [Spotlight]
→ set size to [20]%
→ go to x: [13] y: [132]
→ reset timer


Beetle — Layar awal

when backdrop switches to [start]
→ set size to [100]%
→ go to x: [0] y: [30]
→ say [ ]

Beetle — Layar akhir

when backdrop switches to [end]
→ set size to [100]%
→ go to x: [0] y: [30]
→ say [ ]

 Beetle — Level kedua

when backdrop switches to [Urban]
→ set size to [20]%
→ go to x: [24] y: [13]
→ say [ ]

 

Beetle — Saat diklik

when this sprite clicked
→ play sound [Pop] until done
→ next backdrop

 

Parrot

when flag clicked
→ set rotation style [left-right]
→ point in direction [35]
→ forever
   → move [10] steps
   → if on edge, bounce
   → next costume
   → change [color] effect by [5]
   → wait [0.25] seconds


9. Aktivitas Belajar: Misi Detektif Bug

Misi siswa: buat atau salin proyek Find the Bug, kemudian sengaja ubah satu blok sehingga terjadi kesalahan. Teman satu kelompok bertugas menemukan bagian yang berubah dan menjelaskan akibatnya.

Tahap

Kegiatan siswa

Bukti belajar

Mengamati

Menjalankan proyek tanpa mengubah kode.

Catatan perilaku program.

Memprediksi

Menebak blok yang mungkin menyebabkan bug.

Alasan berdasarkan kode.

Menguji

Mengubah satu bagian lalu menjalankan ulang.

Hasil sebelum/sesudah.

Memperbaiki

Mengembalikan atau mengganti blok yang tepat.

Program berjalan sesuai tujuan.

Menjelaskan

Menceritakan penyebab dan solusi.

Penjelasan lisan/tulisan.

10. Refleksi Siswa

·       Bug apa yang paling mudah kamu temukan? Mengapa? ________________________________________________

·       Bagian kode mana yang paling membutuhkan ketelitian? ________________________________________________

·       Apa yang terjadi jika blok reset timer dihilangkan? ________________________________________________

·       Bagaimana kamu memastikan bahwa perbaikanmu benar-benar berhasil? ________________________________________________

·       Apa strategi yang akan kamu gunakan jika menemukan bug pada proyek Scratch lain? ________________________________________________

11. Latihan Soal HOTS Berbasis Stimulus – Model AKM/TKA

Petunjuk umum. Soal berikut menggunakan gambar/ilustrasi dari materi Find the Bug sebagai stimulus. Siswa tidak hanya mengingat nama blok, tetapi menganalisis hubungan antara stimulus, kode, perilaku program, dan tujuan permainan. Bentuk soal dibuat bergaya AKM/TKA; soal ini bukan soal resmi AKM/TKA.

Durasi pengerjaan: 2 menit. Soal baru ditampilkan setelah tombol mulai ditekan. Setelah jawaban dikirim, soal disembunyikan kembali dan hasil nilai ditampilkan.

Sisa waktu: 02:00
1
Pilihan Ganda
Stimulus

Perhatikan kode pada gambar. Ketika backdrop berubah menjadi Spotlight, Beetle dibuat kecil dan dipindahkan ke posisi tertentu.

Gambar stimulus soal 1

Jika blok “set size to 20%” dihapus, tetapi blok pemindahan posisi tetap ada, prediksi paling tepat adalah …

2
Pilihan Ganda Kompleks – pilih semua yang benar
Stimulus

Perhatikan kode pada gambar. Ketika backdrop berubah menjadi Spotlight, Beetle dibuat kecil dan dipindahkan ke posisi tertentu.

Gambar stimulus soal 2

Perubahan yang masih sesuai dengan tujuan membuat Beetle lebih sulit ditemukan adalah …

3
Uraian HOTS
Stimulus

Perhatikan kode pada gambar. Ketika backdrop berubah menjadi Spotlight, Beetle dibuat kecil dan dipindahkan ke posisi tertentu.

Gambar stimulus soal 3

Seorang siswa mengganti angka 20% menjadi 100%. Ia mengatakan, “Kode tetap benar karena Beetle masih berpindah ke koordinat yang sama.” Apakah alasan tersebut cukup untuk menyatakan program sesuai tujuan? Jelaskan dengan menghubungkan ukuran Beetle dan tujuan level pertama.

4
Pilihan Ganda
Stimulus

Perhatikan urutan blok pada gambar, ketika Beetle diklik, program memainkan suara Pop sampai selesai kemudian berpindah ke backdrop berikutnya.

Gambar stimulus soal 4

Jika blok “next backdrop” tidak dijalankan setelah suara Pop selesai, dampak paling mungkin adalah …

5
Pilihan Ganda Kompleks – pilih semua yang benar
Stimulus

Perhatikan urutan blok pada gambar, ketika Beetle diklik, program memainkan suara Pop sampai selesai kemudian berpindah ke backdrop berikutnya.

Gambar stimulus soal 5

Urutan perilaku pada stimulus yang paling sesuai adalah …

6
Uraian HOTS
Stimulus

Perhatikan urutan blok pada gambar. Gunakan stimulus ini untuk menelusuri penyebab masalah secara bertahap.

Gambar stimulus soal 6

Guru menemukan bahwa siswa dapat mengklik Beetle, tetapi permainan tidak berpindah ke level berikutnya. Tuliskan langkah pemeriksaan yang sebaiknya dilakukan untuk menemukan penyebab masalah tersebut. Jangan langsung mengubah semua blok.

7
Pilihan Ganda
Stimulus

Perhatikan gambar rangkaian kode untuk menjawab soal. Parrot digunakan sebagai gangguan. Materi menunjukkan penggunaan forever, move, if on edge, bounce, next costume, perubahan efek warna, dan wait.

Gambar stimulus soal 7

Jika blok “forever” dihapus, perubahan perilaku paling logis adalah …

8
Pilihan Ganda Kompleks – pilih semua yang benar
Stimulus

Perhatikan gambar rangkaian kode untuk menjawab soal. Parrot digunakan sebagai gangguan. Materi menunjukkan penggunaan forever, move, if on edge, bounce, next costume, perubahan efek warna, dan wait.

Gambar stimulus soal 8

Blok yang secara langsung mendukung kesan Parrot bergerak/mengepak adalah …

9
Uraian HOTS
Stimulus

Perhatikan gambar rangkaian kode untuk menjawab soal. Fokuskan perhatian pada blok wait yang berada dalam rangkaian perulangan.

Gambar stimulus soal 9

Siswa mengubah “wait 0.25 seconds” menjadi 2 detik. Prediksikan perubahan yang akan terlihat pada animasi Parrot dan jelaskan alasanmu berdasarkan urutan blok.

10
Pilihan Ganda
Stimulus

Pada level kedua, Beetle dibuat lebih sulit ditemukan. Materi menunjukkan perubahan ukuran dan posisi serta contoh pengaturan layer agar Beetle berada di belakang objek.

Gambar stimulus soal 10

Jika Beetle seharusnya berada di belakang objek tetapi justru menutupi objek, bagian yang paling tepat diperiksa adalah …

11
Pilihan Ganda Kompleks – pilih semua yang benar
Stimulus

Perhatikan gambar level kedua. Beetle dibuat lebih sulit ditemukan dengan memanfaatkan ukuran, posisi, dan hubungan layer dengan objek lain.

Gambar stimulus soal 11

Untuk membuat level kedua lebih menantang tanpa mengubah tujuan permainan, tindakan yang sesuai dengan materi adalah …

12
Uraian HOTS
Stimulus

Perhatikan gambar level kedua dan contoh pengaturan layer. Gunakan stimulus untuk merancang perbaikan yang masih sejalan dengan tujuan permainan.

Gambar stimulus soal 12

Beetle sudah berukuran 20%, tetapi pemain tetap menemukannya dalam satu detik. Buat dua usulan perubahan yang masih sejalan dengan materi dan jelaskan alasan setiap perubahan.

13
Pilihan Ganda
Stimulus

Materi menjelaskan bahwa timer di-reset ketika permainan memasuki Spotlight. Pada layar akhir, waktu dapat ditampilkan. Gunakan gambar sebagai stimulus untuk menganalisis fungsi reset timer.

Gambar stimulus soal 13

Mengapa reset timer diletakkan ketika backdrop berubah menjadi Spotlight?

14
Pilihan Ganda Kompleks – pilih semua yang benar
Stimulus

Materi menjelaskan bahwa timer di-reset ketika permainan memasuki Spotlight. Pada layar akhir, waktu dapat ditampilkan. Gunakan gambar sebagai stimulus untuk menganalisis fungsi reset timer.

Gambar stimulus soal 14

Jika reset timer dihilangkan, hal yang perlu dipertanyakan saat menguji program adalah …

15
Uraian HOTS
Stimulus

Gunakan stimulus timer dan alur permainan pada gambar untuk menilai pernyataan berikut.

Gambar stimulus soal 15

Seorang siswa berkata, “Permainan saya tetap bisa dimainkan walaupun reset timer dihapus, jadi blok itu tidak penting.” Nilailah pernyataan tersebut. Jelaskan perbedaan antara “program masih dapat dimainkan” dan “program bekerja sesuai tujuan yang dirancang”.

HASIL LATIHAN
0

Nilai dihitung berdasarkan kunci dan rubrik pada dokumen kunci jawaban.

Ringkasan Penilaian

Diberdayakan oleh Blogger.