RENCANA PELAKSANAAN PEMBELAJARAN (RPP)

SMK SALAFIYAH

Tahun Ajaran 2026/2027

1. Identitas

KomponenKeterangan
Nama SekolahSMK Salafiyah
Mata PelajaranPemrograman Web Backend
Kategori MapelProduktif
KelasXI
Tema PokokArsitektur Server dan Routing Web Laravel
Alokasi Waktu4 Pertemuan × 8 JP × 45 menit = 32 JP

2. Tujuan Pembelajaran

  1. Menguraikan Arsitektur Client-Server: Murid mampu menjelaskan alur request dan response agar memahami peran "pelayan" (server) dalam sebuah sistem web.
  2. Mengonfigurasi Lingkungan Kerja: Murid mampu menginstal Laravel dan menjalankan server lokal agar siap membangun aplikasi dari nol.
  3. Menerapkan Sistem Routing: Murid mampu membuat rute URL agar aplikasi dapat mengarahkan pengguna ke halaman atau data yang tepat.
  4. Mendemonstrasikan Respon JSON: Murid mampu mengirimkan data terformat agar aplikasi backend mereka dapat berkomunikasi dengan aplikasi lain atau aplikasi mobile.

Profil Pelajar Pancasila

  • Gotong Royong: Murid bekerja berpasangan dalam sistem tutor sebaya untuk memecahkan error kode, menumbuhkan solidaritas antar murid.
  • Mandiri: Murid mencoba memperbaiki sintaks sederhana secara perlahan sebelum bertanya, meningkatkan rasa percaya diri dalam logika pemrograman.
  • Bernalar Kritis: Murid menganalisis mengapa sebuah rute tidak berjalan dengan memeriksa pesan error yang muncul di browser.

3. Pemahaman Bermakna & Pertanyaan Pemantik

Pemahaman Bermakna: Ibarat sebuah warung soto di desa, Client adalah pembeli yang memesan makanan, dan Server adalah pelayan/koki. Jika pembeli meminta "Soto tanpa seledri" (Request), koki harus paham menu tersebut (Route) lalu menyajikannya dengan benar (Response) agar pembeli puas.

  1. Jika kamu ingin membeli barang di toko, apa yang kamu lakukan agar penjual tahu apa yang kamu inginkan?
  2. Apa yang terjadi jika koki di warung tidak tahu menu yang kamu pesan? Apakah soto akan datang?
  3. Bagaimana cara server komputer membedakan orang yang ingin melihat "Profil" dengan orang yang ingin melihat "Harga Barang"?

4. Desain Pembelajaran & Bahan Ajar

Model: Project Based Learning (PBL) — agar murid belajar melalui pengalaman nyata membangun "Warung Digital" sederhana.

Metode:

  • Tutor Sebaya: Memasangkan murid yang lebih cepat paham dengan murid yang lambat agar suasana belajar lebih nyaman.
  • Demonstrasi Langkah-demi-Langkah: Guru mempraktikkan satu baris kode, murid mengikuti, guna menghindari kebingungan.

Alat & Bahan:

  • Laptop/PC dengan XAMPP dan Composer terinstal.
  • Laravel Framework (versi 10/11).
  • VS Code sebagai text editor.
  • Lembar "Cheat Sheet" sintaks routing (berwarna).
  • Proyektor untuk demonstrasi visual.

Strategi Diferensiasi:

  • Murid Tertinggal: Diberikan template kode (boilerplate) yang sudah jadi, mereka hanya perlu mengubah bagian kecil.
  • Murid Cepat: Diberikan tantangan menambahkan fitur "Parameter opsional" pada routing.
  • Murid dengan hambatan: Penggunaan font editor berukuran besar dan kontras tinggi.

5. Langkah-langkah Pembelajaran

Pertemuan 1: Mengenal Arsitektur Web

