Diagram kelas atau class diagram menggambarkan struktur sistem dari segi pendefinisian kelas-kelas yang akan dibuat untuk membangun sistem. Kelas memiliki apa yang disebut atribut dan metode atau operasi.
- atribut merupakan variabel-variabel yang dimiliki oleh suatu kelas
- operasi atau metode adalah fungsi-fungsi yang dimiliki oleh suatu kelas
Diagram kelas mendeskripsikan jenis-jenis objek dalam sistem dan berbagai hubungan statis yang terdapat di antara mereka. Diagram kelas juga menunjukkan properti dan operasi sebuah kelas dan batasan-batasan yang terdapat dalam hubungan-hubungan objek tersebut.
Diagram kelas menggambarkan struktur dan deskripsi class, package dan objek beserta hubungan satu sama lain seperti containment, pewarisan, asosiasi, dan lain-lain.
Kelas memiliki tiga area pokok :
1. Nama
2. Atribut
3. Operasi
Contoh kelas : Manusia
Atribut: nama, usia, tanggal lahir
Method/Operasi: berjalan, makan, minum
Kelas
Kelas adalah menemukan hal-hal mendasar pada suatu objek dan mengabaikan hal-hal yang sifatnya insidental. Objek adalah instansiasi (coobtoh) dari sebuah kelas. Abstraksi bertujuan untuk menyaring properties dan operasi pada suatu objek, sehingga hanya tinggal yang dibutuhkan saja. Seringkali masalah yang berbeda membutuhkan sejumlah informasi yang berbeda pula pada area yang sama. Sebagai contoh, ketika kita akan membuat program untuk mengatur suatu pada objek TV dan perubhaan channel, mungkin atribut no-seri TV harus dibuang karena tidak berguna. Tetapi ketika akan menelusuri transaksi penjualan TV, maka kita butuh nomor seri dari TV yag terjual.
Atribut
Atribut adalah karakteristik data yang dimiliki suatu objek dalam kelas.
Notasi dari atribut :
visibility name: type multiplicity = default {property-string}
Contoh :
- name: String [1] = "Untitled" {readOnly}
+ berarti public, - berarti private, # berarti protected
“Untitled” adalah nilai yang diberikan secara default jika tidak ditentukan saat objek dibuat
{readOnly} adalah properti tambahan dari atribut, dimana disini berarti tidak bisa dimodifikasi
Operasi
Operasi adalah fungsi atau transformasi yang mungkin dapat diaplikasikan ke/oleh suatu objek dalam kelas. Misalnya, suatu objek dalamkelas manusia mungkin memiliki fungsi-fungsi tersenyum, marah, makan, minum, menerima perlakuan tertentu, dan sebagainya.
Notasi dari operations
visibility name (parameter-list) : return-type {property-string}
Multiplisitas / Multiplicity
Multiplisitas menunjukkan jumlah suatu objek yang bisa berhubungan dengan objek yang lain. Umumnya ditunjukkan dengan berapa banyak objek yang bisa mengisi properti “satu” atau “banyak”, tetapi secara khusus dapat ditunjukkan pula dengan bilangan integer lebih besar atau sama dengan nol.
- 1 (pasti 1)
- 0..1 (0 atau 1)
- (Tidak ada batasan, bisa 0, 1, ..., n)
- Biasanya didefinisikan batas bawah dan atas, kecuali untuk yang pasti
- bernilai 1
Contoh Kasus Class Diagram
Manajemen Rumah Sakit
Ini adalah contoh diagram model domain rumah sakit. Model domain untuk Sistem Manajemen Rumah Sakit ditunjukkan oleh beberapa diagram kelas. Tujuan dari diagram ini adalah untuk menunjukkan dan menjelaskan struktur rumah sakit, staf, hubungan dengan pasien, dan terminologi perawatan pasien.
Pada diagram di bawah Orang dapat dikaitkan dengan Rumah Sakit yang berbeda, dan Rumah Sakit dapat mempekerjakan atau melayani banyak Orang. Person class telah diturunkan atribut name dan homeAddress. Nama mewakili nama lengkap dan dapat digabungkan dari judul, nama (nama atau nama), nama tengah, dan keluarga (atau nama terakhir) yang pertama (atau yang pertama). Kelas pasien memiliki usia atribut yang diturunkan yang dapat dihitung berdasarkan tanggal lahirnya dan tanggal saat ini atau tanggal masuk rumah sakit.
Kelas Pasien mewarisi atribut dari kelas Person. Beberapa nama atribut, jenis kelamin, dan kelahiran bawaan
3 comments
terimakasih artikel ini sangat membantu, sedikit masukan sebaiknya ditambah lagi dengan contoh kasusnya biar lebih paham lagi ^-^
Apakah untuk membuat class harus disamakan dengan tabel dan field database? Misalnya di dalam sistem tidak ada tabel "form" apakah saya bisa buat kelas "form"? Trima kasih.
artikel yang bagus, sebagai tambahan bisa baca juga artikel mengenai class diagram yang saya buat http://www.webstudi.site/2019/02/Class-Diagram.html
EmoticonEmoticon