Anda di halaman 1dari 35

NORMALISASI By : Rahimi Fitri, S.

Kom,
M.Kom
TUJUAN NORMALISASI
Untuk menghilangkan kerangkapan data

Untuk mengurangi kompleksitas

Untuk mempermudah pemodifikasian data


PENGERTIAN NORMALISASI
Normalisasi adalah proses untuk mengubah suatu relasi yang
memiliki masalah tertentu ke dalam dua buah relasi atau lebih
yang tidak memiliki masalah tersebut
Normalisasi merupakan teknik analisis data yang
mengorganisasikan atribut-atribut data dengan cara
mengelompokkan sehingga terbentuk entitas yang non-redundant,
stabil, dan fleksible
Normalisasi dilakukan sebagai uji coba pada suatu relasi secara
berkelanjutan untuk menentukan apakah relasi itu sudah baik, yaitu
dapat dilakukan proses insert,update, delete, dan modifikasi pada
satu atau beberapa atribut tanpa mempengaruhi integritas data
dalam relasi tersebut.
Masalah yang dimaksud sering disebut dengan istilah anomali
ANOMALI
Adalah sebuah proses pada basis data yang memberikan efek
samping yang tidak diharapkan, misalnya ketidakkonsistenan data
atau membuat sesuatu data menjadi hilang ketika data lain dihapus
Ada tiga jenis anomali :
 Anomali peremajaan
 Anomali penyisipan
 Anomali penghapusan
ANOMALI PEREMAJAAN
Terjadi jika terjadi pengubahan sejumlah data yang mubazir, tetapi tidak seluruhnya
diubah. Dapat dilihat pada contoh berikut ini :

Pemasok Kota Barang Jumlah


Kartika Banjarmasin Monitor 10
Citra Banjarbaru ZIP-Drive 4
Candra Martapura Keyboard 5
Citra Banjarbaru Mouse 25

Seandainya pemasok citra berpindah kekota lain misalnya Banjarmasin dan


pengubahan hanya dilakukan pada data pertama maka hasilnya :

Pemasok Kota Barang Jumlah


Kartika Banjarmasin Monitor 10
Citra Banjarmasin ZIP-Drive 4
Terjadi ketidak-
Candra Martapura Keyboard 5
konsistenan
Citra Banjarbaru Mouse 25 data
ANOMALI PENYISIPAN
Terjadi jika pada saat penambahan hendak dilakukan ternyata ada elemen data yang
masih kosong dan elemen data tersebut justru menjadi kunci. Contoh :

Sebagai Kunci

Kuliah Ruang Tempat


Jaringan komputer Merapi Gedung utara Relasi Yang terjadi :
Pengantar Basis Data Merbabu Gedung utara Kuliah menggunakan
Matematika I Rama Gedung Selatan ruang tertentu
Sistem Pakar Sinta Gedung selatan
Suatu ruang berada pada
Kecerdasan Buatan Merapi Gedung Utara
tempat tertentu

Masalahnya, bagaimana cara menyimpan data baru bahwa terdapat ruang baru dengan
nama Arjuna yang bertempat pada gedung selatan? Penyisipan tidak dapat dilakukan
mengingat tidak ada informasi Kuliah yang menggunakan ruang tersebut. Akibatnya ada
data ruang baru yang tidak dapat dicatat.
ANOMALI PENGHAPUSAN
Terjadi jika suatu baris yang tidak terpakai dihapus dan sebagai akibatnya terdapat data
lain yang hilang, contoh :

Kuliah Ruang Tempat


Jaringan komputer Merapi Gedung utara
Pengantar Basis Data Merbabu Gedung utara
Dihapus
Matematika I Rama Gedung Selatan
Sistem Pakar Sinta Gedung selatan
Kecerdasan Buatan Merapi Gedung Utara

