Materi Dasar ERD dan UML
BAGIAN A — ERD (Entity Relationship Diagram)
1️⃣ Apa itu ERD?
ERD (Entity Relationship Diagram) adalah diagram yang digunakan untuk merancang struktur database.
👉 Gambaran sederhananya, ERD itu seperti peta hubungan data.
Visual Imajinatif ERD:
+---------+ +-----------+
| SISWA | ----- | KELAS |
+---------+ +-----------+
| nis | | id_kelas |
| nama | | nama |
+---------+ +-----------+
Kotak = data, garis = hubungan
2️⃣ Komponen Utama ERD
1. Entity (Entitas)
Entity adalah objek utama yang menyimpan data.
Visual Entity:
+---------+
| SISWA |
+---------+
2. Attribute (Atribut)
Atribut adalah informasi detail milik entity.
Visual Attribute di dalam Entity:
+---------+
| SISWA |
+---------+
| id |
| nama |
| alamat |
+---------+
3. Primary Key (PK)
Primary Key adalah penanda unik.
Visual PK:
+---------+
| SISWA |
+---------+
| *id | ← Primary Key
| nama |
+---------+
4. Relationship (Relasi)
Relasi menunjukkan hubungan antar entity.
Visual Relasi:
SISWA ---- mengikuti ---- MATA_PELAJARAN
3️⃣ Jenis Relasi ERD
One to One (1:1)
SISWA ||----|| KARTU_PELAJAR
One to Many (1:N)
GURU ||----< KELAS
Many to Many (M:N)
SISWA >----< MATA_PELAJARAN
Referensi tambahan bisa diakses : https://medium.com/@fahmisyaifudin35/relasi-tabel-database-one-to-one-one-to-many-many-to-many-44010f703f57
4️⃣ Langkah Membuat ERD
Step 1: Tentukan Entity
[SISWA] [GURU] [KELAS]
Step 2: Tambahkan Atribut
SISWA (id, nama)
Step 3: Tentukan Relasi
SISWA >----< MAPEL
JENIS ERD BERDASARKAN NOTASI
1. ERD Notasi Chen
Notasi Chen adalah model ERD klasik dan sering dipakai untuk pembelajaran.

Ciri-ciri:
- Entity → Persegi panjang
- Attribute → Oval
- Relationship → Belah ketupat
- Relasi ditulis terpisah
Kelebihan:
- Sangat jelas untuk pemula
- Mudah dipahami secara konsep
Kekurangan:
- Kurang praktis untuk langsung ke database
Referensi tambahan bisa diakses : https://www.studipedia.net/2020/06/pembahasan-lengkap-diagram-hubungan-entitas.html
2. ERD Notasi Crow’s Foot (Kaki Gagak)
Notasi ini paling sering digunakan dalam perancangan database modern.

