Entity Relationship Diagram Basis Data I
Review Model Data Jenis model data : Model data berbasis objek Entity Relationship Model Semantic Model Model data berbasis record Relational Model Hirarchycal Model (Tree Structure) Netword Model (Plex Structure) Model data berbasis fisik Unifying Model Frame Memory
Entity Relationship Model Merupakan model untuk menjelaskan hubungan antar data dalam basis data berdasarkan persepsi bahwa real world (dunia nyata) terdiri dari objek-objek dasar (entitas) yang mempunyai hubungan (relasi) antara objek tersebut. Jadi Entitas adalah objek dalam dunia nyata yang dapat dibedakan dari objek lainnya, misalnya mahasiswa, pelanggan, pasien dsb.
Entity Relationship Diagram Merupakan notasi grafis dalam pemodelan data konseptual yang mendeskripsikan hubungan antar penyimpanan. ERD digunakan untuk memodelkan struktur data dan hubungan antar data (tahap analisis perancangan basis data), karena hal ini relatif kompleks. Dengan ERD maka dapat menguji model dengan mengabaikan proses yang harus dilakukan.
Entity Relationship Diagram Dengan bantuan ERD dapat menentukan : Data apa yang diperlukan ? Bagaimana data yang satu berhubungan dengan yang lain ?
Notasi ERD Entiti : adalah suatu objek yang dapat diidentifikasi dalam lingkungan pemakai, sesuatu yang penting bagi pemakai dalam konteks sistem yang akan dibuat. Notasi Entiti digambarkan dalam bentuk persegi panjang dan diberi label yang menunjukan entitasnya. PELANGGAN
Notasi ERD Atribut : Merupakan elemen dari Entiti yang berfungsi untuk mendeskripsikan karakter entiti, satu Entiti bisa memiliki lebih dari satu atribut. Misalnya entiti Pelanggan memiliki atribut Nama Pelanggan, Alamat, Telpon. Notasi Atribut digambarkan dengan bentuk elips dan diberi label yang menunjukan nama atribut. Nama_Plg
Notasi ERD Hubungan : menunjukkan adanya hubungan/relasi diantara sejumlah entitas yang berasal dari himpunan entitas yang berbeda. Misalnya dalam kasus hubungan antara entiti Pelanggan dan entiti Suplier adalah Memiliki, sedangkan isi hubungannya dapat berupa Tagihan. Notasi Hubungan digambarkan dalam bentuk diamond / jajaran genjang Membeli
Notasi ERD Garis : untuk menghubungkan kumpulan atribut dengan entitas dan kumpulan entitas dengan relasi yang dibangun.
Penamaan Notasi ERD Nama Entitas Gunakan satu kata benda, jika dua kata pisahkan dengan spasi Ditulis dengan huruf kapital Gunakan nama yang spesifik (misal KLIEN dan PELANGGAN artinya sama, mana yg digunakan) Gunakan Nama yang singkat namun bermakna tepat MAHASISWA PELANGGAN DOKTER JAGA
Penamaan Notasi ERD Nama Atribut Gunakan frase kata benda atau kata benda tunggal Setiap awal kata ditulis dengan huruf kapital Gunakan garis bawah ( _ ) untuk menyambung dua kata Nama atribut boleh disingkat namun maknanya mudah ditebak Nama atribut harus unik Kode_Brg Nama Nm_Barang
Penamaan Notasi ERD Nama Relasi Gunakan kata kerja Hanya awal kata yang huruf kapital Gunakan garis bawah ( _ ) sebagai pemisah antar kata Membeli Mengajar_pada
Derajat Relasi Menunjukan tingkatan hubungan antar entitas terdiri dari : Unary (Derajat Satu) : Adalah satu buah relationship yang menghubungkan satu buah entity. Hubungan menikah hanya menghubungkan entity manusia (manusia menikah dengan manusia) Menikah MANUSIA
Derajat Relasi Binary (Derajat Dua) : Adalah satu buah relationship yang menghubungkan dua buah entity. Pegawai memiliki kendaraan, sebuah relationship memiliki mengubungkan entity Pegawai dan entity Kendaraan. Memiliki PEGAWAI KENDARAAN
Derajat Relasi Ternary (Derajat Tiga) : Adalah satu buah relationship yang menghubungkan tiga buah entity. Pegawai pada kota tertentu mempunyai suatu Proyek. Entity Bekerja mengubungkan Entity Pegawai, Proyek dan Kota KOTA Bekerja PEGAWAI PROYEK
Kardinalitas - Cardinalities Sejumlah entity set dapat berasosiasi dengan entity set yang lain melalui sebuah relationship dan ditunjukan dengan mapping cardinalities. Kardinalitas adalah sebuah pemetaan yang mengacu pada sejumlah objek pada entity set yang dapat direlasikan ke objek pada entity set lainnya dan sebaliknya.
Kardinalitas - Cardinalities Sejumlah kemungkinan banyaknya hubungan antar entitas tersebut, merujuk kepada hubungan maksimum yang terjadi dari himpunan entitas yang satu ke himpunan entitas yang lain dan sebaliknya. Nama Kode Nama Kode Menjual SUPLIER BARANG Jumlah Harga Alamat Telpon
Jenis Kardinalitas One To One ( 1 : 1) Yaitu perbandingan antara entity pertama dengan entity kedua berbanding satu berbanding satu. Satu orang pasien dibawa oleh satu mobil ambulance 1 Dibawa 1 PASIEN AMBULANCE
Jenis Kardinalitas One To Many ( 1 : M) Yaitu perbandingan antara entity pertama dengan entity kedua berbanding satu berbanding banyak. Satu bangsal perawatan menampung banyak pasien 1 Menam-pung M BANGSAL RAWAT PASIEN
Jenis Kardinalitas Many To One ( M : 1) Yaitu perbandingan antara entity pertama dengan entity kedua berbanding banyak berbanding satu. Banyak pasien dirawat oleh satu orang dokter M Dirawat 1 PASIEN DOKTER
Jenis Kardinalitas Many To Many ( M : M) Yaitu perbandingan antara entity pertama dengan entity kedua berbanding banyak berbanding banyak. Banyak pasien diberi terapi dengan banyak obat M Diterapi M PASIEN OBAT
Langkah Membuat ERD Menentukan Entitas : Menentukan peran, kejadian/kegiatan, lokasi, hal nyata dan konsep dimana pengguna akan menyimpan data. Menentukan Relasi : Tentukan hubungan antara sepasang entity menggunakan matriks relationship. Gambar ERD Sementara : Gambarkan entity-entity dan relationship diantara entity untuk menghubungkannya.
Langkah Membuat ERD Tentukan Kardinalitas : Tentukan kardinalitas (pemunculan suatu entity di entity lainnya yang berhubungan) Tentukan Primary Key : Indentifikasi atribut data yang “unik” untuk mengidentifikasi setiap entity. Gambar ERD berdasarkan kunci : Sertakan primary key setiap entity.
Langkah Membuat ERD Menentukan Atribut : Kumpulkan informasi detail yang penting dalam sistem yang sedang dikembangkan. Pemetaan Atribut : Untuk setiap atribut, letakan dalam satu entity yang tepat. Cari juga atribut yang ada dalam relationship. Gambar ERD dengan Atribut : Sesuaikan ERD hasil langkah 6 dengan entity atau relationship hasil langkah 8. Periksa Hasil : Apakah ERD akhir telah secara tepat mencerminkan data sistem ?
Contoh Kasus Sebuah perusahaan memiliki beberapa bagian. Setiap bagian mempunyai pengawas, setidaknya satu pegawai. Pegawai bekerja paling tidak pada satu bagian, tetapi dapat juga beberapa bagian. Satu pegawai minimal mendapat tugas pada sebuah proyek. Tetapi satu pegawai dapat libur dan tidak mendapat tugas proyek. Field data yang penting adalah Nama Bagian, Proyek, Pengawas, Nomor Pengawas, Nomor Pegawai dan Nomor Proyek.
Contoh Kasus - Pemecahannya Pemecahan dalam Pembuatan ERD : Menentukan Entitas Entitas pada sistem adalah : Bagian, Pegawai, Pengawas dan Proyek. Entitas perusahaan tidak termasuk dalam sistem karena hanya memiliki satu instansi. Entitas yang benar harus mempunyai lebih dari satu instansi.
Contoh Kasus - Pemecahannya Menentukan Relasi Buatkan matriks relasi entitas, seperti berikut : BAGIAN PEGAWAI PENGAWAS PROYEK - Milik Dipimpin oleh Bekerja di Bekerja pada Memimpin Menggunakan
Contoh Kasus - Pemecahannya Gambarkan ERD sementara Hubungkan entitas yang mempunyai relasi seperti yang ditunjukan pada matriks relasi entitas. Dipimpin oleh BAGIAN PENGAWAS Bekerja di Bekerja pada PEGAWAI PROYEK
Contoh Kasus - Pemecahannya Tentukan Kardinalitasnya Diketahui bahwa : Setiap bagian dipimpin oleh satu pengawas. Seorang pengawas hanya memimpin satu bagian. Setiap bagian memiliki paling sedikit satu Pegawai. Setiap Pegawai bekerja di paling sedikit satu bagian. Setiap proyek menggunakan paling sedikit satu Pegawai. Seorang Pegawai dapat bekerja dalam banyak proyek atau bahkan tidak sama sekali
Contoh Kasus - Pemecahannya Menentukan Kardinalitas Dipimpin oleh BAGIAN PENGAWAS 1 1 M Bekerja di N M Bekerja pada N PEGAWAI PROYEK
Contoh Kasus - Pemecahannya Menentukan Primary Key : (Kode_Bagian, No_Pengawas, No_Pegawai, No_Proyek) Menggambar ERD berdasar Key No_Pengawas Kode_Bagian Dipimpin oleh BAGIAN 1 PENGAWAS 1 M Bekerja di No_Pro yek No_Pegawai N Bekerja pada N PROYEK M PEGAWAI
Contoh Kasus - Pemecahannya Menentukan Atribut Atribut yang diperlukan adalah Nama Bagian, Nama Proyek, Nama Pengawas, Nama Pegawai selain primary-key. Memetakan Atribut Atribut Entitas Nama Bagian Bagian KdBag Nama Proyek Proyek NoPro Nama Pengawas Pengawas NoPws Nama Pegawai Pegawai NoPeg
Contoh Kasus - Pemecahannya Atribut dalam relationshipnya : Atribut Relasi Masa Jabatan Dipimpin Oleh Masa Kerja Bekerja di Masa Kerja Proyek Bekerja Pada
Contoh Kasus - Pemecahannya Menggambar ERD dengan Atribut NoPws KdBag Nm_Pe ngawas Dipimpin oleh BAGIAN 1 PENGAWAS Nm_Bagi an 1 M Masa_Kerja Masa Jabatan Bekerja di MasaKrja_Proyek NoPeg N Bekerja pada N PROYEK M PEGAWAI Nm_Pegawai Nama Proyek NoPro
Contoh Kasus - Pemecahannya Periksa Hasil Lakukan pemeriksaan terhadap ERD, bila tidak ada koreksi maka ERD dapat memodelkan data dalam sistem dengan baik.
Buatlah ERD untuk Kasus Berikut ! Suatu perguruan tinggi mempunyai banyak mhs. Setiap mhs tidak harus mengikuti suatu mata kuliah. Setiap mhs biasanya mengikuti beberapa mata kuliah. Suatu mata kuliah diajarkan oleh seorang Dosen dan seorang Dosen bisa mengajar beberapa mata kuliah. Seorang Dosen harus mengajarkan suatu mata kuliah. Entitas Mahasiswa memerlukan informasi tentang NIM, Nama_Mhs, Alamat_Mhs dan Jurusan. Entitas Mata Kuliah memerlukan informasi tentang Kd_MK, Nm_Mk, SKS, Semester. Entitas Dosen juga memerlukan informasi tentang Kd_Dosen, Nama_Dosen. Selamat Mengerjakan