rima dias ramadhani, s.kom., m.kom email: rima@ittelkom

34
Entity Relationship Diagram Rima Dias Ramadhani, S.Kom., M.Kom Email: rima@[email protected] Wa: 087731680017

Upload: others

Post on 16-Oct-2021

10 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Rima Dias Ramadhani, S.Kom., M.Kom Email: rima@ittelkom

Entity Relationship Diagram

Rima Dias Ramadhani, S.Kom., M.Kom

Email: rima@[email protected]

Wa: 087731680017

Page 2: Rima Dias Ramadhani, S.Kom., M.Kom Email: rima@ittelkom

Entity Relationship Diagram

• Semesta Data di dunia nyata ditransformasikan ke dalam sebuah diagram dengan memanfaatkan perangkat konseptual disebut dengan ERD (Entity Relationship Diagram)

• Simbol/ Notasi E-R Diagram:

Page 3: Rima Dias Ramadhani, S.Kom., M.Kom Email: rima@ittelkom

Entitas

• Merupakan individu yang mewakili sesuatu yang nyata dan dapat dibedakan dari sesuatu yang lainnya (individu: manusia, tempat, obyek, kejadian, konsep). Biasanya berhubungan dengan baris dalam sebuah tabel

• Entity Sets (Himpunan Entitas): sekelompok entitas yang sejenis dan berada dalam lingkup yang sama

• Contoh: – Himpunan Entitas: Mahasiswa

• Entitas: Cahyo, Putri, Mella, dll

– Himpunan Entitas Pelanggan • Entitas: Budi, Haryo, Tini, Desi, dll

Page 4: Rima Dias Ramadhani, S.Kom., M.Kom Email: rima@ittelkom

Contoh Entitas

Page 5: Rima Dias Ramadhani, S.Kom., M.Kom Email: rima@ittelkom

Atribut

• Merupakan karakteristik dari sebuah entitas (biasanya berhubungan dengan field dalam sebuah tabel). Penentuan atribut bagi suatu entitas didasarkan pada relevansinya terhadap entitas tersebut

• Atribut Kunci/ Identifikasi: atribut yang mengidentifikasi entitas. Bersifat unik. contoh: atribut NIM pada himpunan entitas Mahasiswa • Atribut Deskriptif:

– Atribut lainnya selain atribut kunci dan berfungsi sebagai penjelasan terhadap entitas

– Contoh: atribut nama, alamat, tanggal_lahir pada himpunan entitas Mahasiswa

Page 6: Rima Dias Ramadhani, S.Kom., M.Kom Email: rima@ittelkom

Key

• Tiga macam kunci: – Superkey

• Satu atau lebih atribut yg dapat membedakan entitas satu dengan lainnya dalam himpunan entitas

– Candidate Key • Kumpulan atribut minimal yang dapat membedakan

entitas satu dengan lainnya dalam himpunan entitas

– Primary Key • Salah satu dari candidate key yang digunakan sebagai

pengidentifikasi suatu entitas dalam himpunan entitas

Page 7: Rima Dias Ramadhani, S.Kom., M.Kom Email: rima@ittelkom

Atribut

• Atribut bernilai banyak (multivalued attribute):

– Atribut yang dapat bernilai lebih dari 1 nilai sejenis

• Atribut bernilai tunggal (single-valued attribute):

– Atribut yg hanya memiliki satu nilai

NIM NAMA ALAMAT HOBI

123456 BUDI Jl. Raya Timur Renang, Basket

332156 TONO Jl. Merkeda Baca, Tidur

SVA

MVA

Page 8: Rima Dias Ramadhani, S.Kom., M.Kom Email: rima@ittelkom

Atribut

• Atribut turunan (Derived Attribute)

– Atribut yang nilainya diperoleh dari pengolahan atau diturunkan dari atribut/tabel lain

NIM NAMA ALAMAT ANGKATAN IPK

13111111 ANI Jalan Bunga 2013 3,7

13111112 SUSI Jalan Rajawali 2013 3,3

Atribut Turunan

