ENTITY-RELATIONSHIP MODEL

Slides:



Advertisements
Presentasi serupa
Pengantar Basis Data Sumber : 1.Connoly, Thomas; Begg, Carolyn; Strachan, Anne; Database Systems : A Practical Approach to Design, Implementation and Management,
Advertisements

ENTITY-RELATIONSHIP MODEL
28-Jun-14 1 Basis Data Kode Mata Kuliah : SKS : 2 Oleh: Titik Lusiani,M.Kom, OCP.
Pertemuan Minggu Ke-10.
Chapter 8 - Process Modeling
2 C H A P T E R Tjiptoadi nugroho CC sidoarjo
Yufis Azhar – Teknik Informatika – UMM
Yufis Azhar – Teknik Informatika – UMM
(ENTITY RELATIONSHIP DIAGRAM)
(ENTITY RELATIONSHIP DIAGRAM)
Latifah Rifani Materi: 4
MODEL DATA LANJUTAN Latifah Rifani
Memahami konsep dasar ER Model. Mengenal notasi ER Diagram.
MODEL ENTITY-RELATIONSHIP
Entity Relationship Diagram
Analisis Database Ahmad Hanafi.
ENTITY RELATIONSHIP DIAGRAM
Danny Kriestanto, S.Kom., M.Eng Part 2
Analisis Database.
ENTITY RELATIONSHIP DIAGRAM
MODEL EER (Enhanced Entity Relationship)
PEMODELAN DATA.
ENTITY-RELATIONSHIP MODEL
03 | Entity Relationship Diagram (ER- Diagram)
DIAGRAM ER dalam Notasi Lain
ERD Entity Relationship Diagram
Entity Relationship Diagram
Your company slogan Table of Contents Introduction 1 Main title 2 Examples 3 Conclusion 4.
Suheri S.T MODEL RELASIONAL.
MODEL EER (Enhanced Entity Relationship)
Memahami konsep dasar ER Model. Mengenal notasi ER Diagram.
Transformasi ERD ke dalam bentuk fisik Materi Pertemuan ke-8
(Entity Relationship Diagram) Materi Pertemuan ke-5, 6, & 7
KONSEP MODEL ERD (Entity-relationship diagram)
(Entity Relationship Diagram) Materi Pertemuan ke-5, 6, & 7
(Entity Relationship Diagram) Materi Pertemuan ke-5, 6, & 7
Analisis Database Ahmad Hanafi.
Entity Relationship Diagram (ERD)
(Entity Relationship Diagram) Materi Pertemuan ke-5, 6, & 7
ENTITY RELATIONSHIP MODEL
Database TP – || AKN Bojonegoro.
Perancangan Basis Data
Pemodelan Data ER- Model.
MODEL ENTITY RELATIONSHIP DIAGRAM
Rekayasa Perangkat Lunak ER/D
Pertemuan #4 DIAGRAM - ER Kompetensi :
Pemodelan Data dan Proses Pengembangan Database
Outline: Relational Data Model Entity Relationship Diagram
Analisis Database 3/29/2003 Fany_KBD04_2009.
ENTITY-RELATIONSHIP DIAGRAM (ERD)
Pemodelan Data Menggunakan MODEL Entity Relationship
MODEL RELASIONAL.
Desain database 1 (erd) Pertemuan Ke-6&7.
Entity Relationship Model
Oleh : Devie Rosa Anamisa
Erika Devi, Fajar Agung N Fakultas Ilmu Komputer UDINUS
ENTITY RELATIONSHIP DIAGRAM
Entity Relationship Diagram
Pemodelan Data (2) Entity Relationship Diagram
Ada beberapa sifat yang melekat pada suatu tabel :
Entity Relationship Model
Entity Relationship Diagram (ERD)
Danny Kriestanto, S.Kom., M.Eng Part 2
MODEL RELASIONAL Desain Basis Data.
MODEL KETERHUBUNGAN ENTITAS (Entity-Relationship)
Pertemuan 4 ENTITY RELATIONSHIP.
ENTITY RELATIONSHIP DIAGRAM
DIAGRAM HUBUNGAN ENTITAS
Pemodelan Data ER-Model.
Tim Dosen Basis Data Fakultas Ilmu Komputer UDINUS
Transcript presentasi:

