Anda di halaman 1dari 29

NORMALISASI

Definisi Normalisasi
 Suatu teknik untuk mengorganisasi data ke tabel-tabel untuk
memenuhi kebutuhan pemakai di dalam suatu organisasi.
 Proses pengelompokan elemen data menjadi tabel yang
menunjukkan entity sekaligus relasinya.
PENTINGNYA NORMALISASI
 Rancangan database dikatakan buruk jika :
 Data yang sama tersimpan di beberapa
tempat (file atau record)
 Ketidakmampuan untuk menghasilkan
informasi tertentu
 Terjadi kehilangan informasi
 Adanya redudansi (pengulangan) atau
duplikasi data sehingga memboroskan
ruang penyimpanan dan menyulitkan saat
proses updating data
 Timbul adanya NULL VALUE
PENTINGNYA NORMALISASI
 Kehilangan informasi bisa terjadi bila pada waktu
merancang database, kita melakukan proses
dekomposisi yang keliru
 Tujuan normalisasi adalah menyempurnakan
struktur tabel dengan :
 Mengeliminasi adanya duplikasi informasi
 Memudahkan pengubahan struktur tabel
 Memperkecil pengaruh perubahan struktur
database
 dll
 Bentuk normalisasi yang sering digunakan adalah
1NF, 2NF, 3NF dan BCNF
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.
Tahapan Normalisasi
Bentuk-Bentuk Normalisasi
Bentuk Normalisasi Pertama (1NF)
 Suatu tabel dikatakan dalam bentuk normal
pertama apabila:
 Tidak ada baris data yang terduplikat atau berulang dalam tabel
 Setiap sel memiliki nilai tunggal artinya tidak ada perulangan
group atau array
 Data dalam kolom (atribut dan field) memiliki tipe data yang
sejenis
Bentuk-Bentuk Normalisasi
Bentuk Normalisasi Kedua (2NF)

 Tabel dalam keadaan 2NF apabila tabel sudah dalam


keadaan 1NF dan semua atribut yang bukan kunci,
bergantung pada semua kunci dalam tabel. Dengan kata
lain, 2NF bertujuan untuk menghilangkan ketergantungan
parsial / fungsional.
Bentuk-Bentuk Normalisasi
Bentuk Normalisasi Ketiga (3NF)

 Tabel dalam keadaan 3NF apabila tabel dalam keadaan 2NF


dan dalam tabel tersebut tidak ada ketergantungan transitif.
Artinya sebuah field dapat menjadi atribut biasa pada suatu
relasi tetapi menjadi kunci pada relasi lain. Setiap atribut yang
bukan kunci haruslah bergantung hanya pada primary key.
Ketergantungan Fungsional
 Ketergantungan fungsional terjadi jika suatu atribut B yang
berelasi dengan atribut A mempunyai nilai tepat satu pada
atribut A. Sebagai contoh dalam skema tabel dokter,
terdapat atribut kode_dokter dan nama_dokter

Kode Dokter Nama Dokter


D001 Neisya
D002 Najwa
D003 Naufal
Ketergantungan Transitif
 Ketergantungan transitif terjadi jika terdapat atribut
A, B, C yang saling berhubungan, dimana atribut C
mempunyai tepat satu nilai pada atribut B dan
atribut B mempunyai tepat satu nilai pada atribut
A, sehingga secara tidak langsung atribut C
mempunyai tepat satu nilai pada atribut A. sebagai
contoh skema tabel pemeriksaan terdapat atribut
no_pendaftaran, no_pasien dan nama_pasien
seperti pada tabel 2.37 berikut :
No Pendaftaran No Pasien Nama Pasien
R001 P001 Alex
R002 P002 Andrey
R003 P003 Lendra
Contoh Kasus Normalisasi
Tabel di atas dalam bentuk tidak normal
karena :
1. Mempunyai bentuk non flat file karena data
disimpan sesuai dengan kedatangannya,
sehingga tidak memiliki struktur yang
sama/tertentu, terjadi duplikasi atau tidak
lengkap.
2. Memuat set atribut berulang (non single
value).

Secara singkat 1NF bertujuan untuk


menghilangkan elemen data yang
berulang.
Bentuk Normalisasi Pertama (1NF)
 Suatu tabel dikatakan dalam
bentuk normal pertama apabila
setiap atribut bernilai tunggal
untuk setiap baris. Tabel berikut
menunjukkan data hasil
normalisasi pertama,
Anomali atau Penyimpangan

 Merupakan proses pada basis data