Page 9: Rima Dias Ramadhani, S.Kom., M.Kom Email: rima@ittelkom

Atribut

• Atribut yang harus bernilai (Mandatory Attribute)

– Atribut yang nilainya harus diisikan

• Atribut yang tidak harus bernilai (Non Mandatory Attribute / Null)

– Atribut yang nilainya boleh dikosongkan

Page 10: Rima Dias Ramadhani, S.Kom., M.Kom Email: rima@ittelkom

Relasi/Relational • Digunakan untuk menunjukkan hubungan antar entitas

• Himpunan Relas (Relationship Sets): kumpulan relasi diantara entitas

• Pada tabel tersebut, terlihat bahwa terdapat relasi antara entitas mahasiswa dengan mata kuliah • Andi mempelajari mata kuliah Internet I • Rudi mempelajari Internet I dan Network I

Page 11: Rima Dias Ramadhani, S.Kom., M.Kom Email: rima@ittelkom

Model E-R Diagram

Page 12: Rima Dias Ramadhani, S.Kom., M.Kom Email: rima@ittelkom

Kardinalitas / Derajad Relasi

• Jumlah maksimum entitas yang dapat berelasi dengan entitas pada himpunan entitas lain

• Macam-macam Kardinalitas – Satu ke satu (One to One)

• Setiap entitas pada himpunan entitas A berhubungan paling banyak dengan satu entitas pada himpunan entitas B dan juga sebaliknya

Page 13: Rima Dias Ramadhani, S.Kom., M.Kom Email: rima@ittelkom
Page 14: Rima Dias Ramadhani, S.Kom., M.Kom Email: rima@ittelkom

• Satu ke Banyak (One to Many)

– Setiap entitas pada himpunan entitas A berhubungan dengan banyak entitas pada himpunan entitas B, tetapi tidak sebaliknya

Page 15: Rima Dias Ramadhani, S.Kom., M.Kom Email: rima@ittelkom

• Banyak ke banyak (Many to Many)

– Setiap entitas pada himpunan entitas A berhubungan dengan banyak entitas pada himpunan entitas B, dan sebaliknya

Page 16: Rima Dias Ramadhani, S.Kom., M.Kom Email: rima@ittelkom

ERD dengan Kamus Data

• Pada sistem yang kompleks, penggambaran atribut dalam sebuah ERD seringkali terlihat rumit sehingga pendeklarasian atribut harus menggunakan kamus data

• Contoh: • Kamus Data:

– Dosen = {Nama, Alamat_dosen} – Mengajar = {Nama, Kode_mk, waktu, ruang} – Mata_Kuliah = {Kode_mk, nama)mk, sks}

Page 17: Rima Dias Ramadhani, S.Kom., M.Kom Email: rima@ittelkom

• Derajad Relasi Minimum:

– Menunjukkan hubungan minimum yang boleh terjadi dalam suatu relasai antar himpunan entitas. Nilai derajad relasi minimum hanya boleh 0 atau 1

Page 18: Rima Dias Ramadhani, S.Kom., M.Kom Email: rima@ittelkom

• Relasi dalam notasi lain

Page 19: Rima Dias Ramadhani, S.Kom., M.Kom Email: rima@ittelkom

• Contoh

• Kamus Data: – Mahasiswa = {NIM, Nama, Alamat} – Mempelajari = {NIM, Kode_MK, WAKTU, Ruang} – Mata_kuliah = { Kode_MK, nama_mk, sks}

Page 20: Rima Dias Ramadhani, S.Kom., M.Kom Email: rima@ittelkom

Jenis Entitas

• Strong Entity

– Himpunan entias yang tidak memiliki ketergantungan dengan entitas lain

• Weak Entity

– Jimpunan entitas yang keberadaannya tergantung dengan entitas lain. Himpunan entitas ini berarti adalah himpunan entitas yg tidak mempunyai atribut yg menjamin keunikan entitas yg ada

Page 21: Rima Dias Ramadhani, S.Kom., M.Kom Email: rima@ittelkom
Page 22: Rima Dias Ramadhani, S.Kom., M.Kom Email: rima@ittelkom