Kegiatan Awal (15 menit)

  1. [3 mnt] Guru menyapa dengan hangat: "Selamat pagi kawan-kawan, mari kita bayangkan hari ini kita adalah pemilik warung digital."
  2. [5 mnt] Murid menceritakan pengalaman mereka saat mengakses website di HP.
  3. [5 mnt] Guru bertanya: "Apa yang membuat browser kita bisa menampilkan gambar soto saat kita klik link?"
  4. [2 mnt] Guru menyampaikan tujuan: memahami alur request dan response.

Kegiatan Inti (90 menit)

  1. [10 mnt] Guru mendemonstrasikan konsep HTTP dengan analogi pesan berantai.
  2. [10 mnt] Murid menggambar alur Client-Server di kertas masing-masing.
  3. [10 mnt] Guru menjelaskan komponen utama: Request, Server, Response.
  4. [15 mnt — CHECKPOINT] Tutor sebaya: menjelaskan kembali alur ke pasangannya.
  5. [10 mnt] Murid mencoba membuka 'Inspect Element' di browser.
  6. [15 mnt] Murid mencatat status code (200, 404) yang ditemukan.
  7. [10 mnt — CHECKPOINT] Pasangan saling cek catatan status code.
  8. [10 mnt] Guru mengapresiasi penemuan murid.

Kegiatan Penutup (15 menit)

  1. [5 mnt] Guru bertanya: "Mengapa error 404 muncul?"
  2. [3 mnt] Murid menuliskan jawaban di sticky note.
  3. [5 mnt] Guru: "Kalian luar biasa, memahami hal rumit ini selangkah lebih maju hari ini."
  4. [2 mnt] Preview: Besok kita akan mulai menginstal "dapur" Laravel.

Pertemuan 2: Instalasi Lingkungan Kerja

Kegiatan Awal (15 menit)

  1. [3 mnt] Guru menanyakan kesiapan laptop.
  2. [5 mnt] Murid membuka folder proyek masing-masing.
  3. [5 mnt] Guru bertanya: "Apa yang terjadi jika koki tidak punya alat masak?"
  4. [2 mnt] Tujuan: Menginstal Laravel dengan benar.

Kegiatan Inti (90 menit)

  1. [10 mnt] Guru demo instalasi Composer.
  2. [10 mnt] Murid mengikuti instalasi tahap demi tahap.
  3. [10 mnt] Guru membantu murid yang terkendala koneksi.
  4. [15 mnt — CHECKPOINT] Tutor sebaya memastikan folder 'vendor' ada.
  5. [10 mnt] Murid mencoba menjalankan `php artisan serve`.
  6. [15 mnt] Murid memodifikasi tampilan awal Laravel.
  7. [10 mnt — CHECKPOINT] Pasangan saling cek apakah halaman sudah tampil.
  8. [10 mnt] Guru memberikan stiker untuk yang berhasil.

Kegiatan Penutup (15 menit)

  1. [5 mnt] Guru: "Apa kesulitan terbesar saat instalasi tadi?"
  2. [3 mnt] Murid menjawab jujur.
  3. [5 mnt] Guru: "Kesalahan adalah cara komputer mengajari kita."
  4. [2 mnt] Preview: Besok kita buat jalan pintas (Routing).

Pertemuan 3: Dasar Routing

Kegiatan Awal (15 menit)

  1. [3 mnt] Guru mengulas kembali instalasi.
  2. [5 mnt] Murid membuka file `routes/web.php`.
  3. [5 mnt] Guru bertanya: "Bagaimana cara memberi alamat pada warung kita?"
  4. [2 mnt] Tujuan: Membuat rute sederhana.

Kegiatan Inti (90 menit)

  1. [10 mnt] Guru demo membuat route `/menu`.
  2. [10 mnt] Murid membuat route pertama mereka.
  3. [10 mnt] Guru mendampingi penulisan sintaks.
  4. [15 mnt — CHECKPOINT] Tutor sebaya mengecek penulisan titik koma.
  5. [10 mnt] Murid mencoba route `/kontak`.
  6. [15 mnt] Murid mencoba route dengan parameter `{nama}`.
  7. [10 mnt — CHECKPOINT] Pasangan saling mencoba route masing-masing.
  8. [10 mnt] Guru menampilkan contoh route terbaik.

