Anda di halaman 1dari 51

Simbol dalam ERD

Simbol Entitas yang


Entitas juga
merupakan
Relasi

Simbol Simbol
Relasi Atribut
Cara Menemukan Entitas
Buat ilustrasi/gambaran cerita tentang sistem
yang akan dicari entitasnya
Tandai setiap objek yang diwakili oleh kata benda
yang ada di dalam ilustrasi tersebut
Untuk setiap objek tersebut yakinkan bahwa ia
memiliki karakteristik yang nanti disebut sebagai
atribut
Tentukan objek yang merupakan entitas (Jika
memang ia memiliki karakteristik jadikan ia
sebagai entitas)
Contoh Cara Menemukan Entitas(1)
 Contoh : Sistem Kepegawaian di perusahaan A
 Langkah 1: Buat ilustrasi/gambaran cerita tentang sistem kepegawaian di
perusahaan A
 Perusahaan A memiliki 100 pegawai. Setiap pegawai dipimpin
pengawas/mandor dari pegawai perusahaan itu sendiri dan tidak
semua pegawai memimpin pegawai yang lain. sehingga satu
pengawas dapat memimpin beberapa pegawai. Setiap pegawai
bekerja untuk suatu departemen dan dalam suatu departemen dapat
terdiri dari beberapa pegawai. Setiap departemen dikepalai oleh
seorang pegawai yang bekerja mulai tanggal tertentu. Sebuah
departemen dapat berada di beberapa lokasi. Selain bekerja di suatu
departemen pegawai dapat bekerja pada beberapa proyek. Setiap
proyek dikendalikan/diatur oleh suatu departemen, namun suatu
departemen tidak harus mengendalikan/mengatur proyek. Satu
departemen dapat mengendalikan beberapa proyek dan satu proyek
hanya dikendalikan oleh satu departemen Satu proyek dapat terdiri
dari beberapa pegawai. Untuk keperluan penggajian perusahaan
memerlukan data tanggungan pegawai. Seorang pegawai dapat
menanggung beberapa tanggungan. Jika seorang pegawai pindah
maka datanya akan dipindahkan/dihapus berikut data
tanggungan/keluarganya.
Contoh Cara Menemukan Entitas(2)
 Langkah 2: Tandai setiap objek yang diwakili oleh kata benda yang ada
di dalam ilustrasi tersebut
 Perusahaan A memiliki 100 pegawai. Setiap pegawai dipimpin
pengawas/mandor dari pegawai perusahaan itu sendiri dan tidak
semua pegawai memimpin pegawai yang lain. sehingga satu
pengawas dapat memimpin beberapa pegawai. Setiap pegawai
bekerja untuk suatu departemen dan dalam suatu departemen
dapat terdiri dari beberapa pegawai. Setiap departemen dikepalai
oleh seorang pegawai yang bekerja mulai tanggal tertentu. Sebuah
departemen dapat berada di beberapa lokasi. Selain bekerja di suatu
departemen, pegawai dapat bekerja pada beberapa proyek. Setiap
proyek dikendalikan/diatur oleh suatu departemen, namun suatu
departemen tidak harus mengendalikan/mengatur proyek. Satu
departemen dapat mengendalikan beberapa proyek dan satu proyek
hanya dikendalikan oleh satu departemen Satu proyek dapat terdiri
dari beberapa pegawai. Untuk keperluan penggajian perusahaan
memerlukan data tanggungan pegawai. Seorang pegawai dapat
menanggung beberapa tanggungan. Jika seorang pegawai pindah
maka datanya akan dipindahkan/dihapus berikut data
tanggungan/keluarganya.
PPPGT VEDC MALANG
Contoh Cara Menemukan Entitas(2)
Langkah 3: Untuk setiap objek tersebut yakinkan bahwa ia
memiliki karakteristik yang nanti disebut sebagai atribut
 Perusahaan: NoPerusahaan, nama, alamat
 Pegawai: NoKTP, Nama, Alamat, Jenis kelamin,gaji
 Pengawas:NoKTP, Nama, Alamat, Jenis kelamin,gaji
 Departemen: Nomor, Nama, lokasi, jumlah pegawai
 Lokasi : lokasi
 Proyek: Nomor, nama, lokasi
 Tanggungan: nama, jenis kelamin, tanggal lahir, hubungan dengan
