ERD

advertisement
ENTITAS RELATION DIAGRAM MODEL
Tujuan:
1. Memahami konsep dasar ER Model.
2. Mengenal notasi ER Diagram.
3. Memahami Entity, Attribute, Entity Set dan
Key (Primary Key dan Foreign Key)
4. Memahami relasi dan himpunan relasi.
5. Memahami rasio kardinalitas (1-1,1-N,M-N)
6. Memahami Participation Constraint (total &
partial).
Lessons
1. ER Data Model
2. Jenis atribut dan Notasi ER Diagram
3. Relasi dan Rasio Kardinalitas
4. Participation Constraint Dependencies
Pengertian Entity Relationship Diagram
Entity Relationship Diagram adalah sebuah
hubungan antar entity atau obyek-obyek dasar
yang divisualkan dengan diagram. Dalam ERD atau
Entity Relationship Diagram juga diterapkan
penggunaan simbol yang menggambarkan 3
informasi diantaranya :
Dalam sistem Entity Relationship Diagram (ERD), terdapat beberapa istilah
penting diantaranya :
1. Entitas
Enititas atau Entity merupakan suatu objek yang mewakili sesuatu hal
yang nyata. Dapat dibedakan satu dengan lainnya. Contoh Entitas adalah
Siswa, Guru, Pegawai, Buku, Barang, Pelanggan dan lainnya.
2. Atribut
Atribut merupakan sebuah sub-bagian dari entitas. Misalnya terdapat
entitas Buku dengan atribut Judul , Penulis , Penerbit , ISBN. Atau entitas
Siswa dengan atribut Nama , NIS , Alamat , Tempat / Tanggal Lahir dan
beberapa atribut lainnya. Istilah lain atribut adalah Field.
3. Relasi
Istilah selanjutnya adalah Relasi. Relasi atau Relation adalah hubungan
antara dua atau lebih entitas yang saling berkaitan. Misalnya, Entitas
Barang dengan Distributor. Kedua Entitas ini dihubungkan dengan relasi
“dipasok”. Artinya Barang dipasok oleh Distributor dan Distributor
memasok Barang. Barang memiliki atribut Jenis , Satuan, Harga. Begitu
pula dengan Distributor, memiliki atribut Nama dan Alamat.
Dalam keadaan tertentu, tidak hanya
Entitas yang diberi atribut. Relasi juga
dapat diberikan atribut. Untuk lebih
jelasnya bisa dilihat pada contoh
berikut.
Bentuk-Bentuk Relasi
Pada ERD, terdapat beberapa bentuk relasi yang
dapat terjadi antar entitas. Bentuk-bentuk relasi
tersebut diantaranya :
1) Relasi One-to-One
Relasi ini menunjukkan setiap entitas pada
himpunan entitas A berhubungan dengan tepat
satu entitas pada himpunan entitas B atau
sebaliknya. Relasi ini mirip dengan Korespodensi
Satu-Satu pada materi Matematika.
Contoh : 1 Pria menikahi 1 wanita
2) Relasi One-to-Many
Relasi ini menunjukkan bahwa setiap entitas pada
himpunan entitas A berhubungan dengan banyak
entitas dalam himpunan entitas B.
Contoh : 1 Pemain Bulutangkis memiliki
beberapa raket
3) Relasi Many-to-One
Relasi ini menunjukkan bahwa banyak entitas
pada himpunan entitas A berhubungan dengan
satu entitas dalam himpunan entitas B.
Contoh : 1 Bus ditumpangi beberapa orang
4) Relasi Many-to-Many
Relasi ini menunjukkan bahwa setiap entitas
pada himpunan entitas A berhubungan
dengan banyak entitas dalam himpunan
entitas B. Dan setiap entitas pada himpunan
entitas B berhubungan banyak dengan banyak
entitas pada himpunan entitas A. Relasi ini
merupakan gabungan relasi One-to-Many
dengan Many-to-One.
Contoh : 1 Guru mengajar banyak siswa dan
satu siswa diajar banyak guru.
Membuat Entity Relationship Diagram (ERD)
Dalam membuat ERD yang baik, kita juga harus
membuat diagram secara logika, praktis dan agar
mudah dipahami. Untuk menciptakan hal itu,
lakukan langkah-langkah sebagai berikut:
1.Menentukan entitas yang terlibat dalam sistem
database tersebut
2.Menentukan relasi antar entitas
3.Menggambar ERD Sementara
4.Menganalisis ERD
5.Menyempurnakan ERD
ER Data Model
• Setiap atribut pada entitas memiliki kunci atribut (key
atribut) yang bersifat unik.
• Beberapa atribut juga dapat ditetapkan sebagai calon
kunci (candidate key).
Misal.
- Entitas Mahasiswa dengan atribut NRP sebagai key
atribut
- Entitas Dosen dengan NIP sebagai key atribut, dan
sebagainya.
• Beberapa entitas kemungkinan tidak memiliki atribut
kunci sendiri, entitas demikian disebut Entitas Lemah
(Weak Entity).
Lessons
1. ER Data Model
2. Jenis atribut dan Notasi ER Diagram
3. Relasi dan Rasio Kardinalitas
4. Participation Constraint Dependencies
Jenis Atribut dan Notasi ER Diagram
• Ada beberapa notasi yang digunakan untuk membuat ER
Diagram. Misal. notasi Chen, Martin, El Masri dan Korth,
akan tetapi pada umumnya adalah sama.
• Perbedaannya adalah pada pemilihan simbol-simbol yang
digunakan.
• Pada materi ini, digunakan notasi El Masri karena lebih
umum banyak digunakan dan mudah dibaca dan
dimengerti.
ER Data Model
ER Data Model
• Entitas Lemah (Weak Entity) adalah entitas yang
keberadaannya sangat bergantung dengan entitas lain.
- Tidak memiliki Key Attribute sendiri.
- Entitas tempat bergantung disebut Identifying
Owner/Owner.
- Entitas lemah tidak memiliki identifier-nya sendiri.
- Atribut entitas lemah berperan sebagai Partial Identifier
(identifier yang berfungsi secara sebagian).
Contoh:
NIP
Nama
Karyawan
Nama_Pendamping
Memiliki
Pendamping
Tgl_Lahir
Buatlah flow diagram ERD berdasarkan simbol-simbol diatas
dari entitas siswa, guru, pelajaran, orangtua.
1. Rinci atribut dari masing masing entitas
2. Gambarkan keterhubungannya antar entitas dengan
menggunakan relasi
ER Data Model
Jenis – Jenis Atribut:
• Simple / Atomic Attribute: adalah atribut yang
tidak dapat dibagi-bagi lagi menjadi atribut yang
lebih mendasar.
• Composite Attribute: atribut yang terdiri dari
beberapa atribut yang lebih mendasar/lebih kecil
lagi.
Contoh:
- Atribut ALAMAT, terdiri atas atribut JALAN, KOTA,
KODE_POS.
- Atribut NAME, terdiri atas atribut
FNAME,MNAME dan LNAME pada suatu entitas
(EMPLOYEE).
ER Data Model
• Single-Valued Attribute: atribut yang hanya memiliki
satu harga/nilai.
Contoh:
- Atribut UMUR pada entitas PEGAWAI
- Atribut LOCATIONS pada entitas DEPARTMENT
• Null Values Attribute: adalah atribut dari
entitas yang tidak memiliki nilai.
Contoh:
Atribut PENDIDIKAN TINGGI untuk tamatan
SMP.
ER Data Model
• Derived Attribute: adalah atribut yang nilainya dapat diisi atau
diturunkan dari perhitungan atau algoritma tertentu.
Contoh:
- Atribut UMUR, dapat dihitung dari atribut TGL_LAHIR
- Atribut LAMA_KULIAH, dapat dihitung dari NRP yang
merupakan kombinasi antara digit tahun dan digit yang lain
(2696 100…).
- Atribut INDEX_PRESTASI, dapat dihitung dari NILAI yang
diperoleh MAHASISWA.
NRP
Nama
NRP
Nama
Nama_MK
NO_MK
Alamat
Mahasiswa
Mahasiswa
Mata Kuliah
Lama_Kuliah
Hobby
No_Telp
Prasyarat
Multi-Valued Attribute
Derived Attribute
Lessons
1. ER Data Model
2. Jenis atribut dan Notasi ER Diagram
3. Relasi dan Rasio Kardinalitas
4. Participation Constraint Dependencies
Cardinality Ratio Constraint
Menjelaskan batasan jumlah keterhubungan satu
entity dengan entity lainnya.
Jenis Cardinality Ratio
• 1 : 1 (One-To-One)
Sebuah entity A diasosiasikan pada sebuah entity
B, dan sebuah entity B diasosiasikan dengan paling
banyak sebuah entity A.
a1
b1
a2
b2
a3
b3
a4
b4
A
B
MEMILIKI
PEGAWAI
KENDARAAN
• 1 : N (One-To-Many)
Sebuah entity A diasosiasikan dengan sejumlah
entity B, tetapi entity B dapat diasosiasikan
paling banyak satu entity A.
a1
b1
b2
a2
b3
b4
a3
b5
A
B
• N : 1 (Many-To-One)
• Suatu entity A dapat diasosiasikan dengan
paling banyak sebuah entity B, tetapi entity B
dapat diasosiasikan dengan sejumlah entity di
A.
a1
b1
a2
a3
b2
a4
a5
b3
A
B
• M : N (Many-To-Many)
• Suatu entity A dapat diasosiasikan dengan
sejumlah entity B dan entity B dapat
diasosiasikan dengan sejumlah entity di A.
a1
b1
a2
b2
a3
b3
a4
b4
A
B
Relasi dan Rasio Kardinalitas
• Relasi adalah hubungan antar entitas.
• Relasi dapat memiliki atribut, dimana terjadi adanya transaksi yang
menghasilkan suatu nilai tertentu.
Nilai
No_MK
Nama
NRP
Mahasiswa
Mengambil
Hobby
Nama_MK
Mata_Kuliah
SKS
Prasyarat
Penjelasan:
• Bentuk ER diatas antara Mahasiswa Mengambil Mata_Kuliah,
tentunya ada Nilai yang dihasilkan.
• Dimana atribut nilai ditempatkan?
Relasi dan Rasio Kardinalitas
Nilai
No_MK
Nama
NRP
Mahasiswa
Hobby
Mengambil
Nama_MK
Mata_Kuliah
Prasyarat
SKS
Penjelasan:
• Jika atribut Nilai ditempatkan pada entitas Mahasiswa (dimana
Nilai merupakan salah satu atribut dari entitas Mahasiswa), maka
semua mata kuliah yang diambil oleh seorang mahasiswa
menghasilkan nilai yang sama (tidak realistis).
• Jika atribut Nilai ditempatkan pada entitas Mata_Kuliah (dimana
Nilai merupakan salah satu atribut dari entitas Mata_Kuliah), maka
semua mahasiswa yang mengambil mata kuliah tertentu akan
memiliki nilai yang sama (tidak realistis).
• Attribut Nilai harus ditempatkan pada relasi Mengambil, yang
berarti seorang mahasiswa tertentu yang mengambil mata kuliah
tertentu, akan mendapatkan nilai tertentu pula.
Relasi dan Rasio Kardinalitas
Derajad Relasi
• Derajad Relasi adalah jumlah entitas yang
berpatisipasi dalam suatu relasi.
• Derajad Relasi dapat berupa:
- Unary Relationship (Relasi Berderajad 1)
- Binary Relationship (Relasi Berderajad 2)
- Ternary Relationship (Relasi Berderajad 3)
Relasi dan Rasio Kardinalitas
Unary Relationship (Relasi Berderajad 1)
• adalah relasi dimana entitas yang terlibat hanya
1.
• Sering disebut relasi rekursif (recursive
relationship).
Contoh:
1
Karyawan
1
1
Menikah
Karyawan
N
N
Memimpin
Karyawan
N
Berteman_
Dengan
Relasi dan Rasio Kardinalitas
Binary Relationship (Relasi Berderajad 2)
• Atau relasi Biner adalah relasi yang melibatkan 2
entitas.
Contoh:
Pria
1
Fakultas
Ruang_Kuliah
1
Menikah
1
M
Mengatur
Menempati
N
N
Wanita
Jurusan
Mahasiswa
Relasi dan Rasio Kardinalitas
Ternary Relationship (Relasi Berderajad 3)
• adalah relasi tunggal yang menghubungkan 3
entitas yang berbeda.
Contoh:
Harga_Per-Unit
Supplier
M
Cara_Pengiriman
Menyediakan
N
Komponen
N
Gudang
Lessons
1. ER Data Model
2. Jenis atribut dan Notasi ER Diagram
3. Relasi dan Rasio Kardinalitas
4. Participation Constraint Dependencies
Participation Constraint Dependencies
Participation Constraint Dependency
• Menunjukkan apakah keberadaan suatu entitas bergantung
penuh / tidak dengan entitas relasinya.
• Batasan (constraint) adalah jumlah minimum relasi dimana tiap
entitas dapat ikut berpatisipasi.
• Ada 2 jenis Participation Constraint:
1. Partisipasi Total (
)
adalah bentuk partisipasi yang menunjukkan ketergantungan
penuh suatu entitas (semua dan harus).
2. Partisipasi Parsial (
)
adalah bentuk partisipasi yang menujukkan ketergantuan
tidak
penuh suatu entitas (beberapa, tidak harus semua)
Participation Constraint Dependencies
Rasio Kardinalitas
 1 : 1 : One-to-One
