Basis data merupakan kumpulan data yang disimpan secara sistematis dalam komputer yang dapat diolah atau dimanipulasi menggunakan perangkat lunak (software) untuk menghasilkan informasi.
Basis data sebenarnya adalah teks-teks yang disimpan dalam komputer dan umumnya sulit dipahami terutama oleh orang awam. Untuk dapat memahami struktur sebuah database lebih mudah, maka diperlukan sebuah diagram yang dapat menggambarkan database dengan baik sehingga mudah dipahami.
Diagram tersebut merupakan Entity Relationship Diagram atau biasa disebut diagram ERD.
Daftar Isi
Pengertian Diagram ERD
Entity Relationship Diagram (ERD) adalah suatu diagram yang digunakan untuk merancang suatu basis data, dipergunakan untuk memperlihatkan hubungan atau relasi antar entitas atau objek yang terlihat beserta atributnya.
ERD umumnya digunakan untuk merancang sebuah basis data relasional. Mulai dari nama tabel, atribut, hingga derajat relasi. Jika rancangan ERD benar, maka basis data yang akan dibuat juga akan benar (tepat pembuatannya).
Selain sangat bermanfaat dalam perancangan basis data, ERD juga bisa berfungsi atau berguna sebagai dokumentasi sistem yang dibuat. Dengan adanya ERD, kita dapat mengetahui struktur basis data dan relasinya tanpa perlu mengakses basis data yang bersangkutan.
Komponen-komponen ERD
Dalam membuat ERD, terdapat komponen-komponen penyusun yang harus kita pahami. Komponen-komponen ERD terdiri dari entitas, atribut, relasi dan garis.
Komponen Entitas atau Tabel
Entitas dalam ERD merupakan kumpulan objek yang dapat diidentifikasi secara unik atau berbeda satu sama lain. Entitas disimbolkan dengan persegi panjang. Dalam penerapannya, entitas merupakan tabel.
Misalnya dalam rancangan basis data akademik universitas, contoh entitasnya adalah fakultas, prodi, dosen, mahasiswa, mata kuliah, dan sebagainya.
Komponen Atribut
Atribut merupakan elemen sebuah entitas yang berfungsi untuk mendeskripsikan karakteristik dari sebuah entitas. Komponen atribut disimbolkan dengan simbol elips. Komponen atribut terbagi menjadi:
- Atribut kunci (key attribute)
Atribut kunci merupakan atribut yang digunakan untuk membedakan data dalam tabel secara unik. Atribut kunci bersifat unik, artinya antara satu data dengan data lain tidak boleh sama.
Cara untuk memilih atribut kunci adalah dengan memikirkan apa yang setiap anggota entitas punya dan berbeda satu sama lain. Misalnya dalam tabel mahasiswa, kita bisa menjadikan NIM atau NPM sebagai atribut kunci karena setiap mahasiswa pasti mempunyai NIM dan NIM setiap mahasiswa berbeda satu sama lain.
Contoh lain, dalam tabel penduduk, kita bisa menjadikan NIK sebagai atribut kunci. Karena setiap penduduk pasti mempunyai NIK dan NIK setiap penduduk pasti berbeda.
2. Atribut gabungan (composite attribute)
Atribut gabungan merupakan atribut yang terdiri dari beberapa atribut yang lebih kecil. Misalnya atribut nama, yang bisa dibagi lagi menjadi nama depan, nama tengah, dan nama belakang.
Misalnya dalam tabel mahasiswa, untuk menyimpan nama, daripada kita membuat kolom “nama”, lebih baik jika kita membaginya menjadi beberapa kolom lain, seperti nama_depan, nama_tengah dan nama_belakang. Namun hal ini harus disesuaikan dengan kebutuhan dan analisa.
3. Atribut sederhana / simpel (simple attribute)
Atribut simpel merupakan atribut “atomik” atau atribut yang tidak bisa dipecah lagi. Misalnya tahun lahir, alamat dan sebagainya.
Sebagai contoh, dalam tabel mahasiwa kita akan menyimpan data kelahiran mahasiswa, seperti tahun lahirnya. Kolom tahun bisa kita sebut sebagai atribut sederhana karena sudah tidak bisa dipecah lagi.
4. Atribut multi nilai (multivalue attribute)
Atribut multi nilai merupakan atribut yang memiliki sekelompok nilai untuk setiap entitas. Contoh: nama beberapa pengarang dari sebuah buku.
5. Atribut derivatif
Atribut derivatif merupakan atribut yang dihasilkan dari atribut lain dan tidak wajib ditulis dalam rancangan diagram ERD. Contohnya: usia, kelas.
Kenapa kita tidak perlu membuat kolom “usia” ? Contohnya dalam tabel mahasiswa, jika sebelumnya kita sudah mempunyai kolom “tanggal_lahir” atau kolom data kelahiran, maka kita tidak perlu lagi membuat kolom usia. Alasannya, usia akan bertambah setiap tahun dan pasti akan sangat merepotkan jika kita harus memperbarui data usia setiap tahunnya.
Dan juga, kita bisa menghitung usia berdasarkan data tanggal lahirnya, yaitu dengan cara mengurangi hari ini dengan tanggal lahirnya (contoh: 2020 – 2000, maka usianya 20 tahun). Inilah yang disebut dengan atribut derivatif, yaitu atribut yang bisa dihasilkan dari atribut lain.
Komponen Relasi
Komponen relasi merupakan komponen utama dari diagram ERD. Relasi merupakan hubungan antara sejumlah entitas yang berasal dari himpunan entitas yang berbeda. Komponen relasi digambarkan dengan simbol belah ketupat.
Derajat relasi atau kardinalitas terdiri dari:
- One to One (Satu ke satu, 1:1)
Relasi one to one merupakan relasi dimana satu tabel mempunyai hubungan langsung dengan satu tabel lainnya.
Setiap anggota entitas A hanya boleh berhubungan dengan satu anggota entitas B, begitu pula sebaliknya. Contohnya adalah relasi antara dosen dan program studi yang membentuk relasi “kepala program studi”, dimana seorang dosen dapat memimpin sebuah program studi. Sebaliknya, sebuah program studi hanya bisa dipimpin oleh seorang dosen.
2. One to Many (Satu ke banyak, 1:N)
Relasi one to many merupakan relasi dimana anggota entitas A bisa berhubungan dengan banyak anggota B, tetapi tidak sebaliknya. Contohnya relasi prodi dan mahasiswa, dimana sebuah prodi bisa memiliki banyak mahasiswa, tetapi seorang mahasiswa hanya bisa terdaftar di satu prodi saja.
3. Many to Many (Banyak ke banyak, N:N)
Relasi many to many merupakan hubungan dimana anggota entitas A bisa berhubungan dengan banyak anggota entitas B, begitu juga sebaliknya. Dalam penerapannya, relasi many to many membutuhkan bantuan tabel penghubung, atau dikenal dengan sebutan tabel pivot.
Contoh relasi many to many adalah relasi dosen dan mata kuliah. Dimana seorang dosen bisa mengampu banyak mata kuliah, dan sebuah mata kuliah bisa diampu lebih dari satu dosen.
Komponen relasi merupakan komponen yang cukup kompleks, akan kita bahas dalam posting khusus untuk lebih memahaminya.
Komponen Garis
Komponen garis merupakan komponen penghubung antar entitas. Garis menggambarkan relasi antar entitas dan merupakan data flow dari setiap entitas yang terlibat. Garis juga menunjukkan hubungan relasi sehingga relasi antar entitas dapat semakin jelas.
Kesimpulan
ERD merupakan bagian yang sangat penting dalam perancangan perangkat lunak. Merancang ERD dengan baik akan bermanfaat dalam proses pengembangan nantinya, karena sistem yang dibuat sudah memiliki panduan yang jelas. ERD juga bisa digunakan untuk memahami sistem tanpa perlu melihat ke dalam sistem tersebut.