Referensi simbol · Bahasa Indonesia
Simbol class diagram dan fungsinya
Singkatnya
Class diagram UML menggambarkan struktur program. Simbol utamanya adalah kelas (kotak tiga bagian: nama, atribut, method) dan enam jenis relasi: asosiasi (garis), agregasi (belah ketupat kosong), komposisi (belah ketupat penuh), generalisasi/pewarisan (segitiga kosong), realisasi (segitiga kosong garis putus-putus), dan dependency (panah putus-putus). Tanda visibility + - # ~ menyatakan hak akses, dan multiplicity (1, 0..1, *, 1..*) menyatakan jumlah.
Diperbarui · oleh tim ChartCraft · Class diagram generator (English)
Apa saja simbol class diagram dan fungsinya?
Berikut simbol class diagram UML: kotak-kotak elemennya, lalu garis-garis relasinya, masing-masing dengan sintaks Mermaid.
Elemen
| Simbol | Nama | Fungsi / arti | Mermaid |
|---|---|---|---|
| Kelas | Kotak tiga bagian: nama kelas, atribut, dan method (operasi). | class Mahasiswa | |
| Interface | Kumpulan method tanpa implementasi, ditandai «interface». | class Bayar { <<interface>> } | |
| Kelas abstrak | Kelas yang tidak bisa dibuat objeknya langsung; nama ditulis miring atau ditandai «abstract». | class Pengguna { <<abstract>> } | |
| Enumerasi | Daftar nilai tetap, ditandai «enumeration»: StatusPesanan (BARU, DIBAYAR, DIKIRIM). | class Status { <<enumeration>> } | |
| Package | Pengelompokan kelas-kelas yang berkaitan. | namespace Akademik { ... } |
Relasi
| Simbol | Nama | Fungsi / arti | Mermaid |
|---|---|---|---|
| Asosiasi | Hubungan umum antar dua kelas: Mahasiswa — MataKuliah. | Mahasiswa -- MataKuliah | |
| Asosiasi berarah | Hanya satu kelas yang mengetahui kelas lainnya. | Pesanan --> Pelanggan | |
| Agregasi | Hubungan "memiliki" yang lemah: bagian bisa ada tanpa keseluruhan (Jurusan — Dosen). Belah ketupat kosong di sisi keseluruhan. | Jurusan o-- Dosen | |
| Komposisi | Hubungan "bagian dari" yang kuat: bagian ikut hilang bila keseluruhan dihapus (Pesanan — DetailPesanan). Belah ketupat penuh. | Pesanan *-- DetailPesanan | |
| Generalisasi (pewarisan) | Kelas anak mewarisi kelas induk: Mahasiswa adalah Pengguna. Segitiga kosong mengarah ke induk. | Pengguna <|-- Mahasiswa | |
| Realisasi | Kelas mengimplementasikan interface. Garis putus-putus, segitiga kosong ke interface. | Bayar <|.. Transfer | |
| Dependency | Satu kelas memakai kelas lain sementara, misalnya sebagai parameter. | Laporan ..> Printer |
Apa itu class diagram?
Class diagram adalah diagram struktur UML yang menggambarkan kelas-kelas dalam sebuah sistem berorientasi objek: atribut dan method setiap kelas, serta hubungan antarkelas. Class diagram menjadi cetak biru kode program.
Apa arti tanda +, -, #, dan ~ pada class diagram?
Tanda di depan atribut atau method menyatakan visibility (hak akses): + public (bisa diakses semua kelas), - private (hanya kelas itu sendiri), # protected (kelas itu dan turunannya), ~ package (kelas dalam package yang sama).
| Tanda | Visibility | Bisa diakses oleh |
|---|---|---|
| + | Public | Semua kelas |
| - | Private | Kelas itu sendiri |
| # | Protected | Kelas itu dan kelas turunannya |
| ~ | Package | Kelas dalam package yang sama |
Penulisan lengkap: - nim : String untuk atribut, + hitungIPK() : float untuk method. Atribut atau method statis digarisbawahi.
Apa perbedaan agregasi dan komposisi?
Keduanya hubungan keseluruhan-bagian. Pada agregasi (belah ketupat kosong) bagian tetap bisa ada tanpa keseluruhan — dosen tetap ada meski jurusannya dibubarkan. Pada komposisi (belah ketupat penuh) bagian tidak bisa ada tanpa keseluruhan — detail pesanan ikut terhapus bila pesanannya dihapus.
Apa itu multiplicity pada class diagram?
Multiplicity adalah angka di ujung garis relasi yang menyatakan berapa objek yang terlibat: 1 (tepat satu), 0..1 (nol atau satu), * atau 0..* (nol atau banyak), 1..* (minimal satu).
| Notasi | Arti | Contoh |
|---|---|---|
| 1 | Tepat satu | Setiap pesanan milik 1 pelanggan |
| 0..1 | Nol atau satu | Mahasiswa punya 0..1 dosen wali cadangan |
| * / 0..* | Nol atau banyak | Pelanggan punya 0..* pesanan |
| 1..* | Satu atau banyak | Pesanan berisi 1..* item |
Bagaimana contoh class diagram dalam Mermaid?
Contoh sistem akademik: Pengguna (abstrak) diwarisi Mahasiswa dan Dosen; Jurusan beragregasi dengan Dosen; KRS tersusun (komposisi) dari DetailKRS yang merujuk MataKuliah; dan pembayaran UKT memakai interface MetodeBayar.
classDiagram
class Pengguna {
<<abstract>>
-String id
-String nama
+login() bool
}
class Mahasiswa {
-String nim
+hitungIPK() float
}
class Dosen {
-String nidn
}
class Jurusan {
+String nama
}
class KRS {
+String semester
+totalSKS() int
}
class DetailKRS
class MataKuliah {
+String kode
+int sks
}
class MetodeBayar {
<<interface>>
+bayar(jumlah) bool
}
class VirtualAccount
Pengguna <|-- Mahasiswa
Pengguna <|-- Dosen
Jurusan "1" o-- "1..*" Dosen
Mahasiswa "1" --> "0..*" KRS
KRS "1" *-- "1..*" DetailKRS
DetailKRS "*" --> "1" MataKuliah
MetodeBayar <|.. VirtualAccount
Mahasiswa ..> MetodeBayar
Apa perbedaan class diagram dan ERD?
ERD memodelkan data yang disimpan di database: tabel, kolom, dan kunci. Class diagram memodelkan kelas dalam program: atribut, method, pewarisan, dan interface. Kelas yang menyimpan data sering punya padanan tabel di ERD, tetapi class diagram juga berisi kelas tanpa tabel seperti controller atau service.
Simbol ERD dibahas di simbol ERD dan fungsinya.
Seperti apa contoh diagram yang memakai simbol-simbol ini?
Berikut contoh diagram nyata dari galeri publik ChartCraft. Setiap diagram dibuat dari deskripsi teks biasa — buka salah satunya untuk melihat prompt yang dipakai (galeri berbahasa Inggris).
Pertanyaan yang sering diajukan
Apa saja simbol relasi pada class diagram?
Asosiasi (garis), asosiasi berarah (panah), agregasi (belah ketupat kosong), komposisi (belah ketupat penuh), generalisasi (segitiga kosong, garis utuh), realisasi (segitiga kosong, garis putus-putus), dan dependency (panah terbuka, garis putus-putus).
Apa arti belah ketupat pada class diagram?
Belah ketupat kosong berarti agregasi (bagian bisa berdiri sendiri); belah ketupat penuh berarti komposisi (bagian ikut terhapus bersama keseluruhan). Belah ketupat diletakkan di sisi kelas keseluruhan.
Apa arti tanda minus pada class diagram?
Tanda minus (-) berarti private: atribut atau method hanya bisa diakses oleh kelas itu sendiri.
Apa beda generalisasi dan realisasi?
Generalisasi (garis utuh) adalah pewarisan antar kelas. Realisasi (garis putus-putus) adalah kelas yang mengimplementasikan interface. Keduanya bermata segitiga kosong.
Referensi simbol lainnya
Semua referensi simbol diagram dalam bahasa Indonesia: