A. Debugging Program
1. Pengertian Debugging
Debugging adalah proses menemukan, menganalisis, dan memperbaiki kesalahan (bug) pada program agar program berjalan sesuai tujuan. Dalam dunia industri software, debugging merupakan keterampilan penting karena hampir semua program pasti pernah mengalami error.
Tujuan debugging:
-
Mengetahui penyebab program gagal berjalan
-
Memperbaiki logika yang salah
-
Meningkatkan kualitas kode
-
Membiasakan berpikir sistematis
2. Jenis-Jenis Error dalam Pemrograman
a. Syntax Error
Kesalahan penulisan kode yang tidak sesuai aturan bahasa pemrograman.
Contoh Python:
(Kurang tanda kurung tutup)
Ciri:
-
Program tidak bisa dijalankan
-
Biasanya muncul pesan error langsung
b. Runtime Error
Error yang muncul saat program dijalankan.
Contoh:
(Tidak bisa membagi dengan nol)
c. Logical Error
Program berjalan tetapi hasilnya salah.
Contoh:
Logika salah karena nilai 70 tidak memenuhi syarat.
3. Langkah-Langkah Debugging
-
Membaca pesan error
-
Menelusuri baris kode
-
Menggunakan print() untuk cek variabel
-
Mengubah kode sedikit demi sedikit
-
Menguji ulang program
Tips debugging:
-
Jangan panik melihat error
-
Fokus pada satu masalah
-
Gunakan komentar (#) untuk menonaktifkan kode sementara
4. Contoh Debugging Sederhana
Program salah:
Masalah:
-
input() menghasilkan teks (string)
Perbaikan:
B. Model Basis Data Relasional
1. Pengertian Basis Data
Basis data adalah kumpulan data yang disimpan secara terstruktur agar mudah diakses, dikelola, dan diperbarui.
Contoh penggunaan:
-
Data siswa
-
Data transaksi toko
-
Data pelanggan
2. Model Basis Data Relasional
Model relasional menyimpan data dalam bentuk tabel yang saling berhubungan.
Komponen utama:
-
Tabel (Table) → tempat data disimpan
-
Kolom (Field/Atribut) → jenis data
-
Baris (Record) → isi data
Contoh tabel Siswa:
| id_siswa | nama | kelas |
|---|---|---|
| 1 | Andi | X RPL |
| 2 | Budi | X TKJ |
3. Primary Key dan Foreign Key
Primary Key
Kunci utama yang unik.
Contoh:
Foreign Key
Kunci yang menghubungkan tabel lain.
Contoh:
Tabel Transaksi memiliki:
yang mengacu pada tabel Siswa.
4. Relasi Antar Tabel
Jenis relasi:
-
One to One (1-1)
-
One to Many (1-N)
-
Many to Many (M-N)
Contoh:
1 siswa bisa memiliki banyak transaksi → One to Many.
5. Normalisasi Data
Normalisasi adalah proses merapikan struktur tabel agar:
-
Tidak ada data ganda
-
Data lebih efisien
-
Mudah diperbarui
a. First Normal Form (1NF)
Tidak boleh ada data berulang dalam satu kolom.
Salah:
| Nama | Hobi |
|---|---|
| Andi | Bola, Game |
Benar:
| Nama | Hobi |
|---|---|
| Andi | Bola |
| Andi | Game |
b. Second Normal Form (2NF)
Semua kolom harus bergantung pada Primary Key.
c. Third Normal Form (3NF)
Tidak boleh ada ketergantungan antar kolom non-key.
Contoh:
Jangan simpan nama_kelas jika sudah ada id_kelas yang bisa dihubungkan.
6. Contoh Struktur Basis Data Relasional
Sistem Penjualan:
Tabel Pelanggan
-
id_pelanggan (PK)
-
nama
-
alamat
Tabel Produk
-
id_produk (PK)
-
nama_produk
-
harga
Tabel Transaksi
-
id_transaksi (PK)
-
id_pelanggan (FK)
-
tanggal
C. Keterkaitan Debugging dan Basis Data
Dalam proyek nyata:
-
Program yang mengambil data database sering error karena relasi salah.
-
Debugging membantu menemukan query atau logika database yang keliru.
Contoh:
-
Salah memanggil nama kolom
-
Relasi tabel tidak sesuai
D. Tugas Praktik (Spesifik Jurusan)
Topik: Debugging Program & Model Basis Data Relasional
1. Jurusan TJKT (Teknik Jaringan Komputer dan Telekomunikasi)
Judul Tugas: Debugging Sistem Data Perangkat Jaringan
Deskripsi Tugas:
Sebuah program digunakan untuk mencatat perangkat jaringan di laboratorium, tetapi program menghasilkan data yang salah. Murid diminta melakukan debugging dan merancang basis data relasional sederhana.
Program Bermasalah:
Instruksi:
-
Perbaiki error pada program.
-
Jelaskan jenis error yang ditemukan (syntax, runtime, atau logical).
-
Rancang basis data relasional:
-
Tabel Perangkat
-
Tabel Ruangan
-
Tabel Peminjaman
-
Tentukan Primary Key dan Foreign Key.
Perbaiki error pada program.
Jelaskan jenis error yang ditemukan (syntax, runtime, atau logical).
Rancang basis data relasional:
-
Tabel Perangkat
-
Tabel Ruangan
-
Tabel Peminjaman
Tentukan Primary Key dan Foreign Key.
Output:
-
Kode hasil debugging
-
Struktur tabel relasional
Kode hasil debugging
Struktur tabel relasional
2. Jurusan Busana
Judul Tugas: Debugging Kalkulator Produksi Busana & Database Produk
Deskripsi Tugas:
Program digunakan untuk menghitung jumlah produksi pakaian, tetapi hasilnya tidak sesuai. Murid melakukan debugging serta merancang database produk busana.
Program Bermasalah:
Instruksi:
-
Perbaiki program agar bisa menghitung total biaya dengan benar.
-
Jelaskan kesalahan tipe data yang terjadi.
-
Rancang basis data relasional:
-
Tabel Produk_Busana
-
Tabel Pelanggan
-
Tabel Pesanan
-
Jelaskan relasi antar tabel (One-to-Many).
Perbaiki program agar bisa menghitung total biaya dengan benar.
Jelaskan kesalahan tipe data yang terjadi.
Rancang basis data relasional:
-
Tabel Produk_Busana
-
Tabel Pelanggan
-
Tabel Pesanan
Jelaskan relasi antar tabel (One-to-Many).
Output:
-
Program yang sudah benar
-
Desain tabel database produk busana
Program yang sudah benar
Desain tabel database produk busana
3. Jurusan Otomotif
Judul Tugas: Debugging Sistem Servis Bengkel & Database Kendaraan
Deskripsi Tugas:
Sistem bengkel mencatat biaya servis kendaraan, namun terdapat kesalahan logika pada perhitungan.
Program Bermasalah:
Instruksi:
-
Temukan dan perbaiki logical error pada program.
-
Tambahkan kondisi agar program tetap berjalan jika tidak mendapat diskon.
-
Rancang basis data relasional:
-
Tabel Kendaraan
-
Tabel Mekanik
-
Tabel Servis
-
Tentukan Primary Key dan relasi tabel.
Temukan dan perbaiki logical error pada program.
Tambahkan kondisi agar program tetap berjalan jika tidak mendapat diskon.
Rancang basis data relasional:
-
Tabel Kendaraan
-
Tabel Mekanik
-
Tabel Servis
Tentukan Primary Key dan relasi tabel.
Output:
-
Program hasil debugging
-
Model relasional sistem bengkel
Program hasil debugging
Model relasional sistem bengkel
Tidak ada komentar:
Posting Komentar