Pengenalan Database
Pengenalan Database
Bagian II
Bagian II
Abdul Kadir
Diagram E-R
Diagram E-R
Diagram E-R (Entity-Diagram E-R (Entity-Relationship) biasa Relationship) biasa digunakan dalam digunakan dalam tahap analisis
tahap analisis perancangan
perancangan databasedatabase
Digunakan sebagai Digunakan sebagai perangkat untuk perangkat untuk
berkomunikasi antara berkomunikasi antara pengembang
pengembang databasedatabase
Diagram E-R
Diagram E-R
Diagram E-R berupa model data Diagram E-R berupa model data
konseptual
konseptual, yang , yang
merepresentasikan data dalam merepresentasikan data dalam suatu organisasi dalam bentuk suatu organisasi dalam bentuk
objek-objek
objek-objek dan dan
hubungannya hubungannya
Diagram E-R
Diagram E-R
Diagram E-R berupa model data Diagram E-R berupa model data
konseptual
konseptual, yang , yang
merepresentasikan data dalam
merepresentasikan data dalam
suatu organisasi dalam bentuk
suatu organisasi dalam bentuk objek-objek
objek-objek dan dan hubungannyahubungannya
Tidak bergantung kepada Tidak bergantung kepada softwaresoftware
yang akan dipakai untuk
yang akan dipakai untuk
mengimplementasikan
mengimplementasikan databasedatabase
Sejauh ini banyak sekali model Sejauh ini banyak sekali model
notasi yang dipakai untuk
notasi yang dipakai untuk
membuat diagram E-R
ERD dan
ERD dan
Proses Perancangan Database
Proses Perancangan Database
Tiga proses perancangan Tiga proses perancangan databasedatabase yang yang
terkait dengan ERD: terkait dengan ERD:
• Analisis kebutuhanAnalisis kebutuhan
Menggali kebutuhan data untuk penyajian informasiMenggali kebutuhan data untuk penyajian informasi
• Perancangan Perancangan databasedatabase konseptual konseptual
Menyajikan kebutuhan data yang akan disimpan Menyajikan kebutuhan data yang akan disimpan dalam bentuk yang
dalam bentuk yang high level high level (misalnya ERD)(misalnya ERD)
• Perancangan Perancangan databasedatabase logis logis
Tiga Tahapan Perancangan
Tiga Tahapan Perancangan
Database Lainnya
Database Lainnya
Perbaikan SkemaPerbaikan Skema
• Mengidentifikasi problem potensial dan Mengidentifikasi problem potensial dan melakukan pembetulan
melakukan pembetulan
Perancangan Perancangan databasedatabase fisik fisik
• Menyeleraskan rancangan Menyeleraskan rancangan database database dengan fitur-fitur dalam DBMS
dengan fitur-fitur dalam DBMS
Perancangan keamananPerancangan keamanan
• Mengatur keamanan yang menyangkut Mengatur keamanan yang menyangkut wewenang pemakai
Dasar ERD
Dasar ERD
EntitasEntitas AtributAtribut
HubunganHubungan
ENTITAS
Hubungan
ENTITAS Atribut
Atribut
Atribut
Atribut
Atribut
Entitas
Entitas
Merupakan objek Merupakan objek
dalam dunia nyata dalam dunia nyata
yang dapat dibedakan yang dapat dibedakan
dengan objek-objek dengan objek-objek
lain lain
Seorang manajer, Seorang manajer,
Atribut
Atribut
Sifat / karakteristik Sifat / karakteristik
yang melekat yang melekat dalam sebuah dalam sebuah
entitas entitas
No inventaris
Merk
Ukuran RAM
…
Atribut
Atribut?
Atribut?
Atributny a?????
OrangOrang MobilMobil
RuanganRuangan Surat Surat
Perjanjian
Himpunan Entitas
Himpunan Entitas
Kumpulan dari objek Kumpulan dari objek
yang memiliki yang memiliki karakteristik sama karakteristik sama dinamakan dinamakan himpunan entitas himpunan entitas
Semua manajer Semua manajer
Himpunan Entitas Pegawai
Himpunan Entitas Pegawai
EMPLOYEE Employee_ID
Birth_Of_Date Name
Employee_ID Name Birth_Of_Date
75-001 Sita Dewi 01/07/1982
Hubungan
Hubungan
HubunganHubungan
(
(relationshiprelationship) adalah ) adalah
pengait antara beberapa pengait antara beberapa
tipe entitas tipe entitas
75-001 Sita Dewi 75-002 Riantiarno 75-003 Diva Mawarni 75-004 Karno
76-001 Dino Larasati
Hubungan (Lanjutan)
Hubungan (Lanjutan)
Dosen – MahasiswaDosen – Mahasiswa
Dosen - MatakuliahDosen - Matakuliah
Nasabah – Rekening BankNasabah – Rekening Bank
Pemasok - BarangPemasok - Barang
Apa
Contoh Diagram E-R
Contoh Diagram E-R
Memasok
BARANG Mengirim
KIRIMAN Memasok
PEMASOK
Digunakan_
pada PRODUK
Tipe Atribut
Tipe Atribut
Atribut Sederhana dan kompositAtribut Sederhana dan komposit
Atribut Bernilai tunggal dan bernilai Atribut Bernilai tunggal dan bernilai
banyak
banyak
Atribut Sederhana dan Komposit
Atribut Sederhana dan Komposit
• Atribut sederhanaAtribut sederhana tidak bisa dipecah tidak bisa dipecah menjadi bagian yang lebih kecil lagi
menjadi bagian yang lebih kecil lagi
• Atribut komposit Atribut komposit adalah atribut yang adalah atribut yang dapat dipecah menjadi komponen yang dapat dipecah menjadi komponen yang
lain lain
Alamat: Alamat_Jalan, Kota, Kode_Pos
Nama:
Nama: Nama_Depan, Nama_Depan,
Nama_Tengah,
Nama_Tengah,
Nama_Belakang
Atribut Bernilai Tunggal dan
Atribut Bernilai Tunggal dan
Bernilai Banyak
Bernilai Banyak
Atribut bernilai tunggalAtribut bernilai tunggal adalah adalah
atribut yang nilainya hanya satu
atribut yang nilainya hanya satu
Contoh: Contoh: nomor pegawainomor pegawai
Atribut bernilai banyakAtribut bernilai banyak adalah adalah
atribut yang berkemungkinan
atribut yang berkemungkinan
memiliki nilai lebih dari satu
memiliki nilai lebih dari satu
Contoh: Contoh: Nomor_Telpon, Nomor_Telpon,
Ketrampilan_Pemrograman
Atribut Tersimpan dan Turunan
Atribut Tersimpan dan Turunan
Atribut tersimpanAtribut tersimpan adalah atribut yang adalah atribut yang
secara eksplisit tersimpan dalam database secara eksplisit tersimpan dalam database
AtributAtribut turunan adalah atribut yang turunan adalah atribut yang
nilainya dapat dikalkulasi dari nilai atribut nilainya dapat dikalkulasi dari nilai atribut
tersimpan tersimpan
• Contoh: Contoh:
Atribut Tersimpan dan Turunan?
Atribut Tersimpan dan Turunan?
Kode
Jenis Hubungan
Jenis Hubungan
Jenis hubungan Jenis hubungan
antara dua antara dua
himpunan entitas: himpunan entitas:
a)
a) One to OneOne to One b)
b) One to ManyOne to Many c)
c) Many to OneMany to One d)
d) Many to ManyMany to Many
Jenis Hubungan (Lanjutan…)
Jenis Hubungan (Lanjutan…)
Dosen – MahasiswaDosen – Mahasiswa Dosen - MatakuliahDosen - Matakuliah Nasabah – Rekening Nasabah – Rekening
Bank
Bank
Pemasok - BarangPemasok - Barang
Apa jenis hubungannya??
Kunci
Kunci
Kunci dimaksudkan sebagai Kunci dimaksudkan sebagai
pegangan untuk membedakan
pegangan untuk membedakan
antara satu entitas dengan entitas
antara satu entitas dengan entitas
yang lain
yang lain
Kunci dapat disusun atas satu atau Kunci dapat disusun atas satu atau
kombinasi beberapa atribut
kombinasi beberapa atribut
Istilah lain berupa pengenal Istilah lain berupa pengenal
(
(identifieridentifier) biasa digunakan sebagai ) biasa digunakan sebagai pengganti kata kunci
Pengenal
Pengenal
Pengenal tunggal (sederhana)Pengenal tunggal (sederhana)
• Terdiri atas satu atributTerdiri atas satu atribut
Pengenal kompositPengenal komposit
Pengenal Tunggal
Pengenal Tunggal
Contoh: No_Mhs pada entitas Contoh: No_Mhs pada entitas
MAHASISWA
MAHASISWA
MAHASISWA No_Mhs
Pengenal Komposit
Pengenal Komposit
PENERBANGAN ID_Penerbangan
Pengenal (Lanjutan…)
Pengenal (Lanjutan…)
Pengenal harus Pengenal harus
dibentuk dengan dibentuk dengan
melibatkan melibatkan
atribut-atribut yang
atribut yang tidak tidak pernah
pernah berubah atau berubah atau
jarang berubah
jarang berubah
Pilih pengenal yang Pilih pengenal yang
nilainya jelas dan tidak nilainya jelas dan tidak
pernah NULL (tidak pernah NULL (tidak
Pengenal (Lanjutan…)
Pengenal (Lanjutan…)
Hindari pengenal yang Hindari pengenal yang
strukturnya mengandung kode
strukturnya mengandung kode
tertentu seperti klasifikasi, lokasi,
tertentu seperti klasifikasi, lokasi,
dan semacam itu
dan semacam itu
• Buat independen terhadap kode Buat independen terhadap kode seperti itu
seperti itu
Pengenal
Pengenal (Lanjutan…)
Pengenal (Lanjutan…)
Buat pengenal beratribut tunggal Buat pengenal beratribut tunggal
untuk menggantikan pengenal
untuk menggantikan pengenal
komposit yang terlalu panjang
komposit yang terlalu panjang
ID_Penerbangan
ID_Pesawat Jadwal
Pengenal (Lanjutan…)
Pengenal (Lanjutan…)
Buat pengenal sendiri untuk Buat pengenal sendiri untuk
menggantikan atribut tertentu
menggantikan atribut tertentu
ID_Kursus
Nama_Kursus KURSUS Deskripsi
Simbol dalam Diagram E-R
Simbol dalam Diagram E-R
ENTITAS
Hubungan
Simbol Hubungan:
Satu
Bbanyak
Atribut
Simbol Lain-Lain
Simbol Lain-Lain
Entitas kuat
Entitas lemah
Hubungan
Hubungan
pengidentifikasi
Entitas asosiatif
Atribut
Atribut nilai berganda
Contoh ERD
Contoh ERD
PESANAN Mengirim
PELANGGAN ID_Plg
Nama_Plg
Contoh Atribut Komposit, Nilai
Contoh Atribut Komposit, Nilai
Berganda, dan Turunan
Berganda, dan Turunan
ID_Plg
Nama_Plg PELANGGAN Usia
Jalan Kota Kode_Pos
Cara Memberi Nama Entitas
Cara Memberi Nama Entitas
Gunakan sedapat mungkin satu kata Gunakan sedapat mungkin satu kata
benda. Kalau lebih dua kata, gunakan spasi benda. Kalau lebih dua kata, gunakan spasi sebagai pemisah kata
sebagai pemisah kata
Ditulis dengan huruf KAPITALDitulis dengan huruf KAPITAL
Nama yang digunakan spesifik terhadap Nama yang digunakan spesifik terhadap perusahaan
perusahaan
• KLIEN atau PELANGGAN berarti sama. KLIEN atau PELANGGAN berarti sama.
Tetapi mana yang digunakan
Tetapi mana yang digunakan
perusahaan?
perusahaan?
Gunakan nama yang singkat tapi Gunakan nama yang singkat tapi bermakna tepat
bermakna tepat
Cara Memberi Nama Atribut
Cara Memberi Nama Atribut
Gunakan frasa Gunakan frasa kata kata
benda
benda atau kata atau kata
benda tunggal
benda tunggal
Setiap awal kata ditulis Setiap awal kata ditulis
dengan huruf KAPITAL
dengan huruf KAPITAL
Gunakan _ untuk Gunakan _ untuk
menyambung dua kata
menyambung dua kata
Kata bisa disingkat, Kata bisa disingkat,
tetapi harus mudah
tetapi harus mudah
ditebak maknanya
ditebak maknanya
Nama atribut harus unikNama atribut harus unik
Nama
Cara Memberi Nama Hubungan
Cara Memberi Nama Hubungan
Gunakan Gunakan kata kata
kerja
kerja
Hanya awalnya Hanya awalnya
yang dikapitalkan
yang dikapitalkan
Gunakan garis Gunakan garis
bawah sebagai
bawah sebagai
pemisah antarkata
pemisah antarkata PESANAN Mengirim PELANGGAN
Hubungan
Hubungan
Unary
Unary
Hubungan yang melibatkan Hubungan yang melibatkan
hanya satu entitas
hanya satu entitas
Membawahi PEGAWAI
ID_Peg Nama_Peg Tgl_Lahir
manajer
Hubungan Biner
Hubungan Biner
Hubungan yang Hubungan yang
melibatkan dua
melibatkan dua
buah entitas
buah entitas
Hubungan Ternary
Hubungan Ternary
Hubungan yang Hubungan yang
melibatkan tiga melibatkan tiga
buah entitas buah entitas
PEGAWAI
ID_Peg Nama_Peg Tgl_Lahir
CABANG PEKERJAAN
Bekerja_pada
Nama_Pek Level
Atribut dalam Hubungan
Atribut dalam Hubungan
Nama Siswa
Nama Siswa Nama KursusNama Kursus Tgl_SelesaiTgl_Selesai Amir
Amir Visual BASICVisual BASIC 24/2/100724/2/1007 Amir
Amir Visual C++Visual C++ 3/5/20073/5/2007 Dion
Dion Visual C++Visual C++ 3/5/20073/5/2007 Fitri
Fitri DelphiDelphi 4/3/20074/3/2007
SISWA
ID_Siswa Nama_Siswa
KURSUS Menyelesaikan
Atribut dalam Hubungan
Atribut dalam Hubungan
SISWA
ID_Siswa Nama_Siswa
KURSUS SERTIFIKAT
ID_Kursus Nama_Kursus Tgl_Selesai
SISWA
ID_Siswa Nama_Siswa
KURSUS Menyelesaikan
ID_Kursus Nama_Kursus Tgl_Selesai
Latihan ERD (1)
Latihan ERD (1)
Seorang pegawai memiliki data Seorang pegawai memiliki data
berupa nomor induk pegawai, nama,
berupa nomor induk pegawai, nama,
tanggal lahir dan ketrampilan
tanggal lahir dan ketrampilan
berbahasa asing. Gambarkan
berbahasa asing. Gambarkan
diagram ER-nya
Latihan ERD (2)
Latihan ERD (2)
Data seseorang mencakup identitas Data seseorang mencakup identitas
seseorang, nama, jenis kelamin.
seseorang, nama, jenis kelamin.
Gambarkan diagram ER yang
Gambarkan diagram ER yang
mencerminkan bahwa seseorang
mencerminkan bahwa seseorang
menikahi orang
Latihan ERD (3)
Latihan ERD (3)
Setiap dosen memiliki nomor dosen, Setiap dosen memiliki nomor dosen,
nama, dan usia
nama, dan usia
Setiap proyek memiliki nomor Setiap proyek memiliki nomor
proyek, sponsor proyek, tanggal
proyek, sponsor proyek, tanggal
mulai, dan tanggal selesai
mulai, dan tanggal selesai
Setiap proyek dikepalai oleh seorang Setiap proyek dikepalai oleh seorang
profesor
profesor
Setiap proyek bisa melibatkan satu Setiap proyek bisa melibatkan satu
atau beberapa dosen
Latihan ERD (3 - Lanjutan)
Latihan ERD (3 - Lanjutan)
Seorang dosen bisa mengepalai sejumlah Seorang dosen bisa mengepalai sejumlah
proyek dan bekerja pada sejumlah proyek proyek dan bekerja pada sejumlah proyek
Jurusan memiliki kode jurusan, nama Jurusan memiliki kode jurusan, nama
jurusan, dan lokasi jurusan, dan lokasi
Jurusan dikepalai oleh seorang dosenJurusan dikepalai oleh seorang dosen
Dosen bisa bekerja pada satu jurusan atau Dosen bisa bekerja pada satu jurusan atau
beberapa jurusan beberapa jurusan
Latihan ERD (4)
Latihan ERD (4)
Latihan ERD (5)
Latihan ERD (5)
NIM
NIM Nama Nama Mhs
Mhs KD MKKD MK Nama MKNama MK No DosenNo Dosen NamaDosenNamaDosen NilaiNilai
12345
12345 AliAli TI-001TI-001 AlgoritmaAlgoritma
Pemrograman
Pemrograman
771
771 DianDian AA
12345
12345 AliAli TI-101TI-101 Basis dataBasis data 773773 EliasElias AA
12346
12346 DarwinDarwin TI-001TI-001 Algoritma Algoritma
Pemrograman
Pemrograman 771
771 DianDian BB
12349
12349 SitiSiti TI-001TI-001 Algoritma Algoritma
Pemrograman
Pemrograman 771771 DianDian AA