1 / 55

ENTITY-RELATIONSHIP MODEL

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.

Télécharger la présentation

ENTITY-RELATIONSHIP MODEL

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. ENTITY-RELATIONSHIP MODEL

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

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

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

  5. TahapPembuatanEntity Relationship Diagram • Mengidentifikasikandanmenetapkanseluruhhimpunan entity yang akanterlibat. • Menentukanatribut-atributdarisetiap entity. • Menentukanatribut primary key darisetiap entity. • Menentukan relationship antar entity. • Menentukanatribut-atributdarisetiap relationship (jikaada). • Menentukan Cardinality Rasio. • Menentukan Participation Constraint.

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

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

  8. Tipe Entity dan Instan Entity

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

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

  11. Atribut (Lanjutan..) • Atributnilaitunggal (single-valued) dannilaiberganda (multivalued attribute) • Atributnilaibergandaadalahatribut yang berkemungkinanmemilikinilailebihdarisatu • Contoh: Nomor_Telepon, Ketrampilan_Pemrograman

  12. Atribut (Lanjutan..) • Atributtersimpandanatributturunan (derived attribute) • Atributtersimpanadalahatribut yang secaraeksplisittersimpandalam database • Atributturunanadalahatribut yang nilainyadapatdikalkulasidarinilaiatributtersimpan • Contoh: • Lama_BekerjadapatdihitungdariTgl_Mulai_Bekerja • UsiabisadihitungdariTgl_lahir

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

  14. work_on employee company RELATIONSHIP • Relationship adalahhubungan yang terjadiantarasatuataulebih entity. • Relationshipsets adalahkumpulandari relationship yang sejenis. • Contoh : an employee work_on a company. relationship : work_on. • Simbol : wajik

  15. employee supervisor supervise supervison Derajat dari Relationship • Menjelaskanjumlah entity yang berpartisipasidalamsuatu relationship • Unary Degree (DerajatSatu) : sebuah entity berelasidengandirinya.

  16. work_on employee company Derajatdari Relationship (lanj) • Binary Degree (DerajatDua) : terdapatdua entity yang salingberhubungan.

  17. title level job employee_name Brunch_city employee_id brunch_name work_on employee brunch Derajatdari Relationship (lanj) • Ternary Degree (DerajatTiga) : terdapattiga entity yang salingberhubungan.

  18. manager manages departement manages M1 M2 M3 R1 R2 R3 D1 D2 D3 manager departement 1 1 Cardinality Ratio • Menjelaskanjumlahketerhubungansatu entity dengan entity yang lainnya. • (1 : 1) : satuentitaspadatipeentitas A berhubungandengan paling banyaksatuentitaspadatipeentitas B danjugasebaliknya. • Contoh : seorang manager hanyamemimpinsatudepartemendanbegitusebaliknya.

  19. employee works_for departement works_for E1 E2 E3 E4 E5 E6 R1 R2 R3 R4 R5 R6 D1 D2 D3 employee departement N 1 Cardinality Ratio (lanj) • (1 : N / N : 1) : suatuentitasdi A dihubungkandengansejumlahentitasdi B. Contoh : banyakkaryawanberkerjauntuksatudepertementatausatudepartementmemilikibanyakkaryawan yang bekerjauntuknya.

  20. employee works_on project works_on E1 E2 E3 E4 R1 R2 R3 R4 R5 R6 P1 P2 P3 employee project M N Cardinality Ratio (lanj) • (M : N) : setiapentitas A dapatberhubungandenganbanyakentitas B dansebaliknyasetiapentitas B jugadapatberhubungandenganbanyakentitas A. Contoh : satuproyekmempunyaibanyakkaryawan, satukaryawanbolehbekerjadibeberapaproyek.

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

  22. Kekangan Kardinalitas • Jenishubunganantartipeentitasseringkalidinyatakantidaksekedardalambentukberupa One to One, One to Many, Many to One, dan Many to Many, melainkanjugadenganmenyertakankekangankardinalitas • Kekangankardinalitas (cardinality constraint) adalahsuatukeadaan yang digunakanuntukmenyatakanjumlahinstandalamsebuahentitas yang dapatdikaitkandengansebuahinstanpadaentitas lain • Implementasinyaadalahdenganmenggunakankardinalitashubungan yang dijelaskanpadaslidesebelumini

  23. KekanganKardinalitas (Lanj…) • Berkaitandengankekangankardinalitas, terdapatistilahkardinalitas minimum dankardinalitasmaksimum • Kardinalitas minimum adalahjumlahinstantersedikitdalamsebuahentitas yang mungkindikaitkandengansetiapinstanpadaentitaslain • Kardinalitasmaksimumadalahjumlahinstanterbanyakdalamsebuahentitas yang mungkindikaitkandengansetiapinstanpadaentitas lain

  24. ContohPenerapanKekanganKardinalitas Mempunyai PASIEN KUNJUNGAN (a) Dasar hubungan Mempunyai (b) Hubungan dengan kekangan kardinalitas PASIEN SEJARAH PASIEN Contoh: Kunjungan 1 Amir Kunjungan 2 Dewi Kunjungan 1 Fahmi Kunjungan 1 Kunjungan 2

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

  26. ContohPenerapanKekanganKardinalitas yang MenggunakanBentuk Lain

  27. Arti Hubungan • BeberapabarangdigunakanuntukProduk • Pelanggantidakmengirimpesanan BARANG PELANGGAN Digunakan_ pada PRODUK Mengirim PESANAN

  28. KekanganKardinalitasnya? Menikah_dengan Membawahi ORANG PEGAWAI Tersusun_atas SUKU_CADANG

  29. Jawaban Kekangan Kardinalitasnya : Menikah_dengan Membawahi ORANG PEGAWAI Tersusun_atas SUKU_CADANG

  30. manages 1 1 employee departement Participation Constraint • Menjelaskanbatasankeikut-sertaandarisuatu entity terhadaphubungannyadengan entity yang lainnya. • Total Participation : menyatakan instance darisuatu entity harusberhubungandengan instance dari entity lainnya. • Partial Participation : menyatakansetiap instance darisuatu entity tidakharusberhubungandengan instance dari entity lainnya. • Contoh : setiapdepartemenharusdipimpinolehseorang manager/karyawan (total participation) dantidaksemuakaryawan yang memimpinsuatudepartemen (partial participation).

  31. Weak Entity (Entitas Lemah) • Weak entity adalahsuatu entity yang manakeberadaannyatergantungdarikeberadaan entity lain. • Entity yang merupakaninduknyadisebutIdentifying OwnerdanrelationshipnyadisebutIdentifying Relationship. • Weak entity selalumempunyai total participation constraint terhadap Identifying Owner. Contoh : entity tanggungankeberadaannyabergantungpadakaryawan.

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

  33. CONTOH STUDI KASUS SEDERHANA Untukkeperluanpenjelasankonsepdanpenggunaan ER-Model, digunakansatucontoh database “FAKULTAS” yang didalamnyamencatat: • data dosen • data program studi / prodi • data proyek

  34. CONTOH STUDI KASUS SEDERHANA Penjelasandarisebagian data FAKULTAS yang diperolehsetelahfase “Requirement Collection and Analysis” sbb: 1. FakultasterdiridaribeberapaProgram Studi (prodi). Setiapprodimempunyaisatunama yang unik,nomer yang unik, danseorangdosenbertindaksebagaikepaladariprodi (kaprodi). Tanggalmulaibekerjadarikaprodijugadicatatdalam database (Tglpengangkatansebagaikaprodi). Satuprodidapattersebardisejumlahlokasi.

  35. CONTOH STUDI KASUS SEDERHANA 2. Suatuprodidapatmengendalikansejumlahproyekmahasiswa, setiapproyekmempunyaisatunomor yang unik, namayang unik, dansatulokasitertentu. 3. Data dosenyang perludicatatberupa : nama, nomorindukdosen, alamat, honor, jeniskelamindantanggallahir. Seorangdosenditempatkandisatuprodi, tetapidapatmenanganisejumlahproyekyang tidakharusdikendalikanolehprodidimanadosentersebutditempatkan. Jumlah jam perminggunyadaridosenyang menanganisuatuproyekperludicatat, jugaperludicatat supervisor langsungdarisetiapdosen.

  36. CONTOH STUDI KASUS SEDERHANA 4. Untukkeperluantunjangandosen, makaperludicatatanggotakeluargadarisetiapdosen. Data yang dicatatberupa: namaanggotakeluarga, sex, birthdatedanhubungankeluarga (relationship).

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

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

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

  40. Latihan2 Suatu Basis Data akandibangununtukmenyimpaninformasimengenaiteam-team danpertandingan-pertandingandalamsuatuligaolah raga. Adapuninformasiyang diinginkanuntukdisimpanberupa: a. Suatu Team mempunyainama yang unik, dan Negara asal. b. Suatu Team terdiridaripemain-pemain. Data-data pemain yang diperlukanadalahnamapemain, No punggung yang unik, umur, posisi/peranpemaindalampertandingan. c. Data lokasipertandingan yang berupanamalokasi yang unikdanalamatlokasiyang terdiri dari jalan, kota, dan kode pos.

  41. Latihan 2 d. Untuktiappertandingan yang perludicatatadalahnama-nama Team yang bertanding ( team tuanrumahdan team tamu), namalokasi, danhasil / skorpertandingan. • Buat ER-Diagram dariuser requirement diatas. Buatlahasumsi-asumsiuntuklebih • melengkapiuser requirement diatas.

  42. city state street zip_code name id address customer Transformasi E-R Diagram keBasis Data Relational Tahap-TahapTransformasi : • Entity-Relationship Diagram menjadi basis data. • Entity menjaditabeldanatributmenjadikolom/field daritabel. • Entitaslemah  key dari “owner” (entitaskuat) ketabelentitaslemah. • Setiaptipe entity dibuatsuatutabel yang memuatsemuaatribut simple, sedangkanuntukatributkomposithanyadimuatkomponen-komponennyasaja. Contoh : Tabel Customer

  43. nama_proyek no_proyek lokasi i proyek 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 Tabel Lokasi_Proyek

  44. employee_name employee_id N supervision employee 1 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 Tabel Supervision

  45. nip nama_dos Dosen 1 periode mengepalai 1 Jurusan kode_jur nama_jur 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 Tabel kaprodi Tabel Jurusan

  46. nip nama_dos Dosen 1 perwalian N mahasiswa nim nama_mhs 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 Tabel Mahasiswa

  47. N mengambil M matakuliah kode_mk nama_mk nim nama_mhs mahasiswa 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 Tabel KRS semester Tabel Matakuliah

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

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

More Related