Anda di halaman 1dari 17

Analisis Dan Perancangan Sistem

( Systems Analysis And Design)

BAB 10
Designing Database Table 2

Selain cara pada bab sebelumnya, (bab 9) metodologi tersendiri untuk menciptakan
struktur table (relasi) dalam basis data (analisis peracangan sistem) dengan tujuan
untuk mengurangi kemubaziran data, normalisasi terkadang hanya dipakai sebagai
perangkat verifikasi terhadap table-tabel yang dihasilkan oleh metodologi ERD.
Normalisasi memberikan panduan yang sangat membantu bagi pengembang untuk
mencegah penciptaan struktur table yang kurang fleksibel atau mengurangi
ketidakefisienan.

Kroenke Mendefinisikan normalisasi sebagai proses untuk mengubah suatu relasi yang
memiliki masalah kedalam dua buah relasi atau lebih yang tak memiliki masalah
tersebut. Masalah yang dimaksud olek kroenke ini sering disebut dengan istilah
anomaly.

ANOMALI
Yaitu proses pada database yang memberikan efek samping yang tidak diharapkan
(misalnya menyebabkan ketidakkonsistenan data atau membuat sesuatu data menjadi
hilang ketika data lain dihapus).

1. ANOMALI PEREMAJAAN
Anomali ini terjadi bila terjadi pengubahan pada sejumlah data yang mubazir, tetapi
tidak seluruhnya diubah. Sebagai contoh, terdapat relasi ORDER yang mengandung
data Pemasok dan kota yang menyatakan lokasi pemasok, barang dan jumlah yang
menyatakan nama barang dan jumlah barang yang dipesan.

PEMASOK KOTA BARANG JUMLAH


Veri Medan Pen Disk 12
Mawar Bandung Jazz drive 5
Kia Jakarta Motherboard 6
Mawar Bandung CPU 8
Relasi ORDER
Seandainya pemasok Mawar berpindah ke kota lain, misalnya ke PADANG, dan
pengubahan hanya dilakukan pada data pertama (data pemasok mawar pada relasi
Order ada dua buah), maka hasilnya seperti yang terlihat dibawah ini :
PEMASOK KOTA BARANG JUMLAH
Veri Medan Pen Disk 12
Mawar Padang Jazz drive 5
Kia Jakarta Motherboard 6
Mawar Bandung CPU 8
Relasi setelah adanya Pengubahan
Terlihat bahwa ada ketidakkonsistenan. Fakta pertama menyatakan bahwa pemasok
Mawar di Padang, tetapi fakta kedua menyatakan bahwa pemasok mawar berada di

11
Analisis Dan Perancangan Sistem
( Systems Analysis And Design)

Bandung. Mana yang benar ? keadaaan inilah yang menyatakan adanya ketidak
konsistenan.

2. ANOMALI PENYISIPAN
Anomali penyisipan terjadi jika pada saat penambahan hendak dilakukan ternyata ada
elemen yang masih kosong dan elemen data tersebut justru menjadi kunci. Sebagai
contoh, terdapat relasi yang berisi tiga buah atribut. NM-MTK, GEDUNG, KELAS

NM-MTK GEDUNG KELAS


DATABASE ADV. F F 1.2
DATA Comunication E E 1.1
Technology Inf. System D D 1.1
Architecture Computer A A 1.4
MIS F F 1.4
System Analysis & Design E E 1.3
Database System F F 1.1
Relasi yang menimbulkan anomali penyisipan

Relasi diatas menyatakan bahwa


• NM-MTK mengunakan GEDUNG tertentu (misal Database Adv. mengunakan
gedung F)
• Suatu gedung berada pada kelas tertentu (misalnya gedung F terdapat kelas F 1.2)

Masalahnya, bagaimana caranya meyimpan fakta bahwa F 1.1 yang terdapat pada
gedung F ?. Penyisipan tidak dapat dilakukan mengingat tak informasi NM-MTK yang
menggunakan tersebut. Kasus serupa dapat dilihat pada relasi berikut ini :

NIM NM-KURSUS BIAYA


200401 English Class 100000
200401 Merakit Computer 150000
200401 Microsoft Office 99000
200401 Service Monitor 120000
200402 Merakit Computer 150000
200402 Microsoft Office 99000
200403 Networking 175000
Contoh relasi yang menimbulkan anomaly penyisipan

Relasi diatas mencatat kursus-kursus yang dikuti oleh siswa (misalnya 200401
mengambil kursus English class, merakit computer, Microsoft office, service monitor)
selain juga menyatakan biaya kursus (misalnya biaya kursus English class adalah
100000). Masalah akan timbul apabila dibuka kursus baru, misalnya Bahasa Rakitan
dengan biaya sebesar 80000, akan tetapi untuk sementara belum seorang pun yang
mengambil kursus ini. Akibatnya, data kursus baru itu tidak dapat dicatat.

