Entity Relationship Diagram - Download as PDF by cariuang

VIEWS: 1,796 PAGES: 69

									       MODEL
ENTITY-RELATIONSHIP
      Model Basis Data
• Model Data: kumpulan perangkat konseptual
  untuk menggambarkan data, hubungan data,
  semantik (makna) data, dan batasan data.
  Contoh: Model Keterhubungan Entitas (Entity-
  Relationship Data Model)

• Pada Model Entity-Relationship, semesta data
  yang ada di ‘Dunia Nyata’ ditransformasikan
  dengan memanfaatkan sejumlah perangkat
  konseptual menjadi sebuah diagram data, yang
  umum disebut Diagram Entity-Relationship.

• Ada 2 komponen utama pembentuk Model E-R:
  Entitas (Entity) dan Relasi (Relation).


                                            2
  Entitas dan Himpunan Entitas
• Entitas (entity) ialah individu yang mewakili
  sesuatu yang nyata (eksistensinya) dan dapat
  dibedakan dari sesuatu yang lain. Contoh:
  sebuah kursi yang kita duduki, sebuah mobil
  yang melintas di depan kita, dll.

• Himpunan Entitas (Entity Set) ialah
  sekelompok entitas yang sejenis dan berada
  dalam lingkup yang sama. Sering disebut sebagai
  Entitas saja.

• Pada dasarnya, entitas menunjuk pada individu
  suatu objek, sedang himpunan entitas menunjuk
  pada rumpun (famili) dari individu tersebut.
• Himpunan entitas dilambangkan sebagai persegi
  panjang:

                                              3
ATRIBUT (Attributes/Properties)
• Atribut  mendeskripsikan karakteristik
  (properti) dari suatu Entitas. Contoh: NRP
  adalah atribut dari entitas MAHASISWA.
  Jumlah SKS, Kode mata kuliah adalah atribut
  dari entitas MATAKULIAH.
• Domain adalah himpunan nilai yang berlaku
  bagi suatu atribut.
• Atribut dapat dikatakan sebagai fungsi yang
  menghubungkan suatu entitas ke suatu
  domain (seperti, NRP: entitas  Integer,
  Nama: entitas  String).
• Atribut dilambangkan sebagai
  lingkaran/elips:

                                          4
 Tipe Atribut: Komposit vs. Sederhana
• Atribut Sederhana (Simple Attribute) adalah atribut
  atomik yang tidak dapat dipilah lagi.
• Atribut Komposit (Composite Attribute) merupakan
  atribut yang masih dapat diuraikan lagi menjadi sub-
  sub atribut yang masing-masing memiliki makna.
• Jika tidak ada aktivitas pengolahan data yang
  melibatkan sub-sub atribut tersebut secara khusus,
  maka lebih baik memakai Atribut Komposit demi
  kesederhanaan struktur tabel.
• Contoh:




                                                   5
           Tipe Atribut:
Bernilai Banyak vs. Bernilai Tunggal
 • Atribut Bernilai Tunggal (Single-Valued
   Attribute) ditujukan pada atribut-atribut
   yang memiliki paling banyak satu nilai untuk
   setiap baris data.
 • Atribut Bernilai Banyak (Multivalued
   Attribute) ditujukan pada atribut-atribut
   yang dapat kita isi dengan lebih dari 1 nilai,
   tetapi jenisnya sama. Contoh: nomor-
   telepon, gelar, hobbi, dll.
 • Atribut Bernilai Banyak dilambangkan sebagai
   elips ganda:

                                              6
Tipe Atribut: Turunan vs. Simpanan
 • Atribut Turunan adalah atribut yang nilai-
   nilainya diperoleh dari pengolahan atau
   dapat diturunkan dari atribut atau tabel lain
   yang berhubungan.
 • Atribut Turunan sebenarnya dapat ditiadakan
   dari sebuah tabel karena nilai-nilainya
   bergantung pada nilai yang ada di atribut
   lainnya.
 • Contoh: atribut umur yang dapat dikalkulasi
   dari atribut TanggalLahir atau atribut
   JumlahPegawai yang dapat dihitung dari
   banyaknya baris pada tabel.
 • Atribut Turunan dilambangkan sebagai elips
   titik-titik:
                                              7
         Tipe Atribut:
   Harus Bernilai vs. Nilai Null
