pemodelan basis data entity-relationship diagram filepemodelan basis data entity-relationship...

37
Pemodelan Basis Data Entity-Relationship Diagram Yusuf Priyandari @Agustus 2010

Upload: doanthuan

Post on 08-Apr-2019

296 views

Category:

Documents


6 download

TRANSCRIPT

Page 1: Pemodelan Basis Data Entity-Relationship Diagram filePemodelan Basis Data Entity-Relationship Diagram Yusuf Priyandari @Agustus 2010. 2 Tahap Pengembangan Basis Data ... untuk suatu

Pemodelan Basis Data

Entity-Relationship Diagram

Yusuf Priyandari

@Agustus 2010

Page 2: Pemodelan Basis Data Entity-Relationship Diagram filePemodelan Basis Data Entity-Relationship Diagram Yusuf Priyandari @Agustus 2010. 2 Tahap Pengembangan Basis Data ... untuk suatu

2

Tahap Pengembangan Basis Data

Model

pri.and.ari@2010

1

2

3

4 5

6 7

1

Topics discussed

Page 3: Pemodelan Basis Data Entity-Relationship Diagram filePemodelan Basis Data Entity-Relationship Diagram Yusuf Priyandari @Agustus 2010. 2 Tahap Pengembangan Basis Data ... untuk suatu

3 pri.and.ari@2010

Page 4: Pemodelan Basis Data Entity-Relationship Diagram filePemodelan Basis Data Entity-Relationship Diagram Yusuf Priyandari @Agustus 2010. 2 Tahap Pengembangan Basis Data ... untuk suatu

4

MODEL E-R

ER Modeling is a top-down approach to database design.

Suatu model yang digunakan untuk menggambarkan data

dalam bentuk entitas, atribut dan hubungan antarentitas

untuk suatu organisasi/bisnis

pri.and.ari@2010

Page 5: Pemodelan Basis Data Entity-Relationship Diagram filePemodelan Basis Data Entity-Relationship Diagram Yusuf Priyandari @Agustus 2010. 2 Tahap Pengembangan Basis Data ... untuk suatu

5

1. Entitas

pri.and.ari@2010

Entitas adalah sekumpulan objek di dunia nyata yang

keberadaanya tidak bergantung pada yang lain dan

memiliki properti yang sama.

Contoh objek dalam sebuah entitas yang dapat diidentifikasi secara

unik disebut instans (entity occurrence)

Entitas dapat berupa sesuatu yang nyata ataupun abstrak (konsep).

Nyata: Anggota, Film, KantorCabang

Konsep: Persewaan, Pendaftaran, Peran

.

Page 6: Pemodelan Basis Data Entity-Relationship Diagram filePemodelan Basis Data Entity-Relationship Diagram Yusuf Priyandari @Agustus 2010. 2 Tahap Pengembangan Basis Data ... untuk suatu

6

2. Relasi

pri.and.ari@2010

Hubungan antar anggota dalam satu atau beberapa entitas.

Setiap relasi memiliki nama yang menjelaskan hubungan

yang terjadi tersebut.

Nama relasi umumnya menggunakan kata kerja (verb),

atau frase singkat.

Bila dimungkinkan, sebuah relasi bersifat unik untuk sebuah

ERD.

Page 7: Pemodelan Basis Data Entity-Relationship Diagram filePemodelan Basis Data Entity-Relationship Diagram Yusuf Priyandari @Agustus 2010. 2 Tahap Pengembangan Basis Data ... untuk suatu

7

2.1 Derajat Relasi

pri.and.ari@2010

Degree of a relationship (derajat relasi) menggambarkan

jumlah entitas yang terlibat dalam suatu relasi.

Unary/Recursif relasi Binary

Tertiary n-ary

Page 8: Pemodelan Basis Data Entity-Relationship Diagram filePemodelan Basis Data Entity-Relationship Diagram Yusuf Priyandari @Agustus 2010. 2 Tahap Pengembangan Basis Data ... untuk suatu