yang memberikan efek samping yang
tidak diharapkan. Misalnya
menyebabkan ketidakkonsistenan data
atau membuat sesuatu data menjadi
hilang ketika data lain dihapus
Anomali pembaharuan/pemutakhiran (update
anomaly)
 Proses mengubah suatu nilai rinci data yang
mengakibatkan perlunya pengubahan pada nilai
rinci data lain yang tidak mempunyai kerelasian
secara lojik.
 Pada tabel di atas, apabila ternyata terjadi
perubahan nama dokter, misal untuk kode_dokter
DK/0001 terjadi kesalahan penulisan nama dokter
sehingga namanya akan diperbaiki, misal menjadi
Dr. Noval, maka nilai rinci data nama_dokter harus
di-update. Dalam contoh di atas perubahan harus
dilakukan 3 kali. Jika pasien yang ditangani Dr.
Noval cukup banyak maka update harus
dilakukan secara berulang kali. Jika perubahan
tidak dilakukan secara menyeluruh atau ada data
yang terlewatkan maka akan timbul inkonsistensi
data.
Anomali penyisipan (insert anomaly)
 Proses penyisipan suatu nilai rinci data yang mengakibatkan perlunya
pengubahan pada nilai rinci data lain yang tidak mempunyai
kerelasian secara lojik.
 Jika ada dokter baru yang masuk ke rumah sakit tersebut, tetapi
belum pernah memeriksa pasien sama sekali, maka penambahan
data dokter tersebut tidak dapat dilakukan selama belum pernah
memeriksa pasien.
 Jika ada dokter yang tidak praktek atau tidak memperoleh pasien
atau tidak memeriksa pasien manapun, maka data dokter tersebut
tidak dapat diketahui selama belum pernah memeriksa pasien.
 Jika ditemukan penyakit baru, tetapi belum ada pasien yang
didiagnosa mengidap penyakit tersebut, maka penambahan data
penyakit tersebut tidak dapat dilakukan selama belum ada pasien
yang mengidap penyakit tersebut berobat di rumah sakit
bersangkutan.
 Jika ada obat baru yang masuk ke rumah sakit tersebut atau obat
yang sebenarnya ada tetapi tidak pernah digunakan atau tidak
pernah dijadikan resep atau belum pernah dijadikan resep untuk
pasien sama sekali, maka penambahan data obat tersebut tidak
dapat dilakukan selama belum pernah dijadikan resep.
Anomali penghapusan (delete anomaly)
 Proses penghapusan suatu nilai rinci data yang
mengakibatkan hilangnya informasi rinci data
lain yang tidak mempunyai kerelasian secara
lojik.
 Misalnya data pada record ke-4 tidak akan
digunakan lagi, sehingga record ke-4 tersebut
akan dihapus. Secara kebetulan pasien dari Dr.
Najwa hanya seorang saja yaitu Desy.
Akibatnya seluruh rinci data dalam record
tersebut akan hilang dari basis data, termasuk
informasi tentang dokter bernama Dr. Najwa,
nama penyakit, nama obat dan lain-lain.
Bentuk Normalisasi Kedua (2NF)
Suatu tabel dikatakan dalam bentuk normal kedua
apabila :
 Berada pada bentuk normal pertama
 Semua atribut bukan kunci memiliki
ketergantungan fungsional terhadap kunci primer.
 No_pendaftaran  no_pasien, nama_pasien,
alamat_pasien, tgl_pendaftaran, tgl_periksa
 Kode_sakit  nama_penyakit
 Kode_obat  nama_obat
 Kode_dokter  nama_dokter
 No_pendaftaran, kode_dokter, kode_sakit,
kode_obat  dosis
 Diagram diatas menggambarkan ketergantungan fungsional
(KF) antara,
 Kode_Dokter  Nama_Dokter
 Kode_Sakit  Deskripsi_Sakit
 Kode_Obat  Nama_Obat
 Dan menggambarkan ketergantungan transitif (KT) antara,
 No_Pendaftaran  No_Pasien  Nama_Pasien.
Bentuk 2 NF
Bentuk Normalisasi Ketiga
(3NF)
 Suatu tabel dikatakan dalam bentuk
normal ketiga apabila :
 Berada pada bentuk normal kedua.
 Setiap atribut bukan kunci bukan
kunci tidak memiliki ketergantungan
transitif terhadap kunci primer.
 No_pendaftaran  no_pasien,
tgl_pendaftaran, tgl_periksa
 No_pasien  nama_pasien,
alamat_pasien
Bentuk 3NF
LATIHAN

Anda mungkin juga menyukai