er-diagram (entity relationship diagram) - aktifitas |...
TRANSCRIPT
21 September 2011 BASIS DATA I/2011-GANJIL 1
ER-DIAGRAM
(ENTITY RELATIONSHIP DIAGRAM)
BASIS DATA I/2011-GANJIL
Oleh
Satrio Agung Wicaksono, S.Kom., M.Kom
21 September 2011 BASIS DATA I/2011-GANJIL 2
Model Entity Relationship
ER-DIAGRAM
• Model Entity Relationship Adalah suatu penyajian data dengan menggunakan Entity dan Relationship
• Mengapa Model E-R Mudah dimengerti oleh pemakai Mudah disajikan oleh perancang database
21 September 2011 BASIS DATA I/2011-GANJIL 3
Konsep Dasar
ER-DIAGRAM
• Diagram ER merupakan model konseptual untuk menggambarkan struktur logis dari basisdata berbasis grafis
21 September 2011 BASIS DATA I/2011-GANJIL 4
Entity
ER-DIAGRAM
• Simbol ->
• Entity adalah obyek yang dapat dibedakan dalam dunia nyata
• Entity set adalah kumpulan dari entity yang sejenis • Entity set dapat berupa : Obyek secara fisik : Rumah, Kendaraan, Peralatan Obyek secara konsep : Pekerjaan , Perusahaan,
Rencana
21 September 2011 BASIS DATA I/2011-GANJIL 5
Relationship
ER-DIAGRAM
• Simbol ->
• Relationship adalah hubungan yang terjadi antara satu atau lebih entity.
• Relationship set adalah kumpulan relationship yang
sejenis.
Mahasiswa Mengambil MATA_KULIAH
21 September 2011 BASIS DATA I/2011-GANJIL 6
Atribut
ER-DIAGRAM
• Simbol ->
• Atribut adalah karakteristik dari entity atau relationship, yang menyediakan penjelasan detail tentang entity atau relationship tersebut.
• Nilai Atribut merupakan suatu data aktual atau
informasi yang disimpan pada suatu atribut di dalam suatu entity atau relationship.
• Domain (Value Set) : Batas-batas nilai yang diperbolehkan bagi suatu atribut
21 September 2011 BASIS DATA I/2011-GANJIL 7
Jenis-Jenis Atribut
ER-DIAGRAM
• Key Atribut yang digunakan untuk menentukan suatu entity
secara unik. • Atribut Simple Atribut sederhana yang tidak dapat dibagi dalam beberapa
bagian • Atribut Komposit : Atribut yang dapat dibagi lagi dalam beberapa bagian;
contoh : Alamat; yang terdiri dari Negara, Propinsi dan Kota
21 September 2011 BASIS DATA I/2011-GANJIL 8
Jenis-Jenis Atribut
ER-DIAGRAM
• 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, Gelar
• Atribut Turunan Atribut yang diperoleh dari pengolahan dari atribut lain
yang berhubungan. Contoh : Umur, IP
21 September 2011 BASIS DATA I/2011-GANJIL 9
Jenis-Jenis Atribut (Atribut Komposit)
ER-DIAGRAM
MAHASISWA
ALAMAT
PROPINSI KOTA NEGARA
21 September 2011 BASIS DATA I/2011-GANJIL 10
Jenis-Jenis Atribut (Multi Value Attribute)
ER-DIAGRAM
MAHASISWA
NAMA NO_HP NIM
21 September 2011 BASIS DATA I/2011-GANJIL 11
Jenis-Jenis Atribut (Attribute Turunan )
ER-DIAGRAM
MAHASISWA
TGL_LAHIR UMUR NIM
21 September 2011 BASIS DATA I/2011-GANJIL 12
Derajat Himpunan Relasi
ER-DIAGRAM
• Derajat Relasi menunjukan banyaknya himpunan entitas yang saling berelasi
• Unary Degree (Derajat Satu) melibatkan sebuah entitas yang berelasi dengan dirinya sendiri
• Binary Degree(Derajat Dua) Himpunan relasi melibatkan dua himpunan entitas. Secara umum himpunan relasi dalam sistem basis data adalah binary
• Ternary Degree (Derajat Tiga) Himpunan relasi memungkinkan untuk melibatkan lebih dari dua himpunan entitas
21 September 2011 BASIS DATA I/2011-GANJIL 13
Unary Degree
ER-DIAGRAM
PEGAWAI
Melapor
21 September 2011 BASIS DATA I/2011-GANJIL 14
Binary Degree
ER-DIAGRAM
PEGAWAI Kerja DEPARTEMEN
21 September 2011 BASIS DATA I/2011-GANJIL 15
Ternary Degree
ER-DIAGRAM
PEGAWAI Kerja PROYEK
KOTA
21 September 2011 BASIS DATA I/2011-GANJIL 16
Pemetaan Kardinalitas Relas
ER-DIAGRAM
• Menggambarkan banyaknya jumlah maksimum entitas dapat berelasi dengan entitas pada himpunan entitas yang lain.
• 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)
21 September 2011 BASIS DATA I/2011-GANJIL 17
Pemetaan Kardinalitas Relas
ER-DIAGRAM
One to one One to many
21 September 2011 BASIS DATA I/2011-GANJIL 18
Pemetaan Kardinalitas Relas
ER-DIAGRAM
Many to one Many to many
21 September 2011 BASIS DATA I/2011-GANJIL 19
Dampak Pemetaan Kardinalitas pada Desain ER
ER-DIAGRAM
• Dalam mendesain Entity Relasionship pemetaan kardinalitas akan berpengaruh terhadap bagaimana data tersebut akan digambarkan
21 September 2011 BASIS DATA I/2011-GANJIL 20
Key
ER-DIAGRAM
• 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
21 September 2011 BASIS DATA I/2011-GANJIL 21
Key, Cont’d…
ER-DIAGRAM
Ada 3 macam key yang dapat diterapkan pada suatu relasi : 1. Super Key
Merupakan satu atau lebih atribut (kumpulan atribut) yang dapat membedakan satiap baris data dalam sebuah relasi secara unik.
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 : Key tersebut lebih sering (lebih natural) untuk dijadikan
sebagai acuan Key tersebut lebih ringkas Jaminan keunikan key tersebut lebih baik
21 September 2011 BASIS DATA I/2011-GANJIL 22
Key, Cont’d…
ER-DIAGRAM
• Mahasiswa = (NIM, NAMA_MHS, ALAMAT_MHS, TGL_LAHIR)
• Superkey
(NIM, NAMA_MHS, ALAMAT_MHS, TGL_LAHIR)
(NIM, NAMA_MHS, ALAMAT_MHS)
(NIM, NAMA_MHS)
(NAMA_MHS)
(NIM)
• Candidate Key
(NAMA_MHS)
(NIM)
• Primary Key
(NIM)
• Entity sets digambarkan dengan
• Relationship sets digambarkan dengan
• Hubungan antara Entity sets – Relationship sets serta atribut – entity sets digambarkan dengan garis
• Atribut digambarkan dengan
Atribut Multivalue
Atribut Key
21 September 2011 BASIS DATA I/2011-GANJIL 23
Notasi ER
ER-DIAGRAM
Pegawai Perusahaan Bekerja
NIP
Nama
Alamat ID
Nama_Perusahaan
Alamat_Perush
21 September 2011 BASIS DATA I/2011-GANJIL 24
Diagram E-R dengan atribut Composite,
Multivalued dan derived
ER-DIAGRAM
21 September 2011 BASIS DATA I/2011-GANJIL 25
Himpunan Relasi dengan Atribut
ER-DIAGRAM
21 September 2011 BASIS DATA I/2011-GANJIL 26
Peran (Role)
ER-DIAGRAM
• 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
21 September 2011 BASIS DATA I/2011-GANJIL 27
Constraint Kardinalitas
ER-DIAGRAM
• Dalam menggambarkan kardinalitas pada Diagram ER, digunakan :
garis panah (→) yang menunjukkan
“Satu” atau
garis biasa (—) yang menunjukkan “Banyak”, antara relasi dengan entitas
21 September 2011 BASIS DATA I/2011-GANJIL 28
Weak Entity
ER-DIAGRAM
• Weak Entity: suatu entity dimana keberadaan dari entity tersebut tergantung dari keberadaan entity lain
• Entity yang merupakan induknya disebut Identifying Owner dan relationship-nya Disebut Identifyimg Relationship
• Weak Entity Selalu mempunyai Total Participation Constraint dengan Identifying Owner
• Contoh : entity tanggungan keberadaannya bergantung pada karyawan
21 September 2011 BASIS DATA I/2011-GANJIL 29
Weak Entity, Cont’d…
ER-DIAGRAM
karyawan tanggungan memiliki
nip ………… nama …………
21 September 2011 BASIS DATA I/2011-GANJIL 30
ISA (`is a’) Hierarchies
ER-DIAGRAM
Seperti dalam C++, atau PLs lainnya,
attribut diwariskan/diturunkan.
Jika kita menyatakan A ISA B, tiap
entitas A juga dipandang sebagai
entitas B.
Overlap constraints: Dapatkah Joe menjadi Hourly_Emps seperti juga entitas Contract_Emps? (Allowed/disallowed)
Covering constraints: Apakah tiap entitas Employees juga harus menjadi entitas Hourly_Emps atau Contract_Emps? (Yes/no)
Alasan menggunakan ISA:
Untuk menambahkan atribut deskriptif spesifik pada a subclass.
Untuk mengidentifikasi entitas yang berpartisipasi dalam relationship.
Contract_Emps
name
ssn
Employees
lot
hourly_wages
ISA
Hourly_Emps
contractid
hours_worked
21 September 2011 31
P E N U T U P
BASIS DATA I/2011-GANJIL