Jika kuliah pengantar basis data dihapus, maka data yang menyatakan bahwa Ruang
merbabu yang bertempat di Gedung Utara juga akan terhapus
DEKOMPOSISI
Dekomposisi artinya proses pemecahan sebuah relasi menjadi dua
relasi atau lebih.
 Dekomposisi Tak Hilang: tak ada informasi yang hilang ketika relasi dipecah menjadi
relasi-relasi lain.
 Dekomposisi Hilang: ada informasi yang hilang ketika relasi dipecah menjadi relasi-
relasi lain.
CONTOH DEKOMPOSISI
NIM NAMA PROGRAM_STUDI
95001 ALI EKONOMI
95002 EDI EKONOMI
95003 ALI FISIKA

Dekomposisi Tak Hillang


NIM NAMA NIM PROGRAM_STUDI
95001 ALI 95001 EKONOMI
95002 EDI 95002 EKONOMI
95003 ALI 95003 FISIKA

Dekomposisi Hillang
NIM NAMA NAMA PROGRAM_STUDI
95001 ALI ALI EKONOMI
95002 EDI EDI EKONOMI
95003 ALI ALI FISIKA
PROSES NORMALISASI
Data diuraikan dalam bentuk tabel, selanjutnya dianalisis
berdasarkan persyaratan tertentu ke beberapa tingkat.
Apabila tabel yang diuji belum memenuhi persyaratan tertentu,maka
tabel tersebut perlu dipecah menjadi beberapa tabel yang lebih
sederhana sampai memenuhi bentuk yang optimal.
BENTUK NORMAL
Bentuk Normal adalah suatu aturan yang dikenakan pada relasi-relasi
dalam basis data dan harus dipenuhi oleh relasi-relasi tersebut pada level-
level normalisasi.
Bentuk normal pertama sampai ketiga(Oleh E.F. Codd) merupakan bentuk
umum pada kebanyakan relasi, bila ketiga bentuk normal telah dipenuhi,
maka persoalan anomali tidak akan muncul lagi.
 Bentuk Normal Pertama (1NF)
 Bentuk Normal Kedua (2 NF)
 Bentuk Normal Ketiga (3 NF)
 Bentuk Normal Keempat (4 NF)
 Bentuk Normal Kelima (5 NF)
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

Ketergantungan fungsional
dari tabel PEMASOK-
BARANG adalah :
No-pem ---> Na-pem
KETERGANTUNGAN FUNGSIONAL
PENUH
Definisi :
Atribut Y pada relasi R dikatakan tergantung fungsional penuhp ada
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)
KETERGANTUNGAN FUNGSIONAL
PENUH

Ketergantungan fungsional :
No-pem --> Na-pem
No-bar, No-pem --> Jumlah (Tergantung penuh
thd keynya)
NORMALISASI: 1NF, 2NF, 3NF
Bentuk Normal ke Satu(1NF)
 Syarat :
1. Tidak ada set atribut yang berulang atau bernilai ganda.
2. Telah ditentukannya primary key untuk tabel atau relasi.
3. Tiap atribut hanya memiliki satu pengertian.
 Tiap atribut yang dapat memiiki banyak nilai sebenarnya
menggambarkan entitas atau relasi yang terpisah.
Bentuk Normal ke Dua(2NF)
 Syarat :
1. Bentuk data telah memenuhi kriteria bentuk normal ke satu.
2. Atribut bukan kunci(non-key attribute) haruslah memiliki
ketergantungan fungsional sepenuhnya pada primary key.
NORMALISASI: 1NF, 2NF, 3NF (1)
Bentuk Normal ke Tiga(3NF)
 Syarat :
1.Bentuk data telah memenuhi kriteria bentuk normal ke dua.
2.Atribut bukan kunci(non-key attribute) tidak boleh memiliki
ketergantungan fungsional terhadap atribut bukan kunci lainnya.
Seluruh atribut bukan kunci pada suatu relasi hanya memiliki
ketergantungan fungsional terhadap primary key di relasi itu saja.
CONTOH
Bentuk Belum Normal
Nim Nama Kode_MK Mata_Kuliah Nilai