3. ANOMALI PENGHAPUSAN

12
Analisis Dan Perancangan Sistem
( Systems Analysis And Design)

Anomali penghapusan terjadi sekiranya sesuatu baris (tuple) yang tak terpakai dihapus
dan sebagai akibatnya data lain yang hilang. Dengan mengambil contoh relasi kursus
diatas, apa yang terjadi seandainya data bahwa siswa dengan identitas 200403 yang
mengambil kursus Networking dihapus ? Data yang menyatakan biaya kursus
networking sebesar 175000 juga akan terhapus.

DEPENDENSI (KETERGANTUNGAN)
Dependensi merupakan konsep yang mendasari normalisasi. Dependensi menjelaskan
hubungan antara attibut atau secara lebih khusus menjelaskan nilai suatu atribut yang
menentukan nilai atribut lainnya. Dependensi ini kelak menjadi acuan bagi
pendekomposisian data ke dalam bentuk yang paling efisien.

1. DEPENDENSI FUNGSIONAL
Adalah macam dependensi yang banyak diulas pada literature Database.
Dependensi Fungsional didefinisikan Sebagai berikut :

Suatu atribut mempunyai dependensi fungsional terhadap atribut X jika dan hanya
jika setiap nilai X berhubungan dengan sebuah nilai Y

Contoh : Relasi ORDER-JUAL dinotasikan dengan


ORDER-JUAL ( PEMBELI, KOTA, BARANG, JUMLAH)

Yang artinya bahwa relasi ORDER-JUAL mengandung attribute PEMBELI, KOTA,


BARANG dan JUMLAH. Sample data pada relasi ini dapat dilihat pada table berikut

PEMBELI KOTA BARANG JUMLAH


P1 Padang B1 12
P1 Padang B2 6
P2 Bukittinggi B1 10
P2 Bukittinggi B2 20
P2 Bukittinggi B3 6
P3 P.Panjang B3 12
P3 P.Panjang B4 4

Pada contoh diatas, pembeli secara fungsional menentukan Kota, sebab terlhat
bahwa untuk pembeli yang sama, Kotanya juga sama dengan demikian :

PEMBELI KOTA
Contoh yang lain :

{ Pembeli, Barang} JUMLAH


{ Pembeli, Barang} KOTA
{ Pembeli, Barang} {JUMLAH,KOTA}

13
Analisis Dan Perancangan Sistem
( Systems Analysis And Design)

• Bagian yang terletak disebelah kiri panah biasa disebut penentu (determinan)
dan bagian yang terletak disebelah kanan panah disebut yang tergantung
(dependen)
• Tanda { } biasa digunakan kalau ada lebih dari satu atribut, baik pada penentu
maupun yang tergantung.

2. DEPENDENSI FUNGSIONAL SEPENUHNYA


Definisi dependensi fungsional sepenuhnya adalah sebagai berikut :
Suatu atribut Y mempunyai dependensi fungsional penuh terhadap atribut X jika :
• Y mempunyai dependensi fungsional terhadap X
• Y tidak memiliki dependensi terhadap bagian dari X

Sebagai contoh terdapat relasi PELANGGAN :


PELANGGAN( KD-PEL,NAMA,KOTA,NO-FAX)

Pada relasi ini :


1. {KD-PEL, KOTA} NO-FAX
2. KD-PEL NO-FAX

Mengingat bahwa NO-FAX bergantung pada {KD-PEL,KOTA} kondisi 1, dan juga


bergantung pada KD-PEL kondisi 2, yang tidak lain adalah bagian dari {KD-PEL,
KOTA}, maka NO-FAX tidaklah mempunyai dependensi fungsional sepenuhnya
terhadap {KD-PEL, KOTA}. Dengan kata lain NO-FAX hanya mempunyai dependensi
fungsional terhadap KD-PEL.

Berkaitan dengan hal ini terdapat istilah irreducible dependent atau dependensi yang
tak dapat dibagi lagi. Istilah ini identik dengan dependensi fungsional sepenuhnya (full
Functional dependent) atau terkadang hanya disebut dependensi sepenuhnya (fully
Dependent).

3. DEPENDENSI TOTAL
Pengertiannya adalah :

Suatu attribute Y mempunyai dependensi total terhadap attribut X jika :


• Y Memiliki dependensi fungsional terhadap X
• X mempunyai dependensi fungsional terhadap Y
Contoh
KD-PEM NAMA KOTA
K1 Kamal Padang
K2 Kamelia Payakumbuh
K3 Kartini Batusangkar
Jadi :
KD-PEM < ---- > NAMA