PEGAWAI




p1
p2
p3
p4
MANAGE



r1
r2
r3
Participation Constraint
DEPARTEMEN



d1
d2
d3
1
PEGAWAI
1
DEPARTEMEN
MANAGE
 N : 1 : Many-to-One
PEGAWAI




p1
p2
p3
p4
BEKERJA_PADA




r1
r2
r3
r4
DEPARTEMEN



d1
d2
d3
PEGAWAI
N
BEKERJA_
PADA
1
DEPARTEMEN
 M : N : Many-to-Many
PEGAWAI




p1
p2
p3
p4
BEKERJA_DI




r1
r2
r3
r4
PROJECT



d1
d2
d3
PEGAWAI
M
BEKERJA_ DI
N
PROJECT
ERD SI RAWAT INAP
nm_pelayanan
username *
password
Operator
biaya
kd_pelayanan *
ket
1
~
Memasukkan
biaya_pelayanan
no_register **
1
tgl_keluar
kode *
lama_inap
tot_biaya
pasien_ keluar
~
Mencatat
Membayar
~
Mendapatkan
ket
~
no_register *
~
diagnosa
pasien_masuk
tgl_masuk
nama
1
kode *
penjamin
tgl_lahir
Rincian_ Biaya
nama_ortu
umur
pekerjaan
sex
kd_pelayanan **
biaya
layanan
no_telp
status
kota
alamat
ERD SI PENJUALAN HANDPON
tgl_pembelian
kode_pembelian *
nama_stok
kode_stok**
kode_stok *
jumlah
harga
jumlah
pembelian
membeli
stok_barang
1
1
keterangan
1
tot_hrg_beli
total_jumlah
tot_hrg_jual
nama_pembeli
menentukan
keterangan
tgl_penjualan
kode_barang *
kode_reseller **
kode_penjualan *
M
kode_stok **
barang
nama_barang
M
jual
M
kode_reseller *
harga_jual
nama_reseller
M
harga_beli
reseller
kategori
alamat
M
telpon
harga_reseller
kode_pembatalan**
deposit
kode_penjualan**
kode_penambahan*
membatalkan
menambah_
deposit
kode_barang**
tgl_penambahan
no_telpon
kode_reseller**
1
jumlah
jumlah
pembatalan
1
rekening
kode_pembatalan *
saldo
Tgl_pembatalan
kode_reseller *
keterangan
kredit
tanggal
debet
ERD SI AKADEMIK
Tpt_lahir
Nama
Alamat
Telepon
Kd_jurusan*
NPM*
I
I
Jurusan
Kota
Memilih
Mahasiswa
Tgl_lahir
Angkatan
Nama_jurusan
I
Kd_jur**
Tgl_lahir
M
Mempunyai
I
Kode_mk**
Npm**
Kd_krs*
Npm**
Nilai_huruf
Nilai_angka
I
Th_angkatan
Ips
KRS
Nilai
Semester
Dosen_wali
Th_akademik
Ipk
Semester
Sks_sdh_dtp
M
Menperoleh
Kode_ruang
Kd_mk*
Nama_ruang
Nama_mk
I
I
Ruang
Sks
Menentukan
M
Mata Kuliah
No_ruang**
M
Kapasitas
Semester
No_dosen**
Mengajar
I
Alamat
No_dosen
Dosen
Nama
Kota
Telepon
ERD SI PUSKESMAS
Tgl_berkunjung
No_jamkesmas
Nama_pasien
No_index*
Umur
Jenis_kelamin
Nama_pasien
Umur
Alamat
Alamat
Nama_KK
Tgl_berkunjung
~
Pilihan_klinik
No_askes
No_index*
Jenis_kelamin
Jamkesmas
Nama_KK
Pilihan_klinik
Keperluan **
Keperluan **
Askes
Tgl_berkunjung
~
Menginput data
pasien
Nama_pasien
Keterangan
Jenis_kelamin
Umur
No_index*
Alamat
~
Umum
Pilihan_klinik
Keperluan **
1
Biaya Administrasi
Username
User
Biaya Keperluan
Total
Password
1
Bayar
Jumlah
Ket Bayar
Biaya_keperluan
Keperluan**
Biaya_administrasi
Update
data
~
Biaya klinik
umum
~
Biaya klinik
sanitasi
~
Biaya klinik
gigi
Keperluan**
~
Keperluan**
Biaya_administrasi
Biaya_keperluan
Keperluan**
Biaya klinik
KIA
Biaya_keperluan
Biaya_administrasi
Biaya_administrasi
Biaya_keperluan
_.oOo._
QUESTIONS..?
Latihan A
Buat rancangan ER Diagram untuk sistem database Perpustakaan Kampus
dengan deskripsi sebagai berikut:
1. Sistem database perpustakaan kampus yang melibatkan anggota
perpustakaan, koleksi buku, dan pegawai perpustakaan.
2. Dalam sistem, digambarkan anggota dapat meminjam buku, sedang
pegawai melayani anggota dan menajemen buku-buku perpustakaan.
3. Seorang anggota dapat meminjam buku lebih dari 1, begiu juga
sebaliknya.
4. Seorang pegawai melayani semua anggota perpustakaan, tapi tidak
sebaliknya.
5. Dan seorang pegawai juga harus memanajemen semua koleksi buku
perpustakaan.
6. Setiap anggota yang datang ke perpustakaan belum tentu datang untuk
meminjam buku (mungkin karena hal lain: pingin baca, buku tidak
ada/masih dipinjam, dll), begitu juga sebaliknya.
7. Seorang pegawai perpustakaan, harus melayani anggota (spt: resigtrasi,
pelayanan, dll), begitu juga sebaliknya.
8. Dan pegawai juga harus memanajemen koleksi buku perpustakaan,
begitu juga sebaliknya.
Latihan A
9. Pada anggota, yang harus dicatat yaitu id anggota, nama, status
(dosen, mahasiswa), id status (NIP, NIM), alamat, no telepon.
10. Pada buku yang harus dicatat adalah id buku, judul, pengarang,
penerbit
11. Pada pegawai, yang harus dicatat adalah id pegawai, nama, alamat, no
telepon.
12. Setiap terjadi peminjaman buku, harus dicatat tanggal meminjam,
tanggal kembali dan jumlah buku yang dipinjam.
13. Setiap pegawai memanajemen buku, tercatat tanggal buku saat
pertama kali di-entry.
14. Dan pegawai juga harus mencatat tanggal registrasi anggota
perpustakaan saat melayani anggota / pengunjung (calon anggota).
Soal:
Buat rancangan ER Diagram dari deskripsi diatas, sertakan pula relasi
kardinalitas beserta Key
Latihan B
Sebuah perusahaan jasa sewa mobil “CV. Sewo Car”, memiliki spesifikasi
database sebagai berikut:
• Sebuah rental mobil yang disewakan kepada pelanggan.
• Tiap pelanggan dapat menyewa labih dari satu mobil dalam sekali
transaksi, akan tetapi tidak sebaliknya dan sewaktu-waktu mobil juga
tidak dapat disewakan karena kemungkinan keterbatasan kendaraan.
• Setiap kali transaksi, terjadi sebuah perjanjian kontrak antara kedua
belah pihak dengan adanya catatan kode kontrak, batas tanggal sewa,
jumlah mobil yang disewa, dan harga total.
• Pada pelanggan yang harus dicatat adalah nomor pelanggan, nama,
alamat, no telepon (rumah, HP, kantor, dll), no KTP.
• Pada mobil yang harus dicatat adalah Id mobil, no plat mobil, tahun
pembuatan, merk (Toyota, Honda, Daihatsu, Suzuki, Nissan, dll), jenis
(Kijang, Innova, Altis, Vios, Xenia, Katana, dll), tipe (LX, LGX, V-VTI, dll),
jumlah penumpang, jumlah armada, bahan bakar dan harga sewa.
Soal:
Buat rancangan ER Diagram dari deskripsi diatas, sertakan pula relasi
kardinalitas beserta batasan partisipasi total/parsialnya.
Download