430 likes | 796 Views
ERD( EntityRelationship Diagram) ---Diagram Keterhubungan Entitas ---. -----BAHASAN ERD -----. PENDAHULUAN. TERMINOLOGI ERD. TAHAPAN MEMBUAT ERD. CONTOH ERD DALAM BEBERAPA KASUS. Pendahuluan. ERD ( whitten , J.L. , dkk ):
E N D
ERD(EntityRelationship Diagram)---Diagram KeterhubunganEntitas---
-----BAHASAN ERD----- PENDAHULUAN TERMINOLOGI ERD TAHAPAN MEMBUAT ERD CONTOH ERD DALAM BEBERAPA KASUS
Pendahuluan ERD (whitten, J.L. , dkk): “Model Data yang menggunakanbeberapanotasiuntukmenggambarkan data dalamkonteksentitasdanhubungan yang dideskripsikanoleh data tersebut”
Pendahuluan ERD (Fathansyah, Ir): “Model Entity-Relationship yang berisikomponen-komponenhimpunanentitasdanhimpunanrelasi yang masing-masingdilengkapidenganatribut-atribut yang merepresentasikanseluruhfaktadaridunianyata”
Terminologi ERD • Entitas “sesuatu yang diperlukanbisnisuntukmenyimpan data”(whitten, J.L,dkk) “individu yang mewakilisesuatu yang nyata (eksistensinya) dandapatdibedakandarisesuatu yang lain”(Fathansyah) “Orang, tempat, kejadian, ataukonsep yang informasinyadirekam” (Harianto, Ir,K.)
Terminologi ERD ENTITAS apasaja…??? (whitten, J.L. , dkk; Nugroho, A.) Orang: Pelanggan, Penyalur, Pegawai, Mahasiswa, Departemen, Divisi,Pasien, dll Tempat: Ruang, Perpustakaan,Kantor, Kampus,kota, jalan,propinsi,Toko, dll Object: Buku, Mesin, Produk, licensiperangkatlunak, spesifikasipaketperangkatlunak, mobil,Produk,dll Persitiwa: Aplikasi,penerbangan,kelas,order, registrasi,reservasi,penjualan, pembelian,sll Konsep:Kuliah ,kursus, matakuliah, stok, pinjaman,rekeningdll Abstrak: Persamaanmatematika, persamaanfisika, rumus-rumuskimia, dll
Jenis-jenisEntitas • EntitasKuat (Strong Entity)yaituentitasmandiri yang keberadaannyatidakbergantungpadakeberadaanentitas lain. • EntitasLemah (Weak Entity) yaituentitas yang keberadaannyabergantungpadakeberadaanentitas lain ataubiasanyaberasaldariatributmultivaluepadaentitas lain. • EntitasAsosiatifyaituentitas yang terbentukdarisuaturelasi (Relasibersifatbanyakkebanyakataubermaknamandiribagipengguna).
Contoh: Terminologi ERD • EntitasKuatmisalnyamahasiswa, buku, karyawan, dll • EntitasLemahmisalnyahobi, orangtua, • EntitasAsosiatifmisalnyapengiriman, jadwal, delivery order. Hubunganbanyak-ke-banyaksebaiknyadikonversimenjadiEntitasAsosiatif. HubunganTernary sebaiknyadikonversimenjadiEntitasAsosiatif.
Hubungan (Relationship) “Hubunganbisnisalami yang adadiantarasatuataulebihentitas” (whitten, J.L. dkk) “Asosiasidarisatuataulebihentitas yang bermaknabagiorganisasi/perusahaan” (Nugroho, A.) “Menunjukkanadanyahubungandiantarasejumlahentitas yang berasaldarihimpunanentitasberbeda” (Fathansyah)
Terminologi ERD B. Atribut. “Sifatataukarakteristikdeskriptifsuatuentitas” (whitten, J.L. dll) “properti / karakteristiksuatu entity atau relationship” Contoh: EntitasPegawai; atributnya:nip,nama,alamat. EntitasBarang; atributnya:kodebrg,namabrg,jumlah. EntitasBuku; atributnya:kdBuku,Judul,Pengarang.
Terminologi ERD Tipe-tipeAtribut 1. Simple : Memilikinilaiatomiktunggal contoh: kodeBRG,jenisKelamin,harga 2.Composite: Terdiridaribeberapakomponen contoh: Nama(namadepan, namatengah, namabelakang) Alamat(jalan,no,kota,kodePos,Wilayah) 3.Multi-Valued:memiliki beberapaNilai Contoh: Warna(merah,biru,putih,…dll) darientitas Mobil Gelar(D1,D2,S1,S2,S3,..dll) darientitasPegawai
Tipe-tipeAtribut 4. Derived:diturunkan/dikalkulasidariatribut Stored(tersimpan) Contoh: umurditurunkandariatributtanggalLahir Lama_KerjaditurunkandariatributTgl_mulai_kerja 5. Nilai Null :nilaiadatetapibelumdiketahui Contoh: No_telpon, tinggi_badan, nama_pasangan_orang_belum_menikah.
ContohAtributdariAtributKomposit Alamat kota jalanAlamat kodepos Area Norumah jalan Blok
Kunci(key) • Kuncimerupakanelemen record yang dipakaiuntukmenemukan record tersebutpadawaktuaksesataubisadigunakanuntukidentifikasitiap record. • Kuncimembuatsebuahentitasunik. • Contoh: • Pegawai: nomorpegawai (NIP) • Perusahaan: namaperusahaan(Nama) • Proyek : nomorproyekdannamaproyek (noproy,namaproy) • Transaksi: tanggaldanwaktu (date dan time)
Kunci(key) • Mempengaruhivalidasiintegritas data dankinerja basis data • Mencegah user memasukkan data yang samayang tidakdiinginkan • Memeliharaintegritasdengancaramenghubungkaninidengan key tabel lain.
Jenis-jeniskunci: • Superkey: satuataulebihatribut yang dimilikientitasdapatdibedakandenganentitas lain. Contoh: gabungannimdannama, nim, • Candidat key : atribut yang dapatdijadikansebagaicalon key • Primary key:atribut yang secaraunikmengidentifikasimasing-masinginstandarisuatutipeentitastunggal. Instanseperti (“toni”,”tuti”,”bobi”) = Karyawan • Alternate key : kandidat key yang dijadikanalternatifuntukmenjadi primary key • Foreign key: merelasikanentitas-entitasdalamsebuahrelasi.
Metode Chen Strong Entitas Entitas Weak Entitas KARDINALITAS: Relasi Relasi 1 N RelasiIdentifikasi N M Atribut Atribut AtributMultiNilai 1 1 AtributTurunan GarisHubungan
MetodeMartin KARDINALITAS: Strong Entitas Weak Entitas Atribut Atribut Atribut Atribut Atribut Atribut 1 1 EntitasAsosiatif RelasiIdentifikasi 0 atau1 RelasiTakTeridentifikasi 1 atauN 0,1 atauN >1
DerajatHubungan (CHEN) Hubungan Unary N 1 Kerjasama Menikahdengan Orang Orang 1 1 (Satukesatu) (Satukebanyak) (Satukesatu)
DerajatHubungan (MARTIN) Hubungan Unary Orang Orang kerjasama Menikah (Satukesatu) (Satukebanyak) (Satukesatu)
DerajatHubungan(CHEN) Hubungan Binary Universitas Rektor dipimpin 1 1 Universitas Jurusan 1 Memiliki N Mahasiswa MataKuliah Mengikuti N M
DerajatHubungan(MARTIN) Hubungan Binary Universitas Rektor dipimpin Universitas Jurusan memiliki Mahasiswa MataKuliah mengikuti
DerajatHubungan(CHEN) Hubungan Ternary Memasokan Supplier Gudang N M P Barang
DerajatHubungan(MARTIN) Hubungan Ternary memasokan dipesan Detail Pasokan Supplier Gudang dibutuhkan Barang
HubunganMajemuk Bekerja 1 N 1 Pegawai Bagian Mengawasi N 1 1 Mengepalai
Participation constraints • Total participation (mandatory) Minimal harus ada satu entitas A yang berasosiasi dengan entitas B. Contoh: pada relasi antara entitas mahasiswa dan mata kuliah, diasumsikan bahwa mahasiswa harus mengambil minimal satu mata kuliah. Dosenharusmengajar minimal 1 matakuliah
Participation constraints • Partial participation (optional) Diperbolehkan terjadinya keadaan tidak ada entitas A yang berasosiasi dengan entitas B. Contoh: pada relasi dosen dan mahasiswa, diasumsikan bahwa seorang dosen diperbolehkan tidak memiliki mahasiswa bimbingan.Dosenbolehtidakmengkoordinirdosenlainnya.
Langkah-langkahmembuat ERD • MenentukanEntitas • MenentukanRelasi • Gambar ERD sementara • TentukanKardinalitas • Tentukan Primary key • Gambar ERD Berdasarkankunci: menghilangkanrelasi many to many danmemasukkan primary key dankuncitamupadamasig-masingentitas
Langkah-langkahmembuat ERD 7. Menentukanatributlainnya 8. Pemetaanatribut (memasangatributdenganentitas yang sesuai) 9. Gambar ERD denganatributlainnya
Persoalan Buatlah ERD mahasiswameminjambukupadaperpustakaan! Langkah 1: TentukanEntitasdarisoal. Entitas : mahasiswadanbuku Langkah 2: TentukanRelasidarisoal. Relasi : Meminjam Langkah 3: Gambarlah ERD sementara Mahasiswa Buku Meminjam
Mahasiswa Buku meminjam Langkah 4. Tentukankardinalitasnya. Mahasiswa Buku N Meminjam M Mahasiswa Buku meminjam
Langkah 5: Tentukan Primary key NimMahasiswadankdbukuBuku Langkah 6: gambar ERD nim kdbuku Mahasiswa Buku N Meminjam M Mahasiswa nim (pk) Buku Kdbuku (pk) meminjam
nim kdbuku nama judul nim kdbuku Mahasiswa Buku N Meminjam M alamat penerbit tglpinjam pengarang Detailpinjam nim+kdbuku(pk) nim(fk) Kdbuku(fk) tglPinjam tglkembali denda melakukan melakukan Mahasiswa nim (pk) nama alamat Buku Kdbuku (pk) pengarang Penerbit judul
Contoh: Pertanyaan 1 : SebuahProdimengasuhbeberapamatakuliah. Setiapmatakuliahmemilikikode yang unik, nama, danjumlah SKS. Masing-masingmatakuliahmahasiswa yang mengambilmatakuliahtersebut Tentukan entitas yang terlibat Entitas kuat : Mhs, mtkul, Prodi, Dosen,Kelas Entitas lemah: -
Pertanyaan 2: Mata kuliahmemilikikelasdenganjadwaldanruang yang spesifikdandosen yang mengajar Tentukan atribut dari setiap entitas Mhs: nama, npm, tgl_lahir Mtkul: id, nama_matkul, SKS Prodi: kode_prodi, nama_prodi Dosen: id_dosen, nama Kelas: jadwal, ruang, dosen
Departemenmemilikibeberapadosen. Data dosen yang disimpanadalahnama, nrp, alamat, tanggallahir, danjeniskelamin Tentukan relasi antar entitas dan constraint-nya
Id_dosen nama kode_Prodi Nama_Prodi bekerja DOSEN PRODI Tgl_lahir Nama_mhs mengajar npm memiliki MHS KELAS terdaftar dosen jadwal ruang mengambil MTKUL nilai id sks Nama_mtkul
Diketahui sebuah kasus sebagai berikut: • Perusahandiorganisasikankedalambeberapadepartemen. Setiapdepartemenmemilikinamadannomor yang unik, dan employee yang bekerjapadaperusahaantersebut • Departemenmengontrolbeberapa projects yang masing-masingmemilikinamadannomor yang unik, danmemilikilokasi • Data employee yang disimpanadalannama, nrp, alamat, gaji, jeniskelamin, dantanggallahir. • Perusahaan jugamenyimpan data daritanggungansetiap employee. Data yang disimpanadalahnama, jeniskelamin, tanggallahir, danhubungandengan employee • Dari data di atas, tentukan (jika ada): • Entitas kuat, entitas lemah, dan entitas asosiatif
Buatlah ERD untuk kasus di atas! • Buatlah ERD dari data berikut: • Perpustakaanmemiliki database yang mengolah data peminjamanbuku • Data buku yang disimpanyaitujudulbuku, pengarang, tahunterbit, penerbit. • Peminjambukuharusmendaftarmenjadianggotaperpustakaanterlebihdahulu, data anggota yang disimpanyaitunama, nrp, alamat, nomortelepon,jeniskelamin. • Setiappeminjamanbukudimasukkankedalam database. Data yang dimasukkanadalahjudulbuku, tanggalpeminjaman, dannamapeminjam
Buatlah ERD dari data berikut: • Sebuahrumahsakitmemilikibeberaparuangan. Di rumahsakittersebuttersediabeberapadokter, yang memiliki id dannama, sertabangsaltempatbertugas. • Setiappasiendiperiksaolehsatudokter. • Doktermemeriksapasienberdasar id, nama, TTL, penyakitdanruangan. • SetiapDoktermemeriksasaturuangan. • Terdapatsuster yang memiliki id, namadanbertugas (terjadwal) dibeberapabangsal • Dokterdapatbertugasdidalambangsaltertentudenganmelihat id dannamaruangan. Beberapapasiendapatberadadisaturuangan (bangsal). • Dalamurusanadministrasi, pasiendibedakanmenjadi 2, yaitu outpatient dan resident patient. • Outpatient dapatdiketahuidaritanggalpengecekan. Resident Patient dapatdilihatdaritanggalmasukkembali.