Dengan asumsi bahwa tak ada nama pemasok yang sama

14
Analisis Dan Perancangan Sistem
( Systems Analysis And Design)

4. DEPENDENSI TRANSITIF,

Attribut Z mempunyai dependensi transitif terhadap X bila :


• Y memiliki dependensi fungsional terhadap X
• Z Memiliki dependensi fungsional terhadap Y

Contoh :

NM-MTK GEDUNG KELAS WAKTU


VISUAL BASIC A A 1.1 Senin, 8 – 10
ORACLE B B 1.2 Selasa 10 – 12
BORLAND C++ C C 1.2 Rabu 8 – 10
DELPI A A 1.1 Selasa 8 - 10

Jadi relasi nya adalah :

NM-MTK --Æ { Gedung, Waktu }


GEDUNG --Æ Kelas
Terlihat bahwa

NM-MTK --Æ GEDUNG ---Æ KELAS


Dengan demikian KELAS mempunyai dependensi transitif terhadap NM-MTK

DIAGRAM DEPENDENSI FUNGSIONAL


Diagram dependensi fungsional adalah diagaram yang digunakan untk menggambar-
kan dependensi fungsional. Diagram ini menunjukan hubungan antara attribute yang
menjadi penentu attribute lainnya. Dengan hubungan yang dinyatakan dengan tanda
panah.

Sebagai contoh, dependensi fungsional pada relasi yang terdapat conoth diatas, dapat
disajikan dalam diagram dependensi fungsional sebagaimana berikut ini :

GEDUNG KELAS
NM-MTK
WAKTU

DEKOMPOSISI TAK HILANG

Pada proses normalisasi seringkali terjadi pemecahan sebuah relasi menjadi dua relasi
atau lebih. Proses pemecahan seperti ini biasa disebut dengan dekomposisi. Secara
lebih khusus, macam dekomposisi yang dilakukan adalah dekomposisi tak hilang, yang
artinya bahwa tak ada informasi yang hilang ketika relasi dipecah menjadi relasi-relasi
lain. Contoh
Bentuk relasi awal

15
Analisis Dan Perancangan Sistem
( Systems Analysis And Design)

NOBP NAMA PROG-STUDI


200401 DICKY AKT
200402 NIA AKT
200403 DIDIT MNJ
200404 DICKY MNJ
200405 RINDU EP

Bentuk dekomposisi tak hilang :

RELASI -1 RELASI - 2
NOBP NAMA NOBP PROG-STUDI
200401 DICKY 200401 AKT
200402 NIA 200402 AKT
200403 DIDIT 200403 MNJ
200404 DICKY 200404 MNJ
200405 RINDU 200405 EP

Bentuk dekomposisi tak hilang :


RELASI -1 RELASI - 2
NOBP NAMA NAMA PROG-STUDI
200401 DICKY DICKY AKT
200402 NIA NIA AKT
200403 DIDIT DIDIT MNJ
200404 DICKY DICKY MNJ
200405 RINDU RINDU EP

BENTUK NORMAL
Aturan-aturan normalisasi dinyatakan dalam istilah bentuk normal. Bentuk normal
adalah suatu aturan yang dikenakan pada relasi-relasi dalam database dan harus
dipenuhi oleh relasi-relasi tersebut pada level-level normalisasi. Suatu relasi dikatakan
berada dalam bentuk normal tertentu jika memenuhi kondisi-kondisi tertentu.

1. Bentuk Normal Pertama


Definisi Bentuk normal pertama (1 NF) :

Suatu relasi dikatakan dalam bentuk normal pertama jika dan hanya jika setiap
attribut bernilai tunggal untuk setiap baris.

Bentuk normal pertama dikenakan pada table yang belum ternormalisasi. Tabel
yang belum ternormalisasi adalah table yang memiliki attribute yang berulang.
Sebagai contoh berikut ini data dalam keadaan belum ternormalisasi.

NIM NAMA JABATAN KEAHLIAN LAMA (TH)


200401 IDWAR ANALYST YUNIOR DATABASE 5

16
Analisis Dan Perancangan Sistem
( Systems Analysis And Design)

COBOL 8
200402 AMSAL ANALYST SENIOR SYS. ANALYST 10
DESIGN SYS 8
200403 SUMIJAN PROGRAMMER COBOL 10
VISUAL BASIC 5
BORLAND C++ 4

Pada contoh diatas, keahlian menyatakan attribute yang berulang (misalnya,


Sumijan memiliki 3 keahlian dan Idwar memiliki 2 keahlian ). Bentuk seperti ini perlu
diubah menjadi bentuk normal pertama.

