Senin, 13 Juni 2011

NORMALISASI ( LANJUTAN )


Bentuk Normal (Normalized Form)
         Aturan-aturan normalisasi dinyatakan dalam istilah Bentuk Normal.
         Bentuk Normal adalah suatu aturan yang dikenakan pada relasi-relasi dalam database dan harus dipenuhi oleh relasi-relasi tersebut pada level-level normalisasi, seperti:
        Bentuk Normal Kesatu (1NF)
        Bentuk Normal Kedua (2NF)
        Bentuk Normal Ketiga (3NF)
        Bentuk Normal Boyce-Codd (BCNF)
        Bentuk Normal Keempat (4NF)
        Bentuk Normal Kelima (5NF)
         Suatu relasi dikatakan berada dalam bentuk normal tertentu, jika memenuhi kondisi-kondisi tertentu.

         Misalnya, suatu relasi berada dalam bentuk normal kesatu (1NF), jika dan hanya jika setiap atribut bernilai tunggal untuk setiap baris.
         Bentuk normal kesatu hingga ketiga (dibuat oleh E.F. Codd) merupakan bentuk normal yang umum digunakan.
         Artinya, pada kebanyakan relasi bila ketiga bentuk normalisasi telah terpenuhi maka persoalan anomali (penyimpangan atau error atau inkonsistensi data) tidak akan muncul lagi.
         Bentuk normal Boyce-Codd (BCNF) merupakan revisi terhadap bentuk normal ketiga.
         Bentuk normal 4NF dan 5NF (dikemukakan oleh R. Fagin) hanya digunakan pada kasus-kasus khusus, yaitu pada relasi yang mengandung ketergantungan nilai banyak (multivalue dependent).
Bentuk-bentuk normal sering digambarkan sebagai berikut :
         Gambar sebelumnya menjelaskan bahwa setiap level normalisasi bergantung pada level sebelumnya.

         Misalnya, bentuk normal 2NF pasti memenuhi bentuk normal 1NF, bentuk normal 3NF pasti memenuhi bentuk normal 2NF, dan seterusnya.

         Semakin dalam levelnya, relasi mempunyai kecenderungan lebih baik dalam hal menangani anomali.
1. Bentuk Tidak Normal (Unnormalized Form)

         Bentuk tidak normal (Unnormalized Form) merupakan kumpulan data yang akan direkam, tidak ada keharusan mengikuti suatu format tertentu.

         Dapat saja data tidak lengkap atau terduplikasi.

         Data dikumpulkan apa adanya sesuai dengan saat memasukkan data (data input).
2. Bentuk Normal Ke-Satu (1NF/First Normal Form)
           
         Suatu relasi 1NF, jika dan hanya jika sifat dari setiap relasi atributnya bersifat atomik.
         Atom adalah zat terkecil yang masih memiliki sifat induknya, bila dipecah lagi maka ia tidak memiliki sifat induknya.

         Ciri-Ciri 1NF :
        Setiap data dibentuk dalam flat file, data dibentuk dalam satu record demi satu record nilai dari field berupa “atomic value”.
        Tidak ada set atribut yang berulang atau bernilai ganda.
        Tiap field hanya satu pengertian.
3. Bentuk Normal Ke-Dua (2NF/Second Normal Form)

