You are on page 1of 26

Enhanced E-

E-R Model
E - ERD
EER
 Digunakan untuk menangani hubungan
supertipe//subtipe
supertipe
 Supertipe adalah suatu entitas yang bersifat
umum
 Subtipe adalah suatu entitas yang merupakan
pengkhususan dari supertipe
 Contoh::
Contoh
 MOBIL dapat menjadi supertipe
 SEDAN, MINIBUS, JIP dapat berkedudukan sebagai
subtipe
Hubungan Supertipe/Subtipe
Atribut-atribut yang
bersifat umum

Tipe entitas umum


SUPERTIPE

Pengkhususan
dari
SUBTIPE 1 SUBTIPE 2 SUBTIPE 3
supertipe

Atribut-atribut khusus Atribut-atribut khusus Atribut-atribut khusus


milik SUPTIPE 1 milik SUPTIPE 2 milik SUPTIPE 3
Notasi Hubungan
Supertipe/Subtipe
 Simbol lingkaran digunakan untuk
menghubungkan garis ke supertipe dan
suptipe
 Simbol Bentuk-
Bentuk-U pada garis yang
menghubungkan simbol lingkaran dan
suptipe menyatakan bahwa suptipe adalah
bagian dari supertipe
Contoh Supertipe dan Subtipe
Nama_Pegawai Alamat

Nomor_Pegawai PEGAWAI Tgl_Mulai_Kerja

PEGAWAI HARIAN PEGAWAI TETAP PEGAWAI KONTRAK Kompensasi

Upah_Harian Gaji_Bulanan Tunjangan Nomor_Kontrak Lama_Kontrak


Pilihan Model Konseptual
1. Buat sebuah tipe entitas bernama
PEGAWAI
2. Buat tiga buah entitas terpisah
3. Buat supertipe dan subtipe seperti pada
contoh di depan
Contoh Supertipe dan Subtipe
Kode_Pasien Tgl_Kunjung Kode_Dokter

PASIEN Ditangani_oleh DOKTER

RAWAT JALAN RAWAT INAP Ditempatkan_ke TEMPAT TIDUR

Tgl_Balik Tgl_Pulang Kode_Tempat_Tidur


Pewarisan Atribut
 Pewarisan atribut (attribute
(attribute inheritance)
inheritance)
merupakan sifat yang membuat entitas
subtipe mewarisi nilai-
nilai-nilai yang terdapat
pada semua atribut dalam supertipe
 Contoh Nama_Pegawai terdapat pada
supertipe PEGAWAI. Nilai atribut ini
dengan sendirinya diwarisi oleh subtipe
seperti PEGAWAI TETAP
Proses Pembuatan Hubungan
Supertipe/Subtipe
1. Generalisasi
 Proses perancangan yang bersifat bottom
bottom--up
 Pembuatan entitas yang bersifat umum dimulai dari
tipe--tipe entitas yang bersifat khusus
tipe
2. Spesialisasi
 Proses perancangan yang bersifat top top--down
 Pembuatan satu atau beberapa entitas yang
bersifat khusus (subtipe) dilakukan dari entitas yang
bersifat umum terlebih dulu (supertipe)
Ilustrasi Generalisasi
Model Tahun

ID_Kendaraan Nama_Kendaraan

Harga Cc_Mesin Model Tahun

Jumlah_Penumpang MOBIL ID_Kendaraan Nama_Kendaraan

Harga Cc_Mesin

Model Tahun
MOTOR

ID_Kendaraan Nama_Kendaraan

Harga Cc_Mesin
Tiga tipe entitas dibuat terlebih dulu
(MOBIL, TRUK, MOTOR)
Kapasitas TRUK
Ilustrasi Generalisasi
Model Tahun

ID_Kendaraan Nama_Kendaraan

Harga Cc_Mesin
Generalisasi supertipe KENDARAAN
(Entitas MOTOR tidak muncul
KENDARAAN secara eksplisit)

MOBIL TRUK

Jumlah_Penumpang Kapasitas
Ilustrasi Spesialisasi
Harga_Per_Unit

Nomor_Suku_Cadang Kode_Pemasok

Nama_Suku_Cadang SUKU CADANG Lokasi

Jumlah_Tersedia Routing_Number

Kondisi:
• Kode_Pemasok dan Harga_Per_Unit terkait dnegan suku cadang yang dibeli dari pemasok
• Routing_Number terkait dengan pabrik (tempat suku cadang dibuat sendiri)
Ilustrasi Spesialisasi
Jumlah_Tersedia

Kode_Pemasok
Nomor_Suku_Cadang Lokasi

Nama_Suku_Cadang SUKU CADANG PEMASOK

SUKU CADANG SUKU CADANG


Memasok
BUATAN SENDIRI DIBELI

Routing_Number Harga_Per_Unit
Contoh Lain Spesialisasi
 Entitas
ORANG mengandung atribut
Nama, Alamat, Kota
 Seseorang bisa dipecah lagi menjadi:
 PELANGGAN
 PEGAWAI
Kekangan Kelengkapan
 Kekangan kelengkapan (completeness
(completeness
constraint)) adalah jenis kekangan yang
constraint
ditujukan untuk menjawab pertanyaan “apakah
suatu instan dari supertipe harus juga menjadi
paling tidak anggota dari sebuah subtipe”
 Kekangan kelengkapan memiliki 2 aturan:
 Spesialisasi parsial (partial
(partial specialization)
specialization)
• Suatu instan supertipe boleh tidak menjadi bagian dari
subtipe
 Spesialisasi total (total
(total specialization)
specialization)
• Setiap instan supertipe harus menjadi anggota dari subtipe
Ilustrasi Aturan Spesialisasi
Total
Kode_Pasien Tgl_Kunjung Kode_Dokter