pegawai

PPPGT VEDC MALANG


Contoh Cara Menemukan Entitas(3)
 Langkah 4: Tentukan objek yang merupakan entitas (Jika memang ia
memiliki karakteristik jadikan ia sebagai entitas)
 Perusahaan: NoPerusahaan, nama, alamat (hanya berisi satu baris
data)  bukan entitas
 Pegawai: NoKTP, Nama, Alamat, Jenis kelamin,gaji  entitas kuat
 Pengawas:NoKTP, Nama, Alamat, Jenis kelamin,gaji  sama
dengan entitas Pegawai
 Departemen: Nomor, Nama, lokasi, jumlah pegawai  entitas kuat
 Lokasi : lokasi (karakteristiknya departemen, tidak memiliki
karakteristik lain (unik))  bukan entitas
 Proyek: Nomor, nama, lokasi  entitas kuat
 Tanggungan: nama, jenis kelamin, tanggal lahir, hubungan dengan
pegawai  entitas lemah (tergantung pada pegawai)

PPPGT VEDC MALANG


NmDepan Inisial NmBlk
ERD Perusahaan
Nama

Alamat Gaji nama nomor lokasi8

JenisKel bekerja
untuk
Pegawai Departemen
NoKTP
mengepalai
JmlPegawai

(0,N )
TglMulai
mengatur
bekerja
memimpin
pada

(1,1 )
menanggung
LamaJam Proyek
(1,1 )

Nomor Nama Lokasi


Tanggungan

Nama Hubungan
JenisKel TglLahir
Notasi ER Diagram
Entity sets digambarkan dengan
Relationship sets digambarkan dengan
Hubungan antara Entity sets – Relationship sets serta
atribut – entity sets digambarkan dengan garis
Atribut digambarkan dengan
Atribut Multivalue
Atribut Key

Nama_Perusahaan
Nama

NIP Alamat ID Alamat_Perush

Pegawai Bekerja Perusahaan


Transformasi ER ke Tabel
jalan
Nama kota Nama_matkul

NIM Alamat kode sks

Mahasiswa Matkul

Jadi Tabel : Mahasiswa Jadi Tabel : Matkul

Atribut jadi nama field


Diagram E-R dengan atribut Composite,
Multivalued dan derived
Himpunan Relasi dengan Atribut
NmDepan Inisial NmBlk
ERD Perusahaan
Nama

Alamat Gaji nama nomor lokasi8

JenisKel bekerja
untuk
Pegawai Departemen
NoKTP
mengepalai
JmlPegawai

(0,N )
TglMulai
mengatur
bekerja
memimpin
pada

(1,1 )
menanggung
LamaJam Proyek
(1,1 )

Nomor Nama Lokasi


Tanggungan

Nama Hubungan
JenisKel TglLahir
Derajat kardinalitas relasi (Cardinality
Ratio)
Kardinalitas relasi menunjukkan jumlah maksimum
data entitas yang dapat berelasi dengan entitas lain
Satu ke satu (one to one)
Setiap data pada entitas A berhubungan dengan
maksimal satu data pada entitas B, begitu pula
sebaliknya

Entitas A Entitas B
Contoh:
data 1 data 1
relasi “mengepalai” antara
entitas Pegawai dengan data 2 data 2

entitas Departemen data 3 data 3

data 4 data 4
Satu ke Banyak (one to many)
Setiap data pada entitas A bisa berhubungan
dengan banyak data pada entitas B, tetapi data
pada entitas B berhubungan maksimal hanya
dengan sebuah data di A
Entitas Entitas
A B
Contoh:
data 1 data 1
relasi “menanggung” antara
entitas pegawai terhadap data 2 data 2

