Anda di halaman 1dari 9

ERD adalah pemodelan data utama yang membantu mengorganisasikan data dalam suatu proyek

ke dalam entitas-entitas dan menentukan hubungan antar entitas.


Entitas/Entity adalah suatu tempat atau objek untuk menyimpan data. Contoh: Entitas buku
untuk menyimpan atribut mengenai buku (judul buku, kode buku, pengarang, dsb). Entity
digambarkan dengan Persegi dalam ERD.
Relasi/Relationship adalah hubungan yang terjadi antara entitas atau lebih. Contoh: Entitas
buku dan Entitas Pengarang memiliki hubungan ditulis, yang artinya, pengarang menulis buku,
dan buku ditulis pengarang. Selain itu, terdapat relasi one to one, one to many, dan many to
many dalam entity. Relasi ini digambarkan dengan garis dalam ERD.
Atribut/Attribute adalah ciri umum semua entitas atau semua yang ada dalam entitas. Contoh:
Entitas pengarang memiliki atribut nama, alamat, no telpon, dsb. Atribut digambarkan dengan
lingkaran memanjang dalam ERD tapi jarang sekali dalam ERD atribut ikut digambarkan. Atribut
juga sering disebut dengan field atau kolom dalam suatu ERD.
Ada 10 langkah atau tips yang dapat saya berikan untuk membuat ERD yang baik:

Metode pembuatan ERD
Dalam membuat ERD, ada beberapa hal yang perlu kita waspadai, selain itu kita juga dituntut untuk lebih
teliti dalam menentuka entity, relasi, atribut, menghindarkan terjadinya relasi many to many dan lain
sebagainya. Untuk itu lihat beberapa langkah berikut agar kita bisa membuat ERD dengan baik:
Menentukan Entity
o Disini kita dituntut untuk menentukan dengan cermat sebuah entity yang ada dalam suatu
proyek atau masalah. Entity berguna untuk menentukan peran, kejadian, lokasi, hal nyata dan
konsep penggunaan untuk database
Menentukan Relasi
o Setelah kita berhasil membuat Entity, langkah selanjutnya adalah menentukan relasi antar
entity. Relasi apa yang terdapat antara Entity A dan B, apakah entity A dan B memiliki relasi
one to one, one to many, atau many to many.
Gambar ERD sementara
o Jika sudah mengetahui Entity beserta Relasinya, sekarang kita buat dulu gambar ERD
sementara. Entity digambarkan dengan persegi, relasi digambarkan dengan garis.
Isi kardinalitas
o Kardinalitas menentukan jumlah kejadian satu entitas untuk sebuah kejadian pada entitas
yang berhubungan. Contohnya antara Entitas Buku, Distributor dan Pengarang, kardinalitas
yang ada berupa:
Satu pengarang dapat menulis banyak buku
Satu buku ditulis satu pengarang
Banyak buku di distribusikan oleh satu distributor.
o Dari sini kita bisa mengetahui harus memberi relasi apa. One to one kah?, dsb.
Tentukan Primary Key (Kunci Utama)
o Menentukan Primary Key pada masing-masing entity. Primary Key adalah atribut pada entity
yang bersifat unik. Jadi setiap entity hanya memiliki satu Primary Key saja. Contoh: Entity
Buku memiliki Primary Key bernama kode buku. Kode Buku ini bersifat unik, karena masing-
masing buku memiliki kode yang berbeda-beda.
o Tentukan pula Foreign Key (Kunci Tamu) pada masing-masing Entity. Foreign Key adalah
Primary Key yang ada dalam Entity yang lain. Contoh pada Entity Pengarang misalnya
terdapat atribut kode buku, yang mana, kode buku merupakan Primary Key dari Entity buku.
Gambar ERD berdasarkan Primary Key
o Menghilangkan relasi many to many dan memasukkan Primary dan Foreign Key pada
masing-masing entitas. Relasi many to many antar entity perlu dihilangkan dengan cara
menambah atribut baru antara 2 entity yang memiliki relasi many to many.
Menentukan Atribut
o Jika sudah melakukan step diatas, sekarang saatnya menentukan atribut pada masing-masing
Entitas. Telitilah dalam menentukan atribut.
Pemetaan Atribut
o Apabila atribut telah ditentukan, sekarang pasang atribut dengan entitas yang sesuai.
Gambar ERD dengan Atribut
o Mengatur ERD seperti langkah 6 dengan menambahkan atribut dan relasi yang ditemukan.
Periksa Hasil
o Periksa lagi ERD. Apakah ERD sudah menggambarkan system yang akan dibangun? Jika belum,
check kembali dari awal.A. Teori ERD