ENTITY-RELATIONSHIP MODEL

ENTITY-RELATIONSHIP MODEL Entity relationship : cara memodelkan suatu data ditingkat konseptual dalam perancangan basis data. Tujuan : menyajikan data dan menjadikan data mudah dimengerti, sehingga mempermudah perancangan dan pengaksesan database. Berdasarkan tipe konsepnya, data model dibagi menjadi dua kategori yaitu Conceptual (High Level) Data Model dan Physical (Low Level) Data Model. Conceptual Data Model merupakan konsep yang berkaitan dengan pandangan pemakai terhadap data, sedangkan Physical Data Model merupakan konsep yang menerangkan detail dari bagaimana data di simpan di dalam komputer. ERD merupakan suatu model untuk menjelaskan hubungan antar data dalam basis data berdasarkan objek-objek dasar data yang mempunyai hubungan antar relasi.

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

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

Tahap Pembuatan Entity Relationship Diagram 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.

ENTITY 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. Contoh: Orang: MAHASISWA, DOSEN, PEMASOK, PENJUAL Benda: MOBIL, MESIN, RUANGAN Tempat: NEGARA, DESA Kejadian: PENJUALAN, REGISTRASI Konsep: REKENING, KURSUS Simbol : persegi panjang nama_entity

ENTITY Untuk membedakan antara entitas sebagai kumpulan data dan sebuah entitas terdapat istilah tipe entitas dan instan entitas Tipe entitas disebut juga himpunan entitas Instan entitas adalah sebuah kemungkinan data dalam sebuah tipe entitas ekum

Tipe Entity dan Instan Entity ekum

Atribut Atribut adalah sifat atau karakteristik yang melekat dalam sebuah entitas Contoh: MAHASISWA = (Nomor_Mhs, Nama_Mhs, Alamat_Mhs, Kota_Mhs) MOBIL = (Kode_Mobil, Nama_Mobil, Cc) Domain menyatakan kemungkinan nilai untuk sebuah atribut

Atribut (Lanjutan..) Atribut Sederhana versus atribut komposit Atribut sederhana tidak bisa dipecah menjadi bagian yang lebih kecil lagi Atribut komposit adalah atribut yang dapat dipecah menjadi komponen yang lain Alamat: Alamat_Jalan, Kota, Kode_Pos Nama: Nama_Depan, Nama_Tengah, Nama_Belakang Contoh Atribut komposit

Atribut (Lanjutan..) Atribut nilai tunggal (single-valued) dan nilai berganda (multivalued attribute) Atribut nilai berganda adalah atribut yang berkemungkinan memiliki nilai lebih dari satu Contoh: Nomor_Telepon, Ketrampilan_Pemrograman

Atribut (Lanjutan..) Atribut tersimpan dan atribut turunan (derived attribute) Atribut tersimpan adalah atribut yang secara eksplisit tersimpan dalam database Atribut turunan adalah atribut yang nilainya dapat dikalkulasi dari nilai atribut tersimpan Contoh: Lama_Bekerja dapat dihitung dari Tgl_Mulai_Bekerja Usia bisa dihitung dari Tgl_lahir

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

RELATIONSHIP 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 company work_on

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

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

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

Cardinality Ratio 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. M1 M2 M3 manager R1 R2 R3 manages D1 D2 D3 departement manager departement manages 1