entitas tanggungan data 3 data 3

data 4
Banyak ke Satu (many to one)
Merupakan kebalikan dari relasi satu-ke-banyak

Entitas A Entitas B
Contoh:
data 1 data 1
relasi “bekerja untuk” pada
entitas pegawai terhadap entitas data 2 data 2
departemen
data 3 data 3

data 4
Banyak ke banyak
(many to many)
Setiap data pada entitas A bisa berhubungan
dengan banyak data pada entitas B, demikian
pula sebaliknya
Entitas A Entitas B

Contoh:
data 1 data 1

relasi “bekerja pada” pada entitas


data 2 data 2
Pegawai terhadap entitas proyek
data 3 data 3

data 4 data 4
Batasan Partisipasi (Participation
Constraint)
Menentukan apakah keberadaan sebuah entitas
tergantung pada hubungannya ke entitas lain
melalui jenis relasinya
Ada 2 jenis:
1. Partisipasi Total partisipasi pegawai dalam relasi “bekerja
untuk”, memberikan arti bahwa setiap data pada pegawai, harus
direlasikan pada sebuah departemen. Atau tidak ada data pegawai
yang tidak berelasi dengan data departemen

2. Partisipasi sebagian partisipasi pegawai dalam relasi


“mengepalai” terhadap departemen, tidak setiap data pada
pegawai dihubungkan dengan departemen dengan relasi ini. Atau
tidak semua pegawai mengepalai departemen
Partisipasi Total
Contoh:
Semua pegawai harus bekerja di bawah suatu departemen (relasi
disisi pegawai adalah relasi total)

Notasi :
Partisipasi total:
digambarkan dengan
garis ganda pada relasi
disisi pegawai

Partisipasi total :
digambarkan dengan satu
garis pada relasi disisi
pegawai digabungkan
dengan minimum 1
(minimum bekerja pada 1
(Min,max) departemen)
PPPGT VEDC MALANG
Partisipasi Parsial
 Contoh:Beberapa pegawai mengepalai sebuah departemen (setiap
pegawai tidak harus mengepalai suatu departemen)
 Notasi:

Partisipasi parsial:
digambarkan dengan satu
garis pada relasi disisi
pegawai
Partisipasi parsial :
ditandai dengan satu
garis pada relasi disisi
pegawai digabungkan
dengan minimum 0 (tidak
mengepalai departemen)

PPPGT VEDC MALANG


Derajat Relasi Minimum
 Menunjukkan hubungan (korespondensi) minimum
yang boleh terjadi dalam sebuah relasi antar
entitas.
 Notasi (x,y) pada relasi menunjukkan derajat
minimum (x) dan derajat maksimum (y) pada
sebuah relasi
 Partisipasi total bisa dinotasikan dengan
memberikan derajat relasi minimum (x) = 1
Contoh:
pada relasi “bekerja untuk” pada entitas pegawai terhadap
departemen Derajat relasi minimumnya adalah satu
Notasi lain untuk relasi
Macam relasi
relasi Biner (binary relation)
relasi tunggal (unary relation)
relasi Multi entitas (n-ary relation)
relasi ganda (redundant relation)
Relasi Biner (Binary Relation)
Merupakan relasi yang terbentuk antar 2 buah entitas

Contoh:
relasi “bekerja pada” pada entitas pegawai terhadap
entitas proyek

Pegawai Bekerja Pada Proyek


(1,N) (1,N)
Relasi Tunggal (Unary Relation)
Merupakan relasi yang terjadi dari sebuah entitas ke
entitas yang sama

Contoh:

relasi memimpin pada entitas pegawai

Pegawai

memimpin
Relasi Multi Entitas
(N-ary Relation)
Merupakan relasi dari 3 buah entitas atau lebih.
Seharusnya dihindari, karena akan mengaburkan
derajat relasi yang ada dalam relasi.

Contoh:
Instr uktur Menawarkan Semester

Nama
ID Semester
Kursus Tahun

