Suheri S T chinsuventyahoo com ENTITYRELATIONSHIP MODEL ENTITYRELATIONSHIP

  • Slides: 38
Download presentation
Suheri S. T chinsuvent@yahoo. com ENTITY-RELATIONSHIP MODEL

Suheri S. T chinsuvent@yahoo. com ENTITY-RELATIONSHIP MODEL

ENTITY-RELATIONSHIP MODEL n n E-R Models are Conceptual Models of the database. They can

ENTITY-RELATIONSHIP MODEL n n E-R Models are Conceptual Models of the database. They can not be directly implemented in a database. Desainnya mendekati pengamatan/penerimaan user terhadap data. Didasarkan atas OBJECT riil dunia nyata dan hubungan antar object-object tersebut. Entity-Relationship model terdiri dari Entity, Relationship, dan Attribute.

ENTITY n n Entity adalah obyek yang dapat dibedakan dalam dunia nyata. Entity sets

ENTITY n n Entity adalah obyek yang dapat dibedakan dalam dunia nyata. Entity sets adalah kumpulan dari entity yang sejenis. Entity sets dapat berupa : – Obyek secara fisik : Rumah, Kendaraan, Peralatan, Mahasiswa. – Oyek secara konsep : Pekerjaan, Perusahaan, Rencana, Matakuliah. Simbol : persegi panjang nama_entity

ATRIBUTE n n Atribut adalah karakteristik dari entity atau relationship yang menyediakan detail tentang

ATRIBUTE n n Atribut adalah karakteristik dari entity atau relationship yang menyediakan detail tentang entity atau relationship tersebut sehingga dapat dibedakan. Nilainya jarang berubah. Atribut dari entity mahasiswa : nim nama jurusan alamat

VALUE SET (Domain) dari Atribut : n n n Kumpulan harga/nilai yang dapat dimiliki

VALUE SET (Domain) dari Atribut : n n n Kumpulan harga/nilai yang dapat dimiliki oleh atribut dari suatu entitas. Definisi domain dari suatu atribut akan mencakup : tipe data, panjang, format, nilai yang memingkinkan, keunikan dan kemungkinan data null. Contoh : – Atribut nama pada entitas mahasiswa domainnya nama orang – Atribut nama pada entitas barang domainnya nama barang

Macam-Macam Atribut n n Atribut sederhana/atomik : atribut yang tidak dapat dibagi-bagi menjadi atribut

Macam-Macam Atribut n n Atribut sederhana/atomik : atribut yang tidak dapat dibagi-bagi menjadi atribut yang lebih mendasar. Contoh : atribut harga dari entity barang. Atribut komposit : atribut yang terdiri dari beberapa atribut yang lebih mendasar. Contoh : Entity mahasiswa memiliki atribut nama yang terdiri dari nama depan (first name), nama tengah (middle name) dan nama belakang (last name).

Macam-Macam Atribut (lanj) n n n Atribut Berharga Tunggal (Single-valued Attribute) : atribut yang

Macam-Macam Atribut (lanj) n n n Atribut Berharga Tunggal (Single-valued Attribute) : atribut yang hanya mempunyai satu harga untuk suatu entitas tertentu. Contoh : atribut umur. Atribut Berharga Banyak (Multi-valued Attribute) : atribut yang dapat terdiri dari sekumpulan harga untuk suatu entitas tertentu. Contoh : atribut hobi. Atribut Derivatif : suatu atribut yang dihasilkan dari atribut lain. Contoh : atribut umur yang dapat dihasilkan dari atribut tgl_lahir.

Atribut Kunci n n n identifier unik dari suatu entitas karena nilai dari atribut

Atribut Kunci n n n identifier unik dari suatu entitas karena nilai dari atribut kunci ini akan berbeda untuk masing entitas – biasa disebut primary key. dapat terdiri dari atribut sederhana/ komposit Contoh : – Nomor. Mobil dari entitas MOBIL komposit – kodemk dari entitas matakuliah sederhana

Atribut Kunci (lanj) n n Foreign Key (kunci tamu) : suatu atribut dalam suatu