Jenis Relasi

• Relas Tunggal (Unary Relation)

– Relasi yang terjadi antar himpunan entitas yang sama

Page 23: Rima Dias Ramadhani, S.Kom., M.Kom Email: rima@ittelkom

Jenis Relas

• Relasi Ganda (Redundant Relation)

Page 24: Rima Dias Ramadhani, S.Kom., M.Kom Email: rima@ittelkom

Jenis Relas

• Relasi Multi Entitas (N-ary Relation)

– Relasi yang terdiri dari 3 / lebih himpunan entitas

Page 25: Rima Dias Ramadhani, S.Kom., M.Kom Email: rima@ittelkom

Participation Constraint

• Menjelaskan batasan keikutsertaan dari suatu entity terhadap hubungannya dengan entity yang lainnya.

• Total Participation : menyatakan instance dari suatu entity harus berhubungan dengan instance dari entity lainnya.

• Partial Participation : menyatakan setiap instance dari suatu entity tidak harus berhubungan dengan instance dari entity lainnya.

• Contoh : setiap departemen harus dipimpin oleh seorang manager/karyawan (total participation) dan tidak semua karyawan yang memimpin suatu departemen (partial participation).

employee departement manages 1 1

Page 26: Rima Dias Ramadhani, S.Kom., M.Kom Email: rima@ittelkom

Tahap Pembuatan Entity Relationship Diagram

1. Mengidentifikasikan dan menetapkan seluruh himpunan entity yang akan terlibat.

2. Menentukan atribut-atribut dari setiap entity. 3. Menentukan atribut primary key dari setiap entity. 4. Menentukan relationship antar entity. 5. Menentukan atribut-atribut dari setiap

relationship (jika ada). 6. Menentukan Cardinality Ratio. 7. Menentukan Participation Constraint.

Page 27: Rima Dias Ramadhani, S.Kom., M.Kom Email: rima@ittelkom

Studi Kasus : Rental VCD FILM

• Spesifikasi Database – Data dari film berupa : judul, jumlah kepingan, jumlah film. – Film yang disewakan dikelompokkan ke dalam kelompok film yang

terdiri dari jenis film dengan masing-masing jenis memiliki harga sewa yang berbeda, artinya jenis film menentukan harga sewanya.

– Data customer yang menyewa berupa : no identitas, jenis identitas, nama dan alamat.

– Setiap customer dapat menyewa lebih dari satu film. – Satu judul film dapat disewa oleh beberapa customer. – Lama sewa sesuai dengan jumlah film, terhitung dari tgl menyewa. – Setiap keterlambatan pengembalian akan dikenakan denda per

hari dan per film. nilai dari denda sudah ditetapkan (konstan).

Page 28: Rima Dias Ramadhani, S.Kom., M.Kom Email: rima@ittelkom

Tahap Pembuatan Entity Relationship Diagram

1. Mengidentifikasikan entity-entity yang ada.

entity-entity : KelompokFilm, Film, Customer.

2. Menentukan atribut-atribut dari setiap entity.

3. Menentukan primary key dari setiap entity.

Entity Atribut

Film judul, jml_keping, jml_film

KelompokFilm jenis, harga_sewa

Customer no_identitas, jenis_identitas, nama, alamat

Entity Atribut

Film kode_film, judul, jml_keping, jml_film

KelompokFilm jenis, harga_sewa

Customer no_identitas, jenis_identitas, nama, alamat

Page 29: Rima Dias Ramadhani, S.Kom., M.Kom Email: rima@ittelkom

Tahap Pembuatan Entity Relationship Diagram cont’d

4. Menentukan relationship antar entity.

5. Menentukan atribut-atribut dari setiap relationship (jika ada).

Entity Relationship Entity

Film Dikelompokkan KelompokFilm

Customer Menyewa Film

Relationship Atribut

dikelompokkan -

Menyewa tgl_sewa, total_film, tgl_kembali, total_harga, denda

Page 30: Rima Dias Ramadhani, S.Kom., M.Kom Email: rima@ittelkom

Tahap Pembuatan Entity Relationship Diagram cont’d

6. Menentukan Cardinality Rasio.

7. Menentukan participation constraint. – Setiap film harus merupakan anggota dari suatu jenis film,

sehingga film memiliki total participation terhadap relationshipnya dengan entity kelompok film.

– Setip customer tidak harus selalu menyewa film dan setiap film tidak harus disewa oleh customer. Sehingga entity-entity ini memiliki partial participation relationship antar keduanya.

Entity Relationship Entity Cardinality Rasio

Film dikelompokkan KelompokFilm N : 1

Customer Menyewa Film N : M

Page 31: Rima Dias Ramadhani, S.Kom., M.Kom Email: rima@ittelkom

Entity Relationship Diagram Rental VCD FILM

kelompokfilm

jenis harga_sewa

Film

kode_film

judul

jml_film

jml_keping

dikelompokkan

1 N

Customer

no_identitas

jenis_identitas

nama alamat

M

N

menyewa

tgl_sewa total_film

total_harga

denda tgl_kembali

Page 32: Rima Dias Ramadhani, S.Kom., M.Kom Email: rima@ittelkom

Latihan A

• Sistem database perpustakaan kampus yang melibatkan mahasiswa dan dosen sebagai anggota perpustakaan, koleksi buku, dan pegawai perpustakaan

• Dalam sistem, digambarkan anggota dan manajemen buku-buku perpustakaan

• Seorang anggota dapat meminjam buku lebih dari 1, begitu juga sebaliknya

• Seorang pegawai melayani semua anggota perpustakaan, tapi tidak sebaliknya

• Seorang pegawai juga harus memanajemen semua koleksi buku perpustakaan

• Setiap anggota yang datang ke perpustakaan belum tentu datang untuk meminjam buku

• Seorang pegawai perpustakaan, harus melayani anggota (registrasi, pelayanan, dll)

Sebuah perpustakaan kampus memiliki spesifikasi database sebagai berikut :

Page 33: Rima Dias Ramadhani, S.Kom., M.Kom Email: rima@ittelkom

• Pegawai juga memanajemen koleksi buku perpustakaan

• Untuk anggota, yang harus dicatat yaitu id anggota, nama, status (dosen/ mahasiswa), id status (NIP/ NIM), alamat, no telepon

• Pada buku yang harus dicatat adalah id buku, judul, pengarang (mungkin lebih dari 1), penerbit.

• Pada pegawai yang harus dicatat adalah id pegawai, nama, alamat, no telepon

• Setiap terjadi peminjaman buku, perlu dicatat tanggal pinjam, tanggal kembali, dan jumlah buku yang dipinjam

• Setiap pegawai harus mencatat tanggal registrasi anggota perpustakaan saat melayani anggota/ pengunjung

Soal :

Buat rancangan ER Diagram dari deskripsi diatas, sertakan pula relasi kardinalitas beserta batasan partisipasi total/ parsialnya

Latihan A

Page 34: Rima Dias Ramadhani, S.Kom., M.Kom Email: rima@ittelkom

Latihan B

• Sebuah rental mobil menyewakan mobil kepada pelanggan

• Tiap pelanggan dapat menyewa lebih dari satu mobil dalam sekali transaksi, akan tetapi tidak sebaliknya dan sewaktu- waktu mobil juga tidak dapat disewakan karena kemungkinan keterbatasan kendaraan

• Pada pelanggan yang harus dicatat adalah nomor pelanggan, nama, alamat, no telepon, no KTP

• Pada mobil yang harus dicatat adalah id mobil, no plat mobil, tahun pembuatan, merk, jumlah penumpang, jumlah armada, bahan bakar dan harga sewa

• Setiap kali transaksi, terjadi sebuah perjanjian kontrak antara kedua belah pihak dengan adanya catatan kode kontrak, nama pelanggan, tanggal sewa, batas tanggal sewa, jumlah mobil yang disewa, dan harga total

Sebuah perusahaan jasa sewa mobil “CV. Sewa Mobil”, memiliki spesifikasi database sebagai berikut :