BAB II LANDASAN TEORI
ANALISA DAN PERANCANGAN SISTEM
I.22 Konseptual Disain Sistem e-Commerce Motor Honda
III.2.4 Entity ± Relational Diagram
III.3.1.3 Tahap Normalisasi
Normalisasi adalah mengubah suatu tabel yang memiliki masalah (anomali) tertentu ke dalam 2 buah tabel atau lebih yang tak memiliki anomali. Ada tiga kondisi yang harus dipenuhi oleh suatu tabel dalam proses normalisasi, yaitu :
1. tidak terdapat group yang berulang dalam satu kolom
2. tidak terdapat kolom bukan kunci yang tidak bergantung pada kolom kunci
3. tidak terdapat kolom bukan kunci yang bergantung pada kolom bukan kunci
Selanjutnya adalah menganalisa kenormalan tabel-tabel tersebut dengan memberi recordpada masing-masingfield.
1. Tabel motor
Setelah melakukan pengisian contoh data pada tabel motor, terlihat bahwa tabel sudah memenuhi kondisi normal, akan tetapi masih terdapat anomali yaitu nilai yang berulang untuk satu atribut kunci yang sama, akibatnya terjadi redudansi data. Hal tersebut dikarenakan satu kd_motor bisa mempunyai banyak warna dan setiap warna mempunyai stok tersendiri. Jika tabel motor mengalami bentuk anomali seperti ini maka tabel motor harus dipecah menjadi dua tabel, yaitu tabel spek_motor
yaitu tabel yang menyimpan data spesifikasi motor dan tabel real_motor yang menyimpan data warna dan stok motor berdasarkan warna motor. Berikut adalah struktur fisik kedua tabel :
1. Tabel spek_motor
Field Name Data Type Length Description
kd_spek_motor varchar 20 Kode spesifikasi motor (primary key)
kd_kat varchar 20 Kode kategori motor (foreign key)
nm_motor varchar 40 Nama motor
thn_prod char 6 Tahun produksi motor
P*l*t varchar 40 Ukuran panjang x lebar x tinggi motor satuan mm
berat varchar 40 Berat kosong motor dalam satuan kg
jarak_roda varchar 40 Jarak sumbu roda dalam satuan mm
ban_depan varchar 40 Ukuran ban depan
ban_blkng varchar 40 Ukuran ban belakang
sus_depan varchar 40 Spesifikasi suspensi depan
sus_blkng varchar 50 Spesifikasi suspensi belakang
rem_depan varchar 50 Spesifikasi rem depan
rem_blkng varchar 40 Spesifikasi rem belakang
rangka varchar 40 Tipe rangka motor
kap_bb varchar 40 Kapasitas tangki bahan bakar dalam satuan liter
sistem_bb varchar 40 Sistem bahan bakar
mesin varchar 40 Spesifikasi tipe mesin
volum varchar 40 Volume langkah dalam satuan cc
daya varchar 40 Daya maksimum motor
pelumas varchar 40 Kapaistas minyak pelumas mesin dalam satuan liter
kopling varchar 50 Spesifikasi kopling
trans_gigi varchar 40 Transmisi Gigi
pola_gigi varchar 40 Pola pengoperan gigi
starter varchar 40 Spesifikasi starter
aki varchar 40 Spesifikasi varchar
busi varchar 40 Spesifikasi busi
pengapian varchar 40 Sistem pengapian
velg varchar 50 Tipe velg motor
garansi varchar 40 Lama garansi mesin motor Honda
harga int 10 Harga satuan motor
pot_harga int 6 Potongan harga untuk harga satuan motor
2. Tabel real_motor
Field Name Data Type Length Description
kd_motor varchar 20 Kode Motor untuk setiap warna dan stok
(primary key)
kd_spek_motor varchar 20 Kode spesifikasi motor (foreign key)
warna varchar 40 Warna motor
stok int 4 Stok motor
Tabel 3.8Tabel Real_Motor Hasil Tahap Normalisasi 2. Tabel kategori
Setelah melakukan pengisian contoh data pada tabel kategori, juga terlihat bahwa terdapat anomali yaitu nilai yang berulang untuk satu atribut kunci yang sama. Ini berarti bahwa tabel kategori belum dalam bentuk normal. Hal tersebut dikarenakan satu kd_kat bisa mempunyai banyak fitur utama. Untuk mengatasi anomali ini, maka tabel kategori harus dipecah menjadi dua tabel, yaitu tabel kategori dan tabel fitur. Berikut adalah struktur fisik kedua tabel :
1. Tabel kategori
Field Name Data Type Length Description
kd_kat varchar 20 Kode kategori (primary key)
kategori varchar 40 Nama kategori motor
Info varchar 300 Info umum kategori motor
fitur varchar 500 fitur utama tiap tipe motor
Tabel 3.9Tabel Kategori Setelah Tahap Normalisasi
2. Tabel fitur
Field Name Data Type Length Description
kd_fitur varchar 20 Kode fitur (primary key)
kd_kat varchar 20 Kode kategori (foreign key)
fitur varchar 200 fitur utama tiap tipe motor
3. Tabel tipe_baru
Setelah melakukan pengisian contoh data pada tabel tipe_baru, terlihat bahwa tidak terdapat nilai yang berulang dalam satu kolom, semua atribut bukan kunci bergantung penuh pada atribut kunci dan tidak terdapat atribut bukan kunci yang bergantung pada atribut bukan kunci. Ini berarti bahwa tabel tipe_baru sudah dalam bentuk normal.
4. Tabel pemesan
Setelah melakukan pengisian contoh data pada tabel pemesan, terlihat bahwa tidak terdapat nilai yang berulang dalam satu kolom, semua atribut bukan kunci bergantung penuh pada atribut kunci dan tidak terdapat atribut bukan kunci yang bergantung pada atribut bukan kunci. Ini berarti bahwa tabel pemesan sudah dalam bentuk normal.
5. Tabel pesan
Setelah melakukan pengisian contoh data pada tabel pesan, terlihat bahwa tidak terdapat nilai yang berulang dalam satu kolom, semua atribut bukan kunci bergantung penuh pada atribut kunci dan tidak terdapat atribut bukan kunci yang bergantung pada atribut bukan kunci. Ini berarti bahwa tabel pesan sudah dalam bentuk normal.
6. Tabel bayar_kirim
Setelah melakukan pengisian contoh data pada tabel bayar_kirim, terlihat tidak terdapat nilai yang berulang dalam satu kolom, semua atribut bukan kunci bergantung penuh pada atribut kunci dan tidak
terdapat atribut bukan kunci yang bergantung pada atribut bukan kunci. Ini berarti bahwa tabel bayar_kirim sudah dalam bentuk normal.
Selain tabel-tabel yang berelasi, terdapat juga beberapa tabel tambahan yang tidak saling berelasi yaitu tabel pemakai untuk menyimpan data login seorang admin, tabel berita untuk menyimpan data berita, tabel buku_tamu untuk menyimpan data buku tamu dan tabel rekening untuk menyimpan informasi rekening tempat pembayaran motor. Sehingga logical database design setelah proses normalisasi terlihat padagambar 3.12berikut ini :