• Tidak ada hasil yang ditemukan

BAB 4 PERANCANGAN SISTEM YANG DIUSULKAN. enterprise, terbebas dari semua pertimbangan fisik Identifikasi Tipe-tipe Entiti

N/A
N/A
Protected

Academic year: 2021

Membagikan "BAB 4 PERANCANGAN SISTEM YANG DIUSULKAN. enterprise, terbebas dari semua pertimbangan fisik Identifikasi Tipe-tipe Entiti"

Copied!
163
0
0

Teks penuh

(1)

86

PERANCANGAN S IS TEM YANG DIUS ULKAN

4.1 Rancangan Basis Data

4.1.1 Perancangan Basis Data Konseptual

Proses membangun model informasi yang digunakan dalam sebuah enterprise, terbebas dari semua pertimbangan fisik.

4.1.1.1 Identifikasi Tipe-tipe Entiti

Pada tahapan ini dilakukan identifikasi tipe entiti utama yang diperlukan oleh Karyawan view..

Tabel 4.1 Tabel Data Dictionary Tipe-tipe Entiti

Entity Name Desciption Aliases Occurance

Pasien Istilah yang digunakan untuk orang yang berobat

Pasien Setiap pasien melakukan registrasi

untuk pertama kali berobat. Kemudian pasien mendapatkan pelayanan

pengobatan. Setiap pasien dapat ditangani oleh satu

atau lebih pelayan medis

(2)

Entity Name Desciption Aliases Occurance

Pelayan medis Istilah yang digunakan pada profesional dalam menangani proses pengobatan pasien.

Dokter, Bidan, Perawat

Setiap pelayan medis yang hadir, wajib mengisi absensi sebelum melakukan praktek. Dalam prakteknya pelayan medis dapat melayani satu atau lebih pasien

Pelayanan M edis

Istilah untuk kamar perawatan yang digunakan dalam proses persalinan atau pun currete.

IKB, Pemeriksaan Rutin, Ruang Inap Setiap pelayanan medis dapat menerima satu atau

lebih pasien. Pelayanan medis juga

dilayani oleh satu atau lebih pelayan medis.

Karyawan Istilah yang digunakan untuk pegawai yang bekerja di Rumah Bersalin dan Praktek Dokter (selain Dokter dan Bidan).

Administrasi, Kasir

Setiap karyawan dapat melayani satu atau lebih pasien.

(3)

Entity Name Desciption Aliases Occurance

Tagihan Istilah yang digunakan untuk penagihan kepada pasien.

Tagihan Setiap tagihan dibuat oleh satu karyawan administrasi, sedangkan setiap karyawan

administrasi dapat membuat satu atau lebih tagihan. Dimana setiap pasien dapat menerima satu atau lebih tagihan dari pelayanan medis yang diterima.

Pembayaran Istilah yang digunakan untuk semua transaksi pembayaran dari pasien

Pembayaran Setiap transaksi pembayaran mencatat pembayaran yang dilakukan oleh pasien.

Jadwal Istilah yang digunakan untuk shift kerja dokter/bidan dan staff.

Jadwal Setiap dokter/bidan

dan karyawan memiliki shift kerja yang berbeda.

(4)

4.1.1.2 Identifikasi Tipe-tipe Relasi

Pada tahapan ini dilakukan identifikasi relasi penting yang ada antara tipe entiti yang telah teridentifikasi.

Tabel 4.2 Tabel Kamus Data yang Menunjukkan Relasi Antar Tipe Entiti

Entity Name Multiplicity Relationship Entity Name Multiplicity

Pasien 1..1 M enerima Tagihan 1..*

1..1 M elakukan Pembayaran 1..*

Pelayan M edis 1..* M emeriksa/merawat Pasien 0..*

1..1 M emperoleh Jadwal 1..*

Karyawan 1..1 M emberikan Tagihan 0..*

1..* M enerima Pembayaran 0..*

1..* M elayani Pasien 0..*

Pelayanan M edis 1..* M enerima Pasien 0..* 0..* M empunyai Pelayan M edis 0..*

(5)

Gambar 4.1 Entity Relationship Diagram (ERD) Model Data Konseptual

4.1.1.3 Identifikasi Atribut dan Domain Atribut

Pada tahapan ini, atribut dihubungkan dengan entiti atau tipe entiti yang tepat beserta penampung atributnya.

Tabel 4.3 Tabel Identifikasi Atribut dan Domain Atribut

Entity Name Attribute Description Data type

and Length

NULLS Multi Valued

Pasien KdPasien Secara unik

mengidentifikasi pasien

(6)

Entity Name Attribute Description Data type and

Length

NULLS Multi

Valued

NamaDepanPasien Nama depan pasien Varchar (15)

NO NO

NamaBelakangPasien Nama belakang pasien,

Default value = ‘ ‘

Varchar (15)

YES NO

TempatLahirPasien Tempat lahir pasien Varchar (30)

NO NO

TanggalLahirPasien Tanggal lahir pasien

Date () NO NO

AlamatPasien Alamat pasien Varchar (100)

NO NO

UmurPasien Umur pasien Numeric, range 1-100

NO NO Pasien

GolDarahPasien Kategori darah yang dimiliki pasien varchar(2) , must be one of A,AB,B, or O YES NO

(7)

Entity Name Attribute Description Data type and

Length

NULLS Multi

Valued

JnsKelaminPasien Jenis kelamin pasien, value(M=Male, F=Female) Char(1), must be one of’M’, or ‘F’ NO NO

TelpPasien Nomor telepon

pasien, Default value = ‘ ‘ Varchar (13), range [0-9] YES YES Pasien

AgamaPasien Agama yang dianut pasien char(1), must be I,K,P,H,B, O. value (i=islam, K=katolik, P=protest an, H=hindu, B=Budha, O=others) NO NO

(8)

Entity Name Attribute Description Data type and

Length

NULLS Multi

Valued

NamaOrtuPasien Nama orang tua pasien (ibu atau bapak)

Varchar (30)

NO NO

NamaSuamiPasien Nama suami pasien, Default value = ‘ ‘

Varchar (30)

YES NO

KdKaryawan Secara unik

mengidentifikasi karyawan

Char (5) NO NO

NamaDepanKaryawan Nama depan karyawan Varchar (15) NO NO NamaBelakangKaryawan Nama belakang karyawan, Default value = ‘ ‘ Varchar (15) YES NO

Password Password yang

digunakan karyawan untuk login Varchar (10) NO NO Karyawan

TempatLahirKaryawan Tempat lahir karyawan

Varchar (30)

(9)

Entity Name Attribute Description Data type and

Length

NULLS Multi

Valued

TanggalLahirKaryawan Tanggal lahir karyawan

Date () NO NO

AlamatKaryawan Alamat karyawan Varchar (100)

NO NO

JnsKelaminKaryawan Jenis kelamin karyawan, value(M=Male, F=Female) Char(1), must be one of ’M’, or ‘F’ NO NO

TelpKaryawan Nomor telepon

karyawan, Default value = ‘ ‘ Varchar (13), range [0-9] YES YES

AgamaKaryawan Agama yang dianut Karyawan char(1), must be I,K,P,H,B, O. NO NO

UmurKaryawan Umur karyawan Numeric, range 1-100

(10)

Entity Name Attribute Description Data type and

Length

NULLS Multi

Valued

JabatanKaryawan Jabatan karyawan Varchar (30)

NO NO

KdPelM ed Secara unik

mengidentifikasika n pelayan medis

Char (5) NO NO

NamaDepanPelM ed Nama depan pelayan medis

Varchar (15)

NO NO

NamaBelakangPelM ed Nama belakang pelayan medis,

Default value = ‘ ‘

Varchar (15)

YES NO

TempatLahirPelM ed Tempat lahir pelayan medis

Varchar (30)

NO NO

TanggalLahirPelM ed Tanggal lahir pelayan medis

Date () NO NO

AlamatPelM ed Alamat pelayan medis

Varchar (100)

NO NO PelayanM edis

JnsKelaminPelM ed Jenis kelamin value(M=Male, F=Female)

Char(1),’ M’, or ‘F’

(11)

Entity Name Attribute Description Data type and

Length

NULLS Multi

Valued

TelpPelM ed Nomor telepon

pelayan medis, Default value = ‘ ‘ Varchar (13), range [0-9] YES YES

AgamaPelM ed Agama yang dianut pelayan medis char(1), must be I,K,P,H,B, O. value (i=islam, K=katolik, P=protest an, H=hindu, B=Budha, O=others) NO NO

UmurPelM ed Umur pelayan

medis

Numeric, range 1-100

NO NO

JabatanPelM ed Jabatan pelayan medis

Varchar (30)

(12)

Entity Name Attribute Description Data type and

Length

NULLS Multi

Valued

PendTerakhirPelM ed Pendidikan terakhir yang ditempuh

pelayan medis

Varchar (30)

NO NO

KdPelayanan Secara unik

mengidentifikasi pelayanan medis

Char (5) NO NO

NamaPelayanan Nama jenis

pelayanan medis yang diterima pasien Varchar (30) NO NO PelayananM edis

Tarif Biaya jasa yang

diterima oleh dokter, bidan, perawat

decimal NO NO

KdJadwal Secara unik

mengidentifikasi jadwal

Char (5) NO NO

Jadwal

WaktuJadwal Waktu kerja (shift) yang diterima oleh pelayan medis

Datetime ()

(13)

Entity Name Attribute Description Data type and