8

2.1 Derajat Relasi

pri.and.ari@2010

Degree of a relationship (derajat relasi) menggambarkan

jumlah entitas yang terlibat dalam suatu relasi.

Unary/Recursif relasi Binary

Tertiary n-ary

Page 9: Pemodelan Basis Data Entity-Relationship Diagram filePemodelan Basis Data Entity-Relationship Diagram Yusuf Priyandari @Agustus 2010. 2 Tahap Pengembangan Basis Data ... untuk suatu

9

2.2 Jenis Relasi (CONECTIVITY)

Jenis relasi dapat diklasifikasikan sbb:• one – to – one (1:1)

• one – to – many (1:M)

• many – to –many (M:N)

Penentuan jenis relasi antar entitas diperoleh dalam

pengamatan business rule (aturan bisnis).

Connectivity

pri.and.ari@2010

Page 10: Pemodelan Basis Data Entity-Relationship Diagram filePemodelan Basis Data Entity-Relationship Diagram Yusuf Priyandari @Agustus 2010. 2 Tahap Pengembangan Basis Data ... untuk suatu

10

2.2 Jenis Relasi (CONECTIVITY)

one – to – one (1:1)

Business rule:

Hasil relasi:

pri.and.ari@2010

Page 11: Pemodelan Basis Data Entity-Relationship Diagram filePemodelan Basis Data Entity-Relationship Diagram Yusuf Priyandari @Agustus 2010. 2 Tahap Pengembangan Basis Data ... untuk suatu

11

2.2 Jenis Relasi (CONECTIVITY)

one – to – many (1:*)

Business rule:

Hasil relasi:

pri.and.ari@2010

Page 12: Pemodelan Basis Data Entity-Relationship Diagram filePemodelan Basis Data Entity-Relationship Diagram Yusuf Priyandari @Agustus 2010. 2 Tahap Pengembangan Basis Data ... untuk suatu

12

2.2 Jenis Relasi (CONECTIVITY)

Many– to – many (*:*)

Business rule:

Hasil relasi:

pri.and.ari@2010

Page 13: Pemodelan Basis Data Entity-Relationship Diagram filePemodelan Basis Data Entity-Relationship Diagram Yusuf Priyandari @Agustus 2010. 2 Tahap Pengembangan Basis Data ... untuk suatu

13

2.2 Jenis Relasi (CONECTIVITY)

Many– to – many (*:*) in Tertiary

Business rule:

Hasil relasi:

pri.and.ari@2010

Page 14: Pemodelan Basis Data Entity-Relationship Diagram filePemodelan Basis Data Entity-Relationship Diagram Yusuf Priyandari @Agustus 2010. 2 Tahap Pengembangan Basis Data ... untuk suatu

14

2.3 Kardinalitas (CARDINALITY)

Cardinality : minimum dan maksimum jumlah instances

sebuah set entitas B dapat (atau harus) dihubungkan

dengan setiap instans pada entitas A.

pri.and.ari@2010

Page 15: Pemodelan Basis Data Entity-Relationship Diagram filePemodelan Basis Data Entity-Relationship Diagram Yusuf Priyandari @Agustus 2010. 2 Tahap Pengembangan Basis Data ... untuk suatu

15

Chen Model

1 to represent one.

M or * to represent many

Crow’s Foot

many

One

One or many

1

* / M

Mandatory one , means (1,1)

Optional, means (0,1)

Zero or many

pri.and.ari@2010

2.4 Penggambaran Relasi

Page 16: Pemodelan Basis Data Entity-Relationship Diagram filePemodelan Basis Data Entity-Relationship Diagram Yusuf Priyandari @Agustus 2010. 2 Tahap Pengembangan Basis Data ... untuk suatu

16

3. Atribut

pri.and.ari@2010

Atribut adalah properti sebuah entitas atau relasi.