Notasi yang digunakan dalam ERD adalah :


Entitas dapat merupakan :

Sebuah elemen lingkungan dari perusahaan , seperti customer atau supplier
Suatu sumber daya , seperti suatu piutang dagang, suatu produk, atau suatu penjual
Suatu arus informasi , seperti suatu penjualan pemesanan atau suatu faktur
Di dalam sebuah entitas terdapat beberapa atribut. Atribut merupakan gambaran karakteristik dari
sebuah entitas atau himpunan entitas.
Contoh : atribut untuk himpunan entitas mahasiswa adalah nim (PK), nama, program studi.






B. Tahapan Pembuatan ERD

Berikut ini adalah contoh tahapan dalam pembuatan ERD pada " Sistem Informasi Akademis " .
Tahap 1: Penentuan Entities



Keterangan :
Mahasiswa:
nim: nomor induk mahasiswa (integer) PK
nama_mhs: nama lengkap mahasiswa (string)
alamat_mhs: alamat lengkap mahasiswa (string)
Dosen:
nip: nomor induk pegawai (integer) PK
nama_dosen: nama lengkap dosen (string)
alamat_dosen: alamat lengkap dosen (string)
Mata_kuliah:
kode_mk: kode untuk mata kuliah (integer) PK
nama_mk: nama lengkap mata kuliah (string)
deskripsi_mk: deskripsi singkat mengenai mata kuliah (string)
Ruang:
kode_ruang: kode untuk ruang kelas (string) PK
lokasi_ruang: deskripsi singkat mengenai lokasi ruang kelas (string)
kapasitas_ruang: banyaknya mahasiswa yang dapat ditampung (integer)

Tahap 2 : Penentuan Atribut


Tahap 3 : Penentuan Kardinalitas Relasi

Hubungan :a. ruang digunakan untuk mata_kuliah:

Tabel utama: ruang
Tabel kedua: mata_kuliah
Relationship: One-to-one (1:1)
Attribute penghubung: kode_ruang (FK kode_ruang di mata_kuliah)

b. dosen mengajar mata_kuliah:
Tabel utama: dosen
Tabel kedua: mata_kuliah
Relationship: One-to-many (1:n)
. Attribute penghubung: nip (FK nip di mata_kuliah)

c. dosen membimbing mahasiswa:
. Tabel utama: dosen
Tabel kedua: mahasiswa
. Relationship: One-to-many (1:n)
. Attribute penghubung: nip (FK nip di mahasiswa)
d. mahasiswa mengambil mata_kuliah:
Tabel utama: mahasiswa, mata_kuliah
Tabel kedua: mhs_ambil_mk
Relationship: Many-to-many (m:n)
Attribute penghubung: nim, kode_mk (FK nim, kode_mk di mhs_ambil_mk)

Tahap 4 : Pembuaatan ERD


EER (Enhanced Entity Relationship) Diagram:






Gambar 2. Contoh ERD One to Many
Dari contoh diatas :
Terdapat 2 Entity yaitu Dosen & Matakuliah
Entity Dosen mempunyai attribute : nip dan nama_dosen
Entity Matakuliah mempunyai attribute : kode_mk dan nama_mk
Pada entity Dosen, nip digunakan sebagai primary key
Pada entity Matakuliah, kode_mk digunakan sebagai primary key
Antara entity Dosen & Matakuliah terdapat sebuah relationship yaitu Mengajar
Disebut One to Many, karena seorang dosen dapat mengajar mata kuliah lebih dari 1
Gambar 3. Contoh ERD Many to Many
Dari contoh diatas :
Terdapat 2 Entity yaitu Mahasiswa & Matakuliah
Entity Mahasiswa mempunyai attribute : nim dan nama_mhs
Entity Matakuliah mempunyai attribute : kode_mk dan nama_mk
Pada entity Mahasiswa, nim digunakan sebagai primary key
Pada entity Matakuliah, kode_mk digunakan sebagai primary key
Antara entity Mahasiswa & Matakuliah terdapat sebuah relationship yaitu mengambil
Disebut Many to Many, karena seorang Mahasiswa dapat mengambil mata kuliah lebih dari 1 dan
sebaliknya, 1 matakuliah dapat diambil mahasiswa lebih dari 1.
Keterangan
Supertype :
Entity mahasiswa dengan entity program studi :
Relasi tabelnya M to 1 : banyak mahasiswa mengambil satu program studi
Subtype :
Entity mahasiswa dengan entity KHS :
Relasi tabelnya M to M : banyak mahasiswa mengambil banyak KRS
Entity mahasiswa dengan entity KRS :
Relasi tabelnya M to M : banyak mahasiswa mengambil banyak KRS
Entity mahasiswa dengan entity mata kuliah :
Relasi tabelnya M to M : banyak mahasiswa mendapat banyak KRS
Entity mahasiswa dengan entity mata kuliah :
Relasi tabelnya M to M : banyak mahasiswa mengambil banyak mata kuliah
Entity mata kuliah dengan entity dosen :
Relasi tabelnya M to M : banyak mata kuliah diajar banyak dosen
Entity mata kuliah dengan entity mata jadwal :
Relasi tabelnya M to M : banyak mata kuliah mempunyai banyak jadwal
Entity dosen dengan entity jadwal :
Relasi tabelnya M to M : banyak dosen mempunyai banyak jadwal
PDM