• Atribut Harus Bernilai (Mandatory Attribute)
  adalah atribut yang harus berisi nilai. Contoh:
  pada tabel MAHASISWA, NRP dan
  NamaMahasiswa harus diketahui.
• Atribut Tidak Harus Bernilai (Non Mandatory
  Attribute) adalah atribut yang nilainya boleh
  dikosongkan.
• Nilai NULL dapat berarti:
   – Nilai tidak ada karena atribut tidak dipakai
       • Contoh: NomorApartemen, Gelar, dll.
   – Nilai ada tetapi hilang
       • Contoh: nilai null untuk berat badan
         seseorang
   – Nilai tidak diketahui apakah ada atau tidak
       • Contoh: nilai null untuk NomorTelepon 8
E-R Diagram Dengan Atribut
 Komposit, Atribut Bernilai
Banyak, dan Atribut Turunan




                              9
 E-R Diagram Dengan Atribut Bernilai
     Banyak dan Atribut Turunan




                             Atribut Bernilai Banyak:
Turunan dari Date_Employed   pegawai dapat mempunyai
dan tanggal hari ini         beberapaan keahlian

                                                   10
E-R Diagram Dengan Atribut
Bernilai Banyak dan Atribut
          Komposit




                              11
 Relasi dan Himpunan Relasi
• Relasi (relationship) menunjukkan
  adanya hubungan di antara sejumlah
  entitas yang berasal dari himpunan
  entitas yang berbeda.
• Himpunan Relasi (relationship set)
  dibentuk dari kumpulan semua relasi di
  antara entitas-entitas yang terdapat
  pada himpunan entitas-himpunan
  entitas tersebut. Sering disebut sebagai
  Relasi saja.
• Contoh: antara Dosen_Wali dan
  Mahasiswa terdapat hubungan
  “membimbing”, antara Mahasiswa dan
  Mata Kuliah terdapat hubungan
  “mengambil.”
• Himpunan relasi dilambangkan sebagai
  belah ketupat:
                                             12
       Relasi Rekursif
• Entitas yang dihubungkan oleh
  suatu relasi (relationship) tidak
  harus berbeda. Entitas yang sama
  dapat ikut serta lebih dari satu
  kali di dalam relasi dengan peran
  (role) yang berbeda.



                                  13
                   Peran (Role)
s Peran ialah fungsi yang diperankan oleh suatu entitas di dalam
  suatu relasi.
s Label “manager” dan “worker” dinamakan peran; fungsi ini
  menjelaskan sebagai apa entitas ‘Employee’ berinteraksi lewat
  relasi ‘works-for.’
s Label peran adalah pilihan (optional) dan digunakan untuk
  menunjukkan arti dari relasi. Biasanya implisit.




                                                              14
   Kardinalitas/Derajat Relasi
• Kardinalitas Relasi menunjukkan
  jumlah maksimum entitas yang dapat
  berelasi dengan entitas pada
  himpunan entitas yang lain.
• Kardinalitas Relasi yang terjadi di
  antara dua himpunan entitas dapat
  berupa:
    Satu ke Satu (One to One)
    Satu ke Banyak (One to Many)
    Banyak ke Satu (Many to One)
    Banyak ke Banyak (Many to Many)

                                   15
Satu ke Satu (One to One)
• Berarti setiap entitas pada
  himpunan entitas A berhubungan
  paling banyak dengan satu entitas
  pada himpunan entitas B, dan
  begitu juga sebaliknya.
• Contoh: Pria menikahi Wanita
  (asumsi tidak ada poligami!),
  Dosen mengepalai Jurusan.


                                  16
      Satu ke Banyak
       (One to Many)
• Berarti setiap entitas pada himpunan
  entitas A dapat berhubungan dengan
  banyak entitas pada himpunan entitas B,
  tetapi tidak sebaliknya, di mana setiap
  entitas pada himpunan entitas B
  berhubungan dengan paling banyak
  dengan satu entitas pada himpunan
  entitas A.
• Contoh: Ibu mempunyai Anak, Dosen
  mengajar Kuliah.
                                       17
       Banyak ke Satu
        (Many to One)
