Upload
abdurrohman-hidayat
View
113
Download
5
Tags:
Embed Size (px)
DESCRIPTION
Database Relational Model
Citation preview
Materi Entity Sets
Relationship Sets
Design Issues
Mapping Constraints
Keys
E-R Diagram
Extended E-R Features
Design of an E-R Database Schema
Reduction of an E-R Schema to Tables
Sisterm Basis Data Informatika PTIIK
2
Database dapat dimodelkan sebagai :
– Kumpulan entitas
– Relasi antar entitas
Sisterm Basis Data Informatika PTIIK
3
Entitas ? “sesuatu” atau “objek” di dunia nyata
yang dapat dibedakan dari objek lain
Kelompok objek independen yang dapatdiidentifikasi dan memiliki kesamaanproperti.
Entitas digambarkan (dalam basis data) dengan menggunakan himpunan atribut.
Sisterm Basis Data Informatika PTIIK
4
Entitas ?
Entitas dapat berupa objek nyata atauobjek konseptual, contoh:
Sisterm Basis Data Informatika PTIIK
5
Contoh entitas
Poli Anak RS :
- Anak (pasien)
- Dokter
- Perawat
- Penyakit
- Obat
Sisterm Basis Data Informatika PTIIK
6
Contoh entitas
Perpustakaan Brawijaya
Buku
Petugas
Mahasiswa
Dosen
Peminjaman
Pengembalian
Sisterm Basis Data Informatika PTIIK
7
Contoh entitasSupermarket Barang Petugas/Kasir Transaksi Penjualan dan Pembelian Suplier
Bengkel- Montir- Sparepart- Pelanggan- Servis- Supplier- Alat/inventaris- Transaksi
Sisterm Basis Data Informatika PTIIK
8
Contoh entitas
Bank
Nasabah
Tabungan
Pegawai
Peminjaman
Deposito
Asuransi
Sisterm Basis Data Informatika PTIIK
9
Representasi Entitas
Entitas digambarkan dalam bentukpersegi panjang dengan label yang menunjukkan nama entitas, umumnyaberupa kata benda tunggal. Hurufpertama setiap kata label entitas ditulisdengan huruf kapital; contoh:
Sisterm Basis Data Informatika PTIIK
10
Himpunan entitas Kumpulan entitas yang sejenis.
Misal : himpunan data pegawai Semua entity dalam himpunan entity memiliki
himpunan atribut yang sama
Tiap himpunan entity memiliki kunci (key)
Tiap atribut memiliki domain.
Entitas menunjuk kepada individu suatuobjek sedangkan himpunan entitas menunjukpada rumpun (family) dari individu tersebut
Sisterm Basis Data Informatika PTIIK
11
Contoh himpunan entitas
Semua orang yang memiliki rekening diBank (nasabah),
Semua Pelanggan, Mahasiswa, Dokter
Sisterm Basis Data Informatika PTIIK
12
ATRIBUT Setiap Entitas memiliki atribut yang
mendeskripsikan karakteristik (properti) dari entitas tersebut atau relasi
Contoh :
Customer = (Customer-Id, Customer-Name, Customer-Street, Customer-City)
Setiap Atribut akan memiliki nilai (values)
Domain (Value Set)– Batas-batas nilaiyang diperbolehkan bagi suatu atribut
Sisterm Basis Data Informatika PTIIK
14
Atribut pada sistem Poli AnakRS
: Anak (pasien) :
nama, tanggal lahir, riwayatpenyakit, alamat, nama ortu, jenis kelamin
- Dokter : NIP, Nama, Alamat, Spesialisasi
- Perawat : NIP, Nama, ALamat
- Penyakit : Nama penyakit, gejala
- Obat : nama, dosis, harga, jenis(tablet/sirup)
Sisterm Basis Data Informatika PTIIK
15
Atribut pada SIAM
SIAM
- Mahasiswa : NIM, Nama, Alamat, Jurusan, Prodi, TTL,Agama, Nama ORTU, jenisKelamin,....
- Mata Kuliah: Kode, Nama, SKS,Prasyarat, Status(W/P), semester,....
- Dosen : NIP, Nama, Alamat, Jenis Kelamin, Pangkat/Gol, ...
Sisterm Basis Data Informatika PTIIK
16
Tipe-tipe Atribut
1. Simple dan Composite attributes
2. Single-valued dan multi-valued attributes
3. Derived attributes
Sisterm Basis Data Informatika PTIIK
17
1. Simple dan Composite attributes
Atribut Simple/sederhana : Atribut yang terdiri atas komponen tunggal yang tidak dapat
dibagi menjadi komponen yang lebih kecil; contoh: atribut jabatan dan gaji pada entitas Staf. Atribut sederhana juga disebut dengan atribut atomik.
Atribut Komposit : Atribut yang dapat dibagi lagi dalam beberapa bagian; Atribut yang terdiri atas beberapa komponen independen
(dapat berdiri sendiri); contoh: atribut alamat pada entitas KantorCabang dengan
nilai (Jalan Prof. Dr. Soepomo, SH, No. 63, Yogyakarta, 55163). Atribut ini dapat dibagi menjadi jalan (Jalan Prof. Dr.
Soepomo, SH, No. 63), kota (Yogyakarta), dan kodePos(55163).
Sisterm Basis Data Informatika PTIIK
18
2. Single-valued dan multi-valued attributes
Atribut Single-valued /tunggal: Atribut yang memuat nilai tunggal. Umumnya, atribut-
atribut bernilai tunggal; contoh: entitas KantorCabang memiliki nilai kode yang
bersifat tunggal, misal B003.
Multi-valued attributes : Aribut yang memuat beberapa nilai. Contoh: entitas KantorCabang memiliki atribut telepon,
misal kantor cabang B003 memiliki nomor telepon 0274-123 456 dan 0274-567 890.
Contoh ini menunjukkan bahwa atribut telepon memilikidua nilai (mungkin juga lebih dari dua)
Sisterm Basis Data Informatika PTIIK
19
multi-valued attributes
Atribut multi-value dapat ditentukan nilaiminimal (batas_bawah) dan nilaimaksimal (batas_atas);
pada contoh di atas, misalnya, nomortelepon kantor cabang ditentukan antarasatu dan tiga nilai. Dengan kata lain, sebuah kantor cabang memiliki minimal satu nomor telepon dan sebanyak-banyaknya tiga nomor telepon.
Sisterm Basis Data Informatika PTIIK
20
3. Derived attributes/ AtributTurunan
Atribut Turunan : Atribut yang menyatakan suatu nilai yang berkaitan
dengan atribut-atribut lain; Atribut yang diperoleh dari pengolahan dari atribut
lain yang berhubungan. contoh:
atribut masaStudi yang diperoleh dari tglLulusdikurangi tglDaftar. Atribut masaStudi dikatakansebagai atribut turunan dari atribut tglDaftar dantglLulus.
atribut totalMhs yang diperoleh dengan caramenghitung jumlah mahasiswa aktif pada suatusemester tertentu.
Sisterm Basis Data Informatika PTIIK
21
Key Penggunaan key merupakan cara untuk
membedakan suatu entitas didalam himpunanentitas dengan entitas lain
Secara konsep, Masing-masing entitas (nilainya) berbeda,perbedaannya terlihat pada isi dari masing-masing atributnya.
Oleh karena itu, dibutuhkan suatu atribut yang memiliki nilai yang menjadi pembeda denganentitas lain
Key adalah satu atau gabungan dari beberapaatribut yang dapat membedakan semua row dalam relasi secara unik
Sisterm Basis Data Informatika PTIIK
23
Candidate KeyCandidate Key/ Kunci Kandidat/CK
Atribut-atribut yang mengidentifikasientitas secara unik;
contoh: atribut kancabNo merupakankunci kandidat untuk entitasKantorCabang, dan memiliki nilai unikuntuk setiap kantor cabang.
Kunci kandidat juga menyatakan bahwanilai atribut ini tidak boleh kosong (Null).
Sisterm Basis Data Informatika PTIIK
24
Primary Key
Kunci kandidat yang dipilih untuk mengidentifikasi entitassecara unik.
Entitas dapat memiliki kunci kandidat lebih dari satu, contoh: seorang mahasiswa memiliki noMhs yang bersifatunik bagi Universitas, juga memiliki noKTP yang bersifat unikbagi status kependudukan si mahasiswa.
Salah satu diantara dua kunci kandidat itu dapat dipilihsalah satu sebagai kunci primer.
Penentuan kunci kandidat yang dipilih sebagai kunciprimer sangat bergantung kepada kebutuhan sistem yang sedang dikembangkan.
Kandidat kunci yang tidak dipilih sebagai kunci primer dinamakan kunci alternatif.
Sisterm Basis Data Informatika PTIIK
25
Primary Key
Pemilihan primary key dari sejumlahcandidate key umumnya didasari oleh :
1. Key tersebut lebih sering (lebih natural) untuk dijadikan sebagai acuan
2. Key tersebut lebih ringkas
3. Jaminan keunikan key tersebut lebih baik
Sisterm Basis Data Informatika PTIIK
26
Kunci Komposit (Composite Key):
Kunci kandidat yang memuat dua ataulebih atribut.
Ada beberapa kasus yang membutuhkankunci berupa kombinasi/gabunganbeberapa atribut untuk mengidentifikasisecara unik.
Sisterm Basis Data Informatika PTIIK
27
Atribut ditulis dengan huruf kecil, kecuali jika terdiri atas dua kata atau lebih, huruf pertama kata kedua dan seterusnya ditulis dengan huruf kapital; contoh: kancabNo.
Atribut yang dipilih sebagai kunci primer diikuti dengan {PK}; contoh: kancabNo {PK}.
Atribut komposit dituliskan berindentasi (menjorok ke dalam); contoh:
alamat
jalan
kota
kodePos
Atribut turunan diawali dengan tanda garis mirin (slash, /); contoh: /jmlStaf.
Atribut multi-value dituliskan batas bawah dan batas atasnya; contoh: telepon [1..3
Sisterm Basis Data Informatika PTIIK
28
Weak Entity Entitas yang tidak punya PK (Primary Key)
Keberadaannya tergantung darikeberadaan entitas lain.. jadi entitaslemah ada jika entita s kuat yang menyebabkan adanya dia itu ada. Tanpa entitas kuat, entitas lemah tidakakan muncul.
PK entitas lemah dibentuk dari PK entitaskuat dan discriminator
Sisterm Basis Data Informatika PTIIK
30
Weak Entity Sets (Cont.)
Entitas lemah digambarkan dengan double rectangles.
discriminator dari entitas lemah dengan garis putus2
payment-number – discriminator of the payment entity set
Primary key payment – (loan-number, payment-number)
Sisterm Basis Data Informatika PTIIK
31
Relasi
Definisi: Himpunan asosiasi (hubungan) antar entitas yang dapat diidentifikasidan bermakna.
Relasi dinyatakan dengan nama yang menunjukkan fungsinya, contoh Memilikiyang menghubungkan antaraKantorCabang dan Staf.
Relasi dimungkinkan memiliki atribut
Sisterm Basis Data Informatika PTIIK
32
Representasi Relasi Relasi digambarkan dalam bentuk garis
yang menghubungkan entitas-entitasyang berelasi, dengan label yang menunjukkan nama relasi.
Nama relasi umumnya berupa kata kerja. Huruf pertama setiap kata label relasiditulis dengan huruf kapital.
Nama relasi harus unik dalam satudiagram ER.
Sisterm Basis Data Informatika PTIIK
33
Representasi Relasi Relasi bersifat satu arah, karena umumnya makna
relasi hanya ‘masuk akal’ pada satu arah tertentu,
misal: Kantor Cabang memiliki Staf lebih ‘masukakal’ daripada Staf memiliki Kantor Cabang.
Untuk itu, nama relasi disertai dengan anak panahyang menunjukkan arah relasi;
contoh:
Sisterm Basis Data Informatika PTIIK
34
Derajad Relasi Derajat relasi menunjukkan jumlah entitas yang
terhubung dalam suatu relasi.
Entitas-entitas yang terhubung dalam suatu relasidisebut partisipan.
Relasi berderajat dua dinamakan relasi biner, yakni relasi yang melibatkan dua himpunanentitas
contoh:
a. relasi Memiliki yang menghubungkan entitasKantor Cabang dengan Staf.
b. relasi Mengambil dengan dua entitas yang berpartisipasi, yaitu Mahasiswa dan Matakuliah.
Secara umum himpunan relasi dalam sistem basis
Sisterm Basis Data Informatika PTIIK
36
Relasi Berderajat tiga Relasi berderajat tiga dinamakan relasi terner.
Relasi antara lebih dari dua entitas jarang terjadi
Terdapat tiga entitas yang berpartisipasi dalamrelasi terner, contoh: relasi Mendaftar yang menghubungkan entitas Staf, KantorCabang, danKlien.
Relasi ini menyatakan seorang staf mendaftar kliendi suatu kantor cabang.
Sisterm Basis Data Informatika PTIIK
37
Relasi Rekursif Definisi: Tipe relasi yang menghubungkan satu
entitas tunggal dengan dirinya sendiri. Relasi rekursif Mengaudit yang merepresentasikan relasi
dosen dengan auditor, seorang auditor merupakanbagian entitas dosen. Dengan kata lain, relasi inimenyatakan seorang dosen melakukan pemeriksaan(mengaudit) dosen lain.
Relasi ini dapat ditambahkan nama peran untukmenunjukkan posisi partisipasinya, pada contoh di atas: relasi Mengaudit menghubungkan entitas Dosen yang berperan sebagai Auditor dengan dosen lain yang berperan sebagai Auditee.
Sisterm Basis Data Informatika PTIIK
38
Pemetaan Kardinalitas Relasi Menggambarkan banyaknya jumlah maksimum
entitas dapat berelasi dengan entitas pada himpunan entitas yang lain.
Paling banyak digunakan dalam menjelaskanrelasi biner
Untuk relasi biner, pemetaan kardinalitasnyadapat merupakan salah satu dari tipe2 berikut :
1. Satu ke Satu (One to one)
2. Satu ke Banyak (One to many)
3. Banyak ke Satu (Many to one)
4. Banyak ke Banyak (Many to many)
Sisterm Basis Data Informatika PTIIK
39
Constraint Kardinalitas Dalam menggambarkam kardinalitas pada
Diagram ER, digunakan garis panah (→) yang menunjukkan “Satu” atau garis biasa (—) yang menunjukkan “Banyak”, antara relasi denganentitas
Contoh : Relasi Satu ke satu
– Satu Customer hanya boleh berhubungandengan satu Loan,melalui relasi borrower
– Satu Loan hanya boleh berhubungan paling banyak oleh satu Customer, melalui relasiborrower
Sisterm Basis Data Informatika PTIIK
40
Relasi Satu ke Banyak
Dalam relasi satu ke Banyak, Paling banyak Satu Customer dapatberhubungan dengan beberapa(termasuk 0) Loan melalui borrower
Sisterm Basis Data Informatika PTIIK
41
Relasi Banyak ke Satu
Dalam relasi banyak ke satu, Satu Loan berhubungan dengan beberapa(termasuk 0) customer melaluiborrower,satu customer berhubungandengan paling banyak satu Loan melaluiborrower
Sisterm Basis Data Informatika PTIIK
42
Relasi Banyak ke Banyak
customer berhubungan denganbeberapa (mungkin 0) Loan melaluiborrower
Loan berhubungan dengan beberapa(mungkin 0) customer melalui borrower
Sisterm Basis Data Informatika PTIIK
43
Dampak Pemetaan Kardinalitas pada Desain ER
Dalam mendesain Entity Relasionshippemetaan kardinalitas akan berpengaruhterhadap bagaimana data tersebut akandigambarkan
Sisterm Basis Data Informatika PTIIK
46
Diagram ER
Diagram ER merupakan model konseptual untuk menggambarkanstruktur logis dari basisdata berbasis grafis
•
Sisterm Basis Data Informatika PTIIK
47
Diagram E-R dengan atribut Composite,Multivalued dan derived
Sisterm Basis Data Informatika PTIIK
49
Peran (Roles) Relasi Himpunan entitas tidak harus
dalam bentuk yang berbeda
Peran dalam ER diagram diindikasikandengan memberikan label (nama) padagaris yang menghubungkan relasidengan entitas
Label peran bersifat optional dan digunakan untuk mengklarifikasi semantik suatu relasi
Sisterm Basis Data Informatika PTIIK
51
Peran (Roles)
Label “manager” dan “worker” disebutRoles (peran), yang menspesifikasibagaimana entitas employee berinteraksimelalui relasi Works-for
Sisterm Basis Data Informatika PTIIK
52
total constraint dan partial constraint!Perbedaan antara total constraint dan partial
constraint!
Total constraint :
adalah constraint yang mana data dalam entitasyang memiliki constraint tersebut terhubungsecara penuh ke dalam entitas dari relasinya.
Constraint partial :
adalah constraint yang mana hanya sebagiandata ( tidak seluruhnya) dalam entitas yang memiliki constraint tersebut terhubung ke dalamentitas dari relasinya.
Sisterm Basis Data Informatika PTIIK
53
Mengapa ER Model ?
Populer untuk model relasional
Sering dipergunakan untuk desain konseptual dari aplikasi database
Sisterm Basis Data Informatika PTIIK
54
Langkah –langkah membuat diagram ER
1. Mengidentifikasi dan menetapkanseluruh entitas yang terlibat
2. Menentukan atribut dari setiap entitas3. Menentukan key dari setiap entitas4. Mengidentifikasi dan menetapkan relasi
antar entitas yang ada beserta foreign key-nya
5. Menentukan kardinalitas/derajad relasiuntuk setiap relasi yang ada
6. Melengkapi entitas dan relasi denganatribut-atribut deskriptif
Sisterm Basis Data Informatika PTIIK
55
Foreign Key
Key (PK) yang berasal dari entitas lain yang berelasi dengannya
Sisterm Basis Data Informatika PTIIK
56
Bagaimana jika terdapat set entitas yang samamuncul beberapa kali dalam satu set ER-Diagram.
Mengapa hal ini harus dihindari? Jelaskan!
Untuk menghindari redundancy
Menghemat penyimpanan (storage) data
Mengurangi efektifitas dan kecepatan akses
Untuk menghindari terjadinya asinkronisasi data pada saat diupdate
Sisterm Basis Data Informatika PTIIK
58
perbedaan antara weak entity dan strong entity!
Strong entity (entitas kuat) :
entitas yang mandiri, yang keberadaannyatidak bergantung pada keberadaan entitaslain.
Entitas kuat selalu memiliki karakteristik yang unik yakni sebuah atribut tunggal ataugabungan atribut-atribut yang secara unikdapat digunakan untuk membedakannyadari entitas kuat yang lain.-> Primary Key (PK)
Sisterm Basis Data Informatika PTIIK
59
perbedaan antara weak entity dan strong entity!
Weak entity (entitas lemah) :
entitas yang keberadaannya sangatbergantung pada keberadaan entitasyang lainnya.
Entitas lemah tidak memiliki arti apa-apadan tidak dikehendaki kehadirannyadalam diagram ER tanpa kehadiranentitas tempatnya bergantung.
Sisterm Basis Data Informatika PTIIK
60
Latihan
1. Sebuah perpustakaan kampus memiliki aturan-aturan sebagaiberikut :
1. Anggota dapat meminjam Buku pada perpustakaan lebihdari satu buku dalam sekali peminjaman.
2. Pada buku, yang harus di catat adalah NoBuku, Judul,Pengarang, Penerbit, Tahun terbit dan Jenis buku(majalah,Kumpulan atrikel, novel, komik, iptek, sekolah), Status(sedang dipinjam, ada diperpustakkan)
3. Pada anggota yang harus dicatat adalah nomor anggota,NIM, Nama, Alamat, Kota, No telepon, tanggal lahir danJurusan.
4. Pada setiap terjadi transaksi peminjaman, maka dicatattanggal pinjam, tanggal kembali dan jumlah buku yangdipinjam.
Identifikasi entitas2 nya, relasi antar entitas dan ER modelperusahaan tersebut
Sisterm Basis Data Informatika PTIIK
61
Latihan:2. Perusahaan penyelenggara pelatihan TIK memiliki 30 orang
instruktur untuk menangani sampai dengan 100 peserta per sesitraining. Perusahaan ini menawarkan lima materi training. Setiap materitraining dikelola oleh tim yang terdiri atas dua atau lebih instruktur. Setiap instruktur maksimal menjadi anggota tim dalam dua materitraining. Setiap sesi training seorang peserta hanya terdaftar padasatu materi training saja.
1. Identifikasi entitas-entitas perusahaan tersebut!
2. Identifikasi relasi-relasi antar entitasnya!
3. Gambarkan diagram ER model perusahaan training tersebut!
Sisterm Basis Data Informatika PTIIK
62
Model dataModel data : adalah sekumpulan cara / peralatan / tool
untuk mendeskripsikan data-data, hubungannya satu sama lain, semantiknya, serta batasan konsistensi.
Ada dua model data, yaitu : Entity Relationship Diagram (ERD) dan model relasional.
Keduanya menyediakan cara untukmendeskripsikan perancangan basis data pada tingkat logika.
Sisterm Basis Data Informatika PTIIK
63
Model ERD atau Conceptual Data Model (CDM): model yang dibuat berdasarkan anggapanbahwa dunia nyata terdiri dari koleksi obyek-obyek dasar yang dinamakan entitas (entity) serta hubungan (relationship) antara entitas-entitas itu.
Model Relasional atau Physical Data Model(PDM) : model yang menggunakan sejumlahtabel untuk menggambarkan data sertahubungan antara data-data tersebut. Setiaptabel mempunyai sejumlah kolom di manasetiap kolom memiliki nama yang unik.
Sisterm Basis Data Informatika PTIIK
64