Atribut Kunci (lanj) n n Foreign Key (kunci tamu) : suatu atribut dalam suatu entity yang menunjuk ke atribut primary key dari entity lain. Alternate Key (kunci alternatif) : atribut kunci yang tidak ada di dunia nyata, tetapi diadakan dijadikan primary key karena tidak ada satu pun atribut dalam sebuah entity yang dapat mewakili entity tersebut.

Simbol-Simbol Atribut (oval) nama_atribut_kunci nama_atribut_komposit nama_atribut bernilai ganda nama_atribut_derivatif nama_entity

Simbol-Simbol Atribut (oval) nama_atribut_kunci nama_atribut_komposit nama_atribut bernilai ganda nama_atribut_derivatif nama_entity

RELATIONSHIP n n Relationship adalah hubungan yang terjadi antara satu atau lebih entity. Relationship

RELATIONSHIP n n Relationship adalah hubungan yang terjadi antara satu atau lebih entity. Relationship sets adalah kumpulan dari relationship yang sejenis. Contoh : an employee work_on a company. relationship : work_on. Simbol : wajik employee work_on company

Derajat dari Relationship n n Menjelaskan jumlah entity yang berpartisipasi dalam suatu relationship Unary

Derajat dari Relationship n n Menjelaskan jumlah entity yang berpartisipasi dalam suatu relationship Unary Degree (Derajat Satu) : sebuah entity berelasi dengan dirinya. employee supervisor supervise supervison

Derajat dari Relationship (lanj) n Binary Degree (Derajat Dua) : terdapat dua entity yang

Derajat dari Relationship (lanj) n Binary Degree (Derajat Dua) : terdapat dua entity yang saling berhubungan. employee work_on company

Derajat dari Relationship (lanj) n Ternary Degree (Derajat Tiga) : terdapat tiga entity yang

Derajat dari Relationship (lanj) n Ternary Degree (Derajat Tiga) : terdapat tiga entity yang saling berhubungan. title employee_name level job employee_id brunch_name employee work_on brunch Brunch_city