• Berarti setiap entitas pada himpunan
  entitas A berhubungan paling banyak
  dengan satu entitas pada himpunan
  entitas B, tetapi tidak sebaliknya, di
  mana setiap entitas pada himpunan
  entitas A berhubungan dengan paling
  banyak satu entitas pada himpunan
  entitas B.
• Contoh: Anak mempunyai Ibu, Kuliah
  diajar Dosen
                                           18
     Banyak ke Banyak
      (Many to Many)
• Berarti setiap entitas pada himpunan
  entitas A dapat berhubungan dengan
  banyak entitas pada himpunan entitas
  B, dan demikian juga sebaliknya, di
  mana setiap entitas pada himpunan
  entitas B dapat berhubungan dengan
  banyak entitas pada himpunan entitas
  A.
• Contoh: Mahasiswa mengambil mata
  kuliah
                                         19
               Kardinalitas




         One to One                One to Many

Catatan: Beberapa elemen di A dan B mungkin tidak
dipetakan ke elemen apapun di set yang lain.        20
           Kardinalitas




    Many to One               Many to Many
Catatan: Beberapa elemen di A dan B mungkin tidak
dipetakan ke elemen apapun di set yang lain.
                                                    21
        Atribut Deskriptif
      (Descriptive Attributes)
• Himpunan relasi dapat pula mempunyai atribut.
• Contoh: himpunan relasi depositor antara entitas
  customer dan account dapat mempunyai atribut
  access-date




                                                     22
    Kardinalitas dan Desain ER
s Kardinalitas mempengaruhi desain ER. Jika
  setiap nasabah hanya mempunyai satu
  rekening, access-date dapat dijadikan atribut
  dari rekening.




                                            23
    Atribut Deskriptif
• Atribut dari himpunan relasi dapat
  dipindahkan ke entitas yang
  berpartisipasi untuk relasi Satu ke
  Satu, Satu ke Banyak, dan Banyak
  ke Satu. Ke entitas yang mana?
  Banyak atau Satu?

• Tetapi tidak untuk relasi Banyak
  ke Banyak.
                                     24
             KUNCI
• Kunci (key) adalah satu atau
  gabungan dari beberapa atribut yang
  dapat membedakan semua baris
  data (row) dalam tabel secara unik.
• Ada 3 macam key yang dapat
  diterapkan pada suatu tabel, yaitu:
  – Superkey
  – Kunci Kandidat (Candidate-Key)
  – Kunci Primer (Primary-Key)

                                  25
          SUPERKEY
• Superkey merupakan satu atau
  lebih atribut (kumpulan atribut)
  yang dapat membedakan setiap
  baris data dalam sebuah tabel
  secara unik.
• Mungkin ada lebih dari 1 Superkey
  pada sebuah tabel.



                                26
TABEL MAHASISWA
  NRP     Nama       Alamat      Tgl_Lahir
0472001   Ria      Jl. Badak 2   11/09/85
0472002   Riny     Jl. Sapi 3    12/01/85
0472003   Erica    Jl. Macan 1   09/09/84
0472004   John     Jl. Riau 3    01/03/85
0472005   Lucas    Jl. Duku 4    04/03/85
0472006   Paul     Jl. Badak 5   01/03/85
0472007   Philip   Jl. Riau 30   01/03/85
0472008   Mary     Jl. Riau 3    03/03/83
                                       27
            SUPERKEY
• Contoh Superkey pada tabel
  Mahasiswa dengan atribut NRP,
  nama, alamat, tgl_lahir:
  – (NRP, nama, alamat, tgl_lahir)
  – (NRP, nama, alamat)
  – (NRP, nama)
  – (nama), jika kita bisa menjamin tidak
    ada nilai yang sama untuk atribut ini
  – (NRP)


                                        28
    CANDIDATE KEY
• Candidate-Key merupakan kumpulan
  atribut minimal yang dapat membedakan
  setiap baris data dalam sebuah tabel secara
  unik.
• Sebuah Candidate-Key pastilah Superkey,
  tapi belum tentu sebaliknya.
• Pada sebuah tabel dimungkinkan adanya
  lebih dari satu Candidate-Key.
