Normalisasi database adalah salah satu materi inti dalam mata kuliah Basis Data yang wajib dikuasai mahasiswa jurusan Sistem Informasi, Teknik Informatika, Ilmu Komputer, maupun Manajemen Informatika. Dalam praktiknya, banyak mahasiswa masih merasa kesulitan saat mengerjakan contoh soal normalisasi database, terutama ketika harus menentukan ketergantungan fungsional, primary key, dan memecah tabel hingga mencapai 3NF.
Artikel ini menyajikan contoh soal dan jawaban normalisasi database terbaru untuk latihan mahasiswa secara lengkap dan sistematis. Pembahasan dibuat bertahap mulai dari bentuk tidak normal hingga mencapai First Normal Form, Second Normal Form, dan Third Normal Form. Dengan memahami pola penyelesaian yang dijelaskan di sini, Anda akan lebih siap menghadapi ujian, kuis, maupun proyek perancangan database.
baca juga:50+ Contoh Soal UN SMP 2025 Terbaru untuk Latihan Siswa Kelas 9
Pengertian Normalisasi Database
Normalisasi database adalah proses pengorganisasian struktur tabel dalam basis data relasional untuk mengurangi redundansi data dan mencegah anomali saat manipulasi data. Proses ini dilakukan dengan memecah tabel menjadi beberapa tabel yang lebih kecil berdasarkan aturan bentuk normal.
Tujuan utama normalisasi adalah memastikan bahwa setiap atribut dalam tabel memiliki ketergantungan yang tepat terhadap primary key. Dengan struktur yang terorganisasi, database menjadi lebih efisien, konsisten, dan mudah dipelihara.
Tujuan dan Manfaat Normalisasi
Beberapa tujuan normalisasi database antara lain:
Mengurangi duplikasi data dalam tabel
Mencegah anomali insert, update, dan delete
Meningkatkan integritas data
Mempermudah pengembangan sistem
Mengoptimalkan struktur relasi antar tabel
Mahasiswa yang memahami manfaat ini biasanya lebih mudah dalam menganalisis soal karena mengetahui alasan di balik setiap langkah normalisasi.
Tahapan Bentuk Normal dalam Database
Dalam latihan mahasiswa, biasanya normalisasi dibatasi hingga 3NF. Berikut ringkasannya:
1NF mengharuskan setiap atribut bernilai atomik dan tidak ada grup berulang
2NF mengharuskan sudah memenuhi 1NF dan tidak ada ketergantungan parsial terhadap primary key
3NF mengharuskan sudah memenuhi 2NF dan tidak ada ketergantungan transitif
Sekarang mari kita masuk ke contoh soal dan jawaban normalisasi database terbaru untuk latihan mahasiswa.
Contoh Soal 1 Normalisasi Database Kasus Penjualan
Diketahui tabel berikut:
Tabel Transaksi
No_Faktur
Tanggal
Kode_Pelanggan
Nama_Pelanggan
Alamat
Kode_Barang
Nama_Barang
Harga
Jumlah
Dalam satu faktur, pelanggan bisa membeli beberapa barang.
Langkah 1 Identifikasi Bentuk Tidak Normal
Karena satu faktur dapat memuat beberapa barang, maka akan terjadi pengulangan data barang dalam satu faktur. Ini melanggar aturan 1NF jika disimpan dalam satu baris dengan grup berulang.
Langkah 2 Normalisasi ke 1NF
Pisahkan setiap barang menjadi satu baris.
Tabel Transaksi_1NF
No_Faktur
Tanggal
Kode_Pelanggan
Nama_Pelanggan
Alamat
Kode_Barang
Nama_Barang
Harga
Jumlah
Primary key yang tepat adalah kombinasi No_Faktur dan Kode_Barang.
Langkah 3 Normalisasi ke 2NF
Periksa ketergantungan parsial.
Nama_Pelanggan dan Alamat tergantung pada Kode_Pelanggan
Nama_Barang dan Harga tergantung pada Kode_Barang
Karena primary key bersifat komposit, maka terjadi ketergantungan parsial.
Solusi pemecahan:
Tabel Faktur
No_Faktur
Tanggal
Kode_Pelanggan
Tabel Pelanggan
Kode_Pelanggan
Nama_Pelanggan
Alamat
Tabel Barang
Kode_Barang
Nama_Barang
Harga
Tabel Detail_Transaksi
No_Faktur
Kode_Barang
Jumlah
Sekarang sudah memenuhi 2NF.
Langkah 4 Normalisasi ke 3NF
Tidak ada atribut non key yang bergantung pada atribut non key lainnya. Maka struktur sudah dalam 3NF.
Contoh Soal 2 Normalisasi Database Kasus Akademik
Diketahui tabel berikut:
Tabel KRS
NIM
Nama_Mahasiswa
Kode_MK
Nama_MK
SKS
Nama_Dosen
Nilai
Primary key adalah kombinasi NIM dan Kode_MK.
Langkah 1 Cek 1NF
Semua atribut atomik, maka sudah 1NF.
Langkah 2 Cek 2NF
Nama_Mahasiswa bergantung hanya pada NIM
Nama_MK dan SKS bergantung hanya pada Kode_MK
Terjadi ketergantungan parsial.
Solusi:
Tabel Mahasiswa
NIM
Nama_Mahasiswa
Tabel Mata_Kuliah
Kode_MK
Nama_MK
SKS
Tabel KRS
NIM
Kode_MK
Nama_Dosen
Nilai
Langkah 3 Cek 3NF
Periksa apakah Nama_Dosen tergantung pada Kode_MK. Jika iya, maka terjadi ketergantungan transitif.
Pisahkan lagi:
Tabel Pengampu
Kode_MK
Nama_Dosen
Tabel KRS
NIM
Kode_MK
Nilai
Sekarang struktur sudah memenuhi 3NF.
Contoh Soal 3 Ketergantungan Fungsional
Diketahui relasi R(A, B, C, D, E) dengan ketergantungan fungsional:
A menentukan B
A menentukan C
B menentukan D
C menentukan E
Jika A adalah primary key, tentukan bentuk normalnya.
Analisis:
A → B
A → C
B → D
C → E
Terjadi ketergantungan transitif karena B dan C bukan key tetapi menentukan D dan E.
Normalisasi:
R1(A, B, C)
R2(B, D)
R3(C, E)
Sekarang setiap relasi memenuhi 3NF.
Contoh Soal 4 Normalisasi Database Kasus Perpustakaan
Tabel Peminjaman
No_Pinjam
Tanggal
Kode_Anggota
Nama_Anggota
Kode_Buku
Judul_Buku
Pengarang
Tanggal_Kembali
Langkah 1 1NF
Sudah atomik.
Langkah 2 Tentukan Primary Key
Jika satu peminjaman bisa memuat banyak buku, maka primary key adalah No_Pinjam dan Kode_Buku.
Langkah 3 2NF
Nama_Anggota tergantung pada Kode_Anggota
Judul_Buku dan Pengarang tergantung pada Kode_Buku
Pisahkan menjadi:
Tabel Peminjaman
No_Pinjam
Tanggal
Kode_Anggota
Tabel Anggota
Kode_Anggota
Nama_Anggota
Tabel Buku
Kode_Buku
Judul_Buku
Pengarang
Tabel Detail_Peminjaman
No_Pinjam
Kode_Buku
Tanggal_Kembali
Langkah 4 3NF
Tidak ada ketergantungan transitif. Struktur sudah benar.
Strategi Cepat Mengerjakan Soal Normalisasi Database
Untuk mahasiswa yang ingin mengerjakan soal dengan cepat dan tepat, ikuti strategi berikut:
Tentukan primary key sejak awal
Tulis semua ketergantungan fungsional secara eksplisit
Identifikasi apakah primary key tunggal atau komposit
Hilangkan ketergantungan parsial untuk mencapai 2NF
Hilangkan ketergantungan transitif untuk mencapai 3NF
Pastikan setiap tabel memiliki primary key yang jelas
Dengan mengikuti pola ini, Anda dapat menyelesaikan sebagian besar contoh soal normalisasi database dengan lebih sistematis.
Kesalahan Umum Mahasiswa dalam Normalisasi
Beberapa kesalahan yang sering terjadi antara lain:
Tidak membedakan antara ketergantungan parsial dan transitif
Tidak memisahkan tabel meskipun sudah jelas ada dependency
Menentukan primary key yang salah
Tidak menuliskan dependency secara lengkap
Untuk menghindari kesalahan tersebut, biasakan membuat daftar dependency sebelum memulai proses pemecahan tabel.
Latihan Tambahan untuk Mahasiswa
Latihan 1
Tabel Karyawan
NIP
Nama
Kode_Jabatan
Nama_Jabatan
Gaji
Jawaban singkat
Pisahkan tabel menjadi Karyawan dan Jabatan karena Nama_Jabatan dan Gaji bergantung pada Kode_Jabatan.
Latihan 2
Tabel Pesanan
No_Pesanan
Tanggal
Kode_Supplier
Nama_Supplier
Alamat_Supplier
Total
Jawaban singkat
Pisahkan Supplier ke tabel tersendiri karena atributnya bergantung pada Kode_Supplier, bukan pada No_Pesanan.
Kesimpulan
Contoh soal dan jawaban normalisasi database terbaru untuk latihan mahasiswa yang telah dibahas di atas menunjukkan bahwa proses normalisasi membutuhkan pemahaman yang kuat terhadap konsep ketergantungan fungsional, primary key, serta aturan 1NF, 2NF, dan 3NF.
penulis:ilham



Post Comment