NoKursus
Relasi Ganda
(Redundant Relation)
Relasi yang jumlahnya lebih dari satu untuk dua buah
entitas

Contoh:

bekerja
untuk
Pegawai Departemen

mengepalai
Konsep Foreign Key
Foreign key adalah kolom yang diambil dari primary key
entitas lain yang menggunakan hubungan antar 2 tabel
tsb.
Fakta
Adi, Budi dan Cici bekerja pada
bagian Persinalia. Sedangkan
Rudi dan Santo bekerja pada
bagian Gudang

Dari fakta diatas dan panah relasi


sebelah kiri, bagaimana cara
menuliskan data yang
menunjukkan hubungan/relasi
antar tabel pegawai dan
departemen?
Algoritma 1
Untuk setiap entitas kuat EK, buat tabel baru EK
yang memasukkan semua attribut sederhana
(simple attribut)
Untuk atribut komposit, hanya atribut
sederhananya yang disertakan
Pilih salah satu key attribute dari EK sebagai
primary key. Jika key yang terpilih merupakan
atribut komposit, seluruh atribut sederhananya
merupakan primary key
Algoritma 1
N m Depan In is ia l N m B lk

Tabel PEGAWAI
Nam a NoKTP
Langkah 1
NmDepan
A la m a t G a ji Inisial
NmBlk
JenisKel
J e n is K e l
Alamat
Gaji
Pegawai
NoKTP

Atribut komposit nama tidak menjadi field/kolom pada tabel


PEGAWAI, tetapi yg dimasukkan adalah bagian simple
attributnya.
Algoritma 2
Untuk setiap entitas lemah EL yang dimiliki oleh
entitas kuat EK, buat tabel baru EL yang memasukkan
semua atribut sederhana EL
Tambahkan pada EL foreign key yang diambil dari
primary key EK
Primary key yang dibentuk merupakan gabungan
primary key EK dan partial key dari EL (jika ada)
Algoritma 2
Pegawai
NoKTP
Tabel
(0,N)

TANGGUNGAN
menanggung Langkah 2 Peg_NoKTP
(1, Nama
1)
JenisKel
Tanggungan TglLahir
Hubungan
Nama Hubungan
JenisKel TglLahir
Algoritma 3
Untuk setiap relasi 1:1 antara entitas EK1 dan EK2:
Jika sama-sama merupakan partisipasi total, pilih salah
satu. Tambahkan semua semua simple attribut dari entitas
yang lain
Jika sama-sama merupakan partisipasi parsial, pilih salah
satu. Tambahkan foreign key dari primary key entitas yang
lain
Jika salah satu merupakan partisipasi total, pilih yang
berpartisipasi total. Tambahkan foreign key dari primary key
entitas yang lain

Kemudian tambahkan semua simple atribut dari relasi


tersebut
Algoritma 3
Pegawai (0,1) Departemen
NoKTP (1,1)
mengepalai

Tabel
Langkah 1-3 DEPARTEMEN

Peg_NoKTPKepala

Kolom-kolom yang telah dibentuk


pada langkah-langkah sebelumnya
Algoritma 4
Untuk setiap relasi 1:N antara entitas EK1 dan EK2,
pilih entitas yang memiliki derajat maksimum relasi=1
Tambahkan sebuah foreign key dari primary key
entitas lain yang memiliki derajat maksimum relasi =
N
Tambahkan pula seluruh atribut dari relasi tersebut
Algoritma 4
NoKTP nam a nom or

b e k e r ja
Pegawai (1,1) u n tu k (1,N) D e p a rte m e n

Tabel PEGAWAI
Langkah 4

Dep_NomorBekerja
Dep_NamaBekerja

Kolom-kolom yang telah dibentuk


pada langkah-langkah sebelumnya
Algoritma 5
Untuk setiap relasi M:N antara entitas EK1 dan EK2,
buat tabel baru MN
Tambahkan seluruh simple attribut dari relasi
tersebut
Tambahkan pula foreign key yang diambil dari
primary key masing-masing entitas yang direlasikan
 Primary key merupakan gabungan dari seluruh