Bentuk normal kedua mempunyai syarat yaitu bentuk data telah memenuhi kriteria bentuk normal kesatu. Atribut bukan kunci haruslah bergantung secara fungsi pada kunci utama/primary key. Sehingga untuk membentuk normal kedua haruslah sudah ditentukan kunci-kunci field. Kunci field haruslah unik dan dapat mewakili atribut lain yang menjadi anggotanya.
Misal :
Dari  contoh relasi DATA_SISWA pada 1NF terlihat bahwa primary key adalah no_siswa. Nama siswa dan PA bergantung fungsi pada no_siswa, tetapi kode_kelas bukanlah fungsi dari siswa, maka relasi DATA_SISWA dipecah menjadi 2 (dua), yaitu relasi SISWA dan relasi AMBIL_KELAS.
4.  Bentuk Normal Ke-Tiga (3NF/Third Normal Form)

            Untuk menjadi bentuk normal ketiga maka relasi haruslah dalam bentuk normal kedua dan semua atribut bukan primer tidak punya hubungan yang transitif. Dengan kata lain, setiap atribut bukan kunci haruslah bergantung hanya pada primary key dan pada primary key secara menyeluruh.
            Contoh pada bentuk normal kedua di atas termasuk juga bentuk normal ke tiga karena seluruh atribut yang ada di situ bergantung penuh pada primary key-nya.
5. Boyce-Codd Normal Form (BCNF)
           
            BCNF mempunyai paksaan yg lebih kuat dari bentuk normal ketiga. Untuk menjadi BCNF, relasi harus dalam bentuk normal ketiga dan setiap atribut harus bergantung fungsi pada atribut superkey.
           
            BCNF merupakan bentuk normal sebagai perbaikan terhadap 3NF atau dapat juga dikatakan sebagai bentuk normal 3NF revisi.

            Suatu relasi yang memenuhi BCNF selalu memenuhi 3NF, tetapi tidak untuk sebaliknya, dimana suatu relasi yang memenuhi 3NF belum tentu memenuhi BCNF.
6. Bentuk Normal Ke-Empat (4NF/Fourth Normal Form)
           
            Relasi R dikatakan mempunyai bentuk 4NF, jika dan hanya jika relasi tersebut juga termasuk BCNF dan semua ketergantungan multivalue adalah juga ketergantungan fungsional.

7. Bentuk Normal Ke-Lima (5NF/Fifth Normal Form)
           
            Disebut juga PJNF (Projection Join Normal Form) dari 4NF dilakukan dengan menghilangkan ketergantungan join yang bukan merupakan kunci kandidat.
EFEK – EFEK NORMALISASI

         Pembahasan tentang normalisasi seolah-olah mampu memberikan solusi yang tidak akan pernah mengakibatkan efek samping.

         Pada kenyataannya, normalisasi juga mengakibatkan beberapa efek samping yang tidak diharapkan, seperti masalah aturan baku dalam sistem database dan ketidakefisienan (inefisiensi) dalam menampilkan kembali data tersebut.
Langkah-langkah Pembentukan Normalisasi :

Ø         Step 1: bentuk unnormalized (dalam bentuk ini masukkan
               semua data tanpa terkecuali, walaupun data-data tsb
               ganda, bagian yang ganda tidak perlu dituliskan kembali
Ø      Step 2 : bentuk 1NF (dalam bentuk ini, pisahkan semua
               data tsb menjadi data miliknya sendiri dalam satu tabel,
               semua record harus lengkap adanya
  1. Step 3 : bentuk 2NF (dalam bentuk ini, tentukan kunci-
               kunci field (bersifat unik) yang dapat digunakan sebagai
               patokan dalam pencarian data, dekomposisi menjadi
               beberapa tabel dgn melihat functional dependent, lalu
               beri nama tabel dan primary key serta berikan bentuk        
               relasinya).
  1.    Step 4 : bentuk 3NF (dalam bentuk ini, foreign key harus
               dipisahkan dalam tabel yang berbeda sehingga setiap
               tabel tidak mempunyai field yang bergantung transitif
               melainkan harus bergantung sepenuhnya terhadap
               primary key).
Ø      Step 5 : Pengujian dengan data contoh (pengujian di sini
               digunakan untuk memastikan kebenaran isi tabel dan
               hubungan antar-tabel tersebut. Untuk itu ujilah bahwa
               setiap tabel haruslah mempunyai hubungan dengan tabel
               yang lainnya.).

Share

Twitter Delicious Facebook Digg Stumbleupon Favorites