Length

NULLS Multi

Valued

Jam Jam kerja Datetime

()

NO NO

Hari Hari kerja Date () NO NO

Bulan Bulan kerja Month () NO NO

Tahun Tahun kerja Year () NO NO

KdTagihan Secara unik

mengidentifikasika n tagihan yang dibebankan ke pasien

Char (5) NO NO

TglTagihan Tanggal pemberian

tagihan kepada pasien

Date () NO NO

Jumlah Bilangan jumlah

( berapa lama dalam proses pelayanan )

int NO NO

Tagihan

Tarif Biaya jasa yang

diterima oleh pelayan medis

(14)

Entity Name Attribute Description Data type and

Length

NULLS Multi

Valued

Subtotal Hasil dari jumlah dikali dengan tarif yang dikenakan pasien

decimal NO NO

Total Jumlah keseluruhan

dari subtotal yang akan dibayar pasien

decimal NO NO

Pembayaran KdPembayaran Secara unik mengidentifikasika

n pembayaran yang dilakukan pasien

Char (5) NO NO

4.1.1.4 Identifikasi Candidate Keys dan Primary Keys

Pada tahap ini mengidentifikasikan candidate key dan primary key yang dimiliki oleh setiap entity.

Tabel 4.4 Tabel Indentifikasi Candidate dan Primary Key S etiap Entiti

Entity Name Candidate Key Primary Key

Pasien KdPasien KdPasien

(15)

Pelayan M edis KdPelM ed KdPelM ed Pelayanan M edis KdPelayanan KdPelayanan

Jadwal KdJadwal KdJadwal

Tagihan KdTagihan KdTagihan

Pembayaran KdPembayaran KdPembayaran

Gambar 4.2 Entity Relationship Diagram (ERD) Model Data Konseptual dengan Primary Key

(16)

4.1.1.5 Identifikasi Penggunaan Enhanced Modelling Concepts

Tahap ini bertujuan untuk mempertimbangkan penggunaan Enhanced Modelling Concept, dimana didalamnya termasuk spsesialisasi / generalisasi, agregasi, dan komposisi.

Gambar 4.3 Enhanced Entity Relationship Diagram (EERD)

4.1.1.6 Pemeriksaan Model terhadap Redundansi

Langkah berikutnya adalah mengecek model redundansi. Ada dua tahap yang terdapat dalam langkah ini, yaitu :

1. M emeriksa kembali hubungan one-to-one (1:1)

Tahap ini dilakukan untuk menggabungkan dua entiti yang mewakili satu objek yang sama. Jika terdapat primary key yang berbeda, maka pilih salah satu untuk dijadikan primary key, sedangkan yang lainnya menjadi alternate key.

(17)

2. M enghilangkan relasi yang redundan

Tahap ini dilakukan untuk meminimalkan model data yang memiliki relasi redudan yang tidak perlu. Untuk mengidentifikasi entiti tersebut dapat dilihat dari jumlah path yang terbentuk dari dua entiti tersebut yang menunjukkan relasi yang sama.

Akan tetapi, pada perancangan basis data ini tidak ditemukan hubungan one-to-one dan tidak terdapat path yang menunjukkan relasi yang sama dari dua entiti, sehingga langkah ini tidak dilakukan.

4.1.1.7 Validasi Model Konseptual dengan Transaksi User

Tahapan ini bertujuan untuk memastikan model konseptual untuk mendukung transaksi yang dibutuhkan oleh user. Dalam validasi transaksi ini digunakan jalur pathways transaksi yang digambarkan dalam diagram ER untuk memeriksa model konseptual terhadap kebutuhan transaksi.

Adapun beberapa transaksi – transaksi yang terjadi adalah sebagai berikut :

a. Pencatatan data pasien baru

b. Pendaftaran pasien rawat inap pada instalasi rawat inap c. Daftar kelas kamar di instalasi rawat inap yang masih kosong

d. Pencatatan informasi diagnosa dan tindakan pada pasien pemeriksaan rutin

(18)

f. Pembayaran biaya pelayanan medis oleh pasien g. Pembagian jadwal untuk pelayan medis

h. Pembuatan laporan penerimaan pembayaran dari kasir ke administrasi

i. Pembuatan daftar laporan dari detail penggunaan instalasi kamar bersalin, ruang rawat inap

Gambar 4.4 Model Konseptual yang Mendukung Transaksi User dengan Menggunakan Pathways

4.1.2 Perancangan Basis Data Logikal

Pada tahapan ini, model data konseptual yang telah dibuat pada tahap perancangan basis data konseptual akan dipetakan ke dalam model data

(19)

0..*

logikal. Keseluruhan proses dari pengembangan pada tahap ini adalah penggunaan teknik normalisasi untuk menguji kebenaran model data logikal. Kemudian dari model data logikal lokal akan dikombinasikan menjadi model data logikal global tunggal.

Adapun langkah-langkah dalam tahapan ini adalah sebagai berikut : 4.1.2.1. Menghilangkan Fitur yang Tidak Kompatibel

Tujuan dari langkah ini adalah untuk memperbaiki model data konseptual lokal dengan menghilangkan fitur yang tidak kompatibel dengan model relasional. Adapun cara yang digunakan dalam tahapan ini adalah dengan menghilangkan hubungan many-to-many (*:*) binary relationship types. Hasil dari langkah ini secara keseluruhan dapat dilihat pada gambar diagram ER sebagai berikut : 1. M enghilangkan (*:*) many-to-many binary relationship

(20)

(b) Dekomposisi relasi (e) ke dalam dua relasi 1:* (merawat dan diperiksa)

(c) Karyawan menerima Pembayaran *:* relationship

(21)

(e) PelayananMedis menerima Pasien *:* relationship

(f) Dekomposisi relasi (e) ke dalam dua relasi 1:* (menerima dan berobat)

(22)

(h) Dekomposisi relasi (e) ke dalam dua relasi 1:* (menerima dan menangani)

(i) Karyawan melayani Pasien *:* relationship

(j) Dekomposisi relasi (e) ke dalam dua relasi 1:* (Melayani dan mendaftar) Gambar 4.5 Menghilangkan many-to-many Binary Relationship

2. M enghilangkan complex relationship types

M erupakan tipe relasi dimana tipe entiti yang sama berpartisipasi lebih dari satu kali dalam peranan yanng berbeda.

Dalam hal ini tidak ditemukan complex relationship pada ERD model konseptual.

(23)

3. M enghilangkan atribut multivalue

(a) Entiti Pasien dengan atribut TelpPasien yang multivalue

(b) Dekomposisi atribut TelpPasien pada entiti Pasien menjadi entiti baru bernama TelpPasien dengan atribut TelpPasien (primary key)

(c) Entiti Karyawan dengan atribut TelpKaryawan yang multivalue

(d) Dekomposisi atribut TelpKaryawan pad a entiti Karyawan menjadi entiti baru bernama TelpKary awan deng an atribut TelpKaryawan (primary key)

(24)

(e) Entiti PelayanMedis dengan atribut TelpPelMed yang multivalue

(f) Dekomposisi atribut TelpPelMed pada entiti PelayanMedis menjadi entiti baru bernama TelpPelMed dengan atribut TelpPelMed (primary key) Gambar 4.6 Menghilangkan Atribut Multivalue

4.1.2.2 Mendapatkan Relasi untuk Model Data Logikal Lokal 1. One to Many (1:*) binary relationship types

M asukkan KdPasien ke dalam Tagihan untuk membentuk relasi menerima (1:*)

Pasien ( KdPasien, NamaDepanPasien, NamaBelakangPasien, TempatLahirPasien, TanggalLahirPasien, AlamatPasien,

UmurPasien, GolDarahPasien, JnsKelaminPasien, A gamaPasien, NamaOrtuPasien, NamaSuamiPasien )

Tagihan ( KdTagihan, TglTagihan, subtotal, tarif, jumlah, total, KdPasien )

Primary Key KdPasien Primary Key KdTagihan Foreign Key KdPasien

(25)

M asukkan KdPasien ke dalam Pembayaran untuk membentuk relasi melakukan (1:*)

Pasien ( KdPasien, NamaDepanPasien, NamaBelakangPasien, TempatLahirPasien, TanggalLahirPasien, AlamatPasien,

UmurPasien, GolDarahPasien, JnsKelaminPasien, A gamaPasien, NamaOrtuPasien, NamaSuamiPasien )

Pembayaran ( KdPembayaran, KdPasien)

Primary Key KdPasien Primary Key KdPembayaran Foreign Key KdPasien

M asukkan KdPelMed ke dalam Jadwal untuk membentuk relasi memperoleh (1:*)

PelayanMedis ( KdPelM ed, NamaDepanPelM ed,

NamaBelakangPelM ed, TempatLahirPelM ed,

TanggalLahirPelM ed, AlamatPelM ed, JnsKelaminPelM ed, AgamaPelM ed, UmurPelM ed, JabatanPelM ed, PendTerakhirPelM ed )

Jadwal ( KdJadwal, WaktuJadwal, Jam, Hari, Bulan, Tahun, KdPelM ed )

(26)

Foreign Key KdPelM ed

M asukkan KdKaryawan ke dalam Tagihan untuk membentuk relasi memberikan (1:*) Karyawan ( KdKaryawan, NamaDepanKaryawan, NamaBelakangKaryawan, Password, TempatLahirKaryawan, TanggalLahirKaryawan, AlamatKaryawan, JnsKelaminKaryawan, AgamaKaryawan, UmurKaryawan, JabatanKaryawan )

