Sistem Basis Data - Pertemuan 5 · PDF file7 Hubungan Hubungan (relationship) ... Contoh:...

download Sistem Basis Data - Pertemuan 5 · PDF file7 Hubungan Hubungan (relationship) ... Contoh: nomorpegawai Atributbernilaibanyakadalahatribut ... Fitri Delphi 4/3/2007 Dion Visual C++

If you can't read please download the document

Transcript of Sistem Basis Data - Pertemuan 5 · PDF file7 Hubungan Hubungan (relationship) ... Contoh:...

  • 1

    Alat Bantu Perancangan Basis Data

    ERD(Entity Relationship Diagram)

    Sistem Basis Data

    STMIK AUB Surakarta

    Diagram E-R

    Diagram E-R (Entity-Relationship) biasadigunakan dalam tahapanalisis perancangandatabaseDigunakan sebagaiperangkat untukberkomunikasi antarapengembang databasedengan pengguna

  • 2

    Diagram E-R

    Diagram E-R berupa model data konseptual, yang merepresentasikan data dalam suatuorganisasi dalam bentuk objek-objek dan hubungannya

    Data Data Data

    Data Data Data

    Diagram E-R

    Diagram E-R berupa model data konseptual, yang merepresentasikan data dalam suatuorganisasi dalam bentuk objek-objek dan hubungannyaTidak bergantung kepada softwareyang akan dipakai untukmengimplementasikan databaseSejauh ini banyak sekali model notasi yang dipakai untuk membuatdiagram E-R

  • 3

    ERD danProses Perancangan Database

    Tiga proses perancangan database yang terkaitdengan ERD:

    Analisis kebutuhanMenggali kebutuhan data untuk penyajian informasi

    Perancangan database konseptualMenyajikan kebutuhan data yang akan disimpan dalambentuk yang high level (misalnya ERD)

    Perancangan database logisMemilih DBMS dan mengonversi ke skema database

    Tiga Tahapan PerancanganDatabase Lainnya

    Perbaikan SkemaMengidentifikasi problem potensial danmelakukan pembetulan

    Perancangan database fisikMenyeleraskan rancangan database denganfitur-fitur dalam DBMS

    Perancangan keamananMengatur keamanan yang menyangkutwewenang pemakai

  • 4

    Dasar ERD

    EntitasAtributHubungan

    ENTITAS

    Hubungan

    ENTITAS

    Atribut

    Atribut

    Atribut

    Atribut

    Atribut

    Atribut

    Entitas

    Merupakan objek dalamdunia nyata yang dapatdibedakan dengan objek-objek lain

    Seorang manajer, sebuahmainan, sebuah pintumerupakan contoh entitas

    Lambang :

    ObjekObjek??

    ?

  • 5

    Atribut

    Sifat / karakteristikyang melekat dalamsebuah entitas No inventaris

    Merk

    Ukuran RAM

    Atribut

    Entitas

    Atribut?

    Atributnya?????

    OrangMobilRuanganSuratPerjanjian

  • 6

    Himpunan Entitas

    Kumpulan dari objekyang memilikikarakteristik samadinamakanhimpunan entitas

    Semua manajerdalam sebuahperusahaanberkedudukansebagai himpunanentitas

    HimpunanEntitas

    Himpunan Entitas Pegawai

    EMPLOYEE

    Employee_ID

    Birth_Of_Date Name

    23/12/1984Riantiarno75-002

    01/07/1982Sita Dewi75-001

    Birth_Of_DateNameEmployee_ID

  • 7

    Hubungan

    Hubungan (relationship) adalah pengait antarabeberapa tipe entitas

    75-001 Sita Dewi75-002 Riantiarno75-003 Diva Mawarni75-004 Karno76-001 Dino Larasati

    DA Depertemen AkuntingDK Departmen KeuanganDP Departemen Pemasaran

    Hubungan (Lanjutan)

    Dosen MahasiswaDosen - MatakuliahNasabah Rekening BankPemasok - Barang

    Apahubungannya????

    ?

  • 8

    Contoh Diagram E-R

    Memasok

    BARANG

    Mengirim

    KIRIMAN Memasok

    PEMASOK

    Digunakan_pada

    PRODUK

    Berisi

    PESANAN

    Mengirim

    PELANGGAN

    Tipe Atribut

    Atribut Sederhana dan kompositAtribut Bernilai tunggal dan bernilaibanyakAtribut tersimpan dan turunan

  • 9

    Atribut Sederhana dan Komposit

    Atribut sederhana tidak bisa dipecahmenjadi bagian yang lebih kecil lagiAtribut komposit adalah atribut yang dapatdipecah menjadi komponen yang lain

    Alamat: Alamat_Jalan, Kota, Kode_PosNama: Nama_Depan,

    Nama_Tengah, Nama_Belakang

    Prev

    Atribut Bernilai Tunggal danBernilai Banyak

    Atribut bernilai tunggal adalah atributyang nilainya hanya satuContoh: nomor pegawaiAtribut bernilai banyak adalah atributyang berkemungkinan memiliki nilai lebihdari satuContoh: Nomor_Telpon,

    Ketrampilan_Pemrograman

    Prev

  • 10

    Atribut Tersimpan dan Turunan

    Atribut tersimpan adalah atribut yang secaraeksplisit tersimpan dalam database

    Atribut turunan adalah atribut yang nilainyadapat dikalkulasi dari nilai atribut tersimpan

    Contoh: Lama_Bekerja dapat dihitung dari Tgl_Mulai_BekerjaUsia bisa dihitung dari Tgl_lahir

    Atribut Tersimpan dan Turunan?

    40.00020.0002Kertas HVSK-001

    1.5001.5001PenggarisG-002

    3.0003.0001Buku TulisB-005

    4.0001.0004PensilP-001

    SubtotalHargaSatuan

    JumlahNamaBarang

    KodeBarang

  • 11

    Jenis Hubungan

    Jenis hubunganantara duahimpunan entitas:a) One to Oneb) One to Manyc) Many to Oned) Many to Many

    (c) (d)

    Jenis Hubungan (Lanjutan )

    Dosen MahasiswaDosen - MatakuliahNasabah RekeningBankPemasok - Barang

    Apa jenishubungannya????

    ?

  • 12

    Kunci

    Kunci dimaksudkan sebagai peganganuntuk membedakan antara satu entitasdengan entitas yang lainKunci dapat disusun atas satu ataukombinasi beberapa atributIstilah lain berupa pengenal (identifier) biasa digunakan sebagai pengganti katakunci

    Pengenal

    Pengenal tunggal (sederhana)Terdiri atas satu atribut

    Pengenal kompositTerdiri atas dua atribut atau lebih

  • 13

    Pengenal Tunggal

    Contoh: No_Mhs pada entitasMAHASISWA

    MAHASISWA

    No_Mhs

    Nama_Mhs Tgl_Lahir

    Prev

    Pengenal Komposit

    PENERBANGAN

    ID_Penerbangan

    Tujuan Jumlah_penumpang

    ID_Pesawat Jadwal

  • 14

    Pengenal (Lanjutan )

    Pengenal harus dibentukdengan melibatkanatribut-atribut yang tidakpernah berubah ataujarang berubahPilih pengenal yang nilainya jelas dan tidakpernah NULL (tidakdikenal)

    Mana yang sebaiknya dipilih? Kode bagian atau

    nama bagian?

    Pengenal (Lanjutan )

    Buat pengenal beratribut tunggal untukmenggantikan pengenal komposit yang terlalu panjang

    ID_Penerbangan

    Tujuan Jumlah_penumpang

    ID_Pesawat Jadwal

    PENERBANGAN

    Tidak lagitergantung

    ID_Pesawatdan Jadwal

  • 15

    Simbol dalam Diagram E-R

    ENTITAS

    Hubungan

    Simbol Hubungan:

    Satu

    Bbanyak

    Atribut

    Garis bawah: Kunci ataupengenal (identifier)

    Simbol Lain-Lain

    Entitas kuat

    Entitas lemah

    Hubungan

    Hubunganpengidentifikasi

    Entitas asosiatif

    Atribut

    Atribut nilai berganda

    Atribut turunan

  • 16

    Contoh ERD

    PESANAN

    Mengirim

    PELANGGAN ID_PlgNama_Plg

    ID_Pesanan Tgl_Pesanan

    Contoh Atribut Komposit, NilaiBerganda, dan Turunan

    ID_Plg

    Nama_Plg

    Telpon_Plg

    PELANGGAN

    Tgl_Lahir

    Usia

    Jalan Kota Kode_Pos

    Alamat

  • 17

    Cara Memberi Nama EntitasGunakan sedapat mungkin satu kata benda. Kalau lebih dua kata, gunakan spasi sebagaipemisah kata

    Ditulis dengan huruf KAPITAL

    Nama yang digunakan spesifik terhadapperusahaan

    KLIEN atau PELANGGAN berarti sama. Tetapi mana yang digunakan perusahaan?

    Gunakan nama yang singkat tapi bermaknatepat

    REGISTRASI lebih baik daripadaREGISTRASI MAHASISWA

    MAHASISWA

    PELANGGAN

    BARIS PESANAN

    Spasi

    Cara Memberi Nama Atribut

    Gunakan frasa katabenda atau kata bendatunggalSetiap awal kata ditulisdengan huruf KAPITALGunakan _ untukmenyambung dua kataKata bisa disingkat, tetapiharus mudah ditebakmaknanyaNama atribut harus unik

    Nama

    Nama_Plg

    Nama_Pelanggan

  • 18

    Cara Memberi Nama Hubungan

    Gunakan kata kerjaHanya awalnya yang dikapitalkanGunakan garis bawahsebagai pemisahantarkata

    PESANAN

    Mengirim

    PELANGGAN

    Katakerja

    Hubungan Unary

    Hubungan yang melibatkan hanyasatu entitas

    MembawahiPEGAWAI

    ID_Peg Nama_Peg Tgl_Lahir

    manajer

    pekerja

    Indikatorperan

  • 19

    Contoh Unary Relationship

    ORANG Menikah_dengan PEGAWAI Membawahi

    SUKU_CADANG Tersusun_atas

    Hubungan Biner

    Hubungan yang melibatkan dua buahentitas

    PESANAN

    Mengirim

    PELANGGAN

  • 20

    Contoh Binary Relationship

    Diberi_jatahORANG TEMPAT PARKIR

    Bekerja_padaPEGAWAI DEPARTEMEN

    MengambilMAHASISWA MATA KULIAH

    Hubungan Ternary

    Hubungan yang melibatkan tigabuah entitas

    PEGAWAI

    ID_Peg Nama_Peg Tgl_Lahir

    CABANG

    PEKERJAAN

    Bekerja_pada

    Nama_Pek Level

    Nama_Cab Lokasi

  • 21

    Contoh Ternary Relationship

    MemasokPEMASOK GUDANG

    BARANG

    Sebuah Pemasok memasok sejumlah barang pada beberapa gudang

    Sebuah barang bisa dipasok oleh beberapa Pemasok

    Atribut dalam Hubungan

    4/3/2007DelphiFitri

    3/5/2007Visual C++Dion

    3/5/2007Visual C++Amir

    24/2/1007Visual BASICAmir

    Tgl_SelesaiNama KursusNama Siswa

    SISWA

    ID_Siswa Nama_Siswa

    KURSUSMenyelesaikan

    ID_Kursus Nama_KursusTgl_Selesai

  • 22

    Atribut 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

    Kardinalitas Hubungan

    Selalu hanya satu

    Satu atau banyak

    Nol atau satu

    Nol, satu, atau banyak

  • 23

    Kekangan Kardinalitas

    Jenis hubungan antartipe entitas seringkali dinyatakantidak sekedar dalam bentuk berupa One to One, One to Many, Many to One, dan Many to Many, melainkanjuga dengan menyertakan kekangan kardinalitas

    Kekangan kardinalitas (cardinality constraint) adalahsuatu keadaan yang digunakan untuk menyatakanjumlah instan dalam sebuah entitas yang dapatdikaitkan dengan sebuah instan pada entitas lain

    Implementasinya adalah dengan menggunakankardinalitas hubungan yang dijelaskan pada sl