Entity Relationship Diagram (ERD) adalah diagram yang digunakan untuk memodelkan struktur data dalam sistem informasi dengan menggambarkan hubungan antara entitas (objek) di dalamnya. ERD memvisualisasikan elemen-elemen kunci dari sistem, seperti entitas, atribut, dan relasi di antara entitas tersebut. ERD membantu dalam desain basis data yang efisien, memudahkan pengembangan dan pemeliharaan sistem berbasis data.
ERD terdiri dari beberapa komponen utama:
Entitas (Entity)
Entitas adalah objek atau hal nyata yang direpresentasikan dalam sistem. Entitas dapat berupa orang, tempat, benda, kejadian, atau konsep yang memiliki data terkait. Setiap entitas memiliki atribut yang menjelaskan karakternya.
Simbol: Persegi panjang.
Contoh: Mahasiswa, Dosen, Mata Kuliah.
Atribut (Attribute)
Atribut adalah karakteristik atau properti dari suatu entitas yang memberikan informasi lebih rinci tentang entitas tersebut. Atribut dapat berupa nilai tunggal atau multi-nilai.
Simbol: Elips atau lingkaran.
Contoh: Nama Mahasiswa, NIM, Alamat.
Relasi (Relationship)
Relasi menggambarkan hubungan antara dua atau lebih entitas. Relasi menunjukkan bagaimana entitas saling berinteraksi di dalam sistem.
Simbol: Belah ketupat (diamond).
Contoh: Relasi Mengambil antara entitas Mahasiswa dan Mata Kuliah.
Kardinalitas
Kardinalitas menunjukkan jumlah maksimum hubungan yang dapat terjadi antara satu entitas dengan entitas lainnya. Kardinalitas bisa berupa:
One-to-One (1:1): Setiap entitas di himpunan A hanya berhubungan dengan satu entitas di himpunan B.
One-to-Many (1:M): Setiap entitas di himpunan A bisa berhubungan dengan banyak entitas di himpunan B, tetapi entitas di himpunan B hanya berhubungan dengan satu entitas di himpunan A.
Many-to-Many (M:M): Setiap entitas di himpunan A bisa berhubungan dengan banyak entitas di himpunan B, dan sebaliknya.
Berikut adalah simbol-simbol yang umum digunakan dalam ERD:
Entitas: Persegi panjang.
Atribut: Elips atau lingkaran.
Atribut kunci (Key Attribute): Diidentifikasi dengan garis bawah, menunjukkan atribut unik yang membedakan entitas satu dengan lainnya, seperti NIM untuk Mahasiswa.
Relasi: Belah ketupat, menghubungkan entitas yang berelasi.
Garis: Menghubungkan atribut ke entitas, atau menghubungkan entitas ke relasi.
Atribut Sederhana: Atribut yang tidak dapat dipecah menjadi bagian yang lebih kecil, seperti NIM atau Nama.
Atribut Gabungan: Atribut yang dapat dipecah menjadi bagian-bagian lebih kecil, seperti Alamat yang bisa terdiri dari Jalan, Kota, dan Kode Pos.
Atribut Multi-nilai: Atribut yang bisa memiliki lebih dari satu nilai, seperti Nomor Telepon.
Atribut Derivatif: Atribut yang nilainya bisa diturunkan dari atribut lain, seperti Umur yang dapat diturunkan dari Tanggal Lahir.
Identifikasi Entitas: Tentukan objek-objek yang perlu direpresentasikan dalam sistem.
Identifikasi Atribut: Tentukan atribut yang dimiliki oleh setiap entitas.
Identifikasi Relasi: Tentukan hubungan antar entitas dan jenis relasinya (1:1, 1:M, M:M).
Tentukan Kardinalitas: Definisikan kardinalitas hubungan antar entitas.
Gambarkan Diagram: Gunakan simbol-simbol ERD untuk menggambarkan entitas, atribut, relasi, dan kardinalitas.
Misalkan kita ingin membuat ERD untuk sistem perpustakaan. Entitas utama dalam sistem adalah Buku, Anggota, dan Peminjaman. Hubungan antara entitas adalah sebagai berikut:
Anggota dapat meminjam beberapa Buku.
Peminjaman melibatkan Anggota dan Buku.
ERD untuk sistem perpustakaan tersebut akan mencakup entitas Anggota, Buku, dan Peminjaman dengan relasi Meminjam.
Entitas Anggota memiliki atribut: ID Anggota, Nama, Alamat.
Entitas Buku memiliki atribut: ID Buku, Judul, Penulis.
Entitas Peminjaman memiliki atribut: Tanggal Pinjam, Tanggal Kembali.
Kardinalitas antara Anggota dan Peminjaman adalah 1
(satu anggota dapat meminjam banyak buku), dan antara Buku dan Peminjaman juga 1
(satu buku bisa dipinjam berkali-kali oleh anggota berbeda).
Kelebihan:
Visualisasi yang jelas: ERD memudahkan pemahaman hubungan antar data dalam sistem.
Desain basis data yang baik: ERD membantu mendesain basis data yang efisien dan sesuai dengan kebutuhan.
Pengelolaan yang lebih baik: Dengan pemodelan ERD, relasi antar entitas menjadi lebih terorganisir dan jelas.
Kekurangan:
Terbatas pada representasi statis: ERD hanya merepresentasikan struktur data, tanpa menyertakan aspek dinamis dari sistem, seperti proses atau aliran data.
Kesulitan dalam sistem besar: Untuk sistem yang sangat besar dan kompleks, ERD dapat menjadi sangat rumit dan sulit dipahami.
ERD sering kali digunakan sebagai dasar untuk mendesain basis data relasional. Setiap entitas dalam ERD akan diterjemahkan menjadi tabel dalam basis data, dengan atribut-atribut entitas menjadi kolom dalam tabel tersebut. Relasi antar entitas diterjemahkan menjadi foreign key yang menghubungkan tabel-tabel.
Misalnya, entitas Mahasiswa diterjemahkan menjadi tabel Mahasiswa dengan kolom seperti NIM, Nama, dan Alamat. Relasi Mengambil antara Mahasiswa dan Mata Kuliah diterjemahkan menjadi tabel relasi yang berisi NIM dan Kode Mata Kuliah sebagai foreign key.
Setelah membuat ERD, proses normalisasi digunakan untuk memastikan bahwa basis data tidak memiliki redundansi dan anomali saat melakukan operasi seperti insert, update, dan delete. Normalisasi membagi tabel-tabel besar menjadi tabel-tabel yang lebih kecil dengan menjaga relasi di antara mereka. ERD membantu mengidentifikasi bagaimana data diatur secara logis sebelum diterapkan normalisasi.
Entity Relationship Diagram (ERD) adalah alat yang sangat berguna dalam perancangan sistem berbasis data. Dengan memvisualisasikan entitas, atribut, dan relasi, ERD memberikan gambaran yang jelas tentang bagaimana data terstruktur dan diorganisir dalam suatu sistem. ERD membantu dalam desain basis data yang efisien, mengurangi redundansi data, serta memfasilitasi pengembangan dan pemeliharaan sistem.