4.1.3 Perancangan Basisdata Fisikal
4.1.3.1 Menerjemahkan Model Logikal dalam DBMS
4.1.3.1.2 Rancangan Dasar Relasi
125 Kriteria Feasibility Faktor Pemberat Kandidat 1 ( SQL Server 2000 EnterpriseEdition) Kandidat 2 ( Oracle 10g ) Nilai Total 100% 87 80.5
Tabel 4.6 Tabel Matriks feasibility analysis pemilihan DBMS
4.1.3.1.2 Rancangan Dasar Relasi
Langkah ini bertujuan untuk memutuskan bagaimana merepresentasikan basis relasi yang diidentifikasikan pada model data logikal global ke dalam sasaran DBMS.
Adapun hasil dari pada langkah ini adalah sebagai berikut :
Klien
Domain nomor klien fixed length character string , 7 Domain nama klien variable length character string,20 Domain kode jenis Identitas fixed length character string, 7 Domain nomor identitas variable length character string, 25 Domain jenis Kelamin variable length character string, 10 Domain status pernikahan variable length character string, 12 Domain tempatLahir variable length character string, 20 Domain tanggalLahir small datetime
126
Domain pekerjaan variable length character string, 20 Domain alamat tetap variable length character string, 50 Domain alamat tagih variable length character string, 50
Klien (
noKlien nomor klien NOT NULL,
namaKlien nama klien NOT NULL,
kdJenisIdentitas kode Jenis identitas NOT NULL, noIdentitas nomor Identitas NOT NULL, jenisKelamin jenis kelamin NOT NULL, statusPernikahan status pernikahan NOT NULL,
tempatLahir tempat lahir NOT NULL,
tanggalLahir tanggal lahir NOT NULL,
kdAgama kode agama NOT NULL,
pekerjaan pekerjaan NOT NULL,
alamatTetap alamat tetap NOT NULL,
alamatTagih alamat tagih NOT NULL,
PRIMARY KEY ( noklien ) )
Polis
Domain nomor polis fixed length character string, 7 Domain nomor SPAJ fixed length character string, 7 Domain tanggal SPAJ datetime
127
Domain tanggal mulai datetime Domain lama asuransi integer Domain tanggal ekspirasi datetime Domain lama pembayaran premi intager Domain akhir bayar premi datetime
Domain kode cara bayar variable length character string, 10 Domain kode valuta variable length character string, 10 Domain index awal decimal
Domain jumlah uang asuransi integer Domain premi standard integer Domain premi 5 tahun pertama integer Domain premi setelah 5 tahun integer
Domain resiko integer
Domain nomor pemegang polis fixed length character string, 7 Domain nomor pembayar premi fixed length character string, 7 Domain kode agen fixed length character string, 7 Domain kode penagih fixed length character string, 7 Domain nomor Bp3 fixed length character string, 7 Domain tanggal Bp3 datetime
Domain pembayaran terakhir datetime
Domain status polis variable length characterstring, 10 Domain status klaim variable length character string, 20
Polis (
128
noSPAJ nomor SPAJ NOT NULL,
tanggalSPAJ tanggal SPAJ NOT NULL,
usiaMasuk usia masuk NOT NULL,
tanggalMulai tanggal mulai NOT NULL,
lamaAsuransi lama asuransi NOT NULL, tanggalEkspirasi tanggal ekspirasi NOT NULL, lamaPembayaranPremi lama pembayaran premi NOT NULL, akhirBayarPremi akhir bayar premi NOT NULL, KdCaraBayar kode cara bayar NOT NULL,
KdValuta kode valuta NOT NULL,
indexAwal index awal NOT NULL,
jumlahUangAsuransi jumlah uang asuransi NOT NULL, premiStandard premi standard NOT NULL, premi5TahunPertama premi 5 tahun pertama NOT NULL, premiSetelah5Tahun premi setelah 5 tahun NOT NULL, resiko resiko NOT NULL, noPemegangPolis nomor pemegang polis NOT NULL, noPembayarPremi nomor pembayar polis NOT NULL, kdAgen kode agen NOT NULL, kdPenagih kode penagih NOT NULL, noBp3 nomor Bp3 NOT NULL, tanggalBp3 tanggal Bp3 NOT NULL, pembayaranTerakhir pembayaran terakhir NOT NULL, statusPolis status polis NOT NULL, statusKlaim status klaim NOT NULL,
129
PRIMARY KEY (noPolis),
FOREIGN KEY(KdValuta) REFERENCES Valuta (KdValuta) ON UPDATE CASCADE ON DELETE NO ACTION,
FOREIGN KEY (KdCaraBayar) REFERENCES CaraBayar (KdCaraBayar) ON UPDATE CASCADE ON DELETE NO ACTION, FOREIGN KEY (noPemegangPolis) REFERENCES Klien (noKlien) ON UPDATE CASCADE ON DELETE NO ACTION,
FOREIGN KEY (noPembayarPolis) REFERENCES Klien (noKlien) ON UPDATE CASCADE ON DELETE NO ACTION
)
ProdukBenefit
Domain kode produk fixed length character string, 7 Domain kode benefit fixed length character string, 7
Domain nilai benefit decimal
Produk Benefit (
kdProduk kode produk NOT NULL, kdBenefit kode benefit NOT NULL, nilaiBenefit nilai benefit NOT NULL, PRIMARY KEY (KdProduk),
PRIMARY KEY (KdBenefit),
FOREIGN KEY (KdProduk) REFERENCES Produk (KdProduk) ON UPDATE CASCADE ON DELETE NO ACTION,
130
UPDATE CASCADE ON DELETE NO ACTION )
Agen
Domain kode agen fixed length character string, 7 Domain nama agen variable length character string, 20 Domain kode kantor fixed length character string, 7 Domain alamat agen variable length character string, 50
Agen (
kdAgen kode agen NOT NULL, namaAgen nama agen NOT NULL, kdKantor kode kantor NOT NULL, alamatAgen alamat agen NOT NULL, PRIMARY KEY (KdAgen),
FOREIGN KEY (KdKantor) REFERENCES Kantor (KdKantor) ON UPDATE CASCADE ON DELETE NO ACTION
)
Penagih
Domain kode penagih fixed length character string, 7 Domain nama penagih variable length character string, 20 Domain kode kantor fixed length character string, 7 Domain alamat penagih variable length character string, 50
131
Penagih (
kdPenagih kode penagih NOT NULL namaPenagih nama penagih NOT NULL kdKantor kode kantor NOT NULL alamatPenagih alamat penagih NOT NULL PRIMARY KEY (KdPenagih),
FOREIGN KEY (KdKantor) REFERENCES Kantor (KdKantor) ON UPDATE CASCADE ON DELETE NO ACTION
)
Kantor
Domain kode kantor fixed length character string 7 Domain nama kantor variable length character string 50 Domain alamat kantor variable length character string 50 Domain kota variable length character string 50 Domain nomor telpon variable length character string 15 Domain nomor fax variable length character string 15 Domain email kantor variable length character string 50 Domain status kantor variable length character string 25
Kantor (
kdKantor kode kantor NOT NULL
namaKantor nama kantor NOT NULL
132
kota kota NOT NULL noTelp nomor telpon NOT NULL
noFax nomor faximail NOT NULL
emailKantor email kantor NOT NULL statusKantor status kantor NOT NULL PRIMARY KEY ( kdKantor )
)
Histori Premi
Domain nomor polis fixed length character string 7 Domain tanggal booked datetime
Domain tanggal bayar datetime Domain premi integer
Domain kuitansi fixed length character string 7
Histori Premi (
noPolis nomor polis NOT NULL tanggalBooked tanggal booked NOT NULL tanggalBayar tanggal bayar NOT NULL premi premi NOT NULL kuitansi kuitansi NULL PRIMARY KEY (noPolis),
PRIMARY KEY (tanggalBooked),
FOREIGN KEY (noPolis) REFERENCES Polis (noPolis) ON UPDATE CASCADE ON DELETE NO ACTION
133
Beneficiary
Domain nomor beneficiary fixed length character string 7 Domain hubungan variable length character string 20 Domain nomor klien fixed length character string 7
Benefiaciary (
noBeneficiary noBeneficiary NOT NULL hubungan hubungan NOT NULL
noKlien noKlien NOT NULL PRIMARY KEY (noBeneficiary),
PRIMARY KEY (noKlien),
FOREIGN KEY (noKlien) REFERENCES Klien (noKlien) ON UPDATE CASCADE ON DELETE NO ACTION,
FOREIGN KEY (noBeneficiary) REFERENCES Klien(noKlien) ON UPDATE CASCADE ON DELETE NO ACTION
)
PolisBenefitPremi
Domain nomor polis fixed length character string 7 Domain kode produk fixed length character string 7 Domain kode benefit fixed length character string 7 Domain premi integer
Domain jatuh tempo datetime Domain tanggal klaim datetime
134
Polis Benefit Premi(
noPolis nomor polis NOT NULL,
kdProduk kode produk NOT NULL,
kdBenefit kode benefit NOT NULL,
premi premi NOT NULL,
jatuhTempo jatuh tempo NOT NULL,
tanggalKlaim tanggal klaim NOT NULL,
PRIMARY KEY (noPolis), PRIMARY KEY (KdProduk), PRIMARY KEY (KdBenefit),
FOREIGN KEY (noPolis) REFERENCES Polis (noPolis) ON UPDATE CASCADE ON DELETE NO ACTION,
FOREIGN KEY (KdProduk) REFERENCES ProdukBenefit(KdProduk) ON UPDATE CASCADE ON DELETE NO ACTION,
FOREIGN KEY (KdBenefit) REFERENCES ProdukBenefit (KdBenefit) ON UPDATE CASCADE ON DELETE NO ACTION
)
Produk
Domain kode produk fixed length character string 7 Domain nama produk variable length character string 30 Domain medical status variable length character string, 10
Produk (
135
namaProduk kode produk NOT NULL,
medicalStatus medical status NOT NULL, PRIMARY KEY ( kdProduk )
)
Benefit
Domain kode benefit fixed length character string, 7 Domain nama benefit variable length character string, 20
Benefit (
kdBenefit kode benefit NOT NULL namaBenefit nama benefit NOT NULL PRIMARY KEY (KdBenefit)
)
Cara Bayar
Domain kode cara bayar fixed length character string, 7 Domain jenis cara bayar variable length character string, 20
Cara Bayar (
kdCaraBayar kode cara bayar NOT NULL jenisCaraBayar jenis cara bayar NOT NULL PRIMARY KEY ( kdCaraBayar )
136
Valuta
Domain kode valuta fixed length character string, 7 Domain nama valuta variable length character string, 20
Valuta (
kdValuta kode valuta NOT NULL namaValuta nama valuta NOT NULL PRIMARY KEY ( kdValuta )
)
Identitas
Domain kode Jenis Identitas fixed length character string, 7 Domain jenis Identitas variable length character string, 20
Identitas (
kdJenisIdentitas kode jenis identitas NOT NULL, jenisIdentitas jenis identitas NOT NULL, PRIMARY KEY ( kdJenisIdentitas )
)
Agama
Domain kode agama fixed length character string, 7
137
Agama (
KdAgama kode agama NOT NULL Agama agama NOT NULL PRIMARY KEY ( kdAgama )
)
Tabel 4.7 Tabel Rancangan Dasar Relasi