Misal,

Pegawai: nama, posisi, gaji, dan nomorpegawai.

KantorCabang: alamat, kota, negarabagian, kodepos,

nomortelepon, dan nomorcabang.

Page 17: Pemodelan Basis Data Entity-Relationship Diagram filePemodelan Basis Data Entity-Relationship Diagram Yusuf Priyandari @Agustus 2010. 2 Tahap Pengembangan Basis Data ... untuk suatu

17

3. Atribut (jenis)

1. Atribut Sederhana dan Atribut Komposit

2. Atribut bernilai tunggal dan Atribut bernilai banyak

3. Atribut tersimpan dan Atribut turunan

4. Atribut Harus Bernilai dan Atribut Opsional

Page 18: Pemodelan Basis Data Entity-Relationship Diagram filePemodelan Basis Data Entity-Relationship Diagram Yusuf Priyandari @Agustus 2010. 2 Tahap Pengembangan Basis Data ... untuk suatu

18

3.1 Atribut Sederhana & Komposit

pri.and.ari@2010

Atribut sederhana (atomik) adalah atribut yang tersusun

dari sebuah komponen. Misal, hargasewa, . . .

Atribut komposit adalah atribut yang tersusun dari beberpa

komponen atau masih dapat dipecah. Misal, namapegawai,

ini dapat dipecah menjadi namadepanpegawai dan

namabelakangpegawai, . . .

Pegawai

PegId

PegNamaPegPosisi

PegGaji

PegNama

Depan

PegNama

Blkng

Page 19: Pemodelan Basis Data Entity-Relationship Diagram filePemodelan Basis Data Entity-Relationship Diagram Yusuf Priyandari @Agustus 2010. 2 Tahap Pengembangan Basis Data ... untuk suatu

19

3.2 Atribut Tunggal & Multi Atribut

pri.and.ari@2010

Pegawai

PegId

PegNamaPegPosisi

PegGaji

PegNama

DepanPegNama

Blkng

Telepon

Page 20: Pemodelan Basis Data Entity-Relationship Diagram filePemodelan Basis Data Entity-Relationship Diagram Yusuf Priyandari @Agustus 2010. 2 Tahap Pengembangan Basis Data ... untuk suatu

20

3.2 Atribut Turunan

pri.and.ari@2010

Pegawai

PegId

PegNamaPegPosisi

PegGaji

PegNama

DepanPegNama

Blkng

Telepon

TglMasuk

LamaKerja

Page 21: Pemodelan Basis Data Entity-Relationship Diagram filePemodelan Basis Data Entity-Relationship Diagram Yusuf Priyandari @Agustus 2010. 2 Tahap Pengembangan Basis Data ... untuk suatu

21

3.4 Atribut Kunci

pri.and.ari@2010

Superkey: satu atau sekumpulan atribut yang dapat

mengidentifikasi secara unik setiap instans.

Candidate key: Sebuah superkey yang hanya terdiri dari

sejumlah minimum atribut yang diperlukan untuk

mengidentifikasi secara unik setiap instans. Atau kombinasi

beberapa atribut yang dapat mengidentifikasi secara unik

setiap record/tuple.

Primary key: Candidate key yang terpilih sebagai penanda

unik bagi setiap instans/tuple.

Alternate key: Candidate key yang tidak terpilih sebagai

primary key.

Page 22: Pemodelan Basis Data Entity-Relationship Diagram filePemodelan Basis Data Entity-Relationship Diagram Yusuf Priyandari @Agustus 2010. 2 Tahap Pengembangan Basis Data ... untuk suatu

22

3.4 Atribut Kunci

pri.and.ari@2010

IDCabang Nama Alamat Kota KdPos

B001 A Jl. Panjaitan 69 Solo 57126

B002 B Jl. Riyadi 37 Solo 57121

B003 C Jl. Panjaitan Yogya 40110

B004 D Jl. Kaki 5 Semarang 32101

B005 E Jl. Raya Lebar 7 Ngawi 67110

Page 23: Pemodelan Basis Data Entity-Relationship Diagram filePemodelan Basis Data Entity-Relationship Diagram Yusuf Priyandari @Agustus 2010. 2 Tahap Pengembangan Basis Data ... untuk suatu

23

4. Entitas kuat & entitas lemah

Entitas kuat Keberadaanya tidak bergantung pada

entitas lain.

Entitas lemah keberadaanya bergantung pada entitas

lain, dan tidak memiliki primary key, tetapi kunci parsial.

Entitas lemah biasanya dikenal sebagai entitas

transaksional Entitas Kuat

Entitas lemahpri.and.ari@2010

Page 24: Pemodelan Basis Data Entity-Relationship Diagram filePemodelan Basis Data Entity-Relationship Diagram Yusuf Priyandari @Agustus 2010. 2 Tahap Pengembangan Basis Data ... untuk suatu

24

5. Entitas Asosiatif

Entitas asosiatif adalah entitas yang terbentuk dari suatu

relasi atau transaksional. Entitas ini bersifat entitas lemah.

Entitas Kuat

Entitas Asosiatif (lemah)

pri.and.ari@2010

Page 25: Pemodelan Basis Data Entity-Relationship Diagram filePemodelan Basis Data Entity-Relationship Diagram Yusuf Priyandari @Agustus 2010. 2 Tahap Pengembangan Basis Data ... untuk suatu

25

6. Atribut di suatu Relasi

Suatu relasi terkadang memunculkan satu atau beberapa

atribut baru.

Atribut ini biasanya muncul dalam relasi transaksional atau

relasi banyak ke banyak (* : *) atau dikenal juga sebagai

entitas asosiatif.

pri.and.ari@2010

Page 26: Pemodelan Basis Data Entity-Relationship Diagram filePemodelan Basis Data Entity-Relationship Diagram Yusuf Priyandari @Agustus 2010. 2 Tahap Pengembangan Basis Data ... untuk suatu

26

7. Atribut atau Relasi

Terkadang suatu atribut (khususnya multi-atribut) dapat

dinyatakan dalam bentuk relasi.

pri.and.ari@2010

Pegawai

PegId

PegNama

PegPosisi

PegGaji

Telepon

Pegawai

PegIdTelepon

Telepon

memiliki

Mata

Kuliah

KodeMKPrasyarat

Mata

Kuliah

KodeMK

Mempunyai syarat

Page 27: Pemodelan Basis Data Entity-Relationship Diagram filePemodelan Basis Data Entity-Relationship Diagram Yusuf Priyandari @Agustus 2010. 2 Tahap Pengembangan Basis Data ... untuk suatu

27

8. Atribut Bergantung Waktu

Page 28: Pemodelan Basis Data Entity-Relationship Diagram filePemodelan Basis Data Entity-Relationship Diagram Yusuf Priyandari @Agustus 2010. 2 Tahap Pengembangan Basis Data ... untuk suatu

28

8. Atribut Bergantung Waktu

Page 29: Pemodelan Basis Data Entity-Relationship Diagram filePemodelan Basis Data Entity-Relationship Diagram Yusuf Priyandari @Agustus 2010. 2 Tahap Pengembangan Basis Data ... untuk suatu

29

Member BooksSearches

M N

1. What data we want to keep??

We are interested in modeling the data, NOT the processes or functions that

use or generate those data.

Is this part of the data requirement?

Are we interested to know the books searched by the members?

If answer is NO, then DO NOT include that as a relationship.

Use other appropriate diagramming techniques to capture the business

processes such as Data Flow Diagram.

Do not mix up the use of ER Modeling with DFD.

9. Masalah dalam Pemodelan ER

Page 30: Pemodelan Basis Data Entity-Relationship Diagram filePemodelan Basis Data Entity-Relationship Diagram Yusuf Priyandari @Agustus 2010. 2 Tahap Pengembangan Basis Data ... untuk suatu

30

FAN TRAP – Hubungan antar entitas menjadi rancu.1) Kantor Cabang memliki banyak pegawai.

2) Setiap kantor cabang memiliki kendaraan operasional sendiri-sendiri.

3) Pegawai mana yang bertanggung jawab terhadap suatu kendaraan ?

9. Masalah dalam Pemodelan ER

Page 31: Pemodelan Basis Data Entity-Relationship Diagram filePemodelan Basis Data Entity-Relationship Diagram Yusuf Priyandari @Agustus 2010. 2 Tahap Pengembangan Basis Data ... untuk suatu

31

FAN TRAP – Hubungan antar entitas menjadi rancu.1) Seorang pegawai bekerja pada satu divisi saja, dan setiap divisi mempunyai

banyak pegawai

2) Sebuah divisi memiliki banyak cabang dan setiap cabang adalah milik sebuah

divisi.

3) Pertanyaan: Pegawai X bekerja di cabang mana ?

9. Masalah dalam Pemodelan ER

Page 32: Pemodelan Basis Data Entity-Relationship Diagram filePemodelan Basis Data Entity-Relationship Diagram Yusuf Priyandari @Agustus 2010. 2 Tahap Pengembangan Basis Data ... untuk suatu

32

CHASM TRAP – Jebakan yg membuat instans entitas

tertentu kehilangan hubungan

1) Seorang pegawai bekerja di satu cabang, setiap cabang memiliki banyak pegawai

2) Seorang pekerja menangani nol atau banyak penjualan rumah, dan sebuah rumah

dapat belum dijual/ditangani oleh seorang pegawaipun atau maksimal satu pegawai.

3) Sebuah rumah yang dijual berada di cabang mana ?

9. Masalah dalam Pemodelan ER

Page 33: Pemodelan Basis Data Entity-Relationship Diagram filePemodelan Basis Data Entity-Relationship Diagram Yusuf Priyandari @Agustus 2010. 2 Tahap Pengembangan Basis Data ... untuk suatu

33

THE STAYHOME VIDEO RENTALS

Studi Kasus

pri.and.ari@2010

Page 34: Pemodelan Basis Data Entity-Relationship Diagram filePemodelan Basis Data Entity-Relationship Diagram Yusuf Priyandari @Agustus 2010. 2 Tahap Pengembangan Basis Data ... untuk suatu

34

The StayHome - Overview

StayHome adalah sebuah perusahaan yang memberikan jasa penyewaan video

kepada pelanggan yang menjadi anggota. Kantor cabang pertama berdiri di

Seattle tahun 1982. Saat ini perusahaan memiliki banyak cabang yang tersebar

di beberapa negara bagian. Kesuksesannya ditunjang oleh tingkat layanan yang

baik dan tersedianya beragam video untuk disewakan. Saat ini StayHome

memiliki 2000 karyawan di 100 kantor cabang.

Berikut ini disajikan…

pri.and.ari@201034

Page 35: Pemodelan Basis Data Entity-Relationship Diagram filePemodelan Basis Data Entity-Relationship Diagram Yusuf Priyandari @Agustus 2010. 2 Tahap Pengembangan Basis Data ... untuk suatu

35

Diskusi

pri.and.ari@201035

Page 36: Pemodelan Basis Data Entity-Relationship Diagram filePemodelan Basis Data Entity-Relationship Diagram Yusuf Priyandari @Agustus 2010. 2 Tahap Pengembangan Basis Data ... untuk suatu

36

Tugas Mandiri

Baca buku [1] chapter 9

pri.and.ari@201036

Page 37: Pemodelan Basis Data Entity-Relationship Diagram filePemodelan Basis Data Entity-Relationship Diagram Yusuf Priyandari @Agustus 2010. 2 Tahap Pengembangan Basis Data ... untuk suatu