NORMALISASI

++
Tujuan dari normalisasi
Ø Untuk
menghilangkan kerangkapan data
Ø Untuk
mengurangi kompleksitas
Ø Untuk
mempermudah pemodifikasian data
C Proses Normalisasi
q Data
diuraikan dalam bentuk tabel, selanjutnya
dianalisis berdasarkan persyaratan tertentu ke beberapa tingkat.
q Apabila
tabel yang diuji belum memenuhi persyaratan tertentu, maka tabel tersebut perlu
dipecah menjadi beberapa tabel yang lebih sederhana sampai memenuhi bentuk yang
optimal.
Tahapan
Normalisasi

Menghilangkan
perulangan group

Menghilangkan
ketergantungan sebagian

Menghilangkan
ketergantungan transitif
Bentuk
Normal Ketiga (3NF)

ketergantungan fungsional

Menghilangkan
Ketergantungan Multivalue

Menghilangkan
anomali-anomali yang tersisa
Bentuk
Normal Kelima

Ketergantungan Fungsional
Definisi :
Atribut Y pada relasi R dikatakan
tergantung fungsional pada atribut X (R.X ---> R.Y), jika dan hanya jika
setiap nilai X pada relasi R mempunyai tepat satu nilai Y pada R.
Misal, terdapat skema database PEMASOK-BARANG.
Pemasok (No-pem, Na-pem)
Tabel PEMASOK-BARANG

![]() |
P01 Baharu
P02 Sinar
P03 Harapan
Ketergantungan fungsional dari tabel PEMASOK-BARANG
adalah :
No-pem
---> Na-pem
Ketergantungan Fungsional Penuh
Definisi :
Atribut Y pada relasi R dikatakan
tergantung fungsional penuh pada atribut X pada relasi R, jika Y tidak
tergantung pada subset dari X ( bila
X adalah key gabungan)
Contoh :
KIRIM-BARANG( No-pem, Na-pem, No-bar, Jumlah)

No-pem Na-pem No-bar
Jumlah
![]() |
P01 Baharu B01 1000
P01 Baharu
B02 1500
P01 Baharu
B03 2000
P02 Sinar B03
1000
P03 Harapan B02 2000
Ketergantungan fungsional :
No-pem --> Na-pem
No-bar, No-pem
--> Jumlah (Tergantung penuh thd keynya)
Ketergantungan Transitif
Definisi :



Contoh :
![]() |
No-pem
|
Kode-kota
|
Kota
|
No-bar
|
Jumlah
|
P01
|
1
|
Jakarta
|
B01
|
1000
|
P01
|
1
|
Jakarta
|
B02
|
1500
|
P01
|
1
|
Jakarta
|
B03
|
2000
|
P02
|
3
|
Bandung
|
B03
|
1000
|
P03
|
2
|
Surabaya
|
B02
|
2000
|

![]() |




Ketergantungan fungsional :

Kode-kota Kota
, maka
No-pem Kota
Bentuk Normal
Kesatu (1NF)
Suatu relasi dikatakan sudah
memenuhi Bentuk Normal Kesatu bila
setiap data bersifat atomik
yaitu setiap irisan baris dan kolom hanya mempunyai satu nilai data
Tabel KIRIM-1 (Unnormal)

No-pem Kode-kota Kota No-bar Jumlah

P01 1 Jakarta B01 1000
B02 1500
B03 2000
P02 3 Bandung B03 1000
P03 2
Surabaya B02 2000
Tabel KIRIM-2 (1NF)

No-pem Kode-kota Kota No-bar Jumlah

P01 1 Jakarta B01 1000
P01 1 Jakarta B02 1500
P01 1 Jakarta B03 2000
P02 3 Bandung
B03 1000
P03 2 Surabaya B02 2000
Diagram Ketergantungan Fungsional
![]() |











Bentuk Normal Kedua (2NF)
Suatu relasi dikatakan sudah memenuhi
Bentuk Normal Kedua bila relasi tersebut
sudah memenuhi bentuk Normal kesatu, dan atribut yang bukan key sudah
tergantung penuh terhadap keynya.
Tabel PEMASOK-1
(2NF)

No-pem Kode-kota
Kota

P01 1
Jakarta
P02 3
Bandung
P03 2 Surabaya
Bentuk Normal
Ketiga (3NF)
Suatu relasi dikatakan sudah memenuhi
Bentuk Normal ketiga bila relasi tersebut sudah memenuhi bentuk Normal kedua
dan atribut yang bukan key tidak
tergantung transitif terhadap keynya.
Tabel KIRIM-3 (3NF)

