Entity Relationship Model
Outline
Pendahuluan
Entitas
Atribut
Batasan
Keys
Hubungan
Pendahuluan
Model data E-R didasarkan pada persepsi bahwa dunia
nyata merupakan sekumpulan dari sejumlah obyek dasar
(entitas) dan relasi antar obyek-obyek data tersebut
Termasuk dalam kelompok object-based logical.
Merupakan contoh kelas Extended atau semantic models
Database dapat dimodelkan sebagai :
– Kumpulan entitas
– Relasi antar entitas
Pendahuluan (2)
Komponen pada basis data secara Konseptual :
- Entitas
- Atribut
- Relationship / hubungan
- Batasan
Entitas
Entitas adalah “sesuatu” atau “objek” di dunia nyata yang dapat dibedakan
dari objek lain
Contoh : Orang tertentu (Mahasiswa), Kursi, Buku
Entitas bisa berupa :
– Entitas kongkrit, Contoh : Mahasiswa, Buku,
– Entitas abstrak, Contoh : Pinjaman, Jadwal, Nilai
Entitas memiliki atribut, contoh : Mahasiswa memiliki Nim, nama &Alamat
Himpunan Entitas (Entity Set): Sekelompok entitas yang sejenis dan berada
dalam lingkup yang sama
Entitas menunjuk kepada pada individu suatu objek sedangkan himpunan
entitas menunjuk pada rumpun (family) dari individu tersebut
– Contoh :Semua orang yang memiliki rekening di Bank (nasabah), Semua
Pelanggan, Mahasiswa, Dokter
Entitas (2)
Contoh Himpunan Entitas Customer
Atribut
Setiap Entitas memiliki atribut yang mendeskripsikan karakteristik
(properti) dari entitas tersebut
Contoh : Customer = (Customer-Id, Customer-Name, Customer-Street,
Customer-City)
Setiap atribut akan memiliki nilai (values)
Domain (Value Set) merupakan batas-batas nilai yang diperbolehkan bagi
suatu atribut
Tipe-tipe Atribut
1. Simple dan Composite attributes
– Atribut Simple : Atribut sederhana yang tidak dapat dibagi dalam
beberapa bagian;
– Atribut Komposit : Atribut yang dapat dibagi lagi dalam beberapa bagian;
contoh : Nama; yang terdiri dari Nama depan dan Nama Belakang
Atribut (2)
2. Single-valued dan multi-valued attributes
– Atribut Single-valued : Atribut yang memiliki paling banyak satu nilai
untuk setiap baris data
– Multi-valued attributes : Atribut yang dapat diisi dengan lebih satu nilai
tetapi jenisnya sama. Contoh : Nomor Telp, Alamat
3. Derived attributes
– Atribut Turunan : Atribut yang diperoleh dari pengolahan dari atribut
lain yang berhubungan. Contoh : Umur, IP
4. Atribut Mandatory dan Non Mandatory
- Atribut Mandatory adalah atribut yang harus diisi tidak boleh kosong (not
null)
- Atribut Non mandatory adalah atribut yang boleh kosong(null).
Relationship (Hubungan)
Relasi adalah hubungan antara beberapa entitas
Contoh : Hayes depositor A-102
Entitas customer Relasi Entitas account
Himpunan relasi adalah Kumpulan semua relasi yang merupakan
relasi matematik antara n ≥ 2 entitas,dari himpunan-himpunan
entitas yang ada
{(e1, e2, … en) | e1 € E1, e2 € E2, …, en € En}
dimana : (E1, E2,…, E3) adalah Entitas,(e1, e2, …, en) adalah
relasi
Contoh : (Hayes, A-102) € depositor
Relationship (Hubungan) (2)
Derajat Relasi menunjukan banyaknya himpunan entitas yang
salingberelasi.
Himpunan relasi melibatkan dua himpunan entitas disebut Binary
(atau ber-derajat 2). Secara umum himpunan relasi dalam sistem
basis data adalah binary
Himpunan relasi memungkinkan untuk melibatkan dua himpunan
entitas.
Relasi antara lebih dari dua entitas jarang terjadi.
Contoh : Jika employee suatu Bank boleh memiliki pekerjaan (Job)
pada beberapa cabang (Branch) dengan pekerjaan yang berbeda
pada cabang yang berbeda. Maka akan terjadi relasi ternary
(berderajat-3) antara himpunan entitas employee, Job dan Branch
Kardinalitas Relasi
Menggambarkan banyaknya jumlah maksimum entitas dapat berelasi
dengan entitas pada himpunan entitas yang lain.
Paling banyak digunakan dalam menjelaskan Himpunan relasi biner
Untuk Himpunan relasi biner pemetaan kardinalitasnya dapat
merupakan salah satu dari tipe2 berikut :
1. Satu ke Satu (One to one)
2. Satu ke Banyak (One to many)
3. Banyak ke Satu (Many to one)
4. Banyak ke Banyak (Many to many)
Kardinalitas pemetaan dinyatakan dengan 2 cara :
[Korth] garis berarah (1) dan garis tidak berarah (Banyak).
[Date] menuliskan kardinalitasnya pada garis.
Key
Penggunaan key merupakan cara untuk membedakan suatu entitas
didalam himpunan entitas dengan entitas lain
Secara konsep, masing-masing entitas (nilainya) berbeda,
perbedaannya terlihat pada isi dari masing-masing atributnya.
Oleh karena itu, dibutuhkan suatu atribut yang memiliki nilai yang
menjadi pembeda dengan entitas lain
Key adalah satu atau gabungan dari beberapa atribut yang dapat
membedakan semua row dalam relasi secara unik
Ada 3 macam key yang dapat diterapkan pada suatu relasi :
1. Super Key merupakan seluruh atribut (kumpulan atribut)
yang dapat membedakan satiap baris data dalam sebuah relasi
secara unik.
Key
2. Candidate Key merupakan kumpulan atribut minimal yang dapat
membedakan setiap baris data dalam sebuah relasi secara unik
3. Primary Key merupakan salah satu dari candidate key yang terpilih
- Pemilihan primary key dari sejumlah candidate key umumnya
didasari oleh :
o Key tersebut lebih sering (lebih natural) untuk dijadikan sebagai
acuan
o Key tersebut lebih ringkas
o Jaminan keunikan key tersebut lebih baik
Diagram ER
Diagram ER merupakan model konseptual untuk menggambarkan
struktur logis dari basisdata berbasis grafis
Diagram ER dibangun dari komponen berikut :
– Segi Empat : menunjukkan Entitas
– Elips : menunjukkan Atribut
– Diamond : menunjukkan Relasi
– Garis : Link yang menghubungkan atara Entitas dengan atribut,
dan entitas dengan relasi
– Elips dobel : Menunjukkan atribut yang multivalued
– Elips dengan garis terputus : Menunjukkan atribut turunan
Diagram ER (2)
Diagram E-R dengan atribut Composite, Multivalued dan derived
Diagram ER (3)
Himpunan Relasi dengan Atribut
Peran (Roles)
Relasi Himpunan entitas tidak harus dalam bentuk yang berbeda
Label “manager” dan “worker” disebut Roles (peran), yang
menspesifikasi bagaimana entitas employee berinteraksi melalui
relasi Works-for
Peran dalam ER diagram diindikasikan dengan memberikan label
(nama) pada garis yang menghubungkan relasi dengan entitas
Label peran bersifat optional dan digunakan untuk mengklarifikasi
semantik suatu relasi
Varian Entitas
1. Entitas Kuat: Keberadaannya tidak tergantung dari entitas lain
2. Entitas Lemah merupakan Himpunan entitas yang tidak memiliki
primary key
Keberadaan entitas lemah bergantung pada eksistensinya dalam
sebuah relasi terhadap entitas lainnya.
Identifikasi relasi dengan menggunakan double diamond
Diskriminator (atau key parsial) dari himpunan entitas lemah adalah
atribut-atribut yang dapat membedakan entitas-entitas yang ada di
himpunan entitas lemah.
Primary key dari himpunan entitas lemah dibentuk dari primary
key himpunan entitas (kuat) dimana enititas lemah bergantung,
serta diskriminator dari entitas lemah itu sendiri
Varian Entitas (2)
Penggambaran himpunan entitas lemah menggunakan dobel
persegi panjang.
Diskriminator dari himpunan entitas lemah digambarkan
menggunakan garis bawah yang terputus-putus
payment-number – diskriminator himpunan entitas payment
Primary key untuk payment – (loan-number, payment-number)
Varian Entitas (3)
3. Spesialisasi merupakan proses desain top-down; dengan mendesain
subgrouping didalam himpunan entitas yang berbeda dari himpunan
entitas lain
Subgrouping ini menjadi himpunan entitas yang levelnya lebih rendah
dan memiliki atribut yang tidak dimiliki pada level atasnya.
Digambarkan dengan komponen triangle berlabel ISA (Contoh :
customer “is a” person).
Inheritan Atribut– Semua atribut dan relasi pada level lebih tinggi
akan diturunkan pada himpunan entitas level bawahnya.
4. Generalisasi merupakan proses desain bottom-up,mengkombinasikan
jumlah himpunan entitas yang mempunyai fitur sama ke level yang
lebih tinggi
Spesialisasi dan generalisasi merupakan kebalikan satu sama lain
Varian Entitas (4)
Contoh Spesialisasi
Varian Relasi
Relasi Tunggal merupakan Relasi yang dihasilkan dari 1 entity set.
Misalnya :
1 e1
Pegawai Memimpin
e1 e11
Varian Relasi (2)
Relasi Multi entitas merupakan Relasi yang terjadi apabila memang
ketiganya saling berelasi.
e1 e2
e1
E1 R E2
e3
e2
E3
e3
Varian Relasi (3)
Relasi Ganda merupakan dua entitas yang memiliki hubungan /
relasi lebih dari satu
e2 e1
R1
N 1
E1 E2
e2
e1
N M
R2
e1 e2
Varian Relasi (4)
Agregasi
Pada contoh ternary relationship works-on, misalkan kita ingin
menyimpan informasi manager untuk pekerjaan yang dilakukan
oleh seorang employee pada sebuah branch.
Varian Relasi (5)
Relationship sets works-on dan manages menunjukkan informasi yang overlap
Setiap anggota relationship manages berkaitan dengan sebuah relationship works-on
Akan tetapi, beberapa anggota relationship works-on mungkin tidak berkaitan
dengan relationship manages. Sehingga relationship workson tidak dapat dihilangkan.
Redundansi tersebut dapat diatasi dengan agregasi
– Relationship dijadikan sebagai sebuah entitas abstrak
– Relationship antar relationship diijinkan
– Abstraksi relationship menjadi entitas baru
Tanpa redundancy, diagram berikut menunjukkan :
– Seorang employee melakukan sebuah pekerjaan tertentu pada sebuah branch
– Kombinasi dari seorang employee, branch dan job dapat diasosiasikan dengan
seorang manager
Varian Relasi (6)
E-R Diagram dengan Agregasi
Simbol-simbol dalam Notasi ER
Simbol-simbol dalam Notasi ER (2)
Alternatif Notasi E-R