Data yang tak ternormalisasasi pada data diatas dapat diubah ke dalam bentuk
normal pertama dengan cara membuat setiap baris berisi kolom dengan jumlah
sama dan setiap kolom hanya mengandung satu nilai. Data yang ada diatas perlu
diubah menjadi relasi 1 NF.

NIM NAMA JABATAN KEAHLIAN LAMA (TH)


200401 IDWAR ANALYST YUNIOR DATABASE 5
200401 IDWAR ANALYST YUNIOR COBOL 8
200402 AMSAL ANALYST SENIOR SYS. ANALYST 10
200402 AMSAL ANALYST SENIOR DESIGN SYS. 8
200403 SUMIJAN PROGRAMMER COBOL 10
200403 SUMIJAN PROGRAMMER VISUAL BASIC 5
200403 SUMIJAN PROGRAMMER BORLAND C++ 4

CONTOH LAIN ( Belum normal 1 NF)

NO- TGL-PES ITEM1 ITEM2 ITEM3 ITEM4 TOTAL


PES
S01 01/04/04 P1 P2 P3 P4 99000
S02 01/04/04 P3 P5 P6 120000
S02 04/04/04 P1 P2 77000

Dirubah jadi 1 NF
NO-PES TGL-PES ITEM TOTAL
S01 01/04/04 P1 99000
S01 01/04/04 P2 99000
S01 01/04/04 P3 99000
S01 01/04/04 P4 99000
S02 01/04/04 P3 120000
S02 01/04/04 P5 120000

17
Analisis Dan Perancangan Sistem
( Systems Analysis And Design)

S02 01/04/04 P6 120000


S03 04/04/04 P1 77000
S03 04/04/04 P2 77000

2. Bentuk Normal Kedua


Definisi Bentuk Normal Kedua ( 2 NF) berdasarkan dependensi Fungsional

Suatu relasi berada dalam bentuk normal kedua jika dan hanya jika :
• Suatu relasi berada dalam bentuk normal pertama
• Semua attribut bukan kunci memiliki dependensi sepenuhnya terhadap kunci
primer

Atribut bukan kunci adalah atribut yang tidak merupakan bagian kunci primer

Dalam ungkapan yang lebih praktis, bentuk normal kedua mensyaratkan setiap attirbut
bergantung kepada kunci primer. Relasi dari contoh diatas tidak tergolong sebagai
bentuk normal kedua, meskipun memenuhi persyaratan bentuk 1 NF. Perhatikan bahwa
NAMA dan JABATAN mempunyai dependensi sepenuhnya terhadap NIM (sebab untuk
setiap nilai NIM yang sama , NAMA dan JABATAN juga sama). Namun tidak demikian
halnya dengan KEAHLIAN dan LAMA.

Untuk mengubah suatu relasi yang tergolong sebagai bentuk normal pertama ke bentuk
2 NF perlu dilakukan dekomposisi terhadap relasi tersebut. Proses dekomposisi dapat
dilakukan dengan menggambarkan diagram dependensi fungsional terlebih dahulu.
Berdasarkan diagram ini, relasi dalam bentuk 1 NF dipecah menjadi sejumlah relasi.
Contoh

NIM NAMA JABATAN KEAHLIAN LAMA (TH)


200401 IDWAR ANALYST YUNIOR DATABASE 5
200401 IDWAR ANALYST YUNIOR COBOL 8
200402 AMSAL ANALYST SENIOR SYS. ANALYST 10
200402 AMSAL ANALYST SENIOR DESIGN SYS. 8
200403 SUMIJAN PROGRAMMER COBOL 10
200403 SUMIJAN PROGRAMMER VISUAL BASIC 5
200403 SUMIJAN PROGRAMMER BORLAND C++ 4
Diagram Dependensi Fungsional dari table diatas adalah sbb:

NAMA
NIM
LAMA
JABATAN
KEAHLIAN

18
Analisis Dan Perancangan Sistem
( Systems Analysis And Design)

Diagram dependensi fungsional diatas menjelaskan bahwa :


• NAMA dan JABATAN memiliki dependensi fungsional terhadap NIM
• LAMA mempunyai dependensi fungsional terhadap gabungan NIM dan
KEAHLIAN
Berdasarkan diagram dependensi fungsional tersebut, pendekomposisiannya
menghasilkan dua buah relasi, yaitu : RELASI 1 dan RELASI 2

RELASI-1 ( NIM, NAMA, JABATAN )


RELASI-2 ( NIM, KEAHLIAN, LAMA)

Pada kedua relasi diatas, tanda garis bawah digunakan untuk menyatakan kunci primer
masing-masing relasi. Dengan pendekomposisian seperti diatas, isi kedua relasi
tersebut akan berupa sebagaimana hasil berikut ini.