Keterangan
Primary key pada tabel mahasiswa yaitu NPM, primary key pada tabel program studi yaituId Progdi. Relasi tabel
mahasiswa dengan tabel program studi yaitu many to one, banyak mahasiswa mengambil satu program studi.
Dimana Id progdi akan menjadi foreign keydi tabel mahasiswa.
Primary key pada tabel mahasiswa yaitu NPM, primary key pada tabel KRS yaitu Id KRS.Relasi tabel mahasiswa
dengan tabel KRS yaitu many to many, banyak mahasiswa mengambil banyak KRS. Dimana NPM akan
menjadi foreign key di tabel KRS. Sehingga di tabel KRS akan diketahui NPM mahasiswa yang mengambil KRS.
Primary key pada tabel mahasiswa yaitu NPM, primary key pada tabel KHS yaitu Id KHS.Relasi tabel mahasiswa
dengan tabel KHS yaitu many to many, banyak mahasiswa mengambil banyak KHS. Dimana NPM akan
menjadi foreign key di tabel KHS. Sehingga di tabel KHS akan diketahui NPM mahasiswa yang mengambil KHS.
Primary key pada tabel mahasiswa yaitu NPM, primary key pada tabel mata kuliah yaituId mata kuliah. Relasi tabel
mahasiswa dengan tabel mata kuliah yaitu many to many, banyak mahasiswa mengambil banyak mata kuliah.
Dimana NPM akan menjadi foreign key di tabel mata kuliah. Sehingga di tabel mata kuliah akan diketahui mata
kuliah mana saja yang diambil oleh mahasiswa.
Primary key pada tabel mata kuliah yaitu Id mk, primary key pada tabel dosen yaitu Id dosen. Relasi tabel mata
kuliah dengan tabel dosen yaitu many to many, banyak dosen mengajar banyak mata kuliah atau sebaliknya. Dimana
relasi many to many antar dua tabel tersebut menghasilkan tabel detail mengajar yang isinya primary key dari kedua
tabel yang berelasi yaitu tabel mata kuliah dan tabel dosen. Tabel detail mengajar berisiId mk dan Id_dosen.
Primary key pada tabel dosen yaitu Id dosen, primary key pada tabel jadwal yaitu Id jadwal. Relasi tabel dosen
dengan jadwal yaitu many to many, banyak dosen mempunyai banyak jadwal ataupun sebaliknya. Dimana
relasi many to many antar dua tabel tersebut menghasilkan tabel detail mempunyai yang isinya primary key dari
kedua tabel yang berelasi. Tabel detail mempunyai barang berisi Id dosen dan id jadwal.
Active Database
Store Procedure :
Tabel Dosen : insert, update, delete
Tabel Mahasiswa : insert, update, delete
Tabel Mata Kuliah : insert, update, delete
Tabel Jadwal : insert, update, delete
Trigger :
- Jika pada tabel Mahasiswa dilakukan Insert, Update, Delete pada nama mahasiswa maka juga akan terjadi
perubahan data sesuai dengan event yang dilakukan pada saat trigger pada tabel KRS dan KHS nama mahasiswa
- Jika pada tabel KHS dilakukan Insert, Update, Delete pada Jumlah SKS diambil maka juga akan terjadi
perubahan data sesuai dengan event yang dilakukan pada saat trigger pada tabel KRS Jumlah SKS diambil