Thursday, November 29, 2012

Normalisasi dan Functional Dependency

          Normalisasi adalah sebuah proses untuk meng-efienkan struktur tabel agar tidak terjadi anomali atau eror karena adanya ambiguitas. Dan perlunya dilakukan normalisasi adalah untuk mengoptimalisasi struktur struktur tabel, meningkatkan kecepatan proses, menghilangkan pemasukan data yang sama sehingga lebih efisien dalam penggunaan media penyimpanan, mengurangi redunansi, menghindari anomali dan meningkatkan integritas data.
Sedangakan bentuk normalisasi yang biasa di gunakan yaitu:
1.      First normal form (1NF)
2.      Second normal form(2NF)
3.      Third normal form(3NF)
4.      Boyce-codd normal form(BCNF)
5.      Four normal form(4NF)
6.      Five normal form(5NF)

Sedangkan langkah langkah untuk normalisasi digambarkan pada bagan berikut:





Sebelum saya menjelaskan lebih jauh tentang bentuk bentuk normalisasai, saya akan menjelaskan mengenai ketergantungan fungsional atau Function Dependency (FD). FD menggambarkan hubungan atau relasi antara atribut-atribut dalam suatu relasi dan simbol FD adalah è dibaca secara fungsional menentukan. Contohnya yaitu AèB , secara fungsional A menentukan B :

Macam-macam Fuction Dependency yaitu:
  • Full function dependency (ketergantungan penuh)


Yaitu ketergantungan secara penuh terhadap primary key. Contoh : {NIM, Nama}èNilai_UAS bukan full dependency, seharusnya NIMèNilai_UAS ini disebut full dependency. Jadi ketergantungan secara penuh yaitu ketergantungan hanya pada primary key bukan superkey.
  • Partially dependency (ketergantungan parsial)

Merupakan function dependency yang apabila sala satu atau lebih atribut dari A dapat dihilangkan dengan ketergantungan tetap dipertahankan. Contoh : NIM, namaèNilai_UAS, jika atribut nama di hilangkan maka ketergantungan tetap masih ada.
  • Transitive dependency (Ketergantungan Transitif)

Merupakan function dependency dimana X,Y,Z adalah atribut sebuah relasi  yang mana XèY dan YèZ, maka Z dikatakan sebagai transitive dependency terhadap X melalui Y. Contoh : NIP è {Nama, Jabatan, Gaji, kdCabang, AlmCabang}, kdCabangèAlmCabang.

Sedangkan penjelasan untuk bentuk-bentuk normalisasi adalah sebagai berikut:
1.      1NF (Bentuk normal pertama)
Yaitu suatu keadaan dimana setiap setiap field dalam tabel terisi semua dan tidak ada set atribut yang berulang atau ganda. Untuk memermudah pemahaman lihatlah contoh berikut :


1.      2NF (Bentuk normal kedua)
Dalam suatu tabel bentuk normal kedua akan terpenuhi jika data telah memenuhi bentuk 1 NF dan semua atribut bergantung (Functional Depedency) pada primary key, jadi dalam setiap tabel haruslah sudah di tentukan primary keynya. Apabila terdapat atribut yang tidak sepenuhnya bergantung pada primary key maka atribut tersebut haruslah dihilangkan atau dipindah (contoh No_klien pada tabel di bawah ini.)
Contoh :





1.      3NF (Bentuk Normal Ketiga )
             Bentuk normal ketiga terpenuhi jika telah memenuhi bentuk normal kedua dan tidak adanya ketergantungan transitif  yaitu sifat ketergantungan yang terjadi antara atribut non primary key:

Boyee-Codd Normal Form (BCNF)
Hampir sama dengan bentuk normal ketiga, hanya saja setiap atribut harus bergantung  fungsi(functiondependency) pada atribut super key.

2.      4NF (Bentuk Normal Keempat)
Bentuk normal yang telah memenuhi BCNF dan semua ketergantungan multivalue juga termasuk ketergantungan fungsional.

3.      5NF (Bentuk Normal Kelima)
Bentuk normal kelima disebut juga PJNF (Projection Join Normal Form), dilakukan dengan menghilangkan ketergantungan join yang bukan merupakan primary key.
            




No comments:

Post a Comment