CLASS DIAGRAM
Oleh :
Sawitri Fina Kartika 1815061008
CLASS DIAGRAM
Diagram kelas adalah ilustrasi hubungan dan dependensi kode sumber di antara kelas-
kelas dalam Unified Modeling Language (UML). Dalam konteks ini, kelas
mendefinisikan metode dan variabel dalam suatu objek, yang merupakan entitas
spesifik dalam program atau unit kode yang mewakili entitas itu. Class diagram
berguna dalam semua bentuk pemrograman berorientasi objek (OOP). Konsep ini
sudah berumur beberapa tahun tetapi telah disempurnakan karena paradigma
pemodelan OOP telah berkembang.
Dalam desain berorientasi objek, ada notasi visibilitas untuk atribut dan operasi.
UML mengidentifikasi empat jenis visibilitas: publik , private , protect , dan package.
Simbol +, -, # dan ~ sebelum atribut dan nama operasi di kelas menunjukkan
visibilitas atribut dan operasi. Dimana (+) bermakna public sehingga atribut/metode
dapat diakses secara langsung dari luar kelas, (-) bermakna private dimana
kelas/atribut hanya bisa diakses oleh metode didalam kelas itu sendiri, (#) bermakna
protected dimana kelas/atribut hanya bisa diakses oleh kelas yang berada dalam
package yang sama atau subclass dari kelas itu sendiri, dan (~) menunjukkan atribut
paket atau operasi.
Association adalah istilah luas yang mencakup hampir semua koneksi logis atau
hubungan antar kelas.digambarkan dengan garis lurus. Misalnya, penumpang dan
maskapai penerbangan.
Directed Association mengacu pada hubungan terarah yang diwakili oleh garis
dengan panah. Panah menggambarkan aliran arah yang berisi wadah.
Multiplicity adalah asosiasi logis aktif ketika kardinalitas suatu kelas dalam kaitannya
dengan yang lain sedang digambarkan. Misalnya, satu armada dapat mencakup
beberapa pesawat terbang, sementara satu pesawat komersial dapat memuat nol
hingga banyak penumpang. Notasi 0 .. * dalam diagram berarti "nol ke banyak".
Reflexive Association terjadi ketika kelas mungkin memiliki banyak fungsi atau
tanggung jawab. Sebagai contoh, seorang anggota staf yang bekerja di bandara dapat
menjadi pilot, insinyur penerbangan, pengirim tiket, penjaga, atau anggota kru
pemeliharaan. Jika anggota kru pemeliharaan dikelola oleh insinyur penerbangan
mungkin ada hubungan yang dikelola oleh dua instance dari kelas yang sama.
Agregasi merupakan relasi dimana sebuah class merupakan bagian utuh dari class
lainya. Misalnya, kelas "perpustakaan" terdiri dari satu atau lebih buku, di antara
bahan-bahan lainnya. Secara agregasi, kelas yang terkandung tidak sangat tergantung
pada siklus hidup wadah. Dalam contoh yang sama, buku akan tetap ada meskipun
perpustakaan dibubarkan. Untuk memperlihatkan agregasi dalam diagram, gambarlah
garis dari kelas induk ke kelas anak dengan bentuk berlian di dekat kelas induk.
Komposisi sama halnya dengan agregasi dimana suatu class merupakan bagian utuh
dari class lainya namun pada hal ini satu bagian class tersebut akan sangat bergantung
pada keberadaan class lainya. Contoh Sebuah perusahaan memiliki pekerja yang
diikat dalam sebuah kontrak dan apabila perusahaan tersebut bangkrut maka secara
otomatis keberadaan pekerja tidak dibutuhkan lagi.
Inheritance / Generalization mengacu pada jenis hubungan di mana satu kelas terkait
adalah anak dari kelas lain berdasarkan asumsi fungsi yang sama dari kelas induk.
Dengan kata lain, kelas anak adalah tipe spesifik dari kelas induk. Untuk
menunjukkan pewarisan dalam diagram UML, garis padat dari kelas anak ke kelas
induk digambar menggunakan panah yang tidak terisi.
Jika memodelkan sistem besar atau area bisnis besar, akan ada banyak entitas yang
harus dipertimbangkan. Keharusan menggunakan beberapa diagram kelas atau
tunggal untuk memodelkan masalah merupakan pola pikir banyak orang. Daripada
memodelkan setiap entitas dan hubungannya dengan diagram kelas tunggal, lebih
baik menggunakan diagram kelas ganda. Pengembang juga lebih baik, membagi
suatu sistem menjadi beberapa diagram kelas membuat sistem lebih mudah dipahami,
terutama jika masing-masing diagram adalah representasi grafis dari bagian tertentu
dari sistem.
Terdapat 8 kelas pada tabel. Pertama-tama, gambarkan template kosong untuk setiap
kelas dengan menggunakan template “SimpleClass”.
Isi daftar methods dan attributes sesuai dengan yang tertera pada masing- masing
kelas. Gunakan “--” untuk mendefinisikan garis pembatasantara nama kelas,
attributes, dan methods. Lakukan resize pada masing-masing gambar kelas jika
diperlukan.
Relasi Composition dapat dilihat pada kelas yang memiliki attribute dengan tipe dari
kelas lainnya, dan secara proses bisnis, kelas yang ditampung tersebut merupakan
bagian (part-of) tak terpisahkan dari kelas penampung. Dalam hal ini, contoh dari
relasi composition adalah antara kelas VendingMachine dan Tombol, DeteksiUang,
PenampungUang, DispenserMinuman.
Gambarkan relasi tersebut dengan menggunakan panah composition. Geser posisi
kelas jika diperlukan.
Gambar 4.4 Percobaan 4 : Mengidentifikasi relasi Composition
Relasi Aggregation dapat dilihat pada kelas yang memiliki attribute dengan tipe dari
kelas lainnya, dan secara proses bisnis, kelas yang ditampung tersebut bukan
merupakan bagian tak terpisahkan dari kelas penampung, melainkan kedua kelas
dapat berdiri sendiri. Dalam hal ini, contoh dari relasi composition adalah antara kelas
DispenserMinuman dan Minuman.
Gambarkan relasi tersebut dengan menggunakan panah aggregation. Geser posisi
kelas jika diperlukan.
Berdasarkan gambar 5.2 menjelaskan pengisian daftar dan atribut pada setiap kelas.
Pada kelas PesanRuang terlihat banyak terdefinisi sebagian besar kelas yang berarti
kelas PesanRuang merupakan kelas penampung. Kelas yang ditampung Kelas
PesanRuang ialah User, MataKuliah, Perwaktuan, da Ruangan. Pada kelas User
mempunyai kesamaan atribut dan method terhadap kelas Mahasiswa, Dosen, dan
Admin yang berarti terdapat atribut dan method warisan. Sedangkan padakelas
JadwalRuang mengidentifikasikan array dari kelas PesanRuang.
Hendini, Ade. 2016. Pemodelan Uml Sistem Informasi Monitoring Penjualan Dan
Stok Barang (Studi Kasus: Distro Zhezha Pontianak). Jurnal Khatulistiwa
Informatika. 4 (2) : 107-116
Milles, Russ. 2006. Learning UML 2.0. Amerika Serikat: O’reilly Media
Nishadha. 2019. UML Class Diagram Relationships Explained with Examples.
Diperoleh 15 Mei 2020 dari https://creately.com/blog/diagrams/class-diagram-
relationships/
Officer web. 2020. What is Class Diagram? Diperoleh 15 Mei 2020 dari
https://www.visual-paradigm.com/guide/uml-unified-modeling-language/what-
is-class-diagram/