http://i186.photobucket.com/albums/x100/amoebios_4m/nexuiz_default_cursor_1c.png Mutiara ilmu: Boyce-Code Normal Form (BCNF)

Thursday, November 15, 2012

Boyce-Code Normal Form (BCNF)

???????????Apa itu Boyce-Code Normal Form (BCNF) itu?????????????
BCNF tidak lepas dari Tahapan Normalisasi, serta apa itu Normalisasi?
Normalisasi adalah Proses pembentukan struktur basis data sehingga sebagian besar ambiguity(bermakna lebih dari satu)bisa dihilangan.Tahap Normalisasi dimulai dari tahap paling ringan bentuk normalisasi pertama(1NF)hingga paling ketat(5NF).Biasanya hanya sampai pada tingkat 3NF atau BCNF karena sudah cukup memadai untuk menghabiskan tabel-tabel yang berkualitas baik.
Sebuah tabel dikatakan baik(efisien)atau normal jika memenuhi 4 kriteria sebagai berikut:
  1. Jika ada dekomposisi(penguraian)tabel,maka dekomposisinya harus dijamin aman(Lossless-join Decomposition).Artinya,setelah tabel tersebut diuraikan/didekomposisi menjadi tabel-tabel baru,tabel-tabel baru tersebut bisa menghasilkan tabel semula dengan sama persis.
  2. Terpeliharanya ketergantungan fungsional pada saat perubahan data(Dependency Preservation)
  3. Tidak melanggar Boyce-Code Normal Form(BCNF) akan dijelaskan kemudian)
  4. Jika tidak terpenuhi BCNF,minimal tidak melanggar Normal tahap tiga.
Tahap_Tahap Normalisasi
  • Aturan aturan normalisasi dinyatakan dalam istilah bentuk normal.
  • Bentuk normal adalah suatu aturan yang dikenal pada satu atau lebih tabel/relasi dalam basis data dan harus dipnuhi oleh tabel/relasi tersebut pada level-level normalisasi.
 Tahapanya;
  1. Un-Normalized Form
  2. First Normalized Form
  3. Seconds Normalized Form
  4. Thirds Normalized Form
  5. Boice-Code Normalized Form--> BCNF
  6. MultiValued Dependency dan Forth Normalized Form
  7. Join Dependency dan Fifth Normalized Form--> 5NF atau PJ/NF
  8. OverNormalisasi
 Betuk-Bentuk Normal
  1. Bentuk Normal Tahap pertama(1st Normal Form/1NF)
  2. Bentuk Normal Tahap kedua(2nd Normal Form/2NF)
  3. Bentuk Normal Tahap (3rd Normal Form/3NF)
  4. Boyce-Code Normal Form(BCNF)
  5. Bentuk Normal Tahap (4th Normal Form/4NF)
  6. Bentuk Normal Tahap(5th Normal Form/5NF)
Berikut ini saya akan membahas lebih detail dengan Boyce-Code Normal Form(BCNF) dengan disertai video pembahasan mengenai  bentuk BCNF
Pembahasan
Bentuk BCNF terpenuhi jika dalam sebuah tabel,jika untuk setiap functional dependency terhadap setiap atribut atau gabungan atribut dalam bentuk :    X---> Y maka X adalah super key 
Jika tabel tersebut belum menjadi super key maka harus didekomposisikan  berdasarkan functional dependency yang ada dari tabel tabel hasil dekomposisi.Setiap tabel dalam BCNF merupakan 3NF,akan tetapi setiap 3NF belum tentu termasuk BCNF.Perbedaannya untuk functional dependency X-->A,BCNF tidak diperbolehkan A sebagai bagian dari primary key(yang digunakan untuk berelasi dengan tabel yang lain).

 Bentuk Tabel BCNF
 Keterangan: Semua determinan adalah anggota Candidate Key,terdapat Tabel yang dijadikan master merujuk pada Tabel SJJ

Bentuk Tahap 4th NF/MVD dan PJNF
Jika terpenuhi pada tahap BCNF maka tabel tersebut tidak boleh memiliki lebih dari sebuah multivalued atribute.Untuk setiap multivalued dependencies(MVD) juga harus merupakan functional dependencies.

Bentuk Normal Tahap Kelima(5th Normal Form/5NF)
Jika terpenuhi harus menjadi tabel-tabel yang kecil lossless decomposition.Jika 4 bentuk normal sebelumnya dibentuk berdasarkan functional dependency,5NF dibentuk berdasarkan konsep join dependence.(apabila sebuah tabel telah didekomposisi menjadi tabel lebih kecil,harus bisa digabungkan lagi )untuk membentuk tabel semula.


Overnormalisasi
Analisa Overnormalisasi diperlukan jika:
  • Database ini digunakan untuk sistem multiuser
  • Tabel Tabel yang sudah normal ini digabungkan dengan fungsi lain yang ada di lapangan,misalnya: untuk fungsi retur,untuk fungsi inventori,untuk fungsi sales order maupun order pembelian,untuk fungsi keamanan database,Dll






2 comments: