Functional Dependency atau ketergantunga
Fungsional
Keterkaitan antar
atribut dimana terjadi penggunaan harga atribut untuk menentukan atribut yang
lain.
Contoh :
X –> Y
dimana X dan Y
merupakan sebuah atribut. Notasi diatas berarti fungsional X menentukan harga
Y, atau Y bergantung pada X.
Contoh :
Tabel Mahasiswa
|
NIM
|
Nama_mhs
|
|
08091211
|
SYAHRUL
|
|
08091212
|
ROMDONI
|
|
08091213
|
AHMAD
|
|
08091214
|
ARIFIN
|
|
08091215
|
TEGUH
|
|
08091216
|
HARYONO
|
Ketergantungan
Fungsional dari tabel Mahasiswa : NIM –> Nama_mhs
Functional Dependency
memiliki 3 jenis antara lain sebagai berikut :
1. Full Dependency
Jika atribut Y bergantung secara penuh pada X. Terjadi jika terpenuhi syarat 1 atribute à 1 atribut.
Jika atribut Y bergantung secara penuh pada X. Terjadi jika terpenuhi syarat 1 atribute à 1 atribut.
contoh :
|
Kode_mk
|
Nama_mk
|
idRuang
|
Dosen
|
|
MKB001
|
MATEMATIKA
|
101
|
PULUNG
|
|
MKK001
|
LITERASI
|
102
|
SETYO
|
|
MKB002
|
FISIKA
|
103
|
HADI
|
|
MKK002
|
TEKNOLOGI
|
104
|
ARI
|
|
MKB003
|
BAHASA INGGRIS
|
105
|
SUPARDO
|
|
MKK003
|
ALGORITMA
|
106
|
SUGANDI
|
{Kode_mk, Nama_mk}
–> idRuang bukan Full Dependency, bila Nama_mk dihilangkan maka Kode_mk
–> idRuang bisa Full Dependency
2. Partially
Dependency
Jika atribut Y
bergantung terhadap subset X, namun apabila salah satu atribut dari X
dihilangkan Y tetap bergantung kepada X.
contoh :
|
NIP
|
Nama_guru
|
Jk
|
Pendidikan
|
Thn_lulus
|
|
00111
|
PULUNG
|
L
|
S2
|
2003
|
|
00112
|
SETYO
|
L
|
S1
|
2004
|
|
00113
|
HADI
|
L
|
S1
|
2005
|
|
00114
|
ARI
|
L
|
S1
|
2006
|
|
00115
|
SUPARDO
|
L
|
S2
|
2001
|
|
00116
|
SUGANDI
|
L
|
S1
|
2008
|
{NIP, Pendidikan}
–>Jk
Jk merupakan dependen
terhadap NIP yang merupakan subset dari {NIP,Pendidikan}
3. Transitive
Dependency
Jika terjadi kondisi
dimana XàY dan Yà Z, maka dapat dikatakan bahwa Z merupakan transitive
dependency terhadap X melalui Y.
Contoh :
|
Id_pegawai
|
Nama_Pegawai
|
Jabatan
|
Kode_cabang
|
Alamat
|
|
00211
|
AYU
|
Manager
|
01
|
Semarang
|
|
00212
|
DIAN
|
Supervisor
|
01
|
Semarang
|
|
00213
|
AHMAD
|
Medrep
|
01
|
Semarang
|
|
00214
|
YAKUB
|
Cleaning Service
|
01
|
Semarang
|
|
00215
|
KHOIRUL
|
Staff
|
01
|
Semarang
|
|
00216
|
DHANI
|
HRD
|
01
|
Semarang
|
id_pegawai –>
{Nama_pegawai, Jabatan, Kode_cabang, Alamat}
KodeCabang –>
Alamat
Normalisasi
Normalisasi merupakan
suatu proses pengelompokan data yang dilakukan untuk membentuk struktur tabel
agar mengurangi kemubaziran dan bebas anomaly sehingga mengurangi kebingungan
atau ambigu.
Tujuan dilakukannya
normalisasi adalah untuk mengoptimalisasi struktur-struktur tabel, meningkatkan
kecepatan, menghilangkan inputan yang sama, penyimpanan lebih efisien,
mengurangi adanya redundansi dan meningkatkan integritas data
Normalisasi memiliki 6
bentuk antara lain :
1. 1NF atau First
normal form
Membuat baris dan
kolom yang tadinya ada yang memiliki lebih dari satu nilai menjadi setiap baris
dan kolom dalam relasi berisi satu nilai
2. 2NF atau
Second normal form
Sebuah tabel yang
telah berbentuk 1NF namun ada atribut yang tidak memiliki ketergantungan
terhadap primary key atau ada atribut yang functional dependencynya hanya
bergantung pada sebagian dari primary key, maka atribut akan dipisah
berdasarkan primary key nya.
3. 3NF atau Third
normal form
sebuah tabel telah
berbentuk 2NF dan tidak adanya sebuah atribut non primary key yang bergantung
pada atribut non primary key yang lainnya / ketergantungan transitif
4. BCNF atau
Boyce-code normal form
Sebuah tabel telah
berbentuk 3NF dan adanya functional dependency terhadap masing-masing atribut
atau keduanya/gabungan,
5. 4NF atau Four
normal form
Sebuah tabel telah
berbentuk BCNF, dan tabel tidak boleh mempunyai lebih dari satu buah
multivalued atribut.
6. 5NF atau Five
normal form
Sebuah tabel telah berbentuk
4NF dan tabel telah didekomposisi menjadi tabel-tabel yang kecil serta
digabungkan kembali (join) untuk membentuk tabel semula.

Tidak ada komentar:
Posting Komentar