Dalam rekayasa perangkat lunak, sebuah Entity-Relationship Model (ERM) merupakan abstrak dan konseptual representasi data. Entity-Relationship adalah salah satu metode pemodelan basisdata yang digunakan untuk menghasilkan skema konseptual untuk jenis/model data semantik sistem. Dimana sistem seringkali memiliki basis data relasional, dan ketentuannya bersifat top-down. Diagram untuk menggambarkan model Entitiy-Relationship ini disebut Entitiy-Relationship diagram, ER diagram, atau ERD

.

ERD (Entity Relationship Diagram) adalah gambaran mengenai berelasinya antar entitas.

Sistem adalah kumpulan dari elemen yang setiap elemen memiliki fungsi masing-masing dan secara bersama-sama mencapai tujuan dari sistem tersebut.

Kebersama-samaan dari sistem di atas dilambangkan dengan saling berelasinya antara satu entitas dengan entitas lainnya

Entitas (entity/ entity set), memiliki banyak istilah di dalam ilmu komputer, seperti tabel (table), berkas (data file), penyimpan data (data store), dan sebagainya

Komponen-komponen ERD

1. Entitas dan Atribut

Entitas, adalah segala sesuatu yang dapat digambarkan oleh data. Entitas juga dapatdiartikan sebagai individu yang mewakili sesuatu yang nyata (eksistensinya) dan dapatdibedakan dari sesuatu yang lain (Fathansyah, 1999). Ada dua macam entitas yaitu entitaskuat dan entitas lemah. Entitas kuat merupakan entitas yang tidak memiliki ketergantungan dengan entitas lainnya. Contohnya entitas anggota. Sedangkan entitas lemah merupakan entitas yang kemunculannya tergantung pada keberadaaan entitas lain dalam suatu relasi.

Atribut merupakan pendeskripsian karakteristik dari entitas. Atribut digambarkandalam bentuk lingkaran atau elips. Atribut yang menjadi kunci entitas atau key diberigaris bawah.

Kesimpulannya adalah:

Entitas adalah tempat penyimpan data, maka entitas yang digambarkan dalam ERD ini merupakan data store yang ada di DFD dan akan menjadi file data di komputer

Entitas adalah suatu objek dan memiliki nama. Secara sederhana dapat dikatakan bahwa jika objek ini tidak ada di suatu enterprise (lingkungan tertentu), maka enterprise tersebut tidak dapat berjalan normal.

Contoh, entitas ‘MAHASISWA’ harus ada di lingkungan perguruan tinggi, begitu juga dengan entitas ‘DOSEN’, ‘MATA_KULIAH’, dan sebagainya

Di dalam entitas ‘MAHASISWA’ berisi elemen-elemen data (biodata mahasiswa) yang terdiri atas NIM, NAMA, KELAS, ALAMAT, dan sebagainya. NIM, NAMA, KELAS, dan ALAMAT disebut dengan atribut (field)

Gambar memperlihatkan bahwa atribut-atribut NIM, NAMA, ALAMAT, dan TANGGAL_LAHIR harus ada di dalam biodata seorang mahasiswa.

Atribut-atribut TINGGI_BADAN, dan WARNA_RAMBUT adalah atribut-atribut yang boleh tidak ada di dalam biodata mahasiswa (karena tidak penting).

Sedangkan atribut NAMA_DOSEN adalah atribut yang tidak boleh ada di entitas mahasiswa

Pada akhirnya, entitas ini akan menjadi file data (yang bersifat master file) di dalam komputer. Master file adalah file utama (yang harus ada, dan sifatnya jarang berubah)

2. Relasi

Relasi adalah penghubung antara satu entitas (master file) dengan entitas lain di dalam sebuah sistem komputer. Pada akhirnya, relasi akan menjadi file transaksi (transaction file) di komputer. Secara kalimat logis, contoh relasi yang terjadi di sebuah perpustakaan adalah : “Anggota meminjam buku,” atau “Anggota mengembalikan buku.” Dalam hal ini, Anggota dan Buku adalah entitas, meminjam dan mengembalikan adalah transaksi (relasi antara anggota dan buku).

3. Menentukan Cardinality Ratio & Participation Constraint

Menjelaskan jumlah keterhubungan 1 entity dengan entity lainnya.
Jenis Cardinality Ratio: 1:1, 1:M, dan M:N

Logical Record Structured (LRS)

LRS adalah representasi dari struktur record-record pada tabel-tabel yang terbentuk dari
hasil relasi antar himpunan entitas.
Menentukan Kardinalitas, Jumlah Tabel, dan Foreign Key (FK)

One to One (1:1)


Gambar di atas menunjukan relasi dengan kardinalitas karena:
1 orang hanya bisa melakukan 1 pendaftaran, dan
1 Pendaftaran hanya bisa dilakukan 1 orang.

Relasi 1:1 akan membentuk 2 tabel:
Tabel egar (Id_egar, Nama, Alamat)
Tabel Pendaftaran (No_daftar, Status, Bya_pndftrn)

LRS yang terbentuk sbb:

One to Many(1:M)

Gambar di atas menunjukan relasi dengan kardinalitas karena:
1 Donatur bisa menyumbang banyak Buku, dan
Banyak Buku bisa disumbang 1 Donatur.

Relasi 1:M akan membentuk 2 tabel:
Tabel Donatur (Id_donatur, Nm_donatur, Pekerjaan, Alamat)
Tabel Buku (Id_buku, Judul, Pengarang, Penerbit)

LRS yang terbentuk sbb:

Many to Many(M:N)


Gambar di atas menunjukan relasi dengan kardinalitas karena:
1 Anggota bisa meminjam banyak Buku, dan
Banyak Buku bisa dipinjam 1 Anggota.

Relasi M:N akan membentuk 3 tabel:
Tabel Anggota(Id_Anggota, Nama, Tgl_lhr, Tmp_lhr, Alamat)
Tabel Pinjam(Id_buku, Tgl_pinjam, Tgl_kembali)
Tabel Buku (Id_buku, Judul, Pengarang, Penerbit)

LRS yang terbentuk sbb:


Participation Constraint
Menjelaskan apakah keberadaan suatu entity tergantung pada hubungannya dengan entity
lain.

Terdapat 2 macam yaitu:
1. Total Participation Constraint
Keberadaan suatu entity tergantung pada hubungannya dengan entity lain.

2.Partial Participation Constraint
Keberadaan suatu entity tidak tergantung pada hubungannya dengan entity lain.