132308117 Andre BD001 Basis Data 70


MD002 Matematika Diskrit 65
PK003 Pengolah Kata 90

132306142 Mahmud BI001 Bahasa Inggris 75


BI002 Bahasa Indonesia 85

132301120 Udin BD001 Basis Data 60


MD002 Matematika Diskrit 75
PK003 Pengolah Kata 65
BI002 Bahasa Indonesia 70

132301172 Sofian PK001 PIK 85


BI001 Bahasa Inggris 80
Bentuk Normal Pertama (1NF)

Nim Nama_mhs Kode_MK Mata_Kuliah Nilai

132308117 Andre BD001 Basis Data 70

132308117 Andre MD002 Matematika Diskrit 65

132308117 Andre PK003 Pengolah Kata 90

132306142 Mahmud BI001 Bahasa Inggris 75

132306142 Mahmud BI002 Bahasa Indonesia 85

132301120 Udin BD001 Basis Data 60

132301120 Udin MD002 Matematika Diskrit 75

132301120 Udin PK003 Pengolah Kata 65

132301120 Udin BI002 Bahasa Indonesia 70

132301172 Sofian PK001 PIK 85

132301172 Sofian BI001 Bahasa Inggris 80


Bentuk Normal Kedua (2NF)
Nim Nama_mhs
132308117 Andre
132306142 Mahmud
132301120 Udin
132301172 Sofian

Nim Kode_MK Mata_Kuliah Nilai


132308117 BD001 Basis Data 70
132308117 MD002 Matematika Diskrit 65
132308117 PK003 Pengolah Kata 90
132306142 BI001 Bahasa Inggris 75
132306142 BI002 Bahasa Indonesia 85
132301120 BD001 Basis Data 60
132301120 MD002 Matematika Diskrit 75
132301120 PK003 Pengolah Kata 65
132301120 BI002 Bahasa Indonesia 70
132301172 PK001 PIK 85
132301172 BI001 Bahasa Inggris 80
Bentuk Normal Ketiga (3NF)
Nim Nama Kode_MK Mata_Kuliah
132308117 Andre BD001 Basis Data
132306142 Mahmud MD002 Matematika Diskrit
132301120 Udin PK003 Pengolah Kata
132301172 Sofian BI001 Bahasa Inggris
PK001 PIK

Nim Kode_MK Nilai


132308117 BD001 70
132308117 MD002 65
132308117 PK003 90
132306142 BI001 75
132306142 BI002 85
132301120 BD001 60
132301120 MD002 75
132301120 PK003 65
132301120 BI002 70
132301172 PK001 85
132301172 BI001 80
LATIHAN NORMALISASI :
Diberikan tabel Mahasiswa di bawah ini, akan dilakukan
normalisasi sampai bentuk normal ke tiga

Perhatikan bahwa tabel di atas sudah dalam bentuk


normal ke Satu(1NF)
CONTOH
Bentuk Normal ke dua(2NF) :

Belum memenuhi
kriteria 3NF,
Karena atribut non-
key Nilai dan
Bobot masih
memiliki ketergantu-
ngan fungsional.
CONTOH
Bentuk Normal ke tiga(3NF) :
SOAL
1. Apa yang dimaksud dengan Normalisasi?
2. Apa yang dimaksud Anomali?sebutkan macam-macamnya!
3. a. Apa yang dimaksud dengan Dekomposisi ?
b. Dari tabel dibawah buatlah dekomposisi tak hilang dan
dekomposisi hilang?

Nip Nama Mata Kuliah

132308117 Udin Basis Data


132306142 Mahmud Bahasa Inggris
132301119 Udin Pemrograman
132301172 Sofian Basis Data
SOAL
5. Dari tabel dibawah buat Normalisasinya Sampai 3NF?

NIP NAma Jabatan Keahlian Lama


