Cara Membuat Class Diagram Yang Benar


Membuat Class Diagram – Jika Anda sedang mendalami tentang pengembangan aplikasi, Anda mungkin sudah tidak asing dengan UML atau Unified Modeling Language. UML adalah sekumpulan alat yang dipakai untuk melakukan abstraksi terhadap suatu sistem atau perangkat lunak berbasis objek.

UML ini menjadi salah satu sarana yang bertujuan mempermudah pengembangan aplikasi yang berkelanjutan. Di dalam UML sendiri ada sejumlah diagram yang perlu dipelajari. Salah satunya adalah class diagram. Class diagram menjadi salah satu jenis diagram yang paling berguna pada UML. Sebab class diagram dapat memetakan struktur sistem tertentu secara jelas dengan memodelkan kelas, atribut, operasi, dan hubungan antar objek.

Tidak hanya itu, class diagram juga dapat memberikan pandangan yang lebih luas tentang suatu sistem dengan menunjukkan kelas maupun hubungan-hubungannya. Perlu diketahui, diagram class ini bersifat statis. Sebab diagram kelas ini tidak menggambarkan apa yang terjadi saat mereka berhubungan. Melainkan menggambarkan hubungan apa yang terjadi.

Baca juga: Cara Membuat Use Case Diagram

Komponen Dasar Class Diagram

Class diagram atau diagram kelas mempunyai tiga bagian, antara lain bagian atas, bagian tengah dan bagian bawah. Berikut penjelasan singkat ketiganya.

Bagian atas

komponen dari class diagram yang memuat nama kelas. Bagian ini selalu dibutuhkan, baik untuk classifier maupun objek. Setiap class mempunyai nama yang membedakannya dengan class lainnya. Nama tersebut disebut dengan istilah simple name dan path name.

bagian atas nama class

Bagian tengah

komponen yang berisi atribut-atribut kelas. Bagian ini dipakai untuk menjelaskan kualitas kelas. Sehingga hanya dibutuhkan ketika menggambarkan contoh kelas tertentu. Atau dengan kata lain atribut dapat menjelaskan rentang nilai sifat tersebut.

bagian tengah atribut

Bagian bawah

Bagian ini termasuk dalam operasi kelas atau metode. Bagian bawah ditampilkan dalam format daftar, di mana setiap operasi mengambil jalurnya sendiri. Operasi tersebut menggambarkan bagaimana sebuah kelas berinteraksi dengan data.

bagian bawah operasi

Simbol Class Diagram

simbol class diagram

Pengubah Akses Anggota

