4.1.5.3 Desain Basisdata Fisikal Physical Database Design
Tahap desain basisdata fisikal ini merupakan proses menghasilkan suatu deskripsi dari implementasi database pada penyimpan sekunder. Desain fisikal
meliputi normalisasi dan deskripsi tabel fisik.
4.1.5.3.1 Normalisasi
Normalisasi adalah teknik untuk menghasilkan suatu set dari relasi yang cocok yang mendukung kebutuhan data dari sebuah sistem. Tahap normalisasi
meliputi 3 tahap yaitu bentuk normalisasi ke 1 1NF, normalisasi ke 2 2 NF, dan normalisasi ke 3 3 NF.
1. Normalisasi 1 1 NF
Desain database yang dibuat sudah memenuhi 1 NF, karena setiap record sudah bersifat atomic yaitu tidak dapat dipecah menjadi
beberapa nilai, setiap nilai atribut tidak ada yang berulang dan tiap atribut hanya memiliki 1 pengertian.
2. Normalisasi 2 2 NF
Desain database yang dibuat sudah memenuhi 2 NF, karena atribut bukan kunci non-key pada setiap tabel memiliki ketergantungan
fungsional sepenuhnya fully functional dependency pada kunci utama primary key.
3. Normalisasi 33 NF
Desain database yang dibuat sudah memenuhi 3 NF, karena telah memenuhi syarat bentuk 2 NF dan setiap atribut bukan kunci pada
setiap tabel tidak memiliki ketergantungan transitif, dengan kata lain setiap atribut bukan kunci tidak memiliki ketergantungan fungsional
terhadap atribut bukan kunci lainnya.
4.1.5.3.2 Deskripsi Tabel Kandidat
Tabel ini berfungsi untuk menyimpan data identitas kandidat. Tabel
kandidat memiliki primary key yaitu idkandidat dengan tipe data varchar.
Variabel lainnya mengikuti rancangan pada diagram ER, seperti namakandidat, tanggallahir, tempatlahir, foto, agama, dan nourut.
Tabel 4. 1. Tabel Kandidat.
Nama variabel Tipe data
Constrain Deskripsi
idkandidat Varchar10
Primary_key Id unik untuk tiap kandidat
namakandidat Varchar30
Nama dari kandidat tanggallahir
Date Tanggal lahir kandidat
tempatlahir Varchar30
Tempat lahir kandidat foto
Varchar100 Foto kandidat
visimisi Varchar500
Visi atau misi dari kandidat nourut
int No urut kandidat pada pemilihan
4.1.5.3.3 Deskripsi Tabel Pekerjaan
Tabel ini berfungsi untuk menyimpan data riwayat pekerjaan kandidat.
Tabel pekerjaan memiliki primary key yaitu idpekerjaan dengan tipe data
varchar. Tabel pekerjaan memiliki relasi many-to-one dengan tabel kandidat
sehingga tabel ini memiliki foreign key yaitu idkandidat. Tabel 4. 2. Tabel Pekerjaan
agama Varchar20
Agama kandidat partaipengusung Varchar50
Partai yang mengusung kandidatjika ada
Nama variabel Tipe data
Constrain Deskripsi
idpekerjaan Varchar10
Primary_key Id unik untuk tiap pekerjaan
jenispekerjaan Varchar30
Jenis pekerjaan yang dimiliki namainstansi
Varchar30 Nama instansi tempat bekerja
tahunawal Varchar4
Tahun awal mulai bekerja tahunakhir
Varchar4 Tahun selesai bekerjaan
jabatan Varchar30
Jabatan atau posisi kandidat dalam pekerjaannya
idkandidat Varchar10
Foreign_key Id kandidat yang bersangkutan
4.1.5.3.4 Deskripsi Tabel Pendidikan
Tabel ini berfungsi untuk menyimpan data riwayat pendidikan kandidat.
Tabel pendidikan memiliki primary key yaitu idpendidikan dengan tipe data
varchar. Tabel pendidikan memiliki relasi many-to-one dengan tabel kandidat
sehingga tabel ini memiliki foreign key yaitu idkandidat. Tabel 4. 3. Tabel Pendidikan.
4.1.5.3.5 Deskripsi Tabel Prestasi
Tabel ini berfungsi untuk menyimpan data prestasi kandidat.Tabel prestasi
memiliki primary key yaitu idprestasi dengan tipe data varchar. Tabel prestasi
memiliki relasi many-to-one dengan tabel kandidat sehingga tabel ini memiliki
foreign key yaitu idkandidat.
Nama Variabel Tipe data
Constrain Deskripsi
idpendidikan Varchar10 Primary_key
Id unik untuk tiap pendidikan angkatan
Varchar10 Angkatan tingkat pendidikan
tingkat Varchar20
Tingkat pendidikan namasekolah
Varchar30 Nama sekolah
jurusan Varchar50
Nama jurusan idKandidat
Varchar10 Foreign_key Id kandidat yang bersangkutan
Tabel 4. 4. Tabel Prestasi.
4.1.5.3.6 Deskripsi Tabel organisasi
Tabel ini berfungsi untuk menyimpan data organisasi yang pernah di ikuti
oleh kandidat. Tabel organisasi memiliki primary key yaitu idorganisasi dengan
tipe data varchar. Tabel organisasi memiliki relasi many-to-many dengan tabel
kandidat sehingga relasi ini menghasilkan tabel keanggotaan pada tabel 4.6. Tabel 4. 5. Tabel Organisasi.
Nama variabel Tipe data
Constrain Deskripsi
idPrestasi Varchar10
Primary_key Id unik untuk tiap prestasi
deskripsi Varchar100
Penjelasan tentang prestasi yang diraih
tahun date
Tanggal prestasi diraih idKandidat
Varchar10 Foreign_key
Id kandidat yang bersangkutan
Nama variabel Tipe data
Constrain Deskripsi
idorganisasi Varchar10
Primary_key Id unik untuk tiap organisasi
namaorganisasi Varchar50
Nama dari organisasi pendiri
Varchar50 Nama pendiri organisasi
tglberdiri date
Tanggal organisasi didirikan jmlanggota
int Jumlah anggota organisasi
4.1.5.3.7 Deskripsi Tabel Keanggotaan
Tabel ini berfungsi untuk menyimpan relasi antara tabel kandidat tabel 4.1 dengan tabel organisasitabel 4.5 . Tabel keanggotaan memiliki primary key
yaitu idKeanggotaan dengan tipe data varchar. Tabel keanggotaan merupakan hasil relasi many-to-many dengan tabel kandidat, sehingga tabel ini memiliki
foreign key idKandidat dan idorganisasi, serta memiliki variabel lain yang
dihasilkan dari relasi yaitu jabatan, tglmasuk, dan statusanggota.
Tabel 4. 6. Tabel Keanggotaan.
Nama variabel Tipe data
Constrain Deskripsi
idkeanggotaan Varchar10
Primary_key Id unik untuk tiap keanggotaan
idkandidat Varchar10
Foreign_key Id kandidat yang bersangkutan
idorganisasi Varchar10
Foreign_key Id organisasi yang diikuti
jabatan Varchar30
Jabatan dari kandidat dalam organisasi
tglmasuk date
Tanggal masuk kandidat dalam organisasi
statusanggota Varchar10
Status keanggotaan kandidat aktif nonaktif
4.1.5.3.8 Deskripsi Tabel Pemilih
Tabel ini berfungsi untuk menyimpan data identitas pemilih.Tabel pemilih
memiliki primary key yaitu idpemilih dengan tipe data varchar. Tabel pemilih memiliki relasi many-to-many dengan tabel kriteria pada tabel 4.8 menghasilkan
tabel dari relasinya yaitu tabel pilih pada tabel 4.9. Tabel ini juga memiliki relasi many-to-one dengan tabel 4.1 yaitu tabel kandidat.
Tabel 4. 7. Tabel Pemilih.
4.1.5.3.9 Deskripsi Tabel Kriteria
Tabel ini berfungsi untuk menyimpan data kriteria kandidat.Tabel kriteria
memiliki primary key yaitu idkriteria dengan tipe data varchar. Tabel kriteria memiliki relasi many-to-many dengan tabel pemilih pada tabel 4.7 sehingga
menghasilkan tabel dari relasinya yaitu tabel pilih pada tabel 4.9. Tabel ini juga memiliki tiga relasi many-to-many dengan tabel 4.1 yaitu tabel kandidat,
Nama variabel Tipe data
Constrain Deskripsi
idpemilih Varchar10
Primary_key Id unik untuk tiap pemilih
nama Varchar30
Nama pemilih username
Varchar16 Username untuk pemilih
password Varchar16
Password untuk pemilih tgllahir
date Tanggal lahir pemilih
sehingga menghasilkan tabel integritas pada tabel 4.10, tabel kapabilitas tabel 4.11, dan tabel akseptabilitas tabel 4.12.
Tabel 4. 8. Tabel Kriteria.
4.1.5.3.10 Deskripsi Tabel Pilih
Tabel ini berfungsi untuk menyimpan relasi antara tabel kandidat tabel 4.1, tabel pemilih tabel 4.7 dan tabel kriteria tabel 4.8 dan tabel kandidat
tabel 4.1. Tabel pilih memiliki primary key yaitu idpilih dengan tipe data
varchar. Tabel pilih merupakan hasil relasi many-to-many dengan tabel subkriteria, tabel pemilih, dan tabel kandidat, sehingga tabel ini memiliki foreign
key idkandidat, idpemilih, dan idsubkriteria
Tabel 4. 9. Tabel Pilih.
Nama variabel Tipe data
Constrain Deskripsi
idkriteria Varchar10 Primary_key
Id unik untuk tiap kriteria namakriteria
Varchar30 nama kriteria yang digunakan
Nama variabel Tipe data
Constrain Deskripsi
idpilih Varchar10
Primary_key Id unik untuk tiap baris pilihan
idkandidat Varchar10
Foreign_key Id pemilih yang bersangkutan
idpemilih Varchar10
Foreign_key Id kandidat yang dipilih
idsubkriteria Varchar10
Foreign_key Id kriteria yang digunakan
bobotsub double
Bobot untuk subkriteria yang
4.1.5.3.11 Deskripsi Tabel Subkriteria
Tabel ini berfungsi untuk menyimpan data subkriteria untuk masing-
masing kriteria utama. Tabel subkriteria memiliki primary key yaitu idsubkriteria
dengan tipe data varchar. Tabel ini memiliki relasi many-to-one dengan tabel
kriteria tabel 4.8 Tabel 4. 10. Tabel Subkriteria.
dipilih skor
double Skor kandidat untuk subkriteria
tertentu bobotintegritas
double Bobot integritas yang digunakan
bobotkapabilitas double
Bobot kapabilitas yang digunakan
bobotakseptabilit as
double Bobot akseptabilitas yang
digunakan
Nama variabel Tipe data
Constrain Deskripsi
idsubkriteria Varchar10
Primary_key Id unik untuk tiap baris
subkriteria namasubkriteria
Varchar30 Nama untuk subkriteria
idkriteria Varchar10
Foreign_key Id kriteria yang bersangkutan
4.1.6 Manajemen Dialog