Tagihan ( KdTagihan, TglTagihan, subtotal, tarif, jumlah, total, KdPasien, KdKaryawan )

Primary Key KdKaryawan Primary Key KdTagihan

Foreign Key KdKaryawan, KdPasien

2. Superclass/ subclass relationship types

Pada model konseptual terdapat 1 entiti superclass (entiti Pelayanan M edis) dengan entiti subclassnya (entiti Instalasi Kamar Bersalin, Ruang Rawat Inap, Pemeriksaan Rutin :

(27)

Gambar 4.7 ERD Pelayanan Medis

PemeriksaanRutin ( KdPelayanan, NamaPemRutin, Tarif) Primary Key : KdPelayanan

InstalasiKamarBersalin ( KdPelayanan, NamaIKB, Tarif ) Primary Key : KdPelayanan

RuangRawatInap ( KdPelayanan, NamaRuangInap, Tarif, Keterangan )

Primary Key : KdPelayanan

3. Many-to-Many (*:*) binary relationship types PemeriksaanRutin ( KdPelayanan,

NamaPemRutin, Tarif)

Pasien ( KdPasien, NamaDepanPasien, NamaBelakangPasien, TempatLahirPasien, TanggalLahirPasien, AlamatPasien,

UmurPasien, GolDarahPasien,

(28)

JnsKelaminPasien, A gamaPasien, NamaOrtuPasien, NamaSuamiPasien ) Primary Key : KdPelayanan Primary Key : KdPasien

PemerikasaanRutin_Pasien (KdPelayanan, KdPasien, TglPeriksa, Deskripsi) Primary key KdPelayanan, KdPasien

Foreign Key KdPelayanan references PemeriksaanRutin(KdPelayanan) Foreign Key KdPasien references Pasien(KdPasien)

InstalasiKamarBersalin (KdPelayanan, NamaIKB, Tarif )

Pasien ( KdPasien, NamaDepanPasien, NamaBelakangPasien, TempatLahirPasien, TanggalLahirPasien, AlamatPasien, UmurPasien, GolDarahPasien, JnsKelaminPasien, A gamaPasien, NamaOrtuPasien, NamaSuamiPasien ) Primary Key : KdPelayanan Primary Key : KdPasien

InstalasiKamarBersalin_Pasien (KdPelayanan, KdPasien, TglIKB, Deposit) Primary key KdPelayanan, KdPasien

Foreign Key KdPelayanan references InstalasiKamarBersalin(KdPelayanan) Foreign Key KdPasien references Pasien(KdPasien)

(29)

RuangRawatInap ( KdPelayanan, NamaRuangInap, Tarif, Keterangan )

Pasien ( KdPasien, NamaDepanPasien, NamaBelakangPasien, TempatLahirPasien, TanggalLahirPasien, AlamatPasien, UmurPasien, GolDarahPasien, JnsKelaminPasien, A gamaPasien, NamaOrtuPasien, NamaSuamiPasien ) Primary Key : KdPelayanan Primary Key : KdPasien

RuangRawatInap_Pasien ( KdPelayanan, KdPasien, TglM asuk, TglKeluar, Deposit) Primary key KdPelayanan, KdPasien

Foreign Key KdPelayanan references RuangRawatInap (KdPelayanan) Foreign Key KdPasien references Pasien(KdPasien)

PemeriksaanRutin ( KdPelayanan, NamaPemRutin, Tarif )

PelayanMedis ( KdPelM ed, NamaDepanPelM ed,

NamaBelakangPelM ed, TempatLahirPelM ed,

TanggalLahirPelM ed, AlamatPelM ed, JnsKelaminPelM ed, AgamaPelM ed, UmurPelM ed, PendTerakhirPelM ed )

(30)

Primary Key : KdPelayanan Primary Key : KdPelM ed

PemeriksaanRutin_PelayanMedis (KdPelayanan, KdPelM ed) Primary key KdPelayanan, KdPelM ed

Foreign Key KdPelayanan references PemeriksaanRutin (KdPelayanan) Foreign Key KdPelM ed references PelayanM edis (KdPelM ed)

InstalasiKamarBersalin ( KdPelayanan, NamaIKB, Tarif )

PelayanMedis (KdPelM ed, NamaDepanPelM ed,

NamaBelakangPelM ed, TempatLahirPelM ed,

TanggalLahirPelM ed, AlamatPelM ed, JnsKelaminPelM ed, AgamaPelM ed, UmurPelM ed, PendTerakhirPelM ed ) Primary Key : KdPelayanan Primary Key : KdPelM ed

InstalasiKamarBersalin_PelayanMedis (KdPelayanan, KdPelM ed) Primary key KdPelayanan, KdPelM ed

Foreign Key KdPelayanan references InstalasiKamarBersalin (KdPelayanan) Foreign Key KdPelM ed references PelayanM edis (KdPelM ed)

(31)

RuangRawatInap (KdPelayanan, NamaRuangInap, Tarif, Keterangan )

PelayanMedis (KdPelM ed, NamaDepanPelM ed,

NamaBelakangPelM ed, TempatLahirPelM ed,

TanggalLahirPelM ed, AlamatPelM ed, JnsKelaminPelM ed, AgamaPelM ed, UmurPelM ed, PendTerakhirPelM ed ) Primary Key : KdPelayanan Primary Key : KdPelM ed

RuangRawatInap_PelayanMedis (KdPelayanan, KdPelM ed) Primary key KdRuangInap, KdPelM ed

Foreign Key KdRuangInap references RuangRawatInap (KdRuangInap) Foreign Key KdPelM ed references PelayanM edis(KdPelM ed)

Karyawan ( KdKaryawan, NamaDepanKaryawan, NamaBelakangKaryawan, Password, TempatLahirKaryawan, TanggalLahirKaryawan, AlamatKaryawan, JnsKelaminKaryawan, AgamaKaryawan, UmurKaryawan, JabatanKaryawan )

Pasien ( KdPasien, NamaDepanPasien, NamaBelakangPasien, TempatLahirPasien, TanggalLahirPasien, AlamatPasien, UmurPasien, GolDarahPasien, JnsKelaminPasien, AgamaPasien, NamaOrtuPasien, NamaSuamiPasien )

(32)

Primary Key : KdKaryawan Primary Key : KdPasien

Karyawan_Pasien (KdKaryawan, KdPasien) Primary key KdKaryawan, KdPasien

Foreign Key KdKaryawan references Karyawan (KdKaryawan) Foreign Key KdPasien references Pasien (KdPasien)

Karyawan ( KdKaryawan, NamaDepanKaryawan, NamaBelakangKaryawan, Password, TempatLahirKaryawan, TanggalLahirKaryawan, AlamatKaryawan, JnsKelaminKaryawan, AgamaKaryawan, UmurKaryawan, JabatanKaryawan ) Pembayaran ( KdPembayaran)

Primary Key : KdKaryawan Primary Key : KdPembayaran Foreign Key : KdTagihan

Karyawan_Pembayaran (KdKaryawan, KdPembayaran) Primary key KdKaryawan, KdPembayaran

Foreign Key KdKaryawan references Karyawan (KdKaryawan) Foreign Key KdPembayaran references Pembayaran (KdPembayaran)

(33)

PelayanMedis (KdPelM ed, NamaDepanPelM ed,

NamaBelakangPelM ed, TempatLahirPelM ed,

TanggalLahirPelM ed, AlamatPelM ed, JnsKelaminPelM ed, AgamaPelM ed, UmurPelM ed, PendTerakhirPelM ed )

Pasien ( KdPasien, NamaDepanPasien, NamaBelakangPasien, TempatLahirPasien,

TanggalLahirPasien, AlamatPasien, UmurPasien, GolDarahPasien, JnsKelaminPasien, A gamaPasien,

NamaOrtuPasien, NamaSuamiPasien )

Primary Key : KdPelM ed Primary Key : KdPasien

PelayanMedis_Pasien (KdPelM ed, KdPasien) Primary key KdPelM ed, KdPasien

Foreign Key KdPelM ed references PelayanM edis (KdPelM ed) Foreign Key KdPasien references Pasien (KdPasien)

4. Complex relationship types

Dalam hal ini analisa mengenai complex relationship types tidak ditemukan dalam relasi model data logikal.

(34)

5. Multi-valued attributes

M asukkan Pasien ke dalam TelpPasien

Pasien ( KdPasien, NamaDepanPasien, NamaBelakangPasien, TempatLahirPasien, TanggalLahirPasien, AlamatPasien,

UmurPasien, GolDarahPasien, JnsKelaminPasien, A gamaPasien, NamaOrtuPasien, NamaSuamiPasien )

TelpPasien (KdPasien, TelpPasien)

Primary Key TelpPasien Primary Key Kdpasien

Foreign Key KdPasien

M asukkan Karyawan ke dalam TelpKaryawan

Karyawan ( KdKaryawan, NamaDepanKaryawan, NamaBelakangKaryawan, Password, TempatLahirKaryawan, TanggalLahirKaryawan, AlamatKaryawan, JnsKelaminKaryawan, AgamaKaryawan, UmurKaryawan, JabatanKaryawan ) TelpKaryawan (KdKaryawan, TelpKaryawan)

Primary Key TelpKaryawan Primary Key KdKaryawan

(35)

M asukkan PelayanMedis ke dalam TelpPelMed

PelayanMedis ( KdPelM ed, NamaDepanPelM ed,

NamaBelakangPelM ed, TempatLahirPelM ed,

TanggalLahirPelM ed, AlamatPelM ed, JnsKelaminPelM ed, AgamaPelM ed, UmurPelM ed, PendTerakhirPelM ed )

TelpPelMed (KdPelM ed, TelpPelM ed)

Primary Key TelpPelM ed Primary Key KdPelM ed

Foreign Key KdPelM ed

6. Document Relations and Foreign Key Attributes Tabel 4.5 Tabel Relasi Model Data Logikal Lokal

Pasien ( KdPasien, NamaDepanPasien, NamaBelakangPasien, TempatLahirPasien, TanggalLahirPasien, AlamatPasien, UmurPasien, GolDarahPasien, JnsKelaminPasien, AgamaPasien, NamaOrtuPasien, NamaSuamiPasien )

Primary Key KdPasien

PelayanMedis ( KdPelM ed, NamaDepanPelM ed, NamaBelakangPelM ed,

TempatLahirPelM ed, TanggalLahirPelM ed, AlamatPelM ed, JnsKelaminPelM ed, AgamaPelM ed, UmurPelM ed, PendTerakhirPelM ed )

(36)

Karyawan ( KdKaryawan, NamaDepanKaryawan, NamaBelakangKaryawan, Password, TempatLahirKaryawan, TanggalLahirKaryawan, AlamatKaryawan, JnsKelaminKaryawan, AgamaKaryawan, UmurKaryawan, JabatanKaryawan )

Primary Key KdKaryawan

PemeriksaanRutin ( KdPelayanan, NamaPemRutin, Tarif ) Primary Key KdPelayanan

InstalasiKamarBersalin ( KdPelayanan, NamaIKB, Tarif ) Primary Key KdPelayanan

RuangRawatInap ( KdPelayanan, NamaRuangInap, Tarif, Keterangan ) Primary Key KdPelayanan

Jadwal ( KdJadwal, WaktuJadwal, Jam, Hari, Bulan, Tahun, KdPelM ed ) Primary Key KdJadwal

Foreign Key KdPelM ed references PelayanM edis ( KdPelM ed )

Tagihan ( KdTagihan, TglTagihan, subtotal, tarif, jumlah, total, KdKaryawan, KdPasien)

Primary Key KdTagihan

Foreign Key KdKaryawan references Karyawan (KdKaryawan) Foreign Key KdPasien references Pasien ( KdPasien )

Pembayaran ( KdPembayaran, KdPasien ) Primary Key KdPembayaran

Foreign Key KdPasien references Pasien ( KdPasien ) TelpPasien ( KdPasien, TelpPasien )

(37)

Foreign Key KdPasien

TelpKaryawan ( KdKaryawan, TelpKasir ) Primary Key TelpKaryawan

Foreign Key KdKaryawan

TelpPelMed ( KdPelM ed, TelpPelM ed ) Primary Key TelpPelM ed

Foreign Key KdPelM ed

PemerikasaanRutin_Pasien ( KdPelayanan, KdPasien, TglPeriksa, Deskripsi ) Primary key KdPelayanan, KdPasien

Foreign Key KdPelayanan references PemeriksaanRutin(KdPelayanan) Foreign Key KdPasien references Pasien(KdPasien)

InstalasiKamarBersalin_Pasien ( KdPelayanan, KdPasien, TglIKB, Deposit ) Primary key KdPelayanan, KdPasien

Foreign Key KdPelayanan references InstalasiKamarBersalin(KdPelayanan) Foreign Key KdPasien references Pasien(KdPasien)

RuangRawatInap_Pasien ( KdPelayanan, KdPasien, TglM asuk, TglKeluar, Deposit ) Primary key KdPelayanan, KdPasien

Foreign Key KdPelayanan references RuangRawatInap (KdPelayanan) Foreign Key KdPasien references Pasien(KdPasien)

PemeriksaanRutin_PelayanMedis ( KdPelayanan, KdPelM ed ) Primary key KdPelayanan, KdPelM ed

Foreign Key KdPelayanan references PemeriksaanRutin (KdPelayanan) Foreign Key KdPelM ed references PelayanM edis (KdPelM ed)

(38)

InstalasiKamarBersalin_PelayanMedis ( KdPelayanan, KdPelM ed ) Primary key KdPelayanan, KdPelM ed

Foreign Key KdPelayanan references InstalasiKamarBersalin (KdPelayanan) Foreign Key KdPelM ed references PelayanM edis (KdPelM ed)

RuangRawatInap_PelayanMedis ( KdPelayanan, KdPelM ed ) Primary key KdRuangInap, KdPelM ed

Foreign Key KdRuangInap references RuangRawatInap (KdRuangInap) Foreign Key KdPelM ed references PelayanM edis(KdPelM ed)

Karyawan_Pasien ( KdKaryawan, KdPasien ) Primary key KdKaryawan, KdPasien

Foreign Key KdKaryawan references Karyawan (KdKaryawan) Foreign Key KdPasien references Pasien (KdPasien)

Karyawan_Pembayaran ( KdPembayaran, KdKaryawan ) Primary key KdPembayaran, KdKaryawan

Foreign Key KdKaryawan references Karyawan (KdKaryawan) PelayanMedis_Pasien ( KdPelM ed, KdPasien )

Primary key KdPelM ed, KdPasien

Foreign Key KdPelM ed references PelayanM edis (KdPelM ed) Foreign Key KdPasien references Pasien (KdPasien)

(39)

4.1.2.3 Validasi Relasi dengan Normalisasi

Tujuan dari normalisasi adalah untuk memvalidasi relasi-relasi dalam model data logikal lokal dengan menggunakan teknik-teknik normalisasi. Pasien KdPasien NamaDepanPasien NamaBelakangPasien TempatLahirPasien TanggalLahirPasien AlamatPasien UmurPasien GolDarahPasien JnsKelaminPasien AgamaPasien NamaOrtuPasien NamaSuamiPasien

1NF (Sudah memenuhi syarat 1NF karena tidak terdapat repeating group)

2NF (Sudah memenuhi syarat 2NF karena tidak terdapat ketergantungan parsial)

3NF (Sudah memenuhi syarat 3NF karena tidak terdapat ketergantungan transitif) TelpPasien TelpPasien KdPasien Primary Key Primary Key

(40)

1NF (Sudah memenuhi syarat 1NF karena tidak terdapat repeating group)

2NF (Sudah memenuhi syarat 2NF karena tidak terdapat ketergantungan parsial)

3NF (Sudah memenuhi syarat 3NF karena tidak terdapat ketergantungan transitif) Karyawan KdKaryawan NamaDepanKaryawan NamaBelakangKaryawan Password TempatLahirKaryawan TanggalLahirKaryawan AlamatKaryawan JnsKelaminKaryawan AgamaKaryawan UmurKaryawan

1NF (Sudah memenuhi syarat 1NF karena tidak terdapat repeating group)

2NF (Sudah memenuhi syarat 2NF karena tidak terdapat ketergantungan parsial)

3NF (Sudah memenuhi syarat 3NF karena tidak terdapat ketergantungan transitif)

TelpKaryawan TelpKaryawan

KdKaryawan Primary Key

(41)

1NF (Sudah memenuhi syarat 1NF karena tidak terdapat repeating group)

2NF (Sudah memenuhi syarat 2NF karena tidak terdapat ketergantungan parsial)

3NF (Sudah memenuhi syarat 3NF karena tidak terdapat ketergantungan transitif) PelayanMedis KdPelMed NamaDepanPelM ed NamaBelakangPelM ed TempatLahirPelM ed TanggalLahirPelM ed AlamatPelM ed JnsKelaminPelM ed AgamaPelM ed UmurPelM ed PendTerakhirPelM ed

1NF (Sudah memenuhi syarat 1NF karena tidak terdapat repeating group)

2NF (Sudah memenuhi syarat 2NF karena tidak terdapat ketergantungan parsial)

3NF (Sudah memenuhi syarat 3NF karena tidak terdapat ketergantungan transitif)

(42)

TelpPelMed TelpPelM ed KdPelM ed

1NF (Sudah memenuhi syarat 1NF karena tidak terdapat repeating group)

2NF (Sudah memenuhi syarat 2NF karena tidak terdapat ketergantungan parsial)

3NF (Sudah memenuhi syarat 3NF karena tidak terdapat ketergantungan transitif)

PemeriksaanRutin KdPelayanan NamaPemRutin Tarif

1NF (Sudah memenuhi syarat 1NF karena tidak terdapat repeating group)

2NF (Sudah memenuhi syarat 2NF karena tidak terdapat ketergantungan parsial)

3NF (Sudah memenuhi syarat 3NF karena tidak terdapat ketergantungan transitif) InstalasiKamarBersalin KdPelayanan NamaIKB Tarif Primary Key Primary Key Primary Key

(43)

1NF (Sudah memenuhi syarat 1NF karena tidak terdapat repeating group)

2NF (Sudah memenuhi syarat 2NF karena tidak terdapat ketergantungan parsial)

3NF (Sudah memenuhi syarat 3NF karena tidak terdapat ketergantungan transitif) RuangRawatInap KdPelayanan NamaRuangInap Tarif Keterangan

1NF (Sudah memenuhi syarat 1NF karena tidak terdapat repeating group)

2NF (Sudah memenuhi syarat 2NF karena tidak terdapat ketergantungan parsial)

3NF (Sudah memenuhi syarat 3NF karena tidak terdapat ketergantungan transitif) Jadwal KdJadwal WaktuJadwal Jam Hari Bulan Tahun KdPelM ed Primary Key Primary Key Foreign Key

(44)

1NF (Sudah memenuhi syarat 1NF karena tidak terdapat repeating group)

2NF (Sudah memenuhi syarat 2NF karena tidak terdapat ketergantungan parsial)

3NF (Sudah memenuhi syarat 3NF karena tidak terdapat ketergantungan transitif) Tagihan KdTagihan TglTagihan Subtotal Tarif Jumlah Total KdPasien KdKaryawan 1NF KdTagihan TglTagihan Tarif Jumlah KdPasien KdKaryawan

2NF (Sudah memenuhi syarat 2NF karena tidak terdapat ketergantungan parsial)

3NF (Sudah memenuhi syarat 3NF karena tidak terdapat ketergantungan transitif) Primary Key Foreign Key Foreign Key Foreign Key Foreign Key Primary Key

(45)

Pembayaran KdPembayaran KdPasien

1NF (Sudah memenuhi syarat 1NF karena tidak terdapat repeating group)

2NF (Sudah memenuhi syarat 2NF karena tidak terdapat ketergantungan parsial)

3NF (Sudah memenuhi syarat 3NF karena tidak terdapat ketergantungan transitif)

PemerikasaanRutin_Pasien

1NF (Sudah memenuhi syarat 1NF karena tidak terdapat repeating group)

2NF

KdPelayanan KdPasien

3NF (Sudah memenuhi syarat 3NF karena tidak terdapat ketergantungan transitif)

InstalasiKamarBersalin_Pasien

1NF (Sudah memenuhi syarat 1NF karena tidak terdapat repeating group) TglPeriksa Deskripsi partial dependen cies Primary Key Foreign Key

(46)

2NF

KdPelayanan KdPasien

3NF (Sudah memenuhi syarat 3NF karena tidak terdapat ketergantungan transitif)

RuangRawatInap_Pasien

1NF (Sudah memenuhi syarat 1NF karena tidak terdapat repeating group)

2NF

KdPelayanan KdPasien

3NF (Sudah memenuhi syarat 3NF karena tidak terdapat ketergantungan transitif)

PemeriksaanRutin_PelayanMedis = (KdPelayanan + KdPelM ed) KdPelayanan

KdPelMed

1NF (Sudah memenuhi syarat 1NF karena tidak terdapat repeating group)

2NF (Sudah memenuhi syarat 2NF karena tidak terdapat ketergantungan parsial) TglIKB Deposit TglM asuk TglKeluar Deposit partial dependen cies partial dependen cies Primary key Primary key

(47)

3NF (Sudah memenuhi syarat 3NF karena tidak terdapat ketergantungan transitif) InstalasiKamarBersalin_PelayanMedis = (KdPelayanan + KdPelM ed) KdPelayanan KdPelMed

1NF (Sudah memenuhi syarat 1NF karena tidak terdapat repeating group)

2NF (Sudah memenuhi syarat 2NF karena tidak terdapat ketergantungan parsial)

3NF (Sudah memenuhi syarat 3NF karena tidak terdapat ketergantungan transitif)

RuangRawatInap_PelayanMedis KdPelayanan

KdPelMed

1NF (Sudah memenuhi syarat 1NF karena tidak terdapat repeating group)

2NF (Sudah memenuhi syarat 2NF karena tidak terdapat ketergantungan parsial)

3NF (Sudah memenuhi syarat 3NF karena tidak terdapat ketergantungan transitif)

Primary key

(48)

Karyawan_Pasien KdKaryawan KdPasien

1NF (Sudah memenuhi syarat 1NF karena tidak terdapat repeating group)

2NF (Sudah memenuhi syarat 2NF karena tidak terdapat ketergantungan parsial)

3NF (Sudah memenuhi syarat 3NF karena tidak terdapat ketergantungan transitif)

Karyawan_Pembayaran KdPembayaran

KdKaryawan

1NF (Sudah memenuhi syarat 1NF karena tidak terdapat repeating group)

2NF (Sudah memenuhi syarat 2NF karena tidak terdapat ketergantungan parsial)

3NF (Sudah memenuhi syarat 3NF karena tidak terdapat ketergantungan transitif) PelayanMedis_Pasien KdPelMed KdPasien Primary key Primary key Primary key

(49)

1NF (Sudah memenuhi syarat 1NF karena tidak terdapat repeating group)

2NF (Sudah memenuhi syarat 2NF karena tidak terdapat ketergantungan parsial)

3NF (Sudah memenuhi syarat 3NF karena tidak terdapat ketergantungan transitif)

(50)

4.1.2.4 Validasi Relasi Melalui Transaksi Pengguna

Semua relasi yang ada sudah normal, karena tahap perancangan basis data sumberdaya manusia pada Rumah Bersalin dan Praktek Dokter Yayasan Dewi Adhi Suci telah mengikuti semua langkah dalam tahap perancangan basisdata.

Gambar 4.8 Validasi Relasi terhadap Transaksi

(51)

a. List data pasien

b. Insert, update data pasien

c. List data pemeriksaan rutin (imunisasi, KB, Kehamilan)

d. Insert, update data pemeriksaan rutin (imunisasi, KB, kehamilan) e. List data ruang rawat inap

f. Insert, update data ruang rawat inap g. List data instalasi kamar bersalin

h. Insert, update data instalasi kamar bersalin i. Insert, update data tagihan

j. Insert, update data pembayaran

k. Insert, update jadwal praktek dokter / bidan dan shift jaga dokter / bidan / perawat

4.1.2.5 Menentukan Integrity Constraint

Pada bagian ini didefinisikan tindakan yang akan dilakukan pada saat dilakukan update pada foreign key yang terdapat di setiap entity, sehingga terjadi kesamaan data antara data yang terdapat pada primary key di entity lain dengan data pada foreign key pada suatu entity.

4.1.2.5.4 Required Data

Beberapa kolom harus memiliki sebuah nilai yang valid (tidak mengandung null). Null berbeda dari kosong atau

(52)

nol, dan digunakan untuk merepresentasikan data yang tidak tersedia, hilang, atau tidak dapat dipakai.

Tabel 4.6 Required Data

Entiti Name Attribute Deskripsi Tipe Data & Panjang NULL Multi value Pasien KdPasien NamaDepanPasien NamaBelakangPasien TempatLahirPasien TanggalLahirPasien AlamatPasien UmurPasien GolDarahPasien JnsKelaminPasien AgamaPasien NamaOrtuPasien NamaSuamiPasien KdPasien NamaDepanPasien NamaBelakangPasien TempatLahirPasien TanggalLahirPasien AlamatPasien UmurPasien GolDarahPasien JnsKelaminPasien AgamaPasien NamaOrtuPasien NamaSuamiPasien Char (5) Varchar (15) Varchar (15) Varchar (30) Date () Varchar (100) Numeric(1-100) Varchar (2) A,B,AB,O Char(1) F or M Char(1) I,K,P,B,H,O Varchar (30) Varchar (30) NO NO NO NO NO NO NO NO NO NO NO NO NO NO NO NO NO NO NO NO NO NO NO NO TelpPasien TelpPasien KdPasien TelpPasien KdPasien Varchar (13) [0-9] Char (5) NO NO NO NO

(53)

Entiti Name Attribute Deskripsi Tipe Data & Panjang NULL Multi value Karyawan KdKaryawan NamaDepanKaryawan NamaBelakangKaryaw an Password TempatLahirKaryawan TanggalLahirKaryawan AlamatKaryawan JnsKelaminKaryawan AgamaKaryawan UmurKaryawan KdKaryawan NamaDepanKaryawan NamaBelakangKaryaw an Password TempatLahirKaryawan TanggalLahirKaryawan AlamatKaryawan JnsKelaminKaryawan AgamaKaryawan UmurKaryawan Char (5) Varchar (15) Varchar (15) Varchar (10) Varchar (30) Date () Varchar (100) Char(1) F or M Char(1) I,K,P,B,H,O Numeric(1-100) NO NO NO NO NO NO NO NO NO NO NO NO NO NO NO NO NO NO NO NO TelpKaryawan TelpKaryawan KdKaryawan TelpKaryawan KdKaryawan Varchar (13) [0-9] Char (5) NO NO NO NO PelayanMedis KdPelM ed NamaDepanPelM ed NamaBelakangPelM ed TempatLahirPelM ed TanggalLahirPelM ed AlamatPelM ed KdPelM ed NamaDepanPelM ed NamaBelakangPelM ed TempatLahirPelM ed TanggalLahirPelM ed AlamatPelM ed Char (5) Varchar (15) Varchar (15) Varchar (30) Date () Varchar (100) NO NO NO NO NO NO NO NO NO NO NO NO

(54)

Entiti Name Attribute Deskripsi Tipe Data & Panjang NULL Multi value JnsKelaminPelM ed AgamaPelM ed UmurPelM ed PendTerakhirPelM ed JnsKelaminPelM ed AgamaPelM ed UmurPelM ed PendTerakhirPelM ed Char(1) F or M Char(1) I,K,P,B,H,O Numeric(1-100) Varchar (30) NO NO NO NO NO NO NO NO TelpPelMed TelpPelM ed KdPelM ed TelpPelM ed KdPelM ed Varchar (13) [0-9] Char (5) NO NO NO NO PemeriksaanR utin KdPelayanan NamaPemRutin Tarif KdPelayanan NamaPemRutin Tarif Char (5) Varchar (20) Long NO NO NO NO NO NO InstalasiKamar Bersalin KdPelayanan NamaIKB Tarif KdPelayanan NamaIKB Tarif Char (5) Varchar (20) Long NO NO NO NO NO NO RuangRawat Inap KdPelayanan NamaRuangInap Tarif Keterangan KdPelayanan NamaRuangInap Tarif Keterangan Char (5) Varchar (20) Long Varchar (20) NO NO NO NO NO NO NO NO Jadwal KdJadwal WaktuJadwal Jam KdJadwal WaktuJadwal Jam Char (5) Char (5) Datetime NO NO NO NO NO NO

(55)

Entiti Name Attribute Deskripsi Tipe Data & Panjang NULL Multi value Hari Bulan Tahun Hari Bulan Tahun Date Date Date NO NO NO NO NO NO Tagihan KdTagihan TglTagihan tarif jumlah KdTagihan TglTagihan tarif jumlah Char (5) Date () Long Int() NO NO NO NO NO NO NO NO Pembayaran KdPembayaran KdPasien KdPembayaran KdPasien Char (5) Char (5) NO NO NO NO Pemerikasaan Rutin_Pasien KdPelayanan KdPasien TglPeriksa Deskripsi KdPelayanan KdPasien TglPeriksa Deskripsi Char (5) Char (5) Date Varchar (20) NO NO NO NO NO NO NO NO InstalasiKamar Bersalin_Pasie n KdPelayanan KdPasien TglIKB Deposit KdPelayanan KdPasien TglIKB Deposit Char (5) Char (5) Date Long NO NO NO NO NO NO NO NO RuangRawat Inap_Pasien KdPelayanan KdPasien TglM asuk TglKeluar KdPelayanan KdPasien TglM asuk TglKeluar Char (5) Char (5) Date Date NO NO NO NO NO NO NO NO

(56)

Entiti Name Attribute Deskripsi Tipe Data & Panjang

NULL Multi value

Deposit Deposit Long NO NO

PemeriksaanR utin_Pelayan Medis KdPelayanan KdPelM ed KdPelayanan KdPelM ed Char (5) Char (5) NO NO NO NO InstalasiKamar Bersalin_Pelay anMedis KdPelayanan KdPelM ed KdPelayanan KdPelM ed Char (5) Char (5) NO NO NO NO RuangRawatIn ap_PelayanMe dis KdPelayanan KdPelM ed KdPelayanan KdPelM ed Char (5) Char (5) NO NO NO NO Karyawan_Pas ien KdKaryawan KdPasien KdKaryawan KdPasien Char (5) Char (5) NO NO NO NO Karyawan_Pe mbayaran KdPembayaran KdKaryawan KdPembayaran KdKaryawan Char (5) Char (5) NO NO NO NO PelayanMedis _Pasien KdPelM ed KdPasien KdPelM ed KdPasien Char (5) Char (5) NO NO NO NO

(57)

4.1.2.5.2 Attribute Domain Constraints

Setiap kolom harus mempunyai sebuah domain, dengan kata lain, satu set nilai yang sah.

Tabel 4.7 Attribute Domain Constraints Entity Attribut Deskripsi Tipe Data

& Panjang NULL Mul tiVa lue Cons-traint

JnsKelaminPasien Jenis kelamin pasien

Char(1) NO NO (F/M )

GolDarahPasien Golongan Darah Pasien

Varchar (2) NO NO (A/B/ AB/O) Pasien

AgamaPasien Agama Pasien char(1) NO NO (I/K/P/ B/H/O) JnsKelaminAdmi nistrasi Jenis kelamin administrasi Char(1) NO NO (F/M ) Karyawan AgamaAdministr asi Agama Administrasi char(1) NO NO (I/K/P/ B/H/O) JnsKelaminPelM ed Jenis kelamin

PelM ed

Char(1) NO NO (F/M )

PelayanM e dis

AgamaPelM ed Agama PelM ed char(1) NO NO (I/K/P/ B/H/O)

(58)

4.1.2.5.4 Entity Integrity

Primary key dari sebuah tabel harus unik dan tidak mengandung nilai null untuk setiap baris.

Tabel 4.8 Entity Integrity

Entiti Name Attribut Deskripsi Tipe Data & Panjang

NULL Multi value

Pasien KdPasien Kode Pasien Char(5) NO NO

TelpPasien TelpPasien KdPasien

Nomor telepon pasien Kode pasien Varchar(13) Char(5) NO NO NO NO Karyawan KdKaryawan Kode Administrasi Char(5) NO NO TelpKaryawan TelpKaryawan KdKaryawan No telepon Karyawan Kode Karyawan Varchar(13) Char(5) NO NO NO NO PelayanMedis KdPelM ed Kode PelM ed Char(5) NO NO TelpPelMed TelpPelM ed KdPelM ed No telepon PelM ed Kode perawat Varchar(13) Char(5) NO NO NO NO PemeriksaanRu tin

KdPelayanan Kode Pemeriksaan Rutin

Char(5) NO NO

InstalasiKamar Bersalin

KdPelayanan Kode Instalasi Kamar Bersalin

Char(5) NO NO

RuangRawatIn ap

KdPelayanan Kode Ruang Rawat Inap

Char(5) NO NO

(59)

Entiti Name Attribut Deskripsi Tipe Data & Panjang

NULL Multi value Tagihan KdTagihan Kode Tagihan Char(5) NO NO Pembayaran KdPembayaran Kode Pembayaran Char(5) NO NO PemerikasaanR utin_Pasien KdPelayanan KdPasien Kode Pemeriksaan Rutin Kode Pasien Char(5) Char(5) NO NO NO NO InstalasiKamar Bersalin_Pasien KdPelayanan KdPasien

Kode Instalasi Kamar Bersalin Kode Pasien Char(5) Char(5) NO NO NO NO RuangRawatIn ap_Pasien KdPelayanan KdPasien

Kode Ruang Rawat Inap Kode Pasien Char(5) Char(5) NO NO NO NO PemeriksaanRu tin_PelayanMed is KdPelayanan KdPelM ed Kode Pemeriksaan Rutin

Kode Pelayan M edis

Char(5) Char(5) NO NO NO NO InstalasiKamar Bersalin_Pelaya nMedis KdPelayanan KdPelM ed

Kode Instalasi Kamar Bersalin

Kode Pelayan M edis

Char(5) Char(5) NO NO NO NO RuangRawatIn ap_PelayanMed is KdPelayanan KdPelM ed

Kode Ruang Rawat Inap

Kode Pelayan M edis

Char(5) Char(5) NO NO NO NO

(60)

Entiti Name Attribut Deskripsi Tipe Data & Panjang NULL Multi value Karyawan_Pasi en KdKaryawan Kdpasien Kode Karyawan Kode Pasien Char(5) Char(5) NO NO NO NO Karyawan_Pem bayaran KdKaryawan KdPembayaran Kode Karyawan Kode Pembayaran Char(5) Char(5) NO NO NO NO PelayanMedis_ Pasien KdPelM ed KdPasien Kode PelM ed KdPasien Char(5) Char(5) NO NO NO NO 4.1.2.5.4 Referential Integrity

Referential Integrity dimaksudkan untuk menguji apakah setiap tabel yang diuji telah dapat merujuk ke tabel lain yang saling berhubungan.

Tabel 4.9 Referential Integrity

Pasien ( KdPasien, NamaDepanPasien, NamaBelakangPasien, TempatLahirPasien, TanggalLahirPasien, AlamatPasien, UmurPasien, GolDarahPasien, JnsKelaminPasien, AgamaPasien, NamaOrtuPasien, NamaSuamiPasien )

Primary Key KdPasien ON UPDATE CASCADE

PelayanMedis ( KdPelM ed, NamaDepanPelM ed, NamaBelakangPelM ed,

TempatLahirPelM ed, TanggalLahirPelM ed, AlamatPelM ed, JnsKelaminPelM ed, AgamaPelM ed, UmurPelM ed, PendTerakhirPelM ed )

(61)

ON UPDATE CASCADE

Karyawan ( KdKaryawan, NamaDepanKaryawan, NamaBelakangKaryawan, Password, TempatLahirKaryawan, TanggalLahirKaryawan, AlamatKaryawan, JnsKelaminKaryawan, AgamaKaryawan, UmurKaryawan, JabatanKaryawan )

Primary Key KdKaryawan ON UPDATE CASCADE

PemeriksaanRutin ( KdPelayanan, NamaPemRutin, Tarif ) Primary Key KdPelayanan

ON UPDATE CASCADE

InstalasiKamarBersalin ( KdPelayanan, NamaIKB, Tarif ) Primary Key KdPelayanan

ON UPDATE CASCADE

RuangRawatInap ( KdPelayanan, NamaRuangInap, Tarif, Keterangan ) Primary Key KdPelayanan

ON UPDATE CASCADE

Jadwal ( KdJadwal, WaktuJadwal, Jam, Hari, Bulan, Tahun, KdPelM ed ) Primary Key KdJadwal

Foreign Key KdPelM ed references PelayanM edis ( KdPelM ed ) ON UPDATE CASCADE

Tagihan ( KdTagihan, TglTagihan, tarif, jumlah, KdKaryawan, KdPasien) Primary Key KdTagihan

Foreign Key KdKaryawan references Karyawan (KdKaryawan) Foreign Key KdPasien references Pasien ( KdPasien )

(62)

ON UPDATE CASCADE

Pembayaran ( KdPembayaran, KdPasien ) Primary Key KdPembayaran

Foreign Key KdPasien references Pasien ( KdPasien ) ON UPDATE CASCADE

TelpPasien ( KdPasien, TelpPasien ) Primary Key TelpPasien

Foreign Key KdPasien ON UPDATE CASCADE

TelpKaryawan ( KdKaryawan, TelpKasir ) Primary Key TelpKaryawan

Foreign Key KdKaryawan ON UPDATE CASCADE

TelpPelMed ( KdPelM ed, TelpPelM ed ) Primary Key TelpPelM ed

Foreign Key KdPelM ed ON UPDATE CASCADE

PemerikasaanRutin_Pasien ( KdPelayanan, KdPasien, TglPeriksa, Deskripsi ) Primary key KdPelayanan, KdPasien

Foreign Key KdPelayanan references PemeriksaanRutin(KdPelayanan) Foreign Key KdPasien references Pasien(KdPasien)

ON UPDATE CASCADE

(63)

Primary key KdPelayanan, KdPasien

Foreign Key KdPelayanan references InstalasiKamarBersalin(KdPelayanan) Foreign Key KdPasien references Pasien(KdPasien)

ON UPDATE CASCADE

RuangRawatInap_Pasien ( KdPelayanan, KdPasien, TglM asuk, TglKeluar, Deposit ) Primary key KdPelayanan, KdPasien

Foreign Key KdPelayanan references RuangRawatInap (KdPelayanan) Foreign Key KdPasien references Pasien(KdPasien)

ON UPDATE CASCADE

PemeriksaanRutin_PelayanMedis ( KdPelayanan, KdPelM ed ) Primary key KdPelayanan, KdPelM ed

Foreign Key KdPelayanan references PemeriksaanRutin (KdPelayanan) Foreign Key KdPelM ed references PelayanM edis (KdPelM ed)

ON UPDATE CASCADE

InstalasiKamarBersalin_PelayanMedis ( KdPelayanan, KdPelM ed ) Primary key KdPelayanan, KdPelM ed

Foreign Key KdPelayanan references InstalasiKamarBersalin (KdPelayanan) Foreign Key KdPelM ed references PelayanM edis (KdPelM ed)

ON UPDATE CASCADE

RuangRawatInap_PelayanMedis ( KdPelayanan, KdPelM ed ) Primary key KdRuangInap, KdPelM ed

Foreign Key KdRuangInap references RuangRawatInap (KdRuangInap) Foreign Key KdPelM ed references PelayanM edis(KdPelM ed)

(64)

ON UPDATE CASCADE

Karyawan_Pasien ( KdKaryawan, KdPasien ) Primary key KdKaryawan, KdPasien

Foreign Key KdKaryawan references Karyawan (KdKaryawan) Foreign Key KdPasien references Pasien (KdPasien)

ON UPDATE CASCADE

Karyawan_Pembayaran ( KdPembayaran, KdKaryawan ) Primary key KdPembayaran, KdKaryawan

Foreign Key KdKaryawan references Karyawan (KdKaryawan) ON UPDATE CASCADE

PelayanMedis_Pasien ( KdPelM ed, KdPasien ) Primary key KdPelM ed, KdPasien

Foreign Key KdPelM ed references PelayanM edis (KdPelM ed) Foreign Key KdPasien references Pasien (KdPasien)

(65)

4.1.2.6 Pembentukan Model Data Logikal Global

Karena penulis hanya menggunakan satu user view yaitu Karyawan view maka model data global sama dengan model data logikal.

Gambar 4.9 Entity Relationship Diagam Logikal beserta entity hasil normalisasi beserta primary key, foreign key, dan atribut-atribut

(66)

4.1.3. Perancangan Basis Data Fisikal

4.1.3.1. Perancangan Relasional Dasar Basis Data

Tujuan dari tahap ini adalah untuk memutuskan bagaimana merepresentasikan relasi dasar yang diidentifikasi dalam model data logikal global dalam DBM S yang diinginkan.

1. Pasien

Domain KdPasien : Variable length character string, length 5 Domain NamaDepanPasien : Variable length character string, length 15 Domain NamaBelakangPasien : Variable length character string, length 15 Domain TempatLahirPasien : Variable length character string, length 30 Domain TanggalLahirPasien : Date

Domain AlamatPasien : Variable length character string, length 100

Domain UmurPasien : Numeric (1-100)

Domain GolDarahPasien : Single character, must be one of A or B or AB or O

Domain JnsKelaminPasien : Single character, must be one of M or F Domain AgamaPasien : Single character, must be one of I or K or

H or B or O

Domain NamaOrtuPasien : Variable length character string, length 30 Domain NamaSuamiPasien : Variable length character string, length 30

(67)

Pasien (

KdPasien NOT NULL,

NamaDepanPasien NOT NULL,

NamaBelakangPasien NOT NULL DEFAULT ‘ ‘, TempatLahirPasien NOT NULL DEFAULT ‘ ‘, TanggalLahirPasien NOT NULL,

AlamatPasien NOT NULL DEFAULT ‘ ‘, UmurPasien NOT NULL DEFAULT ‘ ‘, GolDarahPasien NOT NULL DEFAULT ‘ ‘, JnsKelaminPasien NOT NULL DEFAULT ‘F’, AgamaPasien NOT NULL DEFAULT ‘ ‘, NamaOrtuPasien NOT NULL DEFAULT ‘ ‘, NamaSuamiPasien NOT NULL DEFAULT ‘ ‘, PRIM ARY KEY (KdPasien),

);

2. TelpPasien

Domain TelpPasien : Variable length character string, length 13 Domain KdPasien : Variable length character string, length 5

TelpPasien (

Domain TelpPasien NOT NULL, Domain KdPasien NOT NULL, PRIM ARY KEY (TelpPasien),

(68)

FOREIGN KEY (KdPasien) REFERENCES Pasien (KdPasien) ON UPDATE CASCADE

);

3. Karyawan

KdKaryawan : Variable length character string, length 5 NamaDepanKaryawan : Variable length character string, length 15 NamaBelakangKaryawan : Variable length character string, length 15

Password : Variable length character string, length 10 TempatLahirKaryawan : Variable length character string, length 30

TanggalLahirKaryawan : Date

AlamatKaryawan : Variable length character string, length 100

JnsKelaminKaryawan : Single character, must be one of M or F AgamaKaryawan : Single character, must be one of I or K or

H or B or O UmurKaryawan : Numeric (1-100)

Karyawan ( KdKaryawan

NamaDepanKaryawan NOT NULL,

NamaBelakangKaryawan NOT NULL DEFAULT ‘ ‘, Password NOT NULL DEFAULT ‘ ‘,

(69)

TanggalLahirKaryawan NOT NULL,

AlamatKaryawan NOT NULL DEFAULT ‘ ‘, JnsKelaminKaryawan NOT NULL DEFAULT ‘ F‘, AgamaKaryawan NOT NULL DEFAULT ‘ ‘, UmurKaryawan NOT NULL DEFAULT ‘ ‘, PRIM ARY KEY ( KdKaryawan),

);

4. TelpKaryawan

TelpKaryawan : Variable length character string, length 13 KdKaryawan : Variable length character string, length 5

TelpKaryawan (

TelpKaryawan NOT NULL, KdKaryawan NOT NULL,

PRIM ARY KEY (TelpKaryawan),

FOREIGN KEY (KdKaryawan) REFERENCES Karyawan (KdKaryawan) ON UPDATE CASCADE ,

);

5. PelayanMedis

KdPelM ed : Variable length character string, length 5 NamaDepanPelM ed : Variable length character string, length 15 NamaBelakangPelM ed : Variable length character string, length 15

(70)

TempatLahirPelM ed : Variable length character string, length 30 TanggalLahirPelM ed : Date

AlamatPelM ed : Variable length character string, length 100 JnsKelaminPelM ed : Single character, must be one of M or F

AgamaPelM ed : Single character, must be one of I or K or H or B or O

UmurPelM ed : Numeric (1-100)

PendTerakhirPelM ed : Variable length character string, length 30

PelayanMedis (

KdPelM ed NOT NULL,

NamaDepanPelM ed NOT NULL,

NamaBelakangPelM ed NOT NULL DEFAULT ‘ ‘, TempatLahirPelM ed NOT NULL DEFAULT ‘ ‘, TanggalLahirPelM ed NOT NULL,

AlamatPelM ed NOT NULL DEFAULT ‘ ‘, JnsKelaminPelM ed NOT NULL DEFAULT ‘ F‘, AgamaPelM ed NOT NULL DEFAULT ‘ ‘, UmurPelM ed NOT NULL DEFAULT ‘ ‘,

PendTerakhirPelM ed NOT NULL DEFAULT ‘ ‘, PRIM ARY KEY (KdPelM ed),

(71)

6. TelpPelMed

TelpPelM ed : Variable length character string, length 13 KdPelM ed : Variable length character string, length 5

TelpPelM ed (

TelpPelM ed NOT NULL DEFAULT ‘ ‘, KdPelM ed NOT NULL,

PRIM ARY KEY (TelpPerawat),

FOREIGN KEY (KdPelM ed) REFENCES PelM ed (KdPelM ed) ON UPDATE CASCADE ,

);

7. PemeriksaanRutin

KdPelayanan : Variable length character string, length 5 NamaPemRutin : Variable length character string, length 15 Tarif : Long

PemeriksaanRutin ( KdPelayanan NOT NULL, Tarif NOT NULL,

NamaPemRutin NOT NULL, PRIM ARY KEY (KdPelayanan), );

(72)

8. InstalasiKamarBersalin

KdPelayanan : Variable length character string, length 5 NamaIKB : Variable length character string, length 15

Tarif : Long

InstalasiKamarBersalin ( Tarif NOT NULL,

KdPelayanan NOT NULL, NamaIKB NOT NULL,

PRIM ARY KEY (KdPelayanan), );

9. RuangRawatInap

KdPelayanan : Variable length character string, length 5 NamaRuangInap : Variable length character string, length 15

Tarif : Long

Keterangan : Variable length character string, length 20

RuangRawatInap (

KdPelayanan NOT NULL, NamaRuangInap NOT NULL, Tarif NOT NULL,

Keterangan NOT NULL DEFAULT ‘ ‘, PRIM ARY KEY (KdPelayanan), );

(73)

10. Jadwal

KdJadwal : Variable length character string, length 5 WaktuJadwal : char (5) Jam : Datetime Hari : Date Bulan : Date Tahun : Date Jadwal (

KdJadwal NOT NULL, WaktuJadwal NOT NULL, Jam NOT NULL,

Hari NOT NULL, Bulan NOT NULL, Tahun NOT NULL,

PRIM ARY KEY (KdJadwal), );

11. Tagihan

KdTagihan : Variable length character string, length 5 TglTagihan : Date

tarif : Long jumlah : Long

(74)

Tagihan (

KdTagihan NOT NULL, TglTagihan NOT NULL, tarif NOT NULL,

jumlah NOT NULL DEFAULT ‘ ‘, PRIM ARY KEY (KdTagihan), );

12. Pembayaran

KdPembayaran : Variable length character string, length 5 KdPasien : Variable length character string, length 5 Pembayaran (

KdPembayaran NOT NULL, KdPasien NOT NULL,

PRIM ARY KEY (KdPembayaran),

FOREIGN KEY (KdPasien) REFERENCES Pasien (KdPasien) ON UPDATE CASCADE ,

);

13. PemeriksaanRutin_Pasien

KdPelayanan : Variable length character string, length 5 KdPasien : Variable length character string, length 5 TglPeriksa : Date

(75)

PemeriksaanRutin_Pasien ( KdPelayanan NOT NULL, KdPasien NOT NULL, TglPeriksa NOT NULL,

Deskripsi NOT NULL DEFAULT ‘ ‘, PRIM ARY KEY (KdPelayanan, KdPasien),

FOREIGN KEY (KdPasien) REFERENCES PemeriksaanRutin (KdPelayanan) ON UPDATE CASCADE ,

FOREIGN KEY (KdPasien) REFERENCES Pasien (KdPasien) ON UPDATE CASCADE );

14. InstalasiKamarBersalin_Pasien

KdPelayanan : Variable length character string, length 5 KdPasien : Variable length character string, length 5 TglIKB : Date

Deposit : Long

InstalasiKamarBersalin_Pasien ( KdPelayanan NOT NULL,

KdPasien NOT NULL, TglIKB NOT NULL,

Deposit NOT NULL DEFAULT ‘ ‘,

(76)

FOREIGN KEY (KdPasien) REFERENCES InstalasiKamarBersalin (KdPelayanan) ON UPDATE CASCADE ,

FOREIGN KEY (KdPasien) REFERENCES Pasien (KdPasien) ON UPDATE CASCADE ,

);

15. RuangRawatInap_Pasien

KdPelayanan : Variable length character string, length 5 KdPasien : Variable length character string, length 5 TglM asuk : Date

TglKeluar : Date Deposit : Long

RuangRawatInap_Pasien ( KdPelayanan NOT NULL, KdPasien NOT NULL, TglM asuk NOT NULL, TglKeluar NOT NULL,

Deposit NOT NULL DEFAULT ‘ ‘,

PRIM ARY KEY (KdPelayanan, KdPasien),

FOREIGN KEY (KdPasien) REFERENCES RuangRawatInap (KdPelayanan) ON UPDATE CASCADE ,

FOREIGN KEY (KdPasien) REFERENCES Pasien (KdPasien) ON UPDATE CASCADE );

(77)

16. PemeriksaanRutin_PelayanMedis

KdPelayanan : Variable length character string, length 5 KdPelM ed : Variable length character string, length 5

PemeriksaanRutin_PelayanMedis ( KdPelayanan NOT NULL,

KdPelM ed NOT NULL,

PRIM ARY KEY (KdPelayanan, KdPelM ed),

FOREIGN KEY (KdPelayanan) REFERENCES PemeriksaanRutin (KdPelayanan) REFERENCES ON UPDATE CASCADE ,

FOREIGN KEY (KdPelM ed) REFERENCES PelayanM edis (KdPelM ed) REFERENCES ON UPDATE CASCADE ,

);

17. InstalasiKamarBersalin_PelayanMedis

KdPelayanan : Variable length character string, length 5 KdPelM ed : Variable length character string, length 5

InstalasiKamarBersalin_PelayanMedis ( KdPelayanan NOT NULL,

KdPelM ed NOT NULL,

PRIM ARY KEY (KdPelayanan, KdPelM ed),

FOREIGN KEY (KdPelayanan) REFERENCES InstalasiKamarBersalin (KdPelayanan) REFERENCES ON UPDATE CASCADE ,

(78)

FOREIGN KEY (KdPelM ed) REFERENCES PelayanM edis (KdPelM ed) REFERENCES ON UPDATE CASCADE ,

);

18. RuangRawatInap_PelayanMedis

KdPelayanan : Variable length character string, length 5 KdPelM ed : Variable length character string, length 5

RuangRawatInap_PelayanMedis ( KdPelayanan NOT NULL,

KdPelM ed NOT NULL,

PRIM ARY KEY (KdPelayanan, KdPelM ed),

FOREIGN KEY (KdPelayanan) REFERENCES RuangRawatInap (KdPelayanan) REFERENCES ON UPDATE CASCADE ,

FOREIGN KEY (KdPelM ed) REFERENCES PelayanM edis (KdPelM ed) REFERENCES ON UPDATE CASCADE ,

);

19. Karyawan_Pasien

KdKaryawan : Variable length character string, length 5 KdPasien : Variable length character string, length 5

Karyawan_Pasien ( KdKaryawan NOT NULL, KdPasien NOT NULL,

(79)

PRIM ARY KEY (KdKaryawan, KdPasien),

FOREIGN KEY (KdKaryawan) REFERENCES Karyawan (KdKaryawan) REFERENCES ON UPDATE CASCADE ,

FOREIGN KEY (KdPasien) REFERENCES Pasien (KdPasien) REFERENCES ON UPDATE CASCADE ,

);

20. Karyawan_Pembayaran

KdPembayaran : Variable length character string, length 5 KdKaryawan : Variable length character string, length 5

Karyawan_Pembayaran ( KdPembayaran NOT NULL, KdKaryawan NOT NULL,

PRIM ARY KEY (KdKaryawan, KdPembayaran),

FOREIGN KEY (KdKaryawan) REFERENCES Karyawan (KdKaryawan) REFERENCES ON UPDATE CASCADE ,

FOREIGN KEY (KdPembayaran) REFERENCES Pembayaran (KdPembayaran) REFERENCES ON UPDATE CASCADE );

21. PelayanMedis_Pasien

KdPelM ed : Variable length character string, length 5 KdPasien : Variable length character string, length 5

Gambar

Gambar 4.2   Entity Relationship Diagram (ERD) Model Data Konseptual  dengan Primary Key
Gambar 4.3 Enhanced Entity Relationship Diagram (EERD)
Gambar 4.4 Model Konseptual yang Mendukung Transaksi User dengan  Menggunakan Pathways
Gambar 4.6  Menghilangkan Atribut Multivalue
+7

Referensi

Dokumen terkait

tidak dapat diselesaikan akibat proses pencairan dana tidak dapat dilaksanakan maksimal (100%) oleh Pemerintah Aceh, yang akhirnya distribusi manfaat hasil

Dari penelitian ini dapat disimpulkan bahwa kelima belas sampel krim pemutih yang diuji tidak aman untuk digunakan dan tidak memenuhi persyaratan Peraturan Kepala Badan Pengawas

Perubahan ketiga Undang-undang Dasar Negara Republik Indonesia Tahun 1945 mengatur hal baru dalam hal Kekuasaan Kehakiman, antara lain pengaturan tentang

Dari hasil penelitian dapat disimpulkan bahwa ada pengaruh positif nilai investasi, nilai upah dan nilai produksi terhadap penyerapan tenaga kerja pada industri mebel di

Data kuantitatif merupakan data yang digunakan untuk mengetahui ada tidaknya peningkatan kemampuan berpikir kreatif dan logis matematis siswa yang mendapat

didefinisikan mengalami keracunan akut sianida bila kadar sianida serumnya  0.5 mg/L. Tapi kadar sianida serum tidak bisa dijadikan parameter untuk menentukan

Dengan memanjatkan puji syukur kehadirat Allah SWT yang telah memberikan kesehatan, kesempatan kepada kita khususnya pada penulis sehingga dapat menyelesaikan penyusunan

1) Hasil penelitian ini menemukan bahwa dimensi produksi mempunyai penilaian terendah dibandingkan dimensi lainnya. Oleh karena itu, Kantor Kelurahan Sadang