foreign key tersebut
Algoritma 5
N oKTP

Pegawai b e k e r ja
(1,N) (1 ,N ) P ro y e k
pada

Lam aJam N om or Nam a

Tabel
Langkah 5
BEKERJAPADA
Peg_NoKTP
Pro_Nomor
Pro_Nama
LamaJam
Algoritma 6
Untuk setiap multivalued attribute, buat tabel baru
MV
Tambahkan seluruh simple attributnya
Tambahkan pula sebagai foreign key, primary key
dari entitas yang memiliki
Primary key merupakan gabungan dari dari seluruh
fieldnya
Algortima 6
nam a nom or l o k8 a s i

Tabel
Langkah 6 DEP_LOKASI
Dep_Nomor
D e p a rte m e n
Dep_Nama
Lokasi
J m lP e g a w a i
NmDepan Inis ial NmBlk
ERD Perusahaan
Nama

Alamat Gaji nama nomor lokasi8

JenisKel bekerja
untuk
Pegawai Departemen
NoKTP
mengepalai
JmlPegawai

(0,N )
TglMulai
mengatur
bekerja
memimpin
pada

(1,1 )
menanggung
LamaJam Proyek
(1,1 )

Nomor Nama Lokasi


Tanggungan

Nama Hubungan
JenisKel TglLahir
Contoh
Berdasarkan ERD
Step 1:
Langkah pertama mendefinisikan entitas kuat
Tabel Pegawai
Entitas pegawai memiliki atribut NoKTP,JenisKel,Alamat,Gaji dan
atribut composit Nama (NmDepan,Inisial,NmBlk). Sehingga skema
tabel pegawai sbb:
NoKTP NmDepan Inisial NmBlk JenisKel Alamat Gaji

Tabel Departemen
Entitas departemen memiliki atribut Nomor,Nama, JmlPegawai dan
atribut multi valued lokasi yang bisa menjadi tabel lain yang mengacu
ke tabel departemen. Skemanya adalah sbb:
Nomor Nama JmlPegawai
Contoh
Tabel proyek
Entitas proyek terdiri dari atribut Nomor, Nama,Lokasi. Skema dari
tabel proyek adalah
Nomor Nama Lokasi

Step 2:
Langkah kedua adalah mendefinisikan entitas lemah
Tabel Tanggungan
Entitas tanggungan bergantung pada entitas pegawai. Atibutnya
adalah Nama,JenisKel,TglLahir,Hubungan. Primary key dari entitas
pegawai masuk ke entitas tanggungan
NoKTP Nama JenisKel TglLahir Hubungan
Contoh
Step 3:
Tabel Departemen
Pada relasi mengepalai, suatu departemen dikepalai oleh 1 pegawai
sehingga primary key entitas pegawai masuk ke entitas departemen,
ditambahkan dengan atribut tglMulai
Nomor Nama JmlPegawai NoKTP TglMulai

Step 4:
Tabel Pegawai
Pada relasi memimpin dan bekerja, primary key dari departemen
masuk ke entitas pegawai dan setiap pegawai memiliki pimpinan
NoKTP NmDepan Inisial NmBlk JenisKel Alamat Gaji

… NoKTP_Pimpinan dep_nomor Dep_nama


Contoh
Tabel Proyek
Berdasarkan relasi mengatur, maka primary key dari entitas
departemen masuk ke entitas proyek

Nomor Nama Lokasi dep_nomor dep_nama

Step 5:
Tabel BekerjaPada
Pada relasi bekerja pada memiliki relasi many to many sehingga akan
muncul tabel baru yang primary keynya berasal dari entitas pegawai
dan proyek
noKTP proyek_nomor proyek_nama lamaJam
Contoh
Step 6:
Tabel Departemen_Lokasi
Dari atribut muti valued lokasi akan dibuat tabel baru yang skemanya
sebagai berikut
dep_nomor dep_nama Lokasi

Anda mungkin juga menyukai