A. Landasan Teori
1. Memahami Normalisasi
Normalisasi merupakan suatu proses untuk mengubah suatu tabel yang memiliki masalah tertentu ke dalam dua buah tabel atau lebih yang tidak lagi memiliki masalah tersebut (Abdul Kadir, 2008). Ada juga yang berpendapat normalisasi adalah proses penyusunan tabel – tabel yang tidak redundan (dobel), yang dapat menyebabkan anomali yaitu proses basis data yang memberikan efek samping yang tidak diharapkan (Misalnya menyebabkan data tidak konsisten atau membuat data hilang ketika data yang lain dihapus).Normalisasi digunakan sebagai teknik analisis data pada database, sehingga dapat diketahui apakah pembuatan tabel – tabel yang terelasi dalam database itu sudah baik. Kondisi sudah baik yaitu suatu kondisi pada saat proses insert, update, delete dan modifikasi pada satu atau beberapa atribut suatu tabel tidak berpengaruh terhadap integritas data yang lain dalam satu hubungan relasi database.
2. Langkah – langkah Normalisasi
Langkah – langkah Normalisasi terdiri dari :
- Unnormalization Form
Bentuk yang tidak normal dimaksudkan suatu kumpulan data yang akan diolah yang diperoleh dari format – format yang beraneka ragam, masih terdapat duplikasi, bisa saja tidak sempurna atau tidak lengkap, dan sesuai fakta lapangan. Bentuk ini didapat dari dokumen yang ada dilapangan atau manual dengan atribut bukan nilai sederhana.
- First Normal Form (1NF)
Suatu tabel dianggap normal ke satu (1NF) jika :
- Tidak terdapat baris yang bernilai ganda atau duplikat.
- Masing - masing baris bernilai tunggal dan tidak bernilai null.
Langkah – langkah :
- Isikan setiap data bernilai tunggal dan tidak null
- Membuang perulangan data dalam satu baris dengan baris yang lain.
- Membuang perulangan data dalam satu baris dengan baris yang lain.
- Second Normal Form (2NF)
Bentuk normal kedua (2NF) terpenuhi jika :
- Harus telah berbentuk normal pertama (1NF).
- pada sebuah tabel semua atribut yang tidak termasuk dalam primary key
memiliki ketergantungan fungsional pada primary key secara utuh.
Suatu atribut dikatakan ketergantungan fungsional jika harga pada at ribut tersebut menentukan harga dari atribut yang lain. Misalnya, nim → mhs_nama.
Langkah – langkah :
- Jika terdapat atribut yang bergantung terhadap atribut bukan kunci utama dan
merupakan atribut kunci maka pecah menjadi table baru.
- Third Normal Form (3NF)
Bentuk normal ketiga (3NF) terpenuhi jika :
- Harus telah berbentuk normal kedua (2NF).
- Tidak terdapat anomali – anomali hasil dari ketergantungan transitif.
ketergantungan transitif adalah ketergantungan fungsional antara 2 atau lebih atribut bukan kunci.
Langkah – langkah :
- Pastikan semua atribut non kunci bergantung penuh terhadap atribut kunci.
- Pisahkan menjadi tabel baru jika menemukan ketergantungan transitif dalam
tabel tersebut.
- Boyce Codd Normal Form (BCNF)
Secara praktis tujuan analisis database cukup sampai pada 3NF, Akan tetapi dalam
suatu kasus tertentu lebih baik bila dapat mencapat BCNF. Beberapa pemikir menyamakan antara 3NF dengan BCNF. Bentuk normal BCNF terpenuhi jika :
- Masing-masing atribut utama bergantung fungsional penuh pada masing kunci
dimana kunci tersebut bukan bagiannya.
- Setiap determinan atribut-atribut relasi adalah kunci relasi atau kandidat
kunci.
- BCNF dapat memiliki lebih dari satu kunci.
- BCNF hampir sama dengan 3NF.
Langkah – langkah :
- Hilangkan dependensi pada bukan kunci kandidat.
- Fourth Normal Form (4NF)
Dilakukan jika terdapat anomali pada (3NF)
- Fifth Normal Form (5NF)
Langkah ini untuk memecah relasi menjadi dua sehingga relasi tersebut tidak
digabungkan kembali manjadi satu dan jika terdapat anomali pada (5NF)
3. Contoh permasalahan dalam Normalisasi
Terdapat suatu hasil kartu studi yang bersifat manual dan akan kita anilisis
menggunakan teknik Normalisasi sebagai berikut :
Tahap anilisis dengan Normalisasi :
Biasanya ketika mencapai pada tahap Third Normal Form (3NF) sudah memenuhi syarat untuk digunakan dalam pembuatan aplikasi database. Namun apabila masih terdapat anomali maka bisa dilanjutkan ke tahap berikutnya sampai
tidak terdapat anomali.
- Hasil akhir dari Normalisasi sebagai berikut :
Adapun kelemahan dari 1NF ini sebagai berikut :
- Inserting (Memasukkan data)
Kita tidak dapat memasukkan kode dan nama supplier saja tanpa ada transaksi
pembelian, sehingga supplier baru dapat masuk bila ada transaksi pembelian.
- Deleting (Menghapus data)
Bila satu baris data transaksi dihapus, maka akan berakibat menghapus pada data supplier. Padahal data suplier masih diperlukan pada transaksi berikutnya. Misalkan transaksi di hapus berdasarkan no_faktur =6, maka akan menghapus supplier=4(rodi).
- Updating (Mengubah data)
Kode dan nama pada supplier terlihat tertulis berulang-ulang 3(biti). Jika kita ingin merubah nama supplier tersebut maka harus mengganti disemua baris yang mengandung supplier 3(biti), jika ada yang terlewat data tidak konsisten lagi.
Karena masih terdapat kesalahan maka perlu dilakukan tahap berikutnya.
- Tahap Second Normal Form (2NF)
Pembentukan bentuk normal kedua ini dilakukan dengan mencari kunci-kunci field yang dapat dipakai sebagai patokan dalam pencarian dan sifatnya unik. Berdasarkan k ondisi di atas dapat diambil kunci kandidat yaitu : No_faktur, Kode_supplier, dan kode_barang.
- Tahap Third Normal Form (3NF)
Syarat :
Setiap atribut yang bukan kunci harus bergantung hanya pada atribut kunci (primary key) secara menyeluruh. Hilangkan juga anomali – anomali yang masih mempunyai ketergantungan fungsional. Pada tabel supplier terdapat kolom kota, perubahan kota milik supplier dapat menyebabkan data tidak konsisten sekiranya hanya satu baris yang diubah sementara seharusnya ada beberapa baris. Relasi tersebut juga terkena anomaly penyisipan dan penghapusan.
2. Bentuk 2NF
4. Bentuk 3NF
5. Kesimpulan
Berdasarkan pada materi dan data yang ada, maka dapat disimpulkan bahwa Normalisasi merupakan suatu proses untuk mengubah suatu tabel yang memiliki masalah tertentu ke dalam dua buah tabel atau lebih yang tidak lagi memiliki masalah tersebut. Normalisasi terbagi menjadi beberapa bagian yang mempunyai syarat dan langkah-langkah penormalisasian masing-masing namun masih tetap terkait satu sama lain. Diantara bentuk dari normalisasi adalah sebagai berikut : 1NF, 2NF, 3NF (BCNF), 4NF, 5NF, 6NF dan 7NF.
6. Daftar Pustaka
Nugroho, Adi. 2011. PERANCANGAN dan IMPLEMENTASI SISTEM BASIS DATA. Yogyakarta : ANDI OFFSET
Nugroho, Adi. 2011. PERANCANGAN dan IMPLEMENTASI SISTEM BASIS DATA. Yogyakarta : ANDI OFFSET
0 komentar:
Posting Komentar