107 Ilham Analisis Senior Cobol 6
Oracle 1
109 Rian Analisis yunior Cobol 2
Dbase III+ 2
112 Fika Pemrogram COBOL 1
DBASE III+ 1
SYSBASE 1
CONTOH KASUS

Berikut ini akan diberikan contoh proses perancangan database


dengan teknik normalisasi.

26
Dokumen dasar:

PT. Ayo Bersama Faktur Pembelian Barang


Jl. Senopati 12 yk Tanggal : 07/10/04
Kode Suplier : G01 Nomor : 004
Nama Suplier : Gober Nustra
Kode Nama Brg Qty Harga Jml
A01 AC model 1 10 1000000 10000000
A02 AC model 2 5 900000 4500000
Total Faktur 14500000

Jatuh Tempo 15/10/04

27
PT. Ayo Bersama Faktur Pembelian Barang
Jl. Senopati 12 yk Tanggal : 09/10/04
Kode Suplier : A03 Nomor : 006
Nama Suplier : Angkasa

Kode Nama Brg Qty Harga Jml


B01 Kursi 5 100000 500000

A03 Meja 7 250000 3250000

Total Faktur 3750000

Jatuh Tempo 17/10/04

28
Bentuk tidak ternormalisasi

Kode Nama Kode Nama brg Tgl J.tempo qty Hrg Jml Tot
Kd. Sup Sup Brg
Fak

004 G01 Gobel A01, AC Model 1, 07/10/04 15/10/04 10, 1000000, 10000000, 14500000
Nustra A02 AC Model 2 5 900000 4500000

006 A03 Angkasa B01, Meja, Kursi 09/10/05 17/10/04 5,7 100000, 500000, 3750000
A03 250000 3250000

29
Bentuk Normal 1

Kode Nama Sup Kode Nama brg Tgl J.tempo Qty Hrg
Kd. Fak Sup Brg

004 G01 Gobel A01 AC Model 1 07/10/04 15/10/04 10 1000000


Nustra

004 G01 Gobel A02 AC Model 2 07/10/04 15/10/04 5 900000


Nustra

006 A03 Angkasa B01 Meja 09/10/05 17/10/04 5 100000

006 A03 Angkasa A03 Kursi 09/10/05 17/10/04 7 250000

30
KELEMAHAN

Insert : ingin memasukkan supplier tanpa transaksi?


Delete : menghapus transaksi  supplier terhapus
Update : mengganti satu nama supplier  lainnya
jadi tidak benar
Redundancy : jumlah <-- hasil perhitungan qty *
harga

31
BENTUK 2ND NF

KdFaktur Tgl, Jtempo, KodeSup, NamaSup


KdFaktur, Kodebrg  NamaBrg, Qty, Harga

32
BENTUK 3NF

KdFaktur  Tgl, Jtempo, KodeSup


KdSup  NamaSup
KdFaktur, Kodebrg  Qty
KodeBrg  NamaBrg, Harga

33
LATIHAN SOAL
Buatlah rancangan basis data dengan menggunakan teknik normalisasi
(bentuk tidak normal, normal 1, normal 2 dan bentuk BCNF) dengan
dokumen dasar sebagai berikut:

34
TRANSKRIP NILAI Nomor Transkrip : TI001
Politeknik Negeri XYZ Tanggal Terbit : 20 Juni 2016

NIM : 110A213 Jenjang : D3

Nama : Nindita Adi Swatika Jurusan : Teknik Informatika

Alamat : Jl. Apel Merah No Th.Masuk : 2014


27A Banjarmasin
KodeMatku Nama SKS Tahun Semester Nilai BOBOT
l Pengambila Pengambila
n n
BD Basis 3 2014 2 A 4
Data
SD Struktur 4 2015 3 B 3
Data
A Agama 2 2014 2 D 1
K Kalkulus 3 2016 6 C 2
Total : 12
SKS
IPK : 2.92

35

Anda mungkin juga menyukai