RELASI-1
NIM NAMA JABATAN
200401 IDWAR ANALYST YUNIOR
200402 AMSAL ANALYST SENIOR
200403 SUMIJAN PROGRAMMER

RELASI-2
NIM KEAHLIAN LAMA (TH)
200401 DATABASE 5
200401 COBOL 8
200402 SYS. ANALYST 10
200402 DESIGN SYS. 8
200403 COBOL 10
200403 VISUAL BASIC 5
200403 BORLAND C++ 4

Begitu juga untuk data tabel yang kedua diatas :

Untuk menggambarkan proses dekompisisi relasi yang tergolong dalam bentuk normal
pertama ke bentuk normal kedua adalah :

R ( A, B, C, D)
Kunci Primer (A, B)
A --Æ D

R dapat digantikan dengan dua proyeksi R1 dan R2


R1 ( A, D )
KUNCI PRIMER ( A )

19
Analisis Dan Perancangan Sistem
( Systems Analysis And Design)

R2 ( A, B, C )
KUNCI Primer ( A, B)
KUNCI TAMU ( A ) Referensi R1

Contoh adalah sebagai berikut :


NO-PES TGL-PES ITEM TOTAL
S01 01/04/04 P1 99000
S01 01/04/04 P2 99000
S01 01/04/04 P3 99000
S01 01/04/04 P4 99000
S02 01/04/04 P3 120000
S02 01/04/04 P5 120000
S02 01/04/04 P6 120000
S03 04/04/04 P1 77000
S03 04/04/04 P2 77000
TABEL BERADA dalam 1 NF

Maka akan diperoleh dua relasi :


ORDER-1 ( NO-PES, TGL-PES, TOTAL)
ORDER-2 ( NO-PES, ITEM)

Dalam hal ini NO-PES bertindak ebagai kunci primer ORDER-1 dan gabungan NO-PES
dan ITEM bertindak sebagai kunci primer pada ORDER-2. Pada ORDER-2, NO-PES
menjadi kunci tamu yang mereferensi ke ORDER-1.

ORDER-1
NO-PES TGL-PES TOTAL
S01 01/04/04 99000
S02 01/04/04 120000
S03 04/04/04 77000

ORDER-2
NO-PES ITEM
S01 P1
S01 P2
S01 P3
S01 P4
S02 P3
S02 P5
S02 P6
S03 P1
S03 P2

20
Analisis Dan Perancangan Sistem
( Systems Analysis And Design)

Relasi hasil dekomposisi yang memenuhi bentuk 1 NF


Masalah yang masih sering terjadi pada relasi yang tergolong pada bentuk normal
kedua diakibatkan oleh adanya dependensi transitif. Dependensi transitif
mengakibatkan kemungkinan munculnya permasalahan sebagaimana pada bentuk 1
NF ( bentuk normal pertama).

3. BENTUK NORMAL KETIGA


Pengertian bentuk 3 NF adalah

Suatu relasi dikatakan dalam bentuk normal ketiga (3NF) jika :


• Berada dalam bentuk normal kedua
• Setiap atribut bukan kunci tidak memiliki dependensi transitif terhadap kuncii
primer

RELASI-1 dan RELASI-2 pada contoh sebelumnya memenuhi criteria definisi, sehingga
kedua relasi tersebut masuk ke dalam bentuk normal ketiga. Begitu juga halnya dengan
ORDER-1 dan ORDER-2

Contoh suatu relasi yang memenuhi bentuk normal kedua tetapi tidak memenuhi bentuk
normal ketiga dapat dilihat pada contoh berikut :
NO-PES NO-URUT KD-ITEM NM-ITEM
S01 01 P1 CD-ROOM
S01 02 P2 KEYBOARD
S01 03 P3 MOUSE
S01 04 P4 SPEAKER
S02 01 P3 MOUSE
S02 02 P5 FLASH DISK
S02 03 P6 ZIP
S03 01 P1 CD-ROOM
S03 02 P2 KEYBOARD
Tabel ini memenuhi bentuk 2 NF, tapi tidak memenuhi bentuk 3 NF
Pada contoh diatas, kunci primer relasi berupa gabungan NO-PES dan NO-URUT. Baik
KD-ITEM maupun NM-ITEM mempunyai dependensi fungsional terhadap kunci primer
tersebut. Namun perlu diperhatikan bahwa bila KD-ITEM bernilai sama, NM-ITEM juga
bernilai sama. Hal ini menunjukan adanya suatu dependensi diantara kedua atribut
tersebut. Lalu manakah yang memjadi penentu. ? Apakah Kd-ITEM bergantung pada
NM-ITEm atau sebaliknya ? Suatu item bisa saja memiliki nama sama, tetapi
mempunyai karakteristik yang berbeda. Sebagai contoh, dua mobil bisa saja diberi
nama sama, tetapi masing-masing mempunyai warna tersendiri. Pada keadaan seperti
ini tidaklah bisa dikatakan bahwa NM-ITEM yang menentukan KD-ITEM. Lebih tepat
kalau KD-ITEM yang menjadi penetu. Jadi NM-ITEM memiliki dependensi fungsional
terhadap KD-ITEM. Adanya dependensi NM-ITEM terhadap KD-ITEM pada relasi ini
menunjukan bahwa NM-ITEM tidak memiliki dependensi secara lansung terhadap kunci

