Daftar Isi ⇅
show
Apa itu ERD?
ERD atau entity relationship diagram adalah suatu bagan dalam bentuk gambar atau simbol yang mengidentifikasi tipe dari entitas di dalam suatu sistem yang diuraikan dalam data dengan atributnya, dan menjelaskan hubungan atau relasi di antara entitas tersebut (Hasanah & Untar, 2020, hlm. 37). Lantas apa itu entitas sendiri? Entitas adalah suatu objek nyata yang memiliki keperluan untuk disusun dan disimpan basis datanya.
Entitas atau entity ini tentunya dapat mencakup objek fisik seperti manusia, tempat, atau benda, atau entitas konseptual seperti peristiwa atau konsep abstrak. Mudahnya, suatu entitas yang akan dilibatkan dalam perancangan entity relationship diagram ini dapat meliputi entitas karyawan yang akan memiliki relasi dengan departemen tempat di mana ia bekerja hingga pada proyek atau pekerjaan yang ia tangani.
Entitas merupakan obyek yang mewakili sesuatu dalam dunia nyata dan dapat dibedakan antara satu dengan lainnya (unique) (Hasanah & Untari, 2023, hlm. 40). Setiap entitas memiliki beberapa atribut yang mendeskripsikan karakteristik dari objek tersebut. Atribut Dapat berupa: 1) Fisik (manusia, pegawai, dsb); 2) Abstrak/konsep (pekerjaan, mata kuliah, department, dsb); 3) Kejadian (penjualan, pembelian, peminjaman, dsb).
Seperti istilahnya sendiri, ERD ini berfokus pada keterhubungan atau hubungan (relationship) yang akan terjadi pada suatu basis data. Akan tetapi saat dirancang relasinya, suatu entity akan memiliki berbagai atribut yang akan mempengaruhi keterhubungannya dengan berbagai entity lain. Atribut adalah karakteristik atau properti dari suatu entitas yang memiliki nilai. Misalnya, jika kita masih menggunakan contoh entitas yang sama di atas, yakni entitas Karyawan, maka atributnya bisa mencakup Nama, Nomor Karyawan, Jabatan, dan Gaji.
Relasi dan atribut dari suatu entitas ini bekerja sama untuk membentuk struktur dasar dalam perancangan basis data. Atribut mendefinisikan data yang disimpan dalam entitas, sedangkan relasi menggambarkan bagaimana entitas tersebut berinteraksi satu sama lain. Dengan demikian, ERD dapat membantu memvisualisasikan elemen-elemen ini secara jelas sehingga dapat membantu dalam proses perancangan dan pemahaman sistem basis data yang sedang dirancang.
Sementara itu menurut Santoso (2023, dalam Niqotaini, dkk., 2023, hlm. 66) ERD atau entity relationship diagram adalah bagan yang digunakan untuk mendesain basis data yang menunjukkan secara detail hubungan atau relasi antara objek dari entitas dan atributnya sehingga terbentuk secara terstuktur dan jelas dengan menggunakan beberapa notasi dan simbol tertentu.
Dari definisi ERD tersebut tentunya kita juga harus mengetahui seperti apa notasi simbol dan cara penyusunan ERD itu sendiri agar mampu merancang database entity relationship diagram ini. Akan tetapi, terdapat prequisite atau persyaratan penting yang harus kita pahami sebelum bergelut pada proses teknis penyusunan ERD itu sendiri yang akan dijelaskan sebagai berikut.
Komponen ERD
Dalam praktiknya, penyusunan ERD ini memerlukan beberapa komponen yang harus terpenuhi agar kita dapat mulai merancang dan memaparkan ERD untuk suatu basis data. Beberapa komponen utamanya telah dibahas pada penjelasan di atas dan akan lebih dirincikan lagi pada pemaparan komponen-komponen ERD di bawah ini.
1. Objek Data, Atribut dan Hubungan
Objek
Objek data adalah representasi dari hampir semua informasi gabungan yang harus dipahami oleh perangkat lunak. Objek data dapat berupa entitas eksternal (misalkan semua yang menghasilkan informasi), suatu benda (misal laporan atau tampilan), peristiwa (misalnya proses meminjam) atau event, peran (misalnya peminjam), unit organisasi atau suatu struktur.
Sebagai contoh, seorang karyawan dapat dipandang sebagai objek data dengan atribut seperti nama, nomor identitas karyawan, alamat, dan nomor telepon. Objek data ini dapat dihubungkan dengan slip gaji, yang merupakan bentuk benda atau artifact, dengan atribut seperti tanggal pembuatan slip gaji, gaji pokok, tunjangan, dan potongan.
Atribut
Sementara itu atribut menentukan properiy suatu objek data dan mengambil salah satu dari tiga karakteristik yang berbeda. Atribut dapat digunakan untuk:
- Menamai sebuah contoh dari obyek data.
Misalnya, dalam objek data “Mahasiswa,” atribut “Nama” dapat digunakan untuk memberi nama pada setiap mahasiswa individual, seperti “John Doe” atau “Jane Smith.” - Menggambarkan contoh.
Dalam objek data “Mobil,” atribut “Warna” dapat digunakan untuk menggambarkan warna setiap mobil, seperti “Merah,” “Biru,” atau “Hitam.” - Membuat referensi ke contoh yang lain pada tabel yang lain.
Sebagai contoh, dalam hubungan antara objek data “Pengajar” dan “Mata Kuliah,” atribut “ID Pengajar” dapat digunakan sebagai kunci referensi untuk mengaitkan setiap pengajar dengan mata kuliah tertentu yang diajarkannya.
Dengan demikian, atribut bisa memberikan detail dan konteks pada objek data, yang implikasinya mungkinkan basis data untuk menyimpan dan mengelola informasi dengan lebih terstruktur dan bermakna.
Hubungan
Sementara itu, hubungan atau relation objek sendiri dapat direpresentasikan melalui berbagai cara, terutama dalam konteks hubungan antar entitas, atribut, dan sebagainya dalam suatu sistem basis data. Jika kita mengambil contoh dua objek data, seperti “karyawan” dan “proyek,” hubungan antara keduanya dapat diwakili dengan notasi sederhana. Notasi tersebut membangun suatu hubungan antar karyawan dengan proyek karena keduanya memiliki keterkaitan atau interaksi.
Dalam konteks hubungan objek data ini, kita dapat mengidentifikasi beberapa tipe hubungan seperti “Satu-ke-Satu,” “Satu-ke-Banyak,” atau “Banyak-ke-Banyak,” yang mencerminkan bagaimana objek data saling terkait dan berinteraksi satu sama lain dalam sistem basis data yang akan dipaparkan sebagai berikut.
- One-to-One (Satu-ke-Satu).
Deskripsi: Setiap entitas pada satu sisi hubungan hanya dapat terhubung dengan satu entitas pada sisi lainnya, dan sebaliknya.
Contoh Praktis: Misalnya, hubungan antara objek data “Pemilik” dan “Mobil” bisa diimplementasikan dalam hubungan satu-ke-satu, di mana setiap pemilik hanya memiliki satu mobil, dan setiap mobil hanya dimiliki oleh satu pemilik. - One-to-Many (Satu-ke-Banyak).
Deskripsi: Setiap entitas pada satu sisi hubungan dapat terhubung dengan banyak entitas pada sisi lainnya, tetapi sebaliknya tidak berlaku.
Contoh: Misalnya, hubungan antara objek data “Toko Buku” dan “Buku” bisa diwakili dalam hubungan satu-ke-banyak, di mana satu toko buku dapat memiliki banyak buku di dalamnya, tetapi setiap buku hanya dapat berada di satu toko buku.
- Many-to-Many (Banyak-ke-Banyak).
Deskripsi: Setiap entitas pada satu sisi hubungan dapat terhubung dengan banyak entitas pada sisi lainnya, dan sebaliknya.
Contoh: Misalnya, hubungan antara objek data “Mahasiswa” dan “Mata Kuliah” bisa diwakili dalam hubungan banyak-ke-banyak, di mana setiap mahasiswa dapat mengambil banyak mata kuliah, dan setiap mata kuliah dapat diambil oleh banyak mahasiswa.
2. Kardinalitas dan Modalitas Kardinalitas
Kardinalitas
Kardinalitas dalam konteks basis data dan hubungan antar objek data mengacu pada jumlah entitas yang dapat terlibat dalam suatu hubungan. Dengan kata lain, kardinalitas memberikan informasi tentang seberapa banyak entitas dari satu sisi hubungan yang dapat terhubung dengan entitas dari sisi lainnya. Ya, sebetulnya hal ini sudah dijelaskan pada pemaparan hubungan atau relation di atas, kardinalitas berarti memarkai bahwa suatu objek memiliki berapa hubungan pada objek lain seperti one-one, one-to-many, dsbnya yang akan dipaparkan sebagai berikut.
- One-to-One (1:1): Setiap entitas pada satu sisi hubungan terhubung dengan tepat satu entitas pada sisi lainnya, dan sebaliknya.
- One-to-Many (1:N): Setiap entitas pada satu sisi hubungan dapat terhubung dengan banyak entitas pada sisi lainnya, tetapi sebaliknya tidak berlaku. Ini menciptakan hubungan hierarkis atau parent-child.
- Many-to-One (N:1): Banyak entitas pada satu sisi hubungan dapat terhubung dengan tepat satu entitas pada sisi lainnya. Ini adalah kebalikan dari “One-to-Many.”
- Many-to-Many (N:N): Banyak entitas pada satu sisi hubungan dapat terhubung dengan banyak entitas pada sisi lainnya. Hubungan semacam ini sering memerlukan tabel penghubung untuk memetakan keterkaitan.
Modalitas Kardinalitas
Sementara itu Modalitas Kardinalitas berkaitan dengan apakah partisipasi entitas pada satu sisi hubungan adalah opsional atau wajib. Ada dua modalitas utama, yakni:
- Total (atau Mandatory).
Setiap entitas pada sisi satu hubungan wajib terhubung dengan setidaknya satu entitas pada sisi lainnya. - Partial (atau Optional).
Entitas pada sisi satu hubungan tidak wajib terhubung dengan entitas pada sisi lainnya; keterkaitan bisa opsional.
Contoh penerapan kardinalitas dan modalitas kardinalitas dapat ditemukan dalam situasi dunia nyata, seperti hubungan antara entitas “Karyawan” dan “Proyek,” di mana seorang karyawan dapat terlibat dalam banyak proyek (1:N) dan setiap proyek harus memiliki setidaknya satu karyawan yang terlibat (Total).
Langkah Menyusun/merancang ERD
Untuk menggambarkan ERD setidaknya ada empat langkah yang harus dilakukan oleh perancang basis data, yakni sebagai berikut.
- Menemukan atau mendefinisikan Entitas.
- Menemukan atau mendefinisikan atribut.
- Menemukan atau mendefinisikan Relasi.
- Menggambarkan ERD menggunakan notasi-notasi standar (Hasanah & Untari, 2023, hlm. 40).
Entitas sendiri merupakan pokok utama yang harus diketahui untuk merancang ERD. Sementara itu atribut, relasi, dan penggunaan notasi akan mengikuti berbagai kebutuhan dan segala parameter yang dibutuhkan oleh entitas. Lantas bagaimana cara menentukan entitas dari suatu basis data yang akan digunakan dalam pengembangan sistem informasi?
Menurut Hasanah & Untari (2023, hlm. 41) langkah untuk mendefinisikan entitas dalam sistem adalah sebagai berikut.
- Membuat gambaran cerita (ilustrasi) terkait sistem.
- Menandai setiap objek yang diwakili oleh kata benda yang ada dalam ilustrasi.
- Pada setiap objek, pastikan memiliki karakteristik yang akan dijadikan sebagai atribut.
- Menentukan objek yang merupakan entitas (Jika memang ia memiliki karakteristik jadikan ia sebagai entitas).
- Menggambarkan entitas beserta atributnya menggunakan notasi simbol yang telah ditentukan.
Contoh Perancangan ERD
Untuk menyusun Entity Relationship Diagram (ERD) sederhana, kita dapat mengikuti langkah-langkah yang telah dipaparkan di atas dengan penjabaran sebagai berikut.
- Tentukan entitas yang akan digambarkan dalam ERD. Dalam kasus ini, untuk meneruskan contoh yang digunakan pada penjelasan sebelumnya, entitas yang akan digambarkan adalah karyawan dan proyek yang dikerjakannya.
- Identifikasi atribut yang dimiliki oleh setiap entitas. Misalnya, atribut karyawan dapat mencakup nama, alamat, dan nomor telepon, sedangkan atribut proyek dapat mencakup nama proyek, deskripsi, dan deadline.
- Tentukan relasi antara entitas. Dalam kasus ini, karyawan dapat terlibat dalam banyak proyek, dan setiap proyek dapat melibatkan banyak karyawan. Oleh karena itu, relasi antara karyawan dan proyek adalah many-to-many.
- Gambarkan ERD dengan menggunakan notasi yang tepat. Notasi yang umum digunakan dalam ERD termasuk lingkaran untuk entitas, garis untuk relasi, dan panah untuk menunjukkan arah relasi.
Referensi
- Hasanah, F.N., Untari, R.S. (2020). Rekayasa perangkat lunak. Sidoarjo: Umsida Press.
- Niqotaini, Z. (2023). Rekayasa perangkat lunak. Yogyakarta: Penamuda Media.