Ciri-ciri:
- Relasi ditunjukkan dengan simbol kaki gagak
- Langsung menunjukkan kardinalitas (1, N)
- Entity berisi atribut langsung
Kelebihan:
- Lebih praktis
- Mudah diterjemahkan ke tabel database
Kekurangan:
- Sedikit membingungkan untuk pemula awal
🔍 Perbandingan Chen vs Crow’s Foot
| Aspek | Chen | Crow’s Foot |
|---|---|---|
| Cocok untuk | Belajar konsep | Implementasi DB |
| Bentuk | Terpisah | Ringkas |
| Tingkat detail | Tinggi | Praktis |
BAGIAN B — UML (Unified Modeling Language)
1️⃣ Apa itu UML?
UML (Unified Modeling Language) adalah bahasa visual standar untuk menggambarkan bagaimana sebuah sistem bekerja.
👉 Jika ERD fokus pada data, maka UML fokus pada alur, interaksi, dan struktur aplikasi.
Visual Imajinatif UML (Gambaran Umum):
[User] → [Sistem] → [Database]
2️⃣ Jenis-Jenis UML
1. Use Case Diagram
Use Case Diagram menunjukkan siapa yang menggunakan sistem dan apa yang bisa dilakukan.
Elemen:
- Actor → pengguna sistem
- Use Case → aktivitas sistem
Visual Imajinatif Use Case Diagram:
+-------------------+
| Sistem Sekolah |
|-------------------|
| (Login) |
| (Lihat Jadwal) |
| (Input Nilai) |
+-------------------+
^ ^
| |
(Siswa) (Guru)
2. Activity Diagram
Activity Diagram menggambarkan alur proses langkah demi langkah.
Contoh Proses Login:
Visual Imajinatif Activity Diagram:
[Mulai]
|
[Input Username & Password]
|
[Validasi]
|Yes
[Dashboard]
|
[Selesai]
3. Sequence Diagram
Sequence Diagram menunjukkan urutan komunikasi antar objek.
Visual Imajinatif Sequence Diagram:
Siswa Sistem Database
| | |
|--Login--> | |
| |--Cek--> |
| |<--OK-- |
|<--Hasil-- | |
4. Class Diagram
Class Diagram menunjukkan struktur kelas dalam program.
Elemen Class:
- Nama Class
- Atribut
- Method
Visual Imajinatif Class Diagram:
+-------------------+
| Siswa |
+-------------------+
| id_siswa |
| nama |
| kelas |
+-------------------+
| login() |
| lihatJadwal() |
+-------------------+
Referensi tambahan bisa diakses : https://www.dicoding.com/blog/apa-itu-uml
3️⃣ Langkah Membuat UML
Step 1: Tentukan Tujuan Diagram
Apakah untuk:
- Alur proses?
- Interaksi pengguna?
- Struktur program?
Step 2: Pilih Jenis UML
| Kebutuhan | Diagram |
|---|---|
| Fitur sistem | Use Case |
| Proses | Activity |
| Interaksi | Sequence |
| Struktur kode | Class |
Step 3: Buat Diagram Sederhana
Mulai dari:
- Actor utama
- Proses inti
PERBEDAAN ERD vs UML
| Aspek | ERD | UML |
|---|---|---|
| Fokus | Database | Sistem Aplikasi |
| Digunakan oleh | Database Designer | Developer |
| Bentuk | Data & Relasi | Proses & Struktur |
ANALOGI + GAMBARAN VISUAL DI SETIAP MATERI
Bagian ini menambahkan gambaran visual (deskriptif) agar kita mudah membayangkan bentuk diagram sebelum menggambar.
Gambaran ERD (Visual Imajinatif)
Bayangkan kotak-kotak data yang saling terhubung:
[SISWA] —— mengikuti —— [MATA PELAJARAN]
| |
id_siswa id_mapel
nama nama_mapel
👉 Kotak = Entity, garis = Relationship, isi = Attribute
Gambaran UML (Visual Imajinatif)
Bayangkan papan alur kegiatan:
(Siswa) → (Login) → (Lihat Jadwal)
Atau struktur kelas seperti kartu identitas:
+----------------+
| Siswa |
+----------------+
| id_siswa |
| nama |
+----------------+
| login() |
| lihatJadwal() |
+----------------+
STUDI KASUS
Studi Kasus: Sistem Akademik Sekolah
Deskripsi Masalah
Sekolah ingin membangun sistem untuk:
- Mengelola data siswa dan guru
- Mengatur kelas
- Mencatat mata pelajaran yang diikuti siswa
Buat ERD menggunakan software draw.io atau https://app.diagrams.net
A. STUDI KASUS ERD
1️⃣ Identifikasi Entity
- Siswa
- Guru
- Kelas
- MataPelajaran
- Jadwal
2️⃣ Tentukan Atribut
Siswa: id_siswa, nama, alamat
Guru: id_guru, nama_guru
Kelas: id_kelas, nama_kelas
MataPelajaran: id_mapel, nama_mapel
Jadwal: id_jadwal, hari, jam
3️⃣ Tentukan Relasi
- Guru mengajar Kelas (1:N)
- Kelas memiliki banyak Siswa (1:N)
- Siswa mengikuti MataPelajaran (M:N)
Untuk M:N diperlukan tabel penghubung
4️⃣ ERD Versi Crow’s Foot (Deskriptif)
- Siswa (PK: id_siswa)
- MataPelajaran (PK: id_mapel)
- Siswa_Mapel (id_siswa, id_mapel)
B. STUDI KASUS UML
1️⃣ Use Case Diagram
Actor:
- Admin
- Guru
- Siswa
Use Case:
- Login
- Input Data
- Lihat Jadwal
- Input Nilai
2️⃣ Activity Diagram (Login)
Alur:
Mulai → Input Username & Password → Validasi → Dashboard
3️⃣ Sequence Diagram (Input Nilai)
Guru → Sistem → Database → Sistem → Guru
4️⃣ Class Diagram (Sederhana)
Class Siswa
- id_siswa
- nama
- alamat
- simpan()
Class Guru
- id_guru
- nama
- inputNilai()