21
Analisis Dan Perancangan Sistem
( Systems Analysis And Design)

primer (Gabungan NO-PES dan NO-URUT). Dengan kata lain NM-ITEM memiliki
dependensi transitif terhadap kunci primer.

Agar relasi dari tabel diatas memenuhi Bentuk normal 3 NF maka diperlukan langkah
normalisasi dengan mengikuti pendekatan :

Bila terdapat relasi R ( A, B, C )


Kunci Primer ( A ) atau B ---Æ C
Maka relasi R dapat digantikan dengan dua proyeksi R1 dan R2 dengan bentuk sbb:

R1 ( B, C )
Kunci Primer ( B )

R2 ( A, B )
Kunci Primer ( A )
Kunci Tamu ( B ) Referensi R1

Dengan menggunakan pendekatan diatas, maka relasi pada tabel diatas dapat
didekomposisi menjadi 2 relasi sebagaimana diperlihatkan pada hasil berikut ini :

R1
NO-PES NO-URUT KD-ITEM
S01 01 P1
S01 02 P2
S01 03 P3
S01 04 P4
S02 01 P3
S02 02 P5
S02 03 P6
S03 01 P1
S03 02 P2

R2
KD-ITEM NM-ITEM
P1 CD-ROOM
P2 KEYBOARD
P3 MOUSE
P4 SPEAKER
P5 FLASH DISK
P6 ZIP
Dekomposisi yang menghasilkan relasi-relasi bentuk 3 NF

4. BENTUK NORMAL BOYCE-CODD (BCNF)


Definisi : Suatu relasi disebut memenuhi bentuk BCNF jika dan hanya jika semua
penentu (determinan) adalah kunci kandidat (atribut yang bersifat unik).

22
Analisis Dan Perancangan Sistem
( Systems Analysis And Design)

BCNF merupakan bentuk normal sebagai perbaikan terhadap 3 NF. Suatu relasi yang
memenuhi BCNF, tetapi tidak untuk sebaliknya. Suatu relasi yang memenuhi 3NF
belum tentu memenuhi BCNF. Dalam banyak literature disebutkan bahwa BCNF adalah
perbaikan dari 3 NF, karena bentuk normal ketigapun mungkin masih mengandung
anomaly sehingga masih perlu dinormalisasi lebih lanjut. Lihat contoh sbb :
NM-MHS NM-MTK DOSEN
KIA ANALYSIS AMSAL
KIA MIS IDWAR
MAWAR ANALYSIS AMSAL
VERI MIS SARJON
Relasi TABEL diatas yang memenuhi 3 NF tapi tidak memenuhi BCNF

Relasi diatas didasarkan oleh fakta :