Cardinality Ratio n n Menjelaskan jumlah keterhubungan satu entity dengan entity yang lainnya. (1

Cardinality Ratio n n Menjelaskan jumlah keterhubungan satu entity dengan entity yang lainnya. (1 : 1) : satu entitas pada tipe entitas A berhubungan dengan paling banyak satu entitas pada tipe entitas B dan juga sebaliknya. Contoh : seorang manager hanya memimpin satu departemen dan begitu sebaliknya. manager manages departement M 1 M 2 M 3 R 1 R 2 R 3 D 1 D 2 D 3 manager 1 manages 1 departement

Cardinality Ratio (lanj) n (1 : N / N : 1) : suatu entitas

Cardinality Ratio (lanj) n (1 : N / N : 1) : suatu entitas di A dihubungkan dengan sejumlah entitas di B. Contoh : banyak karyawan berkerja untuk satu depertement atau satu departement memiliki banyak karyawan yang bekerja untuknya. employee works_for departement E 1 E 2 E 3 E 4 E 5 E 6 R 1 R 2 R 3 R 4 R 5 R 6 D 1 D 2 D 3 employee N works_for 1 departement

Cardinality Ratio (lanj) n (M : N) : setiap entitas A dapat berhubungan dengan

Cardinality Ratio (lanj) n (M : N) : setiap entitas A dapat berhubungan dengan banyak entitas B dan sebaliknya setiap entitas B juga dapat berhubungan dengan banyak entitas A. Contoh : satu proyek mempunyai banyak karyawan, satu karyawan boleh bekerja di beberapa proyek. employee works_on project E 1 E 2 E 3 E 4 R 1 R 2 R 3 R 4 R 5 R 6 P 1 P 2 P 3 employee M works_on N project

Participation Constraint n n Menjelaskan batasan keikut-sertaan dari suatu entity terhadap hubungannya dengan entity

Participation Constraint n n Menjelaskan batasan keikut-sertaan 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 1 manages 1 departement

Weak Entity (Entitas Lemah) n n n Weak entity adalah suatu entity yang mana

Weak Entity (Entitas Lemah) n n n Weak entity adalah suatu entity yang mana keberadaannya tergantung dari keberadaan entity lain. Entity yang merupakan induknya disebut Identifying Owner dan relationshipnya disebut Identifying Relationship. Weak entity selalu mempunyai total participation constraint terhadap Identifying Owner. Contoh : entity tanggungan keberadaannya bergantung pada karyawan.

Weak Entity (lanj) nip ………… karyawan nama memiliki ………… tanggungan

Weak Entity (lanj) nip ………… karyawan nama memiliki ………… tanggungan

Entity-Relationship Diagram (ERD) n Merupakan diagram yang menggambarkan hubungan (relationship) antar entitas (entity).

Entity-Relationship Diagram (ERD) n Merupakan diagram yang menggambarkan hubungan (relationship) antar entitas (entity).

Symbol E-R Diagram Symbol Keterangan = Entity = Atribut Komposit = Weak Entity =

Symbol E-R Diagram Symbol Keterangan = Entity = Atribut Komposit = Weak Entity = Relationship = Identifying Relationship = Atribut Derivatif E 1 = Atribut E 1 ______ = Atribut Kunci = Atribut Multivalue E 2 R 1 R N E 2 = Total Participation Of E 2 In R = Cardinality Ratio 1: N For E 1: E 2 In R

Tahap Pembuatan Entity Relationship Diagram 1. 2. 3. 4. 5. 6. 7. Mengidentifikasikan dan

Tahap Pembuatan Entity Relationship Diagram 1. 2. 3. 4. 5. 6. 7. Mengidentifikasikan dan menetapkan seluruh himpunan entity yang akan terlibat. Menentukan atribut-atribut dari setiap entity. Menentukan atribut primary key dari setiap entity. Menentukan relationship antar entity. Menentukan atribut-atribut dari setiap relationship (jika ada). Menentukan Cardinality Rasio. Menentukan Participation Constraint.

Kamus Data n n Menjelaskan nama entity set beserta atributnya. Contoh : untuk entity

Kamus Data n n Menjelaskan nama entity set beserta atributnya. Contoh : untuk entity set mahasiswa dengan atribut nim, nama dan alamat. maka kamus datanya berupa : mahasiswa = {nim, nama, alamat}. Ket : mahasiswa adalah nama entity set. nim, nama, alamat adalah nama atribut.

Contoh : ERD One to One nip nama_dosen Dosen kode_jur 1 Mengepalai 1 nama_jur

Contoh : ERD One to One nip nama_dosen Dosen kode_jur 1 Mengepalai 1 nama_jur Jurusan

Contoh : ERD One to Many nip nama_dosen Dosen kode_mk 1 Mengajar N nama_mk

Contoh : ERD One to Many nip nama_dosen Dosen kode_mk 1 Mengajar N nama_mk Matakuliah

Contoh : ERD Many to Many nim nama_mhs Mahasiswa kode_mk M mengambil N nama_mk

Contoh : ERD Many to Many nim nama_mhs Mahasiswa kode_mk M mengambil N nama_mk Matakuliah

Transformasi E-R Diagram ke Basis Data Relational Tahap-Tahap Transformasi : 1. Entity-Relationship Diagram menjadi

Transformasi E-R Diagram ke Basis Data Relational Tahap-Tahap Transformasi : 1. Entity-Relationship Diagram menjadi basis data. 2. Entity menjadi tabel dan atribut menjadi kolom/field dari tabel. 3. Entitas lemah key dari “owner” (entitas kuat) ke tabel entitas lemah. 4. Setiap tipe entity dibuat suatu tabel yang memuat semua atribut simple, sedangkan untuk atribut komposit hanya dimuat komponen-komponennya saja. Contoh : city name id state street zip_code address customer Tabel Customer id name street city state zip_code

Transformasi E-R Diagram ke Basis Data Relational (lanj) 5. Setiap tabel yang mempunyai atribut

Transformasi E-R Diagram ke Basis Data Relational (lanj) 5. Setiap tabel yang mempunyai atribut multivalue, buatlah tabel baru dimana primary key-nya merupakan gabungan dari primary key dari tabel tersebut dengan atribut multivalue. Tabel Proyek nama_proyek no_proyek nama_proyek lokasi i Tabel Lokasi_Proyek proyek no_proyek lokasi

Transformasi E-R Diagram ke Basis Data Relational (lanj) 6. Setiap unary relationship 1: N,

Transformasi E-R Diagram ke Basis Data Relational (lanj) 6. Setiap unary relationship 1: N, selain membuat tabel baru berdasarkan entity, buat juga tabel baru berdasarkan relationship-nya dengan atribut kunci tamu (foreign key) berdasarkan atribut kunci dari entity tersebut dan atribut kunci alternatif sebagai primary key-nya. Tabel Employee employee_id employee_name N employee_id Tabel Supervision employee supervision 1 supervisor_id employee_id

Transformasi E-R Diagram ke Basis Data Relational (lanj) 7. Untuk CR 1: 1 dengan

Transformasi E-R Diagram ke Basis Data Relational (lanj) 7. Untuk CR 1: 1 dengan atau tanpa total participation maka akan dibuat tabel baru berdasarkan relationship, dimana kolomnya terdiri dari alternate key, dan primary key dari masing entity. nip nama_dos Tabel Dosen nip Nama_dos Dosen 1 periode Tabel kaprodi mengepalai 1 periode kode_jur nip Tabel Jurusan kode_jur nama_jur

Transformasi E-R Diagram ke Basis Data Relational (lanj) 8. Untuk CR 1: N dengan

Transformasi E-R Diagram ke Basis Data Relational (lanj) 8. Untuk CR 1: N dengan atau tanpa total participation maka primary key dari sisi 1 masuk ke sisi N. nip nama_dos Tabel Dosen nip nama_dos Dosen 1 perwalian Tabel Mahasiswa N mahasiswa nim nama_mhs nip

Transformasi E-R Diagram ke Basis Data Relational (lanj) 9. Untuk CR M: N dibuat

Transformasi E-R Diagram ke Basis Data Relational (lanj) 9. Untuk CR M: N dibuat tabel tersendiri berdasarkan relationshipnya dengan kolom-kolomnya terdiri dari alternate key dan primary key dari masing-masing entity. nim nama_mhs Tabel Mahasiswa nim nama_mhs mahasiswa N semester Tabel KRS semester nim kode_mk mengambil M matakuliah Tabel Matakuliah kode_mk nama_mk

Studi Kasus : Rental VCD FILM n Spesifikasi Database – Data dari film berupa

Studi Kasus : Rental VCD FILM n 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).

