Database
atau basis data memiliki pengertian sederhana sebagai kumpulan tabel. Satu
tabel merepresentasikan suatu objek/entitas tertentu. Suatu entitas terdiri
dari beberapa atribut. Beberapa entitas memiliki hubungan/relationship yang
saling terkait.
Perancangan
basis data diperlukan, agar kita bisa memiliki basis data yang kompak dan
efisien dalam penggunaan ruang penyimpanan, cepat dalam pengaksesan dan mudah
dalam pemanipulasian (tambah, ubah, hapus) data.
Proses Normalisasi adalah proses
merancang database yang menggunakan Metode BOTTOM-UP yaitu proses
pen-transformasian Database dari sistem klasik yang hanya menggunakan Flat File
menjadi RDBMS yang integrative dan sistematis yang meliputi langkah-langkah
dekomposisi dari rekord yang kompleks menjadi rekord yang sederhana atau proses
reduksi tabel menjadi tabel yang lebih kecil tanpa menghilangkan informasi,
dalam arti lain normalisasi merupakan proses pengelompokan data elemen
menjadi table-table yang menunjukkan entity dan relasinya.
Pada proses normalisasi
selalu diuji pada beberapa kondisi, apakah ada kesulitan pada saat menambah / insert,
menghapus / delete, mengubah / update, dan membaca / retrieve pada
suatu Database.Bila ada kesulitan pada pengujian tersebut, maka relasi
tersebut dipecahkan menjadi beberapa table lagi, sehingga diperolehdatabase yang
optimal.
Proses perancangan database menggunakan normalisasi dimulai
dari dokumen dasar yang dipakai dalam sistem sesuai dengan lingkup sistem yang
akan dibuat rancangan databasenya. Sebagai contoh adalah sebuah Kartu Hasil
Studi (KHS) sebuah perguruan tinggi swasta di Tegal
1.
Bentuk Unnormalisasi
Langkah pertama
dalam merancang sebuah database adalah dengan membentuk contoh data tersebut di
atas dengan membentuk unnormalisasi data, dengan cara mencantumkan semua
atribut data yang ada apa adanya seperti terlihat berikut ini :
Pada
relasi diatas adalah dengan menuliskan semua data yang ada yang akan direkam,
data yang double tidak perlu ditulis. Terlihat baris / record yang
tidak lengkap.
2.
Bentuk Normal Pertama (1 NF)
Suatu tabel
dikatakan dalam bentuk normal pertama apabila:
a. Tidak
ada baris data yang duplikat atau berulang dalam tabel.
b. Setiap
sel memiliki nilai tunggal artinya tidak ada perulangan.
c. Data
dalam kolom memiliki tipe data yang sejenis.
Bentuklah menjadi bentuk normal pertama dengan
memisah-misahkan data pada atribut-atribut yang tepat dan bernilai atomik, juga
seluruh record / baris harus lengkap adanya. Bentuk relasi adalah flat
file. pada normal ini kita bisa membuat 17 Field sehingga dibentuk seperti ini :
Pada normal
pertama tersebut masih terjadi banyak kelemahan, terutama pada proses ANOMALI insert,
update dan delete berikut ini.
a.
|
Inserting / Penyisipan
Kita tidak dapat memasukkan
NPM dan nama mahasiswa saja tanpa
adanya Nama matakulian yang dimbil, sehingga mahasiswa baru bisa dimasukkan kalau ada telah mengambil mata kuliah. |
b.
|
Deleting / Penghapusan
Bila satu record /
baris di atas dihapus, misal Mata Kuliah Matematika
Diskrit, maka berakibat pada penghapusan data Nama Dosen (S. Abas M.Eng) padahal data tersebut masih diperlukan. |
3.
Bentuk Normal Kedua (2 NF)
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.
Bentuk
normal kedua dengan melakukan dekomposisi relasi di atas menjadi beberapa
relasi dan mencari kunci primer dari tiap-tiap relasi tersebut dan atribut
kunci haruslah unik.
seperti dibawah ini :
4.
Bentuk Normal Ketiga (3 NF)
Definisi Bentuk Normal
Ketiga (3 NF) adalah:
a.
Memenuhi bentuk 2 NF (normal kedua).
b.
Atribut bukan kunci tidak memiliki dependensi transitif terhadap kunci
utama / primary key.
Pada data di atas dengan keterangan "*" merupakan Primary key dari masing-masing tabel. garisnya menunjukan adanya relasi antar tabel.5. Pengujian dengan data tabel
Dari normal ke tiga kita menuju pengujian antar tabel, seperti telihat gambar dibawah ini :
Pada Step ini menunjukkan hubungan pokok dari tabel satu ke tabel yang lainnya,
seperti terlihat pada gambar dibawah ini :
Itulah dia contoh study kasus dari penggunaan Normalisasi Pada Sistem Basis Data. Dengan perantara menggunakan KHS (Kartu Hasil Study).
Sekian Semoga Bermanfaat ^_^