PASIEN Ditangani_oleh DOKTER

Spesialisasi
total

RAWAT JALAN RAWAT INAP Ditempatkan_ke TEMPAT TIDUR

Tgl_Balik Tgl_Pulang Kode_Tempat_Tidur

Aturan bisnis:
• Setiap pasien harus tergolong sebagai salah satu: pasien rawat jalan atau pasien rawat inap
• Pada contoh ini, penambahan pada PASIEN dengan sendiri akan menambahkan ke salah satu: RAWAT JALAN atau RAWAT INAP
Ilustrasi Spesialisasi Parsial
Model Tahun

ID_Kendaraan Nama_Kendaraan • Jika kendaraan adalah mobil, maka akan


menjadi instan dari MOBIL
Cc_Mesin
Harga • Jika kendaraan adalah truk, maka akan
menjadi instan dari TRUK
KENDARAAN
• Tapi jika kendaraan adalah sepeda motor,
tidak akan muncul dalam subtipe

MOBIL TRUK

Jumlah_Penumpang Kapasitas
Disjointness Constraint
 Disjointness constraint adalah kekangan yang
ditujukan untuk menjawab pertanyaaan “apakah
suatu instan supertipe bisa secara serentak
menjadi angota dua buah suptipe (atau lebih)”.
 Dua aturan pada disjointness constraint :
 Aturan disjoint : jika suatu instan supertipe adalah
anggota salah satu subtipe, maka instan tersebut
tidak boleh menjadi anggota subtipe yang lain
 Aturan overlap : jika suatu instan supertipe adalah
anggota salah satu subtipe, maka instan tersebut
boleh menjadi anggota subtipe yang lain
Ilustrasi Aturan Disjoint
Kode_Pasien Tgl_Kunjung Kode_Dokter

PASIEN Ditangani_oleh DOKTER

d Aturan disjoint

RAWAT JALAN RAWAT INAP Ditempatkan_ke TEMPAT TIDUR

Tgl_Balik Tgl_Pulang Kode_Tempat_Tidur

Aturan bisnis:
• Pada waktu yang sama, tidak mungkin seseorang pasien masuk kategori RAWAT JALAN dan RAWAT INAP
Ilustrasi Aturan Overlap
Aturan bisnis:
• Suatu suku cadang bisa berasal dari buatran sendiri atau beli
• Contoh: suku cadang dengan kode AX-003 memiliki jumlah sediaan sebanyak 60 buah
(40 berasal dari pembelian dan 20 berasal dari buatan sendiri)

Jumlah_Tersedia

Kode_Pemasok
Nomor_Suku_Cadang Lokasi

Nama_Suku_Cadang SUKU CADANG PEMASOK


Aturan overlap

SUKU CADANG SUKU CADANG


Memasok
BUATAN SENDIRI DIBELI

Routing_Number Harga_Per_Unit
Pembeda Subtipe
 Masalah yang timbul dalam hubungan
supertipe/subtipe: “Ke dalam subtipe yang
mana suatu instan akan disisipkan?”
 Hal ini diatasi dengan pembeda subtipe
(Subtype discriminator)
discriminator)
 Pembeda subtipe adalah suatu atribut
pada supertipe yang nilainya menentukan
target sebuah subtipe atau beberapa
subtipe
Pembeda Subtipe

Jumlah_Tersedia

Kode_Pemasok
Nomor_Suku_Cadang Lokasi

SUKU CADANG
Nama_Suku_Cadang PEMASOK
Pembeda
Tipe_Suku_Cadang:
subtipe
Buatan Sendiri?=“Y” o Beli?=Y”

SUKU CADANG SUKU CADANG Memasok


BUATAN SENDIRI DIBELI

Routing_Number Harga_Per_Unit
Pembeda Subtipe (Lanjutan…)
Tipe Suku Cadang Buatan Sendiri Beli
Dibuat sendiri “Y” “T”
Beli saja “T” “Y”
Dibuat sendiri dan juga beli “Y” “Y”
Pembeda Subtipe
Nama_Pegawai Alamat

Nomor_Pegawai PEGAWAI Tgl_Mulai_Kerja

Tipe_Pegawai:

“H”
d “K”
“T”

PEGAWAI HARIAN PEGAWAI TETAP PEGAWAI KONTRAK Kompensasi

Upah_Harian Gaji_Bulanan Tunjangan Nomor_Kontrak Lama_Kontrak


Contoh Soal
 Bank memiliki tiga jenis rekening: cek, tabungan,
pinjaman
 Atribut untuk ketiga rekening:
CEK=(No_Rek, Tgl_Buka, Saldo, Biaya_Layanan)
TABUNGAN=(No_rek, Tgl_Buka, Saldo, Bunga)
PINJAMAN=(No_Rek, Tgl_Buka, Bunga, Pembayaran)
 Setiap rekening harus menjadi salah satu dari
ketiga subtipe. Dengan menggunakan
generalisasi, buatlah model EER
 Sertakan pula pembeda subtipe
Soal EER
Gambarkan diagram EER-
EER-nya untuk masing-
masing-
masing persoalan berikut, bila ATLIT, PELARI,
PETEMBAK, dan PEMBALAP adalah entitas:
 Suatu ATLIT tidak harus menjadi PELARI,
PETEMBAK, dan PEMBALAP
 Suatu ATLIT bisa menjadi salah satu PELARI,
PETEMBAK, dan PEMBALAP
 Suatu ATLIT bisa menjadi PELARI,
PETEMBAK, dan PEMBALAP sekaligus

You might also like