• Seorang mhs dapat mengambil mtk
• Setiap Dosen hanya mengajar pada sebuah NM-MTK (contoh, AMSAL hanya
mengajar ANALYSIS).
• Setiap Mhs pada setiap MTK hanya diajar oleh seorang dosen ( DOSEN MIS
pada kelas KIA hanyalah IDWAR
• Suatu MTK yang sama bisa saja memiliki lebih dari satu Dosen (contoh. Ada
kelas MTK MIS yang diajar oleh IDWAR dan SARJON

Pada keadaan ini kunci relasi TABEL berupa gabungan :

• NM-MHS dan NM-MTK


• NM-MHS dan DOSEN

Relasi TABEL memenuhi Bentuk 3 NF. Mengapa ? seab tak ada dependensi transitif
pada relasi tersebut. Namun relasi TABEL tidak memenuhi BCNF, karena adanya
diterminan DOSEN ( yang menentukan NM-MTK) dan determinan ini tidak berdiri
sebagai kunci kandidat.

NM-MHS
DOSEN

NM-MTK

Diagram dependensi fungsional pada relasi TABEL


Relasi tabel masih menimbulkan anomali. Sebagai contoh bila baris yang berisi NM-
MHS bernama VERI dihapus maka informasi yang menyatakan bahwa SARJON adalah
DOSEN MIS akan ikut hilang.

23
Analisis Dan Perancangan Sistem
( Systems Analysis And Design)

Cara mengkonversi relasi yang telah memenuhi bentuk 3 NF ke BCNF adalah :


a. carilah semua penentu
b. bila terdapat penentu yang bukan berupa kunci kandidat maka :
• Pisahkan relasi tersebut
• Buat penentu tersebut sebagai kunci primer
Itukah sebabnya agar memenuhi BCNF, relasi TABEL perlu didekomposisi jadi :
• TABEL-1 (NM-MHS, DOSEN)
• TABEL-2 (DOSEN, NM-MTK)
TABEL-1 TABEL-2

NM-MHS DOSEN DOSEN NM-MTK


KIA AMSAL AMSAL ANALYSIS
KIA IDWAR IDWAR MIS
MAWAR AMSAL SARJON MIS
VERI SARJON
5. DEPENDENSI NILAI BANYAK dan BENTUK NORMAL KEEMPAT
Dependensi nilai banyak merupakan terjemahan dari multivalued dependency
(MVD). Dependensi dipakai pada bentuk $ NF. Dependensi ini dipakai untuk
menyatakan hubungan satu ke banyak.

NM-MTK DOSEN MATERI


Comp. Science IDWAR Pengenalan computer
ZULHENDRA Word processing
Spreadsheet
MIS IDWAR CBIS
E-Commerce Technology

Tabel menyatakan dependensi nilai banyak


Tabel diatas mengungkapkan tentang dosen yang mengajar matakuliah dan materi
matakuliah bersangkutan. Sebagai contoh ada 2 dosen yang mengajar comp.
science yaitu Idwar dan Zulhendra. Adapun materi matakuliah adalah Pengenalan
computer, word processing, spreadsheet. Dari table diatas dapat di NORMALISASI
sebagai berikut table itu

NM-MTK DOSEN MATERI


Comp. Science IDWAR Pengenalan computer
Comp. Science IDWAR Word processing
Comp. Science IDWAR Spreadsheet
Comp. Science ZULHENDRA Pengenalan computer
Comp. Science ZULHENDRA Word processing
Comp. Science ZULHENDRA Spreadsheet
MIS IDWAR CBIS
MIS IDWAR E-Commerce Technology
Hasil relasi normalisasi terhadap TABLE

24
Analisis Dan Perancangan Sistem
( Systems Analysis And Design)

Masalah relasi yang memenuhi BCNF sebagaimana kasus diatas sebenarnya dapat
dipecahkan melalui dekomposisi. Hal ini disebabkan adanya kenyataan bahwa antara
dosen dan materi tida ada ketergantungan. Solusi yang tepat terhadap masalah ini
dapat diselesaikan dengan konsep dependensi nilia banyak.

Secara umum, dependensi nilai banyak muncul pada relasi yang paling tidak memiliki 3
atau 2 diantaranya bernilai banyak dan nilai-nilainya tergantung hanya pada atribut
ketiga.

Pada suatu relasi R dengan attribute A,B,C atribut B dikatakan bersifat multidependen
terhadap A jika :
• Sekumpulan nilai B yang diberikan pada pasangan (A,C) hanya tergantung pada
nilai A
• Tak tergantung pada nilai C

Hubungan diatas dinyatakan dengan : A --- >> B


Artinya A menentukan banyak nilai B atau B multidependen terhadap A

Teorema Fagin yang berkain dengan dependensi nilai banyak :


Bila R (A,B,C) merupakan suatu relasi, dengan A,B,C adalah attirbut-atribut relasi
tersebut, maka proyeksi dari R berupa (A,B dan (a,C) jika R memenuhi MVD A --- >>
B | C.
Perlu diketahui bila terdapat :
A --- >> B
A --- >> C
Maka keduanya dapat ditulis menjadi
A --- >> B | C

NM-MTK DOSEN
Comp. Science IDWAR
Comp. Science ZULHENDRA
MIS IDWAR
A --- >> B

NM-MTK MATERI
Comp. Science Pengenalan computer
Comp. Science Word processing
Comp. Science Spreadsheet
MIS CBIS
MIS E-Commerce Technology
A --- >> C

Relasi seperti diatas memenuhi bentuk 4 NF

25
Analisis Dan Perancangan Sistem
( Systems Analysis And Design)

Secara praktis, suatu relasi memenuhi bentuk normal keempat jika :


• Telah berada pada BCNF dan
• Tidak mengandung dua atribut atau lebih yang bernilai banyak

6. Dependensi Gabungan dan Bentuk NORMAL KELIMA (5 NF)

Suatu relasi R (X, Y, ...., Z ) memenuhi dependensi gabungan jika gabungan dari
proyeksi A,B, ..., C, dengan A,B, ..., C merupakan subhimpunan dari atribut-atribut R.
Dependensi gabungan sesuai dengan definisi diatas dinyatakan dengan notasi :

* ( A,B, ..., C) dengan A = XY, B=YZ, C=ZX

Sebagai contoh terdapat hubungan dealer yang mengageni suatu perusahaan


distributor kendaraan. Dalam hal ini distributor memiliki sejumlah produk kendaraan.

DEALER DISTRIBUTOR KENDARAAN


PT . TOYOTA NISSAN TRUK NISSAN
PT . TOYOTA TOYOTA TOYOTA KIJANG
PT . TOYOTA TOYOTA TOYOTA AVANZA
PT SUTAN KASIM MITSUBISHI KUDA

Relasi diatas memenuhi dependensi gabungan * (DEALER DISTR, DISTR


KENDARAAN, DEALER KENDARAAN). Oleh karena itu relasi DDK dapat
didekomposisi menjadi tiga relasi :
DEA-DIST ( DEALER, DISTR)

DIST-KEND ( DISTR, KEND)

DEA-KEND ( DEALER, KEND)

Gabungan ketiga relasi diatas akan membentuk relasi DDK

Perlu diketahi bahwa gabungan dari dua pryeksi diatas bisa jadi menghasilkan relasi
antara yang mengandung baris yang salah. Namun gabungan ketiga proyeksi akan
menghasilkan relasi yang sesuai dengan aslinya.

Bentuk 5 NF disebut juga PJ/NF (projection Join/ Normal Form), menggunakan


acuan dependensi gabungan. Suatu relasi berada dalam 5 NF jika dan hanya jika
setaip dependensi gabungan dalam R tersirat oleh kunci kandidat relasi R. Secara
praktis dapat dikatakan bahwa suatu relasi R berada dalam 5 NF jika data yang ada
padanya tak dapat lagi didekomposisi menjadi relasi-relasi yang lebih kecil dengan
kunci kandidat relasi-relasi yang lebih kecil ini tidak sama dengan kunci kandidat

26
Analisis Dan Perancangan Sistem
( Systems Analysis And Design)

relasi. Relasi seperti DEA-DIST, DIST-KEND dan DEA-KEND memenuhi 5 NF,


sedangkan relasi DDK tidak memenuhi bentuk 5 NF (Normal kelima)

DEALER DISTR DISTR KEND


PT . TOYOTA NISSAN NISSAN TRUK NISSAN
PT . TOYOTA TOYOTA TOYOTA KIJANG
PT SUTAN KASIM MITSUBISHI TOYOTA AVANZA
MITSUBISHI KUDA

Gabungan

DEALER DISTR KENDARAAN DEALER KEND


PT . TOYOTA NISSAN TRUK NISSAN PT . TOYOTA TRUK NISSAN
PT . TOYOTA TOYOTA TOYOTA KIJANG PT . TOYOTA KIJANG
PT . TOYOTA TOYOTA TOYOTA AVANZA PT . TOYOTA AVANZA
PT . TOYOTA TOYOTA TRUK DYNA PT . TOYOTA SEDAN
PT S. KASIM MITSUBISHI GRANDIAN NISSAN
PT S. KASIM MITSUBISHI KUDA PT SUTAN KASIM KUDA

RELASI DDK ASLI

Record yang bertulisan miring adalah baris yang salah.

Gabungan kedau proyeksi menghasilkan baris yang salah, tetapi gabungan


ketiga proyeksi menghasilkan relasi yang sesuai dengan aslinya.

Untuk memahami pengertian tersirat pada kunci kandidat, perhatikan relasi berikut :

NOBP NM-MHS ALAMAT KOTA


200401 AMIEN RAIS Jl. Merdeka 1 Yogya
200402 WIRANTO Jl. Medan 2 Klaten
200403 SUSILO B.Y. Jl. Merapi 3 Madura

Relasi MHS diatas memenuhi dependensi gabungan * ( (NOBP,nm-MHS),


(NOBP,ALAMAT,KOTA)), dengan kata lain, relasi MHS akan sama dengan gabungan
kedua pryeksinya, (NOBP, NM-MHS) dan (NOBP, ALAMAT, KOTA). Pada konteks ini,
dependensi gabungan tersirat oleh kunci kandidat NoBP yang sama baik pada relasi
MHS maupun kedua proyeksinya. Relasi yang mempunyai sifat seperti itu dikatakan
memenuhi bentuk normal kelima (5 NF).

27

Anda mungkin juga menyukai