3.1 PENDAHULUAN
Bab ini akan membahas bagaimana profesional sistem menggambarkan model data
secara grafik dengan menggunakan entity relationship diagram yang kadang-kadang
dikenal sebagai ERD (istilah ini yang akan selalu digunakan) atau diagram ER.
Dengan kata lain, ERD adalah suatu model jaringan yang menggunakan susunan
data yang disimpan dalam sistem secara abstrak. Jadi, jelaslah bahwa ERD ini berbeda
dengan DFD yang merupakan suatu model jaringan fungsi yang akan dilaksanakan oleh
sistem , sedangkan ERD merupakan model jaringan data yang menekankan pada struktur-
struktur dan relationship data.
Biasanya ERD ini digunakan oleh profesional sistem untuk berkomunikasi dengan
pemakai eksekutif tingkat tinggi dalam suatu organisasi (seperti: wakil presiden direktur
dan manajer yang tidak tertarik pada pelaksanaan operasi-operasi sistem sehari-hari).
Pemakaian ini lebih tertarik pada data-data apa saja yang dibutuhkan untuk bisnis mereka?
Bagaimana data tersebut berelasi dengan data lainnya? Siapa saja yang diperkenankan
untuk mengakses data tersebut?
ERD juga menguntungkan bagi profesional sistem, karena ERD memperlihatkan
hubungan antara data store pada DFD. Hubungan ini tidak terlihat pada DFD, karena DFD
hanya memusatkan perhatian pada fungsi-fungsi sistem bukan pada data yang dibutuhkan.
Entitas
Entitas Lemah
Relationship
Identifying Relationship
Gerund
Atribut
Atribut Multivalue
Atribut Komposisi
Derived Attribute
Derajat Relationship
Unary
Binary
Ternary
Kardinalitas Relationship
1 1 Kardinalitas satu-ke-satu
1 M Kardinalitas satu-ke-banyak
M M Kardinalitas banyak-ke-banyak
Relationship
Class – Subclass / Subtype – Supertype
ISA
Relationship Class-Subclass
ISA
Relationship Eksklusif
Ada perbedaan penting antara tipe entitas dengan instance entitas. Tipe entitas
(kadang-kadang disebut kelas entitas) adalah sekumpulan entitas yang menggunakan sifat
dan karakteristik yang sama. Masing-masing tipe entitas dalam ERD diberikan nama yang
mewakili satu kelas/set dan biasanya menggunakan kata benda. Contoh: MAHASISWA,
KOTA, KURSUS (Lihat Gambar 3.2)
Instance entitas (intance) adalah satu kejadian tunggal dari tipe entitas. Gambar 3.3
menerangkan perbedaan antara tipe entitas dan dua instancenya. Banyak instance dari tipe
entitas tersebut yang mewakili data yang disimpan dalam database. Misalkan, hanya ada
satu tipe entitas MAHASISWA, tetapi ada banyak instance dari entitas ini yang disimpan
dalam database.
Tipe Entitas : MAHASISWA
Atribut : NPM
NAMA
ALAMAT
RT/RW
KOTA
KODEPOS
T_LAHIR
TGL LAHIR
Instance dari MAHASISWA : 10292432 50293701
Mawarwati Amir Samsudin
Jl. ABC No.13 Jl. BDF No. 35
001/004 012/003
Jakarta Selatan Jakarta Timur
12920 13444
Semarang Jakarta
150673 240274
4 | Entity Relationship Diagram
3.3.2 Atribut
Tiap tipe entitas memiliki sekumpulan atribut yang berkaitan dengannya. Dengan
kata lain, atribut merupakan sifat atau karakteristik suatu entitas yang menyediakan
penjelasan detail tentang entitas tersebut. Bukan hanya entitas yang memiliki atribut, tetapi
relationship.
Dibawah ini, diberikan contoh beberapa tipe entitas beserta atributnya :
MAHASISWA : NPM, NAMA, ALAMAT, RT/RW, KOTA, KODEPOS
MOBIL : NO_MOBIL, WARNA, JENIS, CC
PEGAWAI : NIP, NAMA, ALAMAT, KEAHLIAN
Ada beberapa tipe atribut tersebut yang perlu diperhatikan dalam penggambaran
ERD, yaitu atribut kunci kandidat (candidate key) dan kunci utama (primary key); atribut
bernilai tunggal (single-value attribute) dan bernilai jamak (multivatue attribute); atribut
komposisi (composite attribute) dan atomic (atomic attribute); dan atribut yang dihasilkan
(derived attribute). Kesemua tipe atribut ini akan dijelaskan pada sub bab-sub bab berikut.
Alamat Rt_Rw
Kota
Nama
Kodepos
NPM
Mahasiswa
Warna Jenis
Mobil
No.mobil CC
Nm_Tengah
Nm_Belakang Nm_Depan
Nama
Pegawai
Ada juga suatu atribut yang tidak dapat dibagi kedalam beberapa atribut yang lebih
kecil, atribut ini disebut Atribut atomic, misalkan atribut JENIS untuk entitas MOBIL.
Tgl_lahir Umur
Mahasiswa
Gambar 3.7
3.3.3 Relationship
Relationship merupakan hubungan yang terjadi antara instance-instance dari satu
atau lebih tipe entitas. Misalkan, suatu perguruan tinggi tertarik untuk mengetahui mata
kuliah apa saja yang telah diambil oleh tiap mahasiswanya. Hal ini menuju pada suatu
relationship (yang disebut Mengambil) antara entitas MAHASISWA dan
MATA_KULIAH yang dapat digambarkan sebagai berikut :
Mahasiswa Mata_Kuliah
Mengambil
l
Semester
Perlu diingat bahwa sebaliknya relationship diberi nama dengan menggunakan frasa
kata kerja yang singkat dan deskriptif pada si pemakai.
Jumlah
Mahasiswa Menikah
Pabrik Mengirimkan Gudang
Dari contoh diatas jelaslah bahwa suatu toko video mungkin memiliki lebih dari satu
copy untuk film-film tertentu, tetapi toko tersebut mungkin tidak memiliki satu copy pun
dari suatu film tertentu dalam persediaan. Dengan demikian dibutuhkan notasi yang lebih
rinci untuk menunjukkan range kardinalitas untuk suatu relationship.
Kardinalitas minimum dan maksimum. Kardinalitas minimum suatu relationship
adalah jumlah minimum instance dari entitas B yang mungkin berhubungan dengan tiap
instance dari entitas A. Pada contoh sebelumnya, jumlah minimum copy film yang tersedia
untuk suatu film adalah ‘nol’. Kardinalitas maksimum adalah jumlah maksimum instance.
Untuk contoh diatas, jumlah maksimumnya adalah “banyak” (suatu nilai tak terdefinisi
yang lebih dari satu). Dengan menggunakan notasi pada Gambar 3.1, relationship ini
digambarkan sebagai berikut :
Film Disimpan sbg Copy_Film
Pasien Riwayat
Memiliki
Penyakit
Pegawai Menikah
dengan
PEGAWAI Menikahi PEGAWAI (Gambar 3.13(c)). ERD ini adalah kardinalitas nol
atau satu dalam kedua arah, karena seorang pegawai mungkin atau tidak menikah.
Mungkin juga kardinalitas maksimum merupakan jumlah yang sudah pasti, bukan
nilai banyak yang berubah-ubah. Misalkan, kebijakan, perusahaan menyatakan bahwa
seorang pegawai mungkin bekerja pada paling banyak lima proyek pada waktu yang sama.
Dengan aturan ini, angka lima dapat ditempatkan diatas atau dibawah garis berkaki tiga
dekat entitas PROYEK pada Gambar 3.13(b).
Ketergantungan Keberadaan (Existence Dependency). Konsekuensi dari
kardinalitas mandatory one adalah bahwa suatu instance dari tiap entitas tidak akan ada,
kecuali bila ada suatu instance dari tipe entitas yang direlasikan. Misalkan, suatu instance
dari entitas COPY FILM tidak akan ada kecuali entitas.
FILM yang direlasikan sudah ada. Dengan kata lain, ketergantungan keberadaan
berarti bahwa suatu instance dari satu entitas tidak akan ada tanpa keberadaan instance dari
entitas lain yang direlasikannya.
Istilah lain yang sering digunakan untuk tipe entitas yang memiliki kardinalitas
mandatory one adalah entitas lemah (weak entity). Entitas lemah adalah suatu tipe entitas
yang memiliki ketergantungan keberadaan atau suatu entitas yang tidak memiliki atribut
kunci utama. Oleh sebab itu, suatu instance dari entitas lemah tidak akan ada secara bebas,
tetapi tergantung pada keberadaan instance entitas lainnya. Dengan kata lain, beberapa
instance entitas tidak dapat dibedakan satu sama lain, karena kombinasi dan nilai atribut
entitas-entitas tersebut sama. Untuk contoh film video, COPY FILM adalah entitas lemah.
Identifying Relationship. Seperti telah dijelaskan diatas bahwa entitas lemah sering
tidak memiliki identifier alami (atau kunci kandidat), maka kunci utama dari entitas
parent/pemilik (entitas tempat entitas lemah, bergantung) sering digunakan sebagai bagian
kunci utama dari entitas anak (child) yang bergantung. Gambar 3.12 dapat diperbaiki seperti
pada Gambar 3.14.
Pada gambar diatas, tampaklah bahwa kunci utama entitas parent FILM, yaitu
NO_FILM, adalah bagian dari kunci utama entitas anak COPY FILM (NO_COPY adalah
bagian lain dari kunci utamanya). Suatu Identifying relationship merupakan relationship
tempat kunci utama entitas parent digunakan sebagai bagian kunci utama dari entitas anak.
Ada dua keuntungan dari Identifying Relationship, yaitu :
1. Integritas data. Ketergantungan keberadaan dikuatkan karena kunci utama yang dipakai
bersama-sama (oleh sebab itu entitas lemah tidak akan ada kecuali entitas parent ada).
2. Memudahkan pengaksesan entitas anak. Pada contoh diatas, COPY FILM dapat dicari
jika nomor film dan nomor copy diketahui.
3.3.3.3 Gerund
Gerund (yang kadang-kadang disebut entitas komposisi) adalah suatu relationship
banyak-ke-banyak yang menjadi entitas dengan relationship (yang memiliki kardinalitas
satu-ke-banyak, Gambar 3.15 menunjukkan representasi alternatif dari relationship ternary
yang digambarkan pada Gambar 3.10(c). Pada gambar 3.15, tipe entitas (gerund)
PENGIRIMAN menggantikan relationship Mengirim pada Gambar 3.10(c). Simbol belah
ketupat diikut-sertakan dalam simbol persegi panjang untuk entitas sebagai pengingat
bahwa entitas ini, dihasilkan dari suatu relationship.
Tiap instance PENGIRIMAN merepresentasikan pengiriman yang sesungguhnya
dilakukan oleh pabrik alat tertentu menuju ke gudang yang sudah ditentukan. JUMLAH
pengiriman merupakan atribut PENGIRIMAN. Nomor pengiriman, diberikan untuk tiap
pengiriman yang dilaksanakan dan merupakan atribt kunci utama (Lihat Gambar 3.15)
No Pengiriman Jumlah
Alat
Warna Jenis
No Mobil CC
Mobil
Mobil Warna
Memiliki
Tgl.
Kunjungan Dokter Gejala
03-02-95 Amir Demam
17-06-95 Hasan Sakit Tenggorokan
16-08-95 Amir Flu
……
……
……
Nama Pasien
No Pasien Alamat
Pasien
Tgl Kunjungan
Tgl Kunjungan2
Tgl Kunjungan1
Dokter
Pasien Memiliki
Riwayat
Pasien
Gejala
No Pasien