Cardinality Ratio (lanj) (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. E1 E2 E3 E4 E5 E6 employee R1 R2 R3 R4 R5 R6 works_for D1 D2 D3 departement employee departement works_for N 1

Cardinality Ratio (lanj) (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. E1 E2 E3 E4 employee R1 R2 R3 R4 R5 R6 works_on P1 P2 P3 project employee project works_on M N

Kardinalitas Hubungan Selalu hanya satu Satu atau banyak Nol atau satu Nol, satu, atau banyak

Kekangan Kardinalitas Jenis hubungan antartipe entitas seringkali dinyatakan tidak sekedar dalam bentuk berupa One to One, One to Many, Many to One, dan Many to Many, melainkan juga dengan menyertakan kekangan kardinalitas Kekangan kardinalitas (cardinality constraint) adalah suatu keadaan yang digunakan untuk menyatakan jumlah instan dalam sebuah entitas yang dapat dikaitkan dengan sebuah instan pada entitas lain Implementasinya adalah dengan menggunakan kardinalitas hubungan yang dijelaskan pada slide sebelum ini

Kekangan Kardinalitas (Lanj…) Berkaitan dengan kekangan kardinalitas, terdapat istilah kardinalitas minimum dan kardinalitas maksimum Kardinalitas minimum adalah jumlah instan tersedikit dalam sebuah entitas yang mungkin dikaitkan dengan setiap instan pada entitas lain Kardinalitas maksimum adalah jumlah instan terbanyak dalam sebuah entitas yang mungkin dikaitkan dengan setiap instan pada entitas lain

Contoh Penerapan Kekangan Kardinalitas Mempunyai PASIEN KUNJUNGAN (a) Dasar hubungan Mempunyai PASIEN SEJARAH PASIEN (b) Hubungan dengan kekangan kardinalitas Contoh: Kunjungan 1 Amir Kunjungan 2 Dewi Kunjungan 1 Fahmi Kunjungan 1 Kunjungan 2

Contoh Penerapan Kekangan Kardinalitas (Lanj…) Ditugaskan_ke PEGAWAI PROYEK (a) Dasar hubungan Ditugaskan_ke PEGAWAI PROYEK (b) Hubungan dengan kekangan kardinalitas Contoh: Proyek 1 Amir Proyek 2 Dewi Proyek 3 Fahmi Proyek 4 Sueb Proyek 5

Contoh Penerapan Kekangan Kardinalitas yang Menggunakan Bentuk Lain

Arti Hubungan Beberapa barang digunakan untuk Produk Pelanggan tidak mengirim pesanan BARANG Digunakan_ pada PELANGGAN PRODUK Mengirim PESANAN

Kekangan Kardinalitasnya? Menikah_dengan Membawahi ORANG PEGAWAI Tersusun_atas SUKU_CADANG

Jawaban Kekangan Kardinalitasnya : Menikah_dengan Membawahi ORANG PEGAWAI Tersusun_atas SUKU_CADANG

Participation Constraint 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 departement manages 1

Weak Entity (Entitas Lemah) 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) karyawan tanggungan memiliki nip ………… nama

CONTOH STUDI KASUS SEDERHANA Untuk keperluan penjelasan konsep dan penggunaan ER-Model, digunakan satu contoh database “FAKULTAS” yang didalamnya mencatat: data dosen data program studi / prodi data proyek

CONTOH STUDI KASUS SEDERHANA Penjelasan dari sebagian data FAKULTAS yang diperoleh setelah fase “Requirement Collection and Analysis” sbb: 1. Fakultas terdiri dari beberapa Program Studi (prodi). Setiap prodi mempunyai satu nama yang unik,nomer yang unik, dan seorang dosen bertindak sebagai kepala dari prodi (kaprodi). Tanggal mulai bekerja dari kaprodi juga dicatat dalam database (Tgl pengangkatan sebagai kaprodi). Satu prodi dapat tersebar disejumlah lokasi.

CONTOH STUDI KASUS SEDERHANA 2. Suatu prodi dapat mengendalikan sejumlah proyek mahasiswa, setiap proyek mempunyai satu nomor yang unik, nama yang unik, dan satu lokasi tertentu. 3. Data dosen yang perlu dicatat berupa : nama, nomor induk dosen, alamat, honor, jenis kelamin dan tanggal lahir. Seorang dosen ditempatkan di satu prodi, tetapi dapat menangani sejumlah proyek yang tidak harus dikendalikan oleh prodi dimana dosen tersebut ditempatkan. Jumlah jam perminggunya dari dosen yang menangani suatu proyek perlu dicatat, juga perlu dicatat supervisor langsung dari setiap dosen.

CONTOH STUDI KASUS SEDERHANA 4. Untuk keperluan tunjangan dosen, maka perlu dicatat anggota keluarga dari setiap dosen. Data yang dicatat berupa: nama anggota keluarga, sex, birthdate dan hubungan keluarga (relationship).

Latihan 1 Gambarkan satu ER-Diagram dari satu set „requirements“ untuk keperluan database suatu universitas yang digunakan untuk menyimpan transkrip dari mahasiswa: 1. Universitas mencatat data setiap mahasiswa yang berupa: nama,nomor pokok, nomor KTP, alamat tetap, alamat sementara, tgl-lahir, jenis kelamin, nama jurusan, program pendidikan (Diploma Tiga, Sarjana, Pasca Sarjana).Sejumlah user dari aplikasi yang dibuat juga perlu untuk mengacu pada nama kota, propinsi dan kode pos dari alamat tetap mahasiswa, dan juga nama orang tua dari setiap mahasiswa.Nomor KTP dan nomor pokok unik untuk setiap mahasiswa.

Latihan 1 2. Setiap jurusan dijelaskan berdasarkan nama, kode jurusan, kode kantor, nomor telepon. Kode dan nama jurusan mempunyai nilai-nilai yang unik. 3. Setiap mata kuliah mempunyai kode, nama, jumlah sks, dan jurusan penyelenggara, kode mata kuliah unik untuk setiap mata kuliah yang ada.

Latihan 1 4. Setiap mata kuliah yang ditawarkan dalam setiap semester diidentifikasikan sebagai „section“, yang setiap section mempunyai nomor/kode dosen, semester, tahun, mata kuliah, dan nomor section. Nomor section membedakan sejumlah section yang mempunyai nama mata kuliah yang sama yang ditawarkan pada semester/tahun yang sama (nilainya adalah 1,2,3 .... s/d jumlah section yang ditawarkan dalam satu semester). 5. Laporan nilai prestasi belajar (Transkip) berisikan nama mahasiswa , section, serta nilai angka dan nilai huruf (0,1,2,3, atau 4).

Latihan 2 Suatu Basis Data akan dibangun untuk menyimpan informasi mengenai team-team dan pertandingan-pertandingan dalam suatu liga olah raga. Adapun informasi yang diinginkan untuk disimpan berupa: a. Suatu Team mempunyai nama yang unik, dan Negara asal. b. Suatu Team terdiri dari pemain-pemain. Data-data pemain yang diperlukan adalah nama pemain, No punggung yang unik, umur, posisi/peran pemain dalam pertandingan. c. Data lokasi pertandingan yang berupa nama lokasi yang unik dan alamat lokasi yang terdiri dari jalan, kota, dan kode pos.

Latihan 2 d. Untuk tiap pertandingan yang perlu dicatat adalah nama-nama Team yang bertanding ( team tuan rumah dan team tamu), nama lokasi, dan hasil / skor pertandingan. Buat ER-Diagram dari user requirement di atas. Buatlah asumsi-asumsi untuk lebih melengkapi user requirement diatas.

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

Transformasi E-R Diagram ke Basis Data Relational (lanj) 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 proyek no_proyek nama_proyek lokasi i no_proyek nama_proyek Tabel Lokasi_Proyek no_proyek lokasi

Transformasi E-R Diagram ke Basis Data Relational (lanj) 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 employee employee_id employee_name supervision 1 N Tabel Supervision supervisor_id employee_id

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

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

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

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).

Tahap Pembuatan Entity Relationship Diagram Mengidentifikasikan entity-entity yang ada. entity-entity : KelompokFilm, Film, Customer. Menentukan atribut-atribut dari setiap entity. 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

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

Tahap Pembuatan Entity Relationship Diagram (lanj) Menentukan Cardinality Rasio. 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 Cardinality Rasio Film dikelompokkan KelompokFilm N : 1 Customer Menyewa N : M

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 menyewa tgl_sewa total_film total_harga denda tgl_kembali