Lompat ke konten

Pertemuan 10: Implementasi Model Lainnya dan Tools ERD ​

Fase 3 · Model Data Lanjutan±100 menitSumber: slide 88-100

Tujuan pembelajaran ​

Setelah pertemuan ini, Anda mampu:

  • mengimplementasikan lima pola khusus menjadi tabel;
  • mengenal gaya penggambaran ERD lain;
  • membuat ERD dengan draw.io atau PlantUML.

Peta materi ​

1. Implementasi lima pola khusus ​

Catatan

Bentuk di bawah adalah cara implementasi yang umum. Jika Anda memakai diagram implementasi pada slide 90-94 materi asli, samakan nama kolom dan tabelnya dengan diagram tersebut.

Weak entity ​

Weak entity menjadi tabel sendiri, dengan foreign key ke entity utamanya.

TabelKolom
dompetemail_pembeli PK FK, saldo
alamatid_alamat PK, email_pembeli FK, jalan, kota, kode_pos

Pada dompet, foreign key sekaligus menjadi primary key karena satu pembeli hanya punya satu dompet. Pada alamat, satu pembeli boleh punya banyak alamat, sehingga butuh key sendiri.

Sub entity ​

Satu tabel untuk atribut umum, lalu satu tabel untuk setiap sub entity. Key tabel turunan sama dengan key tabel utama.

TabelKolom
barangsku PK, nama, harga, berat
barang_laptopsku PK FK, ram, prosesor
barang_pakaiansku PK FK, ukuran, warna

Unary relationship ​

Tambahkan foreign key yang menunjuk ke tabel itu sendiri.

email PKnamaemail_perekomendasi FK
budi@mail.comBudikosong
sari@mail.comSaribudi@mail.com
joko@mail.comJokobudi@mail.com

Kolom email_perekomendasi boleh kosong karena tidak semua pembeli mendaftar lewat referal.

Multi entity relationship ​

Satu tabel relasi dengan foreign key dari semua entity yang terlibat.

TabelKolom
membeliemail_pembeli FK, sku_barang FK, kode_bank FK, jumlah

Redundant relationship ​

Setiap relasi mendapat tabel relasi sendiri, karena maknanya berbeda.

TabelKolom
membeliemail_pembeli FK, sku_barang FK, jumlah
menyukaiemail_pembeli FK, sku_barang FK

2. Notasi ERD lain ​

Saat model kecil, ERD dengan bentuk persegi, oval, dan belah ketupat mudah dibuat. Saat model sudah besar dan kompleks, gambar cepat menjadi berantakan.

Alternatifnya adalah menggambar entity seperti tabel: satu kotak berisi nama entity dan daftar atributnya, dengan garis penghubung untuk relasi. Diagram ERD di seluruh materi ini memakai gaya tersebut.

Prinsipnya tetap sama

Notasi boleh berbeda, asalkan gambarnya mudah dimengerti.

3. Tools membuat ERD ​

ToolsCara kerjaCocok untuk
draw.ioMenggambar secara visual dengan drag and dropDiagram yang ingin ditata manual
PlantUMLMenulis kode teks, diagram dibuat otomatisDiagram yang sering berubah dan perlu disimpan bersama kode

Contoh PlantUML ​

Salin kode berikut ke editor PlantUML online untuk melihat hasilnya.

text
@startuml
entity "Pembeli" as pembeli {
  *email : text <<PK>>
  --
  nama : text
}
entity "Barang" as barang {
  *sku : text <<PK>>
  --
  nama : text
  harga : number
}
entity "Membeli" as membeli {
  *email_pembeli : text <<FK>>
  *sku_barang : text <<FK>>
  --
  jumlah : number
}
pembeli ||--o{ membeli
barang ||--o{ membeli
@enduml

Alur kerja yang disarankan ​

  1. Gambar draf di kertas.
  2. Pindahkan ke draw.io (untuk visual cepat) atau tulis di PlantUML (untuk versi yang rapi dan bisa direvisi).
  3. Minta teman membaca. Jika ia salah mengerti, perbaiki gambarnya.

Latihan ​

  1. Praktik: buka draw.io atau PlantUML, lalu gambar ulang ERD Toko Online lengkap dengan relasi Membeli dan Menjual.
  2. Implementasikan kasus "karyawan dan atasan" dari Pertemuan 9 menjadi tabel.
  3. Tugas kelompok: gambar ERD dengan gaya "entity seperti tabel" untuk kasus Rental Mobil.
Contoh jawaban nomor 2

Tabel karyawan (id_karyawan PK, nama, jabatan, id_atasan FK menunjuk ke karyawan.id_karyawan). Direktur memiliki id_atasan kosong.

Kuis cepat ​

1. Unary relationship pada tabel pembeli (referal) diimplementasikan dengan...

2. Redundant relationship antara Pembeli dan Barang diimplementasikan dengan...

3. Keunggulan utama PlantUML dibanding draw.io adalah...

4. Prinsip utama saat menggambar ERD adalah...

Terjawab 0 dari 4 soal

Rangkuman ​

Yang harus diingat

  • Weak entity dan sub entity menjadi tabel tambahan dengan foreign key.
  • Unary menjadi foreign key ke tabel sendiri.
  • Multi entity menjadi tabel relasi dengan banyak foreign key.
  • Redundant menjadi beberapa tabel relasi.
  • Tools: draw.io (visual) dan PlantUML (kode teks).

Tugas mandiri ​

Kembangkan ERD Toko Online Anda hingga memuat minimal satu pola khusus (misalnya sub entity Barang). Gambar dengan tools pilihan Anda dan kumpulkan dalam bentuk gambar atau kode PlantUML.

Progres tersimpan di browser Anda dan tampil di halaman beranda.

Ruang Belajar · Materi kuliah dan pelatihan teknologi