Selain komponen dasar class diagram, juga terdapat istilah pengubah akses anggota. Seluruh kelas umumnya mempunyai tingkat atau level akses yang berbeda-beda. Hal tersebut biasanya dipengaruhi oleh pengubah akses atau visibilitas. Ada beberapa tingkat atau level akses yang dilengkapi dengan simbol yang sesuai, antara lain:

  1. Public (+)
  2. Private (-)
  3. Protected (#)
  4. Package (~)
  5. Derived (/)
  6. Static (underlined)

Komponen Tambahan Class Diagram

Nama kelas dalam class diagram dapat mewakili objek utama, interaksi atau hubungan dalam aplikasi ataupun kelas yang akan diprogram. Lebih lanjut class dapat diartikan sebagai template yang berguna dalam membuat sebuah objek. Di samping itu class juga dapat mengaplikasikan perilaku dalam suatu objek.

Dalam Unified Modeling Language (UML) kelas bisa mewakili sekumpulan objek maupun hanya satu objek. Dengan catatan objek tersebut memiliki struktur dan perilaku yang sama. Objek itu diwakili bentuk persegi panjang yang terdiri dari baris nama kelas, atribut dan operasi. Saat menggambar kelas pada class diagram, maka Anda harus mengisi baris teratas. Sedangkan baris di bawahnya adalah opsional jika Anda ingin memberikan detail yang lebih banyak.

Ada cukup banyak komponen tambahan pada class diagram. Berikut penjelasan masing-masing komponen tersebut:

  1. Nama: baris pertama dalam bentuk class.
  2. Atribut: baris kedua dalam bentuk class. Masing-masing atribut kelas ditampilkan dalam baris yang terpisah.
  3. Objek: adalah tambahan ke class diagram untuk mewakili prototipe atau contoh konkret.
  4. Antarmuka: bisa dibilang serupa dengan class. Bedanya class bisa memiliki instance dari jenisnya, sementara antarmuka harus memiliki paling sedikit satu kelas untuk mengimplementasikannya. Antarmuka juga bisa disebut sebagai kumpulan tanda tangan operasi.
  5. Metode: baris ketiga dalam bentuk kelas. Komponen ini juga disebut dengan istilah operasi. Metode atau operasi ini digambarkan dalam bentuk daftar dengan setiap operasi pada barisnya sendiri.
  6. Jenis data: merupakan klasifikasi yang menentukan nilai suatu data. Tipe data bisa memodelkan tipe enumerasi maupun primitif.
  7. Sinyal: adalah simbol yang mewakili komunikasi asinkron satu arah antar objek yang aktif.
  8. Paket: bentuk yang dibuat untuk mengatur pengklasifikasi yang terkait dalam diagram. Paket ini dilambangkan dengan bentuk persegi panjang tab besar.
  9. Pencacahan: adalah bagian kelompok pengidentifikasi yang mewakili nilai-nilai pencacahan. Pencacahan ini juga disebut sebagai representasi tipe data yang ditentukan oleh pengguna.
  10. Artefak: elemen model yang mewakili entitas nyata dalam sistem perangkat lunak. Misalnya dokumen, basis data, file yang dapat dieksekusi, komponen perangkat lunak, dan masih banyak lagi.

Hubungan Antar Kelas

  1. Asosiasi: adalah hubungan statis antar kelas. Biasanya menggambarkan class yang mempunyai atribut seperti class lain atau jenis class yang membutuhkan informasi mengenai eksistensi class lain.

Di bawah ini merupakan jenis dan sifat suatu relasi terhadap objek.

Nilai Kardinal
Arti
Keterangan
Contoh
0 . . 1
Nol atau satu
Setiap objek harus memiliki satu atau nol objek terhadap objek  class lain
Suatu Pegawai hanya memiliki satu istri atau tidak punya.
1
Satu
Setiap objek hanya memiliki satu objek terhadap objek class lain
Setiap negara hanya memiliki satu presiden
0 .. *
Nol atau banyak
Setiap Objek atau nol memiliki banyak objek terhadap class lain
Setiap Pegawai memiliki banyak anak
1 .. *
Satu atau Banyak
Setiap objek memiliki banyak objek terhadap objek class lain.
Bos memiliki banyak anak buah.
  1. Directed Association: Relasi  seperti asosiasi namun menggambarkan objek atau aliran kejadian berasal dari salah satu kelas, sedang kelas yang lainnya bersifat pasif.

  1. Agregasi: hubungan yang menyatakan suatu bagian. Contohnya adalah “terdiri atas…”.

  1. Komposisi: dapat dikatakan serupa dengan agregasi. Hanya saja jika class whole tidak ada maka bagian tidak dapat berdiri sendiri.

  1. Dependency: hubungan atau relasi yang saling tergantung satu sama lain, namun tidak berlaku untuk kebalikannya.

  1. Realization: Sebuah relasi antar dua class yang mengharuskan class yang satu harus mengikuti aturan dari class yang lainnya. Biasanya terjadi antara kelas dengan antarmuka (interface).

  1. Visibility : Untuk menentukan visibilitas (nilai yang diijinkan untuk dilihat atau di akses) anggota kelas  (yaitu,  atribut  atau  method) terdapat notasi berikut yang harus ditempatkan sebelum nama anggota kelas.

  1. Generalisasi: hubungan antar kelas turunannya. Dapat diartikan sebagai relasi “..is a..” Digunakan untuk merepresentasikan pewarisan. Suatu kelas (child class) dapat diturunkan dari kelas lain dan mewarisi semua atribut dan method induknya (parent class) dan dapat menambah method atau atribut baru. Sebagai contoh kucing, srigala, singa, macan adalah hewan. Maka bisa dibuat relasi antar kelas seperti berikut ini:

Contoh Class Diagram

Class Diagram untuk Sistem Penjualan Toko

Keterangan:

  • Class atau table departemen mempunya agresi dengan class atau table pegawai. Karena departemen ini dapat berdiri sendiri. Kemudian banyak pegawai dapat bekerja dalam satu departemen, jadi many to 1.
  • Class atau table transaksi tidak dapat berdiri sendiri, sebab ia harus ada table produk. Hal ini berlaku terhadap table produk, sebab membutuhkan table departemen.
  • Banyak pelanggan yang bisa melakukan banyak transaksi.
  • Satu transaksi bisa mencakup banyak produk.

Class Diagram Untuk Sistem Perhotelan

class diagram hotel

Keterangan:

Objek dalam sistem manajemen hotel, antar class memiliki keterhubungan sesuai dengan kebutuhannya yaitu: informasi tamu, tanggung jawab staf, dan jumlah hunian kamar.

Class Diagram untuk sistem ATM

Sistem informasi ATM diilustrasikan oleh diagram berikut ini.

class diagram atm

Keterangan:

Seperti yang dapat kita lihat dalam contoh class diagram di atas, setidaknnya memiliki 7 class.

Sistem mesin ATM menjadi begitu rumit disebab oleh ke amanan yang berlapis, hal ini tentu menjadi prioritas yang begitu dibutuhkan oleh sebuah sistem ATM. Bagaimana tidak setiap harinya begitu banyak orang yang mekakse, mulai dari melakukan penarikan uang, transfer hingga cek saldo.

Baca juga: Pengertian UML Dan Contohnya

Membuat Class Diagram

Berikutnya kita bahas cara membuat class diagram dengan bantuan software StarUML. Berikut langkah-langkahnya:

  • Unduh aplikasi StarUML di situs resminya http://staruml.io/download. Silakan klik tombol Download sesuai dengan sistem operasi yang Anda pakai.

  • Install aplikasi ke PC atau laptop Anda. Setelah selesai terinstall, buka aplikasi StarUML. Tampilannya kurang lebih seperti berikut.

  • Untuk menambahkan diagram kelas, silakan klik Model pada toolbar, lalu pilih Add Diagram > Class Diagrams.

  • Jika Anda perhatikan, sisi kiri terdapat sejumlah menu dan fitur. Klik menu Class dan tarik ke lembar kerja. Anda akan melihat tampilan class baru. Silakan isi nama class, atribut dan operation.

  • Seperti yang bisa Anda lihat, gambar di atas adalah contoh diagram kelas antara produk dengan kategori yang menggunakan relasi association dengan sifat public.
  • Jika ingin menambahkan atribut atau operation, klik kanan pada class diagram. Atau Anda juga bisa menambah sifat atribut dan operation.
  • Jika class diagram selesai dibuat, Anda bisa mengekspor hasilnya ke dalam beberapa format, seperti JPG, PNG, maupun SVG. Tidak hanya itu, Anda juga dapat menyimpannya dalam format dokumen PDF. Caranya klik menu File, lalu pilih Export atau Print to PDF.

  • Anda bisa mengecek kembali hasil output file yang telah diekspor.

Sekian informasi yang bisa website kami sampaikan seputar cara membuat class diagram berikut penjabaran seputar class diagram itu sendiri.

Seperti yang diketahui class diagram berguna untuk berbagai hal. Misalnya untuk sistem ATM, sistem manajemen hotel, penjualan produk dan lain sebagainya.



Loading...

Leave a Comment