Kegiatan Penutup (15 menit)

  1. [5 mnt] Guru: "Apa jadinya jika route kita salah tulis?"
  2. [3 mnt] Murid menjelaskan error yang muncul.
  3. [5 mnt] Guru: "Kalian sudah mulai berpikir seperti programmer."
  4. [2 mnt] Preview: Besok kita akan kirim data JSON.

Pertemuan 4: Respon JSON

Kegiatan Awal (15 menit)

  1. [3 mnt] Guru menyapa dengan semangat.
  2. [5 mnt] Murid menyiapkan file `web.php` atau `api.php`.
  3. [5 mnt] Guru bertanya: "Bagaimana jika koki mengirim daftar harga lewat pesan teks?"
  4. [2 mnt] Tujuan: Mengirim respon JSON.

Kegiatan Inti (90 menit)

  1. [10 mnt] Guru demo membuat respon JSON.
  2. [10 mnt] Murid menulis `return response()->json()`.
  3. [10 mnt] Guru menjelaskan arti setiap kurung kurawal.
  4. [15 mnt — CHECKPOINT] Tutor sebaya mengecek kurung kurawal yang kurang.
  5. [10 mnt] Murid menambahkan status code 200.
  6. [15 mnt] Murid mempraktikkan pengiriman data array.
  7. [10 mnt — CHECKPOINT] Pasangan saling mengetes URL JSON.
  8. [10 mnt] Guru melakukan selebrasi kecil atas keberhasilan.

Kegiatan Penutup (15 menit)

  1. [5 mnt] Refleksi: "Apa bagian paling seru dari 4 pertemuan ini?"
  2. [3 mnt] Murid menjawab lisan.
  3. [5 mnt] Guru: "Kalian baru saja membangun fondasi backend. Teruslah berkarya!"
  4. [2 mnt] Penutup: Tugas proyek sumatif diberikan.

6. Asesmen

Diagnostik

  1. Apakah kamu pernah menggunakan VS Code sebelumnya?
  2. Apakah kamu merasa nyaman mengetik perintah di layar hitam (terminal)?
  3. Seberapa sering kamu menggunakan internet untuk belajar?
  4. Apa yang kamu lakukan jika laptopmu tiba-tiba hang?
  5. Apa impianmu setelah lulus nanti?

Tindak lanjut: Murid yang belum pernah menggunakan terminal akan dipasangkan dengan yang sudah mahir di minggu pertama.

Formatif

  • Keaktifan berpasangan saat checkpoint.
  • Ketepatan sintaks pada file routing.
  • Kemampuan menjelaskan kembali alur request secara sederhana.

Sumatif

Deskripsi Proyek: Membuat API sederhana "Daftar Menu Warung" yang menampilkan data JSON berisi nama makanan dan harga saat diakses melalui route tertentu.

Akomodasi Slow Learner: Disediakan "Kartu Sintaks" (Cheat Sheet) yang berisi potongan kode yang bisa langsung di-copy-paste dan dimodifikasi.

KriteriaBelum TercapaiCukupBaikSangat Baik
Konsep Client-ServerBelum pahamPaham sebagianPahamSangat Paham
Instalasi LaravelGagal totalPerlu bantuan penuhMandiriMembantu orang lain
Implementasi RouteTidak jalanJalan 1 routeJalan banyak routeBisa routing dinamis
Respon JSONFormat salahData munculData rapiData kompleks

Mengetahui,
Kepala SMK Salafiyah

Erni Sofa Nugraha, S. Pd

NIP. -

Guru Mata Pelajaran

Ahmad Hanif Dzikron

NIP. ........................................