Teknik Normalisasi


1.      Jelaskan tahapan normalisasi
Tahapan Normalisasi : Tahapan Normalisasi dimulai dari tahap ringan (1NF) hingga paling ketat (5NF). Biasanya hanya sampai pada tingkat 3NF atau BCNF karena sudah cukup memadai untuk menghasilkan tabel-tabel yang berkualitas baik. Urutannya : 1NF, 2NF, 3NF, BCNF, 4 NF, 5NF
1.      Bentuk Tidak Normal
·         Berupa relasi umum, sesuai kenyataan
·         Mencerminkan item data nyata
·         Mencerminkan bagian dari suatu sistem
·         Belum dapat digunakan sebagai database
·         Bentuk Flat Table menggambarkan jumlah  atribut
2.      Bentuk Normal Pertama (1NF) : Menghilangkan Perulangan Grup
Bentuk normal 1NF terpenuhi jika sebuah tabel tidak memiliki atribut bernilai banyak (multivalued attribute), atribut composite atau kombinasinya dalam domain data yang sama. Setiap atribut dalam tabel tersebut harus bernilai atomic (tidak dapat dibagi-bagi lagi).
Masalah yang muncul : Duplication, Inconsistency, Data Isolation, dan Un-Efficiency
3.      Bentuk Normal Kedua (2NF) : Menghilangkan Ketergantungan Parsial
·         Bentuk Normal 2NF terpenuhi dalam sebuah tabel jika telah memenuhi bentuk 1NF, dan semua atribut selain primary key, secara utuh memiliki Functional dependency pada primary key.
·         Sebuah tabel tidak memenuhi 2NF, jika ada atribut yang ketergantungannya (Functional Dependency) hanya bersifat parsial saja (hanya tergantung pada sebagian dari primary key).
·         Jika terdapat atribut yang tidak memiliki ketergantungan terhadap primary key, maka atribut tersebut harus dipindah atau dihilangkan.
·         beberapa masalah yang muncul yakni masalah :
Lose-Less Decomposition
Dependency Preservation.
Transitive Dependency. Maka perlu dilakukan langkah normalisasi bentuk ketiga (3NF).
4.      Bentuk Normal Ketiga (3NF) : Menghilangkan Ketergantungan Transitif
Bentuk normal 3NF terpenuhi jika telah memenuhi bentuk 2NF, dan jika tidak ada atribut non primary key yang memiliki ketergantungan terhadap atribut non primary key yang lainnya,
Untuk setiap Functional Dependency dengan notasi X-->A, maka : X harus menjadi superkey pada tabel tersebut atau A merupakan bagian dari primary key pada tabel tersebut
5.      Bentuk Normal Boyce-Code Form (BCNF) : Menghilangkan anomali-anomali hasil dari ketergantungan fungsional
·         Bentuk BCNF terpenuhi dalam sebuah tabel, jika untuk setiap Functional Dependency terhadap setiap atribut atau gabungan atribut dalam bentuk : X --> Y maka X adalah Super Key.
·         Tabel tersebut harus di dekomposisi berdasarkan Functional Dependency yang ada, sehingga X menjadi super key 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 membolehkan A sebagai bagian dari primary key
6.      Bentuk Normal Keempat (4NF) : Menghilangkan ketergantungan multivalue
·         Bentuk normal 4NF terpenuhi dalam sebuah tabel jika telah memenuhi bentuk BCNF, dan tabel tersebut tidak boleh memiliki lebih dari sebuah multivalued attribute.
·         Untuk setiap  multivalued attribute (MVD) juga harus merupakan Functional Dependenc
7.      Bentuk Normal Kelima : Menghilangkan anomali-anomali yang tersis
·         Bentuk normal 5NF terpenuhi jika memiliki sebuah loseloss decomposition menjadi tabel-tabel yang lebih kecil.
·         Jika 4 bentuk normal sebelumnya dibentuk berdasarkan Functional Dependency, 5NF dibentuk berdasarkan konsep Join Dependence. Yakni apabila sebuah tabel telah di dekomposisi menjadi tabel-tabel lebih kecil, harus bisa digabungkan lagi untuk membentuk tabel semula.
8.      Overnormalisasi
Analisa Overnormalisasi diperlukan jika :
·         Database ini digunakan untuk sistem multi user
·         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, dan lain-lain.
2.      Buat  penggunaan Teknik Normalisasi untuk contoh kasus basis data "Perpustakaan"
Data mahasiswa peminjam
Nama               :Nur Fatzria
NPM               :14117573
No.Telp           :081213141516
Jenis Kelamin  :P
id_pinjam
Kode_Buku
Judul_Buku
Pengarang
Penerbit
Tanggal_Pinjam
Tanggal_Kembali
P001
B001
Ayat-ayat cinta
Habiburrahman El Shirazy
Republika
11/01/2020
15/01/2020
P002
B002
Dia merupakan dilanku
Pipi Baiq
Pastel Books
11/01/2020
15/01/2020
P003
B003
Perahu Kertas
Dewi Lestari
Bentang Pustaka
16/01/2020
20/01/2020

Unnormalized Form
NPM
Nama
Kelas
id_pinjam
Kode_Buku
Judul_Buku
Pengarang
Penerbit
Tanggal_Pinjam
Tanggal_Kembali
14117573
Nur Fatzria
3KA88
P001
B001
B002
Ayat-ayat cinta
Dia merupakan dilanku
Habiburrahman
Pipi Baiq
Republika
Pastel Books
11/01/2020
11/01/2020
15/01/2020
15/01/2020
P002
B003
Perahu Kertas
Dewi Lestari
Bentang Pustaka
16/01/2020
20/01/2020



INF (Normalisasi Bentuk 1)
NPM
Nama
Kelas
id_pinjam
Kode_Buku
Judul_Buku
Pengarang
Penerbit
Tanggal_Pinjam
Tanggal_Kembali
14117573
Nur Fatzria
3KA88
P001
B001
Ayat-ayat cinta
Habiburrahman El Shirazy
Republika
11/01/2020
15/01/2020
14117573
Nur Fatzria
3KA88
P001
B002
Dia merupakan dilanku
Pipi Baiq
Pastel Books
11/01/2020
15/01/2020
14117573
Nur Fatzria
3KA88
P002
B003
Perahu Kertas
Dewi Lestari
Bentang Pustaka
16/01/2020
20/01/2020

2NF (Normalisasi Bentuk 3)
Tabel Mahasiswa
NPM
Nama
Kelas
14117573
Nur Fatzria
3KA88

Tabel Peminjaman
NPM
id_pinjam
Kode_Buku
Judul_Buku
Pengarang
Penerbit
Tanggal_Pinjam
Tanggal_Kembali
14117573
P001
B001
Ayat-ayat cinta
Habiburrahman El Shirazy
Republika
11/01/2020
15/01/2020
14117573
P001
B002
Dia merupakan dilanku
Pipi Baiq
Pastel Books
11/01/2020
15/01/2020
14117573
P002
B003
Perahu Kertas
Dewi Lestari
Bentang Pustaka
16/01/2020
20/01/2020

3NF (Normalisasi Bentuk 3)
Tabel Buku
Kode_Buku
Judul_Buku
Pengarang
Penerbit
Tanggal_Pinjam
Tanggal_Kembali
B001
Ayat-ayat cinta
Habiburrahman El Shirazy
Republika
11/01/2020
15/01/2020
B002
Dia merupakan dilanku
Pipi Baiq
Pastel Books
11/01/2020
15/01/2020
B003
Perahu Kertas
Dewi Lestari
Bentang Pustaka
16/01/2020
20/01/2020

Tabel Pinjam

NPM
id_pinjam
Kode_Buku
Tanggal_Pinjam
Tanggal_Kembali
14117573
P001
B001
11/01/2020
15/01/2020
14117573
P001
B002
11/01/2020
15/01/2020
14117573
P002
B003
16/01/2020
20/01/2020


Komentar

Postingan Populer