Tahap Pembuatan Entity Relationship Diagram 1. Mengidentifikasikan entity-entity yang ada. entity-entity : Kelompok. Film,

Tahap Pembuatan Entity Relationship Diagram 1. Mengidentifikasikan entity-entity yang ada. entity-entity : Kelompok. Film, Customer. 2. Menentukan atribut-atribut dari setiap entity. Entity Film Atribut judul, jml_keping, jml_film Kelompok. Film jenis, harga_sewa Customer no_identitas, jenis_identitas, nama, alamat 3. Menentukan primary key dari setiap entity. Entity Film Atribut kode_film, judul, jml_keping, jml_film Kelompok. Film jenis, harga_sewa Customer no_identitas, jenis_identitas, nama, alamat

Tahap Pembuatan Entity Relationship Diagram (lanj) 4. Menentukan relationship antar entity. Entity Film Customer

Tahap Pembuatan Entity Relationship Diagram (lanj) 4. Menentukan relationship antar entity. Entity Film Customer Relationship Entity Dikelompokkan Kelompok. Film Menyewa Film 5. Menentukan atribut-atribut dari setiap relationship (jika ada). Relationship Atribut dikelompokkan Menyewa tgl_sewa, total_film, tgl_kembali, total_harga, denda

Tahap Pembuatan Entity Relationship Diagram (lanj) 6. Menentukan Cardinality Rasio. Entity Film Customer Relationship

Tahap Pembuatan Entity Relationship Diagram (lanj) 6. Menentukan Cardinality Rasio. Entity Film Customer Relationship Entity dikelompokkan Kelompok. Film Menyewa Film Cardinality Rasio N: 1 N: M 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 Diagram Rental VCD FILM judul harga_sewa jenis kode_film jml_keping dikelompokkan kelompokfilm 1

Entity Relationship Diagram Rental VCD FILM judul harga_sewa jenis kode_film jml_keping dikelompokkan kelompokfilm 1 N Film jml_film N jenis_identitas no_identitas Customer nama tgl_sewa total_harga M alamat total_film menyewa tgl_kembali denda