No-pem No-bar Jumlah

P01 B01 1000
P01 B02 1500
P01 B03 2000
P02 B03 1000
P03 B02 2000
Tabel PEMASOK-2
(3NF) Tabel PEMASOK-3 (3NF)


No-pem Kode-kota Kode-kota Kota
![]() |
![]() |
P01 1 1 Jakarta
P02 3 2 Surabaya
P03 2 3 Bandung
Normalisasi pada database perkuliahan
Asumsi :
q Seorang mahasiswa dapat mengambil beberapa mata kuliah
q Satu mata kuliah dapat diambil oleh lebih dari satu mahasiswa
q Satu mata kuliah hanya diajarkan oleh satu dosen
q Satu dosen dapat
mengajar beberapa mata kuliah
q Seorang mahasiswa
pada mata kuliah tertentu hanya
mempunyai satu nilai
Tabel
MAHASISWA-1 ( Unnormal )
No-Mhs
|
Nama- Mhs
|
Jurusan
|
Kode- MK
|
Nama-MK
|
Kode-Dosen
|
Nama-Dosen
|
Nilai
|
2683
|
Welli
|
MI
|
MI350
|
Manajamen DB
|
B104
|
Ati
|
A
|
|
|
|
MI465
|
Analsis
Prc. Sistem
|
B317
|
Dita
|
B
|
5432
|
Bakri
|
Ak.
|
MI350
|
Manajemen
DB
|
B104
|
Ati
|
C
|
|
|
|
AKN201
|
Akuntansi
Keuangan
|
D310
|
Lia
|
B
|
|
|
|
MKT300
|
Dasar Pemasaran
|
B212
|
Lola
|
A
|
Tabel MAHASISWA-2 ( 1NF )
No-Mhs |
Nama-
Mhs
|
Jurusan
|
Kode-MK |
Nama-MK
|
Kode-Dosen
|
Nama-
Dosen
|
Nilai
|
2683
|
Welli
|
MI
|
MI350
|
Manajamen DB
|
B104
|
Ati
|
A
|
2683
|
Welli
|
MI
|
MI465
|
Analsis
Prc. Sistem
|
B317
|
Dita
|
B
|
5432
|
Bakri
|
Ak.
|
MI350
|
Manajemen
DB
|
B104
|
Ati
|
C
|
5432
|
Bakri
|
Ak.
|
AKN201
|
Akuntansi
Keuangan
|
D310
|
Lia
|
B
|
5432
|
Bakri
|
Ak.
|
MKT300
|
Dasar
Pemasaran
|
B212
|
Lola
|
A
|
Diagram Ketergantungan
Fungsional
![]() |

![]() |



No-Mhs Jurusan




![]() |






![]() |

Tabel KULIAH (2NF)
Kode-MK |
Nama-MK
|
Kode-Dosen
|
Nama-Dosen |
MI350
|
Manajamen DB
|
B104
|
Ati
|
MI465
|
Analsis Prc. Sistem
|
B317
|
Dita
|
AKN201
|
Akuntansi Keuangan
|
D310
|
Lia
|
MKT300
|
Dasar Pemasaran
|
B212
|
Lola
|
Tabel MAHASISWA-3 (3NF)
No-Mhs |
Nama-Mhs
|
Jurusan
|
2683
|
Welli
|
MI
|
5432
|
Bakri
|
Ak.
|
Tabel NILAI (3NF)
No-Mhs |
Kode MK |
Nilai
|
2683
|
MI350
|
A
|
2683
|
MI465
|
B
|
5432
|
MI350
|
C
|
5432
|
AKN201
|
B
|
5432
|
MKT300
|
A
|
Tabel MATAKULIAH (3NF)
Kode-MK
|
Nama-MK
|
Kode-Dosen
|
MI350
|
Manajamen DB
|
B104
|
MI465
|
Analsis Prc. Sistem
|
B317
|
AKN201
|
Akuntansi Keuangan
|
D310
|
MKT300
|
DasarPemasaran
|
B212
|
Tabel DOSEN (3NF)
Kode- Dosen
|
Nama-Dosen
|
B104
|
Ati
|
B317
|
Dita
|
B310
|
Lia
|
B212
|
Lola
|
Tidak ada komentar:
Posting Komentar