• Contoh Candidate-Key pada tabel
  Mahasiswa:
  – (nama), jika kita bisa menjamin tidak ada nilai
    yang sama untuk atribut ini
  – (NRP)
                                                 29
         KUNCI PRIMER
• Key Primer adalah kunci kandidat yang
  dipilih sebagai kunci utama untuk
  mendefinisikan baris pada tabel.
• Pemilihan Key Primer didasari oleh:
   – Key tersebut lebih sering (lebih natural)
     untuk dijadikan sebagai acuan.
   – Key tersebut lebih ringkas.
   – Jaminan keunikan Key tersebut lebih
     baik.
• Dati tabel Mahasiswa, yang lebih cocok
  untuk dijadikan Key Primer adalah (NRP).
                                           30
Kunci Pada Himpunan Relasi
 • Setiap relasi individual harus dapat
   diidentifikasi dan dibedakan dengan relasi
   individual yang lain dalam sebuah
   himpunan relasi. Karena itulah, himpunan
   relasi juga harus memiliki key.
 • Pada umumnya, key pada himpunan relasi
   dibentuk dari key dari masing-masing
   himpunan entitas yang dihubungkannya.
   Jadi jika key pada himpunan entitas
   pertama adalah {x} dan key pada
   himpunan entitas kedua adalah {y}, maka
   key pada himpunan relasi dari keduanya
   adalah {xy}.


                                           31
Partisipasi Entitas Dalam
    Himpunan Relasi
s Partisipasi Total(Total Participation)
  (dilambangkan dengan garis ganda):
  setiap aggota dari himpunan entitas
  berpartisipasi dalam paling sedikit satu
  relasi dalam himpunan relasi.
s Partisipasi Sebagian (Partial Participation):
  beberapa aggota dari himpunan entitas
  mungkin tidak berpartisipasi di relasi
  manapun juga dalam himpunan relasi


                                             32
PARTISIPASI TOTAL/SEBAGIAN
s Contoh:
   Mahasiswa – orang tua
   Buku perpustakaan – mahasiswa
   Mahasiswa – mata kuliah
   Ibu – anak
   Suami – istri
   Laki-laki – perempuan (menikahi)
   Mata kuliah – ruang kelas


                                       33
            Varian Relasi
• Menunjukkan banyaknya himpunan entitas yang
  berpartisipasi di himpunan relasi.
   – Relasi Tunggal (Unary Relation): relasi yang
     terjadi dari sebuah himpunan entitas ke
     himpunan entitas yang sama.
   – Relasi Biner (Binary Relation): relasi yang
     terjadi di antara dua himpunan entitas yang
     berbeda.
   – Relasi Mutli Entitas (N-ary Relation): relasi
     dari 3 himpunan entitas atau lebih.

• Bentuk relasi multi entitas sedapat mungkin
  dihindari karena akan mengaburkan derajat relasi
  yang ada dalam relasi tersebut.

                                              34
    Derajat Himpunan Relasi




Relasi adalah dari   Relasi antara dua   Relasi antara tiga
satu entitas ke                          atau lebih entitas.
                     entitas berbeda.
entias yang
sama.




                                                               35
E-R Diagram Dengan
 Relasi Mutli Entitas
1. Pegawai bank dapat bekerja di
   beberapa cabang dengan jabatan
   yang berbeda di setiap cabangnya.
   Entitas: Pegawai, Jabatan, dan
   Cabang dengan relasi Bekerja.
2. Dosen mengajar kuliah di ruangan.
   Entitas: Kuliah, Dosen, dan Ruang
   dengan relasi Pengajaran.


                                  36
          Pertanyaan…
Bagaimana kalau kita mengubah relasi multi
entitas ke relasi biner? Apa yang akan
berubah?




                                             37
Relasi Biner Vs. Non-Biner
• Beberapa relasi non-biner kadang lebih
  baik direpresentasikan dengan relasi
  biner.
   – Contoh: Anak-Ibu-Ayah dalam relasi
     OrangTua
• Tetapi ada juga beberapa relasi yang
  secara natural non-biner dan tidak dapat
  dijadikan relasi biner.
   – Contoh: Pegawai-Cabang-Pekerjaan
     dalam relasi Bekerja, Supplier-
     Department-Parts dalam relasi
     Contracts.
                                        38
 Mengubah Relasi Non-Biner ke
        Relasi Biner
• Pada umumnya, semua relasi non-biner dapat direpresentasikan
  dengan relasi biner dengan membuat ‘artificial’ entitas.
   – Ganti R antara himpunan entitas A, B dan C dengan himpunan
     entitas E, dan tiga himpunan relasi:
          1. RA, menghubungkan E dan A
          2. RB, menghubungkan E dan B
          3. RC, memghubungkan E dan C
   – Tambahkan spesial atribut ke E
   – Tambahkan semua atribut R ke E
   – Untuk setiap relasi (ai , bi , ci) di R, buat
          1. Entitas baru ei di himpunan entitas E
          2. Tambah (ei , ai ) ke RA
          3. Tambah (ei , bi ) ke RB
          4. Tambah (ei , ci ) ke RC
                                                            39
Mengubah Relasi Non-Biner
     ke Relasi Biner




                        40
Himpunan Entitas Lemah
   (Weak Entity Sets)
 • Himpunan Entitas Lemah berisi entitas-
   entitas yang kemunculannya tergantung
   pada eksistensinya dalam sebuah relasi
   terhadap entitas lain (Strong Entity).
 • Himpunan Entitas Lemah tidak memiliki
   atribut yang dapat berfungsi sebagai key,
   yang benar-benar dapat menjamin
   keunikan entitas di dalamnya.
 • Himpunan Entitas Lemah harus berelasi
   dengan Himpunan Entitas Kuat melalui
   partisipasi total, Satu ke Banyak dari
   Himpunan Entitas Kuat ke Lemah.
                                               41
Himpunan Entitas Lemah
   (Weak Entity Sets)
• Himpunan Relasi yang menghubungkan
  himpuanan entitas Lemah dan kuat dilambangkan
  dengan belah ketupat ganda.
• Diskriminator (partial key) dari himpunan entitas
  lemah ialah atribut yang membedakan entitas satu
  dari entias lainnya dalam himpunan entitas lemah
  tersebut.
• Kunci primer dari himpunan entitas lemah
  dibentuk dari kunci primer dari himpunan entitas
  kuat + diskriminator dari himpunan entitas lemah.
• Contoh: Mahasiswa ‘memiliki’ Orang-Tua,
  Mahasiswa ‘menyenangi’ Hobbi.


                                               42
    Himpunan Entitas Lemah
• Kita melambangkan himpunan entitas lemah dengan
  persegi panjang ganda.
• Kita menggarisbawahin diskriminator dari himpunan
  entitas lemah denga garis putus-putus.
• Kunci primer dari payment : (loan-number, payment-
  number)




                                                       43
    Contoh Lain dari
 Himpunan Entitas Lemah
• Penawaran mata kuliah di universitas. Mata
  kuliah yang sama mungkin ditawarkan di
  semester yang berbeda dan dalam satu
  semester, mungin ada beberapa kelas
  (kelas A, B, atau C).
• Untuk ini, kita dapat membuat himpunan
  entitas lemah mata_kuliah_tawaran,
  keberadaannya tergantung pada himpunan
  entitas mata_kuliah.
• Diskriminator dari mata_kuliah_tawaran
  adalah semester (termasuk year) dan
  kelas.
                                          44
             Spesialisasi
• Spesialisasi adalah proses mendekomposisikan
  himpunan entitas berdasarkan pengelompokkan
  tertentu (proses top-down).
• Hasil dari dekomposisi tersebut adalah Sub Entitas
  yang merupakan himpunan entitas yang
  beranggotakan entitas-entitas yang merupakan
  bagian dari himpunan entitas yang lebih
  superior/utama.
• Spesialisasi ini dilakukan bila ada perbedaan atribut
  yang menyebabkan sub entitas tidak dapat
  disatukan dalam sebuah himpunan entitas saja.
• Atribut pada sub entitas tidak berlaku pada
  himpunan entitas yang lebih superior, tetapi atribut
  dan relasi pada superior entitas berlaku pada sub
  entitas.
• Contoh: Dosen  Dosen Tetap (nik, pangkat,
  tgl_masuk) vs. Dosen Tidak Tetap(nama_kantor,
  alamat_kantor)
                                                   45
Contoh Spesialisasi




                      46
 Kapan Menggunakan
    Spesialisasi?
1. Jika kita ingin mendefinisikan
   sekumpulan sub entitas dari
   suatu himpunan entitas.
2. Jika sub entitas memiliki spesifik
   atribut.
3. Jika sub entitas memiliki suatu
   himpunan relasi spesifik dengan
   himpunan entitas lainnya.
                                    47
        Generalisasi
• Generalisasi adalah proses
  penyatuan kelompok-kelompok
  entitas dalam sebuah himpunan
  entitas dengan atribut-atribut yang
  sama (proses bottom-up).
• Contoh: mahasiswa D3 dan
  mahasiswa S1 -> mahasiswa
  karena tidak tegasnya perbedaan
  atribut dari kedua kelompok
  tersebut maka disatukan dalam
  sebuah himpunan entitas.         48
Contoh Generalisasi




                      49
Specialisasi dan Generalisasi
  • Dapat mempunyai beberapa spesialisasi dalam
    sebuah himpunan entitas yang didasarkan pada
    jenis pengelompokan yang berbeda.
  • Contoh: pegawai-tetap vs. calon-pegawai dan
    staff vs. teler vs. sekretaris.
  • Setiap pegawai akan menjadi
     – Aggota dari pegawai-tetap atau calon-
       pegawai,
     – Dan juga aggota staff atau teler atau
       sekretaris
  • Relasi ‘ISA’ adalah relasi superclass - subclass.
  • Catatan: entitas tidak dapat menjadi anggota
    dari sub entitas tanpa menjadi anggota dari
    entitas superior. Tetapi, anggota dari entitas
    superior tidak selalu harus menjadi anggota dari
    sub entitas.

                                                   50
     Pewarisan Atribut
• Atribut dan relasi dari himpunan entitas
  superior diturunkan ke semua sub-
  entitasnya.
  Contoh: kalau Dosen berpartisipasi dalam
  relasi Mengajar, Dosen Tetap dan Dosen
  Tidak Tetap juga turut berpartisipasi
  dalam relasi Menagjar.
• Sub Entitas dengan spesifik atribut
  berlaku hanya pada sub entitas tersebut
  (tidak pada sub entitas lain atau entitas
  superior).

                                         51
   Multiple Inheritance
(Pewarisan Lebih Dari Satu)




                              52
 Batasan Desain Dalam
Spesialisasi/Generalisasi
• Salah satu batasan adalah menentukan
  entitas mana yang dapat menjadi anggota
  dari sub entitas.
   – Predicate-defined (or condition-defined):
     menentukan keanggotaan dengan
     meneliti nilai dari spesifik atribut
     (disebut, defining attribute).
     • Langganan berumur 65 ke atas adalah
       anggota dari himpunan entitas senior-citizen;
       senior-citizen ISA person. Disini keanggotaan
       dievaluasi berdasarkan atribut umur dari
       himpunan entitas person.
   – User-defined: pengguna menentukan
     keanggotaan untuk setiap sub entitas.

                                                 53
 Batasan Desain Dalam
Spesialisasi/Generalisasi
• Batasan yang menentukan apakah entitas dapat
  menjadi anggota dari lebih dari satu sub entitas
  dalam suatu generalisasi.
   – Disjoint (terpisah)
      • Entitas hanya dapat menjadi anggota dari
        satu sub entitas. Dilambangkan dengan ‘d’
        di segitiga ‘ISA.’
      • Contoh: person hanya dapat menjadi
        anggota dari senior-citizen atau junior-
        citizen, tetapi tidak keduanya.
   – Overlapping (tumpang tindih)
      • Entitas dapat menjadi anggota dari lebih
        dari satu sub entitas. Dilambangkan dengan
        ‘o’ di segitiga ‘ISA.’
      • Contoh: pegawai dapat juga menjadi
        pelanggan/pembeli.                         54
 Batasan Desain Dalam
Spesialisasi/Generalisasi
 • Completeness constraint – menentukan
   apakah setiap entitas di himpunan entitas
   superior harus menjadi anggota dari paling
   sedikit satu sub entitas.
    – total : setiap entitas harus menjadi
      anggota dari salah satu sub entitas.
      Dilambangkan dengan garis ganda.
    – partial: sebuah entitas tidak harus
      menjadi anggota dari salah satu sub
      entitas (default).

                                            55
Completeness Vs. Disjointness
• Batasan ‘completeness’ dan
  ‘disjointness’ tidak bergantung
  satu sama lain.
• Jenis:
   – Total, disjoint
   – Partial, disjoint
   – Total, overlapping
   – Partial, overlapping

                                    56
Spesialisasi Total + Overlap
• Contoh 1: Orang (nama,
  nomor_ktp, alamat)  pegawai
  (nik), alumni, dan mahasiswa (nrp)
• Contoh 2: Dosen (nama_dos,
  alamat_dos)  TET (nik, pangkat,
  tgl_masuk) dan LB (nama_kantor,
  alamat_kantor)
• Memasukkan data ke super-class
  berarti memasukkan data ke paling
  sedikit satu sub entitas karena
  spesialisasinya total.
                                       57
Spesialisasi Partial + Overlap
 • Contoh: Graduate Student 
   Research Assitant atau
   Teaching Assitant
 • Memasukkan data ke super-
   class tidak berarti
   memasukkan data ke sub
   entitas karena spesialisasinya
   partial.

                                    58
Spesialisasi Partial + Disjoint
• Contoh: Kendaraan  mobil,
  truk, motor.
• Memasukkan data ke super-
  class tidak berarti memasukkan
  data ke sub entitas karena
  spesialisasinya partial.
• Sub entitas mewariskan kunci
  primer dari super-class.

                               59
Spesialisasi Total + Disjoint
• Contoh 1: Pasien  inap dan jalan
• Contoh 2: Mahasiswa IT  D3 dan
  S1
• Memasukkan data ke super-class
  berarti memasukkan data ke salah
  satu sub entitas karena
  spesialisasinya total.
• Sub entitas mewariskan kunci
  primer dari super-class.

                                 60
Contoh




         61
         Agregasi
• Agregasi mengakomodasikan
  fenomena dimana relasi yang
  secara kronologis
  mensyaratkan telah adanya
  relasi lain. Dengan kata lain,
  sebuah relasi terbentuk tidak
  hanya dari entitas tapi juga
  mengandung unsur dari
  relasi lain.
                             62
Contoh Agregasi
               N                 N
Mahasiswa          mempelajari            Kuliah



                          N
      nim                            kode_kul

                    mengikuti

   kode_pra                            nilai
                          N


                   Praktikum




    kode_pra       nama_pra      jumlah_jam



                                                   63
         Contoh Agregasi
• Himpunan relasi ‘Mengikuti’ dalam Diagram E-R
  menunjukkan entitas mahasiswa yang mengikuti
  kegiatan praktikum tertentu karena telah
  mempelajari suatu mata kuliah (yang memang
  membutuhkan kegiatan praktikum).
• Perlu ditegaskan, nim dan kode_kul di relasi
  ‘Mengikuti’ tidak berasal dari himpunan entitas
  Mahasiswa dan Kuliah, tetapi dari relasi
  ‘Mempelajari’ yang secara implisit mempunyai
  nim+kode_kul. Karena itulah, ada faktor kronologis
  yang ingin ditunjukkan dengan adanya Agregasi
  tersebut, di mana sebuah relasi (Mengikuti
  Praktikum) hanya akan ada jika telah ada relasi
  lainnya (Mempelajari Kuliah).

                                                  64
 Alternatif Diagram E-R
            N                 N
Mahasiswa       mempelajari       Kuliah




                 mengikuti




                Praktikum
                                           65
Alternatif Diagram E-R
Diagram alternatif tersebut
mengaburkan faktor kronologis
sebagaimana yang diungkapkan
sebelumnya. Pada diagram
tersebut, kedua himpunan relasi
merupakan himpunan relasi yang
saling bebas, tidak memiliki
ketergantungan satu sama lain,
yang sebenarnya tidak demikian.
                              66
E-R Diagram Untuk Bank




                     67
   Rangkuman Simbol Yang
Digunakan Dalam E-R Notation




                               68
   Rangkuman Simbol Yang
Digunakan Dalam E-R Notation




                           69

								
To top