Pengenalan Database Bagian II
description
Transcript of Pengenalan Database Bagian II
Pengenalan DatabasePengenalan DatabaseBagian IIBagian II
Abdul KadirAbdul Kadir
Diagram E-RDiagram 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 dengan dengan penggunapengguna
Diagram E-RDiagram E-R
Diagram E-R berupa model data Diagram E-R berupa model data konseptualkonseptual, yang , yang merepresentasikan data dalam merepresentasikan data dalam suatu organisasi dalam bentuk suatu organisasi dalam bentuk objek-objekobjek-objek dan dan hubungannyahubungannya
Data Data Data
Data Data Data
Diagram E-RDiagram E-R
Diagram E-R berupa model data Diagram E-R berupa model data konseptualkonseptual, yang , yang merepresentasikan data dalam merepresentasikan data dalam suatu organisasi dalam bentuk suatu organisasi dalam bentuk objek-objekobjek-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-Rmembuat diagram E-R
ERD dan ERD dan Proses Perancangan DatabaseProses 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 yangdalam bentuk yang high level high level (misalnya ERD)(misalnya ERD)
• Perancangan Perancangan databasedatabase logis logis Memilih DBMS dan mengonversi ke skema Memilih DBMS dan mengonversi ke skema databasedatabase
Tiga Tahapan Perancangan Tiga Tahapan Perancangan Database LainnyaDatabase Lainnya
Perbaikan SkemaPerbaikan Skema• Mengidentifikasi problem potensial dan Mengidentifikasi problem potensial dan
melakukan pembetulanmelakukan pembetulan Perancangan Perancangan databasedatabase fisik fisik
• Menyeleraskan rancangan Menyeleraskan rancangan database database dengan fitur-fitur dalam DBMSdengan fitur-fitur dalam DBMS
Perancangan keamananPerancangan keamanan• Mengatur keamanan yang menyangkut Mengatur keamanan yang menyangkut
wewenang pemakaiwewenang pemakai
Dasar ERDDasar ERD
EntitasEntitas AtributAtribut HubunganHubungan
ENTITAS
Hubungan
ENTITAS
Atribut
Atribut
Atribut
Atribut
Atribut
Atribut
EntitasEntitas Merupakan objek Merupakan objek
dalam dunia nyata dalam dunia nyata yang dapat dibedakan yang dapat dibedakan dengan objek-objek dengan objek-objek lainlain
Seorang manajer, Seorang manajer, sebuah mainan, sebuah mainan, sebuah pintu sebuah pintu merupakan contoh merupakan contoh entitasentitas
Objek… Objek??
?
AtributAtribut
Sifat / karakteristik Sifat / karakteristik yang melekat yang melekat dalam sebuah dalam sebuah entitasentitas
No inventaris
Merk
Ukuran RAM
…
Atribut
Entitas
Atribut?Atribut?
Atributnya?????
OrangOrang MobilMobil RuanganRuangan Surat Surat
PerjanjianPerjanjian
Himpunan EntitasHimpunan Entitas
Kumpulan dari objek Kumpulan dari objek yang memiliki yang memiliki karakteristik sama karakteristik sama dinamakan dinamakan himpunan entitashimpunan entitas
Semua manajer Semua manajer dalam sebuah dalam sebuah perusahaan perusahaan berkedudukan berkedudukan sebagai himpunan sebagai himpunan entitasentitas
Himpunan Entitas
Himpunan Entitas PegawaiHimpunan Entitas Pegawai
EMPLOYEE
Employee_ID
Birth_Of_Date Name
Employee_ID Name Birth_Of_Date
75-001 Sita Dewi 01/07/1982
75-002 Riantiarno 23/12/1984
HubunganHubungan
HubunganHubungan ((relationshiprelationship) adalah ) adalah pengait antara beberapa pengait antara beberapa tipe entitastipe entitas
75-001 Sita Dewi75-002 Riantiarno75-003 Diva Mawarni75-004 Karno76-001 Dino Larasati
DA Depertemen AkuntingDK Departmen KeuanganDP Departemen Pemasaran
Hubungan (Lanjutan)Hubungan (Lanjutan)
Dosen – MahasiswaDosen – Mahasiswa Dosen - MatakuliahDosen - Matakuliah Nasabah – Rekening BankNasabah – Rekening Bank Pemasok - BarangPemasok - Barang
Apa hubungannya??
???
Contoh Diagram E-RContoh Diagram E-R
Memasok
BARANG
Mengirim
KIRIMAN Memasok
PEMASOK
Digunakan_pada
PRODUK
Berisi
PESANAN
Mengirim
PELANGGAN
Tipe AtributTipe Atribut
Atribut Sederhana dan kompositAtribut Sederhana dan komposit Atribut Bernilai tunggal dan bernilai bAtribut Bernilai tunggal dan bernilai b
anyakanyak Atribut tersimpan dan turunanAtribut tersimpan dan turunan
Atribut Sederhana dan KompositAtribut Sederhana dan Komposit
• Atribut sederhanaAtribut sederhana tidak bisa dipecah tidak bisa dipecah menjadi bagian yang lebih kecil lagimenjadi 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 lainlain
Alamat: Alamat_Jalan, Kota, Kode_Pos
Nama: Nama: Nama_Depan, Nama_Depan,
Nama_Tengah, Nama_Tengah, Nama_BelakangNama_Belakang
Prev
Atribut Bernilai Tunggal dan Atribut Bernilai Tunggal dan Bernilai BanyakBernilai Banyak
Atribut bernilai tunggalAtribut bernilai tunggal adalah adalah atribut yang nilainya hanya satuatribut 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 satumemiliki nilai lebih dari satu
Contoh: Contoh: Nomor_Telpon, Nomor_Telpon, Ketrampilan_PemrogramanKetrampilan_Pemrograman
Prev
Atribut Tersimpan dan TurunanAtribut Tersimpan dan Turunan
Atribut tersimpanAtribut tersimpan adalah atribut yang adalah atribut yang secara eksplisit tersimpan dalam databasesecara 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 tersimpantersimpan• Contoh: Contoh:
Lama_BekerjaLama_Bekerja dapat dihitung dari dapat dihitung dari Tgl_Mulai_BekerjaTgl_Mulai_Bekerja Usia Usia bisa dihitung dari bisa dihitung dari Tgl_lahirTgl_lahir
Atribut Tersimpan dan Turunan?Atribut Tersimpan dan Turunan?
Kode Barang
NamaBarang
Jumlah Harga Satuan
Subtotal
P-001 Pensil 4 1.000 4.000
B-005 Buku Tulis 1 3.000 3.000
G-002 Penggaris 1 1.500 1.500
K-001 Kertas HVS 2 20.000 40.000
Jenis HubunganJenis 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
(c)
(d)
Jenis Hubungan (Lanjutan…)Jenis Hubungan (Lanjutan…)
Dosen – MahasiswaDosen – Mahasiswa Dosen - MatakuliahDosen - Matakuliah Nasabah – Rekening Nasabah – Rekening
BankBank Pemasok - BarangPemasok - Barang
Apa jenis hubungannya??
???
KunciKunci
Kunci dimaksudkan sebagai Kunci dimaksudkan sebagai pegangan untuk membedakan pegangan untuk membedakan antara satu entitas dengan entitas antara satu entitas dengan entitas yang lainyang lain
Kunci dapat disusun atas satu atau Kunci dapat disusun atas satu atau kombinasi beberapa atributkombinasi beberapa atribut
Istilah lain berupa pengenal Istilah lain berupa pengenal ((identifieridentifier) biasa digunakan sebagai ) biasa digunakan sebagai pengganti kata kuncipengganti kata kunci
PengenalPengenal
Pengenal tunggal (sederhana)Pengenal tunggal (sederhana)• Terdiri atas satu atributTerdiri atas satu atribut
Pengenal kompositPengenal komposit• Terdiri atas dua atribut atau lebihTerdiri atas dua atribut atau lebih
Pengenal TunggalPengenal Tunggal
Contoh: No_Mhs pada entitas Contoh: No_Mhs pada entitas MAHASISWAMAHASISWA
MAHASISWA
No_Mhs
Nama_Mhs Tgl_Lahir
Prev
Pengenal KompositPengenal Komposit
PENERBANGAN
ID_Penerbangan
Tujuan Jumlah_penumpang
ID_Pesawat Jadwal
Pengenal (Lanjutan…)Pengenal (Lanjutan…)
Pengenal harus Pengenal harus dibentuk dengan dibentuk dengan melibatkan atribut-melibatkan atribut-atribut yang atribut yang tidak tidak pernahpernah berubah atau berubah atau jarang berubahjarang berubah
Pilih pengenal yang Pilih pengenal yang nilainya jelas dan tidak nilainya jelas dan tidak pernah NULL (tidak pernah NULL (tidak dikenal)dikenal)
Mana yang sebaiknya
dipilih? Kode bagian atau
nama bagian?
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 itudan semacam itu• Buat independen terhadap kode Buat independen terhadap kode
seperti ituseperti itu
Pengenal
2 digit menyatakan lokasi
Pengenal (Lanjutan…)Pengenal (Lanjutan…)
Buat pengenal beratribut tunggal Buat pengenal beratribut tunggal untuk menggantikan pengenal untuk menggantikan pengenal komposit yang terlalu panjangkomposit yang terlalu panjang
ID_Penerbangan
Tujuan Jumlah_penumpang
ID_Pesawat Jadwal
PENERBANGAN
Tidak lagi tergantung ID_Pesawat dan Jadwal
Pengenal (Lanjutan…)Pengenal (Lanjutan…)
Buat pengenal sendiri untuk Buat pengenal sendiri untuk menggantikan atribut tertentumenggantikan atribut tertentu
ID_Kursus
Nama_Kursus DeskripsiKURSUS
Diciptakan tersendiri
Simbol dalam Diagram E-RSimbol dalam Diagram E-R
ENTITAS
Hubungan
Simbol Hubungan:
Satu
Bbanyak
Atribut
Garis bawah: Kunci atau pengenal (identifier)
Simbol Lain-LainSimbol Lain-Lain
Entitas kuat
Entitas lemah
Hubungan
Hubungan pengidentifikasi
Entitas asosiatif
Atribut
Atribut nilai berganda
Atribut turunan
Contoh ERDContoh ERD
PESANAN
Mengirim
PELANGGAN ID_PlgNama_Plg
ID_Pesanan Tgl_Pesanan
Contoh Atribut Komposit, Nilai Contoh Atribut Komposit, Nilai Berganda, dan TurunanBerganda, dan Turunan
ID_Plg
Nama_Plg
Telpon_Plg
PELANGGAN
Tgl_Lahir
Usia
Jalan Kota Kode_Pos
Alamat
Cara Memberi Nama EntitasCara Memberi Nama Entitas Gunakan sedapat mungkin satu kata Gunakan sedapat mungkin satu kata
benda. Kalau lebih dua kata, gunakan benda. Kalau lebih dua kata, gunakan spasi sebagai pemisah kataspasi sebagai pemisah kata
Ditulis dengan huruf KAPITALDitulis dengan huruf KAPITAL
Nama yang digunakan spesifik terhadap Nama yang digunakan spesifik terhadap perusahaanperusahaan• 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 tepatbermakna tepat• REGISTRASI lebih baik daripada REGISTRASI lebih baik daripada
REGISTRASI MAHASISWAREGISTRASI MAHASISWA
MAHASISWA
PELANGGAN
BARIS PESANAN
Spasi
Cara Memberi Nama AtributCara Memberi Nama Atribut Gunakan frasa Gunakan frasa kata kata
bendabenda atau kata atau kata benda tunggalbenda tunggal
Setiap awal kata ditulis Setiap awal kata ditulis dengan huruf KAPITALdengan huruf KAPITAL
Gunakan _ untuk Gunakan _ untuk menyambung dua katamenyambung dua kata
Kata bisa disingkat, Kata bisa disingkat, tetapi harus mudah tetapi harus mudah ditebak maknanyaditebak maknanya
Nama atribut harus Nama atribut harus unikunik
Nama
Nama_Plg
Nama_Pelanggan
Cara Memberi Nama HubunganCara Memberi Nama Hubungan
Gunakan Gunakan kata kata kerjakerja
Hanya awalnya Hanya awalnya yang dikapitalkanyang dikapitalkan
Gunakan garis Gunakan garis bawah sebagai bawah sebagai pemisah antarkatapemisah antarkata PESANAN
Mengirim
PELANGGAN
Kata kerja
Hubungan Hubungan UnaryUnary
Hubungan yang melibatkan Hubungan yang melibatkan hanya satu entitashanya satu entitas
MembawahiPEGAWAI
ID_Peg Nama_Peg Tgl_Lahir
manajer
pekerja
Indikator peran
Hubungan BinerHubungan Biner
Hubungan yang Hubungan yang melibatkan dua melibatkan dua buah entitasbuah entitas
PESANAN
Mengirim
PELANGGAN
Hubungan TernaryHubungan Ternary
Hubungan yang Hubungan yang melibatkan tiga melibatkan tiga buah entitasbuah entitas
PEGAWAI
ID_Peg Nama_Peg Tgl_Lahir
CABANG
PEKERJAAN
Bekerja_pada
Nama_Pek Level
Nama_Cab Lokasi
Atribut dalam HubunganAtribut dalam HubunganNama SiswaNama Siswa Nama KursusNama Kursus Tgl_SelesaiTgl_Selesai
AmirAmir Visual BASICVisual BASIC 24/2/100724/2/1007
AmirAmir Visual C++Visual C++ 3/5/20073/5/2007
DionDion Visual C++Visual C++ 3/5/20073/5/2007
FitriFitri DelphiDelphi 4/3/20074/3/2007
SISWA
ID_Siswa Nama_Siswa
KURSUSMenyelesaikan
ID_Kursus Nama_KursusTgl_Selesai
Atribut dalam HubunganAtribut dalam Hubungan
SISWA
ID_Siswa Nama_Siswa
KURSUSSERTIFIKAT
ID_Kursus Nama_KursusTgl_Selesai
SISWA
ID_Siswa Nama_Siswa
KURSUSMenyelesaikan
ID_Kursus Nama_KursusTgl_Selesai
No_Sert
Entitas Asosiatif
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-nyadiagram 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 orangmenikahi orang
Latihan ERD (3)Latihan ERD (3)
Setiap dosen memiliki nomor dosen, Setiap dosen memiliki nomor dosen, nama, dan usianama, dan usia
Setiap proyek memiliki nomor Setiap proyek memiliki nomor proyek, sponsor proyek, tanggal proyek, sponsor proyek, tanggal mulai, dan tanggal selesaimulai, dan tanggal selesai
Setiap proyek dikepalai oleh seorang Setiap proyek dikepalai oleh seorang profesorprofesor
Setiap proyek bisa melibatkan satu Setiap proyek bisa melibatkan satu atau beberapa dosenatau 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 proyekproyek dan bekerja pada sejumlah proyek
Jurusan memiliki kode jurusan, nama Jurusan memiliki kode jurusan, nama jurusan, dan lokasijurusan, 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 jurusanbeberapa jurusan
Gambarkan diagram ER-nyaGambarkan diagram ER-nya
Latihan ERD (4)Latihan ERD (4)
Buatlah diagram ER untuk PT Astrindo Utama yang mencerminkan pesanan barang di atas!
Latihan ERD (5)Latihan ERD (5)
NIMNIM Nama Nama MhsMhs
KD MKKD MK Nama MKNama MK No No DosenDosen
NamaNama
DosenDosenNilaiNilai
1234512345 AliAli TI-001TI-001 AlgoritmaAlgoritma
PemrogramanPemrograman771771 DianDian AA
1234512345 AliAli TI-101TI-101 Basis dataBasis data 773773 EliasElias AA
1234612346 DarwinDarwin TI-001TI-001 Algoritma Algoritma PemrogramanPemrograman
771771 DianDian BB
1234912349 SitiSiti TI-001TI-001 Algoritma Algoritma PemrogramanPemrograman
771771 DianDian AA
Buatlah diagram ER-nya!