The source information from infinity ;p


Sabtu

Penjelasan dan Cara Membuat Class Diagram UML Unified Modeling Language

| Sabtu
Class adalah kumpulan objek-objek dengan danyang mempunyai struktur umum behavior 
umumrelasi umum, dan semantic/kata yang umumSebuah class digambarkan seperti 
sebuah bujur sangkar dengan tiga bagian ruangan. Class sebaiknya diberi 
nama menggunakankata benda sesuai dengan domain/bagian/kelompoknya 
(Whitten L. Jeffery et al, 2004).

Class juga memiliki 3 area pokok (utama) yaitu :
 1.  Nama
 2. Atribut
 3.  Operasi.
Nama berfungsi untuk memberi identitas pada sebuah kelas
Atribut fungsinya adalah untuk memberi karakteristik pada data yang dimiliki suatu objek di dalam kelas
Operasi fungsinya adalah memberikan sebuah fungsi ke sebuah objek.
Atribut dan metoda dapat memiliki salah satu sifat berikut :
Private, tidak dapat dipanggil dari luar class yang bersangkutan
Protected, hanya dapat dipanggil oleh class yang bersangkutan dan anak-anak yang mewarisinya
Public, dapat dipanggil oleh siapa saja .

Modifier
Digunakan untuk memberikan batasan atau penanda bagaimana kelas 
lain menggunakan attribut, constructor dan method dari suatu kelas.
Method digunakan untuk menyimpan behaviour, pada bahasa pemrograman berupa 
method yang:
1.
Mengembalikan nilai (non void method)
2. Method yang
tidak mengembalikan nilai (void method).
Contohnya : getNama, getAlamat, getUsia, jalan, lari
  Aturan Penggunaan :
  Modifier nama_method([namaParameter : tipeParameter]) :nilai_kembalian

Contoh Penggunaan :
+ getNama() : String
 Dibaca method getNama memiliki modifier public, tidak memiliki parameter (tidak 
ditentukan sebelumnya) dan memiliki nilai kembalian String .
+ setNama(nama : String) : void
Dibaca method setNama memiliki modifier public, memiliki 1 buat parameter yaitu 
nama dengan tipe parameter String dan tidak memiliki nilai kembalian karena  
bertipe void.

Relasi Dalam Object
Semua sistem terdiri dari class-class dan object. Kelakuan sistem dicapai melalui
kerjasama antar object. Contohnya : seorang mahasiswa ditambahkan dalam daftar 
kelas, jika daftar kelas memperoleh message  untuk menambahkan mahasiswa.
Interaksi antar object disebut object relationship. Dua tipe relationship yang 
ditemukan pada saat analisis adalah association dan aggregation.

Association
Dapat  diartikan sebagai relasi “.. has  a..” atau MEMILIKI. Digambarkan  sebagai  garis  
lurus  antara  Dua kelasNamun  tidak  berarti  bahwa  kelas satu  memiliki/dimiliki kelas  
yang  lain,  tetapi kelas lain dapat berelasi juga dengan kelas yang sama.

Derected Association
Relasi  seperti asosiasi namun menggambarkan  objek  atau  aliran  kejadian  berasal  dari
salah satu kelas, sedang kelas yang lainnya bersifat pasif.
Aggregation
Dapat  diartikan  sebagai “..owns  a  ..”(“terdiri  atas..”). Terdapat  kelas sebagai  part  class
(kelas  bagian)  yang  merupakan bagian  dari  kelas  lain(whole  class). Namun  jika whole
class tidak ada, part class masih dapat berdiri sendiri. 
Apabila  kelas  person dihilangkan, maka  alamat  rumah  masih  dapat berdiri sendiri.
Composition
Bisa disebut  juga sebagai strong  agregation, dapat diartikan “..is part of..” (“..bagian
dari..”). Seperti halnya relasi agregasi, namun apabila whole class hilang, maka mustahil
part class untuk ada.

Apabila kelas mobil dihilangkan, maka tangki BBM mobil ikut hilang.
Generalization
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:
Dependency
Hubungan  ketergantungan  antar  kelasSuatu  kelas  memiliki ketergantungan terhadap  
kelas  lain,  tetapi  tidak  berlaku  sebaliknya. Perubahan  pada  salah  satu  elemen kelas 
(pemasok) berdampak pada kelas lain (klien).

Realization
Sebuah relasi antar dua class yang mengharuskan class yang satu harus mengikuti aturan  
dari  class  yang  lainnyaBiasanya  terjadi  antara  kelas  dengan antarmuka (interface).
Visibility
Untuk menentukan visibilitas (nilai yang diijinkan untuk dilihat atau di akses) anggota 
kelas  (yaituatribut  atau  method)  terdapat  notasi  berikut  yang  harus  ditempatkan  
sebelum nama anggota kelas.



Sumber




--------------------------------------------------------------------------------------------------------------------------

Pengertian Class Diagram (Konsep)

Gambar bagian class diagram

Class Diagram adalah salah satu jenis diagram yang paling berguna di UML, hal ini karena dapat dengan jelas memetakan struktur sistem tertentu dengan memodelkan kelas, atribut, operasi serta hubungan antar objek.
Class Diagram menggambarkan serta deskripsi atau penggambaran dari class, atribut, dan objek disamping itu juga hubungan satu sama lain seperti pewarisan, containmet, asosiasi dan lainnya.

Class Diagram mampu memberikan kita pandangan yang lebih luas mengenai suatu sistem dengan cara menunjukkan kelas serta hubungan-hubungannya. Diagram class dapat dikatakan bersifat statis, alasannya karena diagram kelas tidak menggambarkan apa yang terjadi jika mereka berhubungan melainkan menggambar hubungan apa yang terjadi.

Manfaat Class Diagram
Class Diagram menawarkan banyak manfaat untuk siapapun, class diagram UML bermanfaat untuk
1. Menggambarkan suatu model data untuk sistem informasi, tidak peduli apakah model data tersebut sederhana maupun kompleks.
2. Dengan mempelajari class diagram maka akan meningkatkan pemahaman mengenai gambaran umum skema dari suatu aplikasi.
3. Mampu menyatakan secara visual akan kebutuhan spesifik suatu informasi serta dapat menyebarkan informasi tersebut ke seluruh bisnis.
4. Dengan Class Diagram dapat dibuat bagan secara jelas dan terperinci dengan cara memperhatikan kode spesifik apa saja yang dibutuhkan suatu program sehingga mampu mengimplementasikannya ke struktur yang digambarkan.
5. Class Diagram mampu memberikan penggambaran implementasi-independen dari suatu jenis sistem yang digunakan, kemudian dilewatkan diatara berbagai komponen-komponennya.


Komponen Dasar Class Diagram


Class diagram terdiri atas tiga bagian atau 3 area pokok, yaitu :

A) Bagian atas: Berisi Nama kelas, bagian ini selalu diperlukan, baik ketika berbicara tentang classifier atau objek.

Setiap class memiliki nama yang membedakan dengan class yang lain, nama dikenal sebagai simple name (nama sederhana) dan path name (nama path).

gambar name class diagram


B) Bagian tengah: Berisi Atribut-atribut kelas, bagian ini digunakan untuk menjelaskan kualitas kelas. Ini hanya diperlukan saat menggambarkan contoh kelas tertentu. Secara singkat, Atribut dapat menjelaskan rentang nilai sifat tersebut.
Sebagai contoh : Atribut menggambarkan beberapa sifat tertentu yang sedang dimodelkan yang dapat dibagikan ke seluruh objek didalam kelas tersebut, seperti setiap pohon memili tinggi, lebar, dan ketebalan (jari-jari).

gambar attribut class diagram


C) Bagian bawah: Termasuk Operasi kelas (metode). Ditampilkan dalam format daftar, setiap operasi mengambil jalurnya sendiri. Operasi menggambarkan bagaimana suatu kelas berinteraksi dengan data.
Objek dapat mewakili sesuatu yang real/nyata dalam domain problem kita, sebagai contoh seorang konsumen, sebuah barang, seperangkat komputer, dapat juga berupa sebuah konsep seperti pengembalian buku, pembayaran dan lainnya. Dari object-object ini maka dapat kita abstraksikan clandidate class yang bisa terlibat.
gambar operasi class diagram

Pengubah Akses Anggota

Pada dasarnya semua kelas memiliki tingkat atau level akses yang berbeda-beda, hal ini umumnya tergantung pada pengubah akses (visibilitas). Berikut adalah daftar tingkat/level akses yang dilengkapi dengan simbol yang sesuai :
Public (+)
Private (-)
Protected (#)
Package (~)
Derived (/)
Static (underlined)
gambar visibility class diagram

Komponen Tambahan Class Diagram

Tergantung pada bahasannya, nama kelas dalam class diagram bisa dikatakan mampu mewakili objek utama, interaksi atau hubungan dalam aplikasi, maupun kelas yang akan diprogram. 
Bagi Anda yang masih bingung atau kesulitan menjawab pertanyaan "Apa itu Class Diagram di UML ?" maka terlebih dahulu Anda wajib mengetahui konsepnya.
Class: bisa diartikan sebagai template yang berguna dalam membuat suatu objek serta mengaplikasikan perilaku objek dalam suatu sistem. Dalam UML sendiri, kelas dapat mewakili sekumpulan objek ataupun hanya satu objek dengan catatan memiliki struktur serta perilaku yang sama. 

Objek tersebut diwakili oleh persegi panjang yang terdiri dari baris nama kelas, atributnya, dan operasinya. Ketika Anda mencoba menggambar kelas pada Class Diagram, maka wajib untuk mengisi baris paling atas dan baris dibawahnya opsional jika Anda ingin memberikan detail lebih banyak.


Nama: Baris pertama dalam bentuk class.
Atribut: Baris kedua dalam bentuk class. Setiap atribut kelas akan ditampilkan pada baris terpisah.
Metode: Baris ketiga dalam bentuk kelas. Juga dikenal sebagai operasi, metode/operasi digambarkan ke dalam bentuk atau format daftar dengan setiap operasi pada barisnya sendiri.
Sinyal: bisa diartikan sebagai simbol yang mewakili komunikasi asinkron satu arah antara objek yang aktif.
Jenis data: Klasifikasi yang menentukan nilai suatu data. Tipe data dapat memodelkan tipe primitif dan enumerasi.
Paket: Bentuk yang disusun yang berguna dalam mengatur pengklasifikasi, pengklasifikasian disini terkait dalam diagram. Paket dilambangkan dalam bentuk persegi panjang tab besar.
Antarmuka: Mirip dengan class, bedanya jika class dapat memiliki instance dari jenisnya sedangkan antarmuka harus mempunyai setidaknya satu kelas untuk mengimplementasikannya. Antarmuka dapat pula diartikan sebagai sebuah kumpulan tanda tangan operasi.
Pencacahan: encacahan merupakan bagian kelompok pengidentifikasi yang mewakili nilai-nilai pencacahan. Pencacahan disebut pula sebagai representasi tipe data yang ditentukan oleh pengguna. 
Objek: Sebagai tambahan ke Class Diagram untuk mewakili prototipe atau contoh konkret .
Artefak: Elemen model yang mewakili entitas nyata dalam sistem perangkat lunak, seperti dokumen, komponen perangkat lunak, basis data, file yang dapat dieksekusi, dll.

Hubungan Antar Kelas

1. Asosiasi, dapat diartikan sebagai hubungan statis antar class. Umumnya Asosiasi menggambarkan class yang memiliki atribut seperti class lain, ataupun jenis class yang memerlukan informasi mengenai eksistensi class lain.
2. Agregasi, yakni dapat dairtikan hubungan yang menyatakan suatu bagian seperti ("terdiri atas...")
3. Pewarisan, yakni hubungan urutan jenjang (hirarkir)antar class. Misalnya suatu class dapat mewarisi semua atribut dan metoda class asalnya dengan cara menurunkannya ke class lain sehingga ia disebut anak dari class yang diwarisinya.
4. Hubungan dinamis, berarti suatu message (rangkaian pesan) yg dilalui satu class ke class lainnya. Adaapun hubungan dinamis dapat digambarkan dengan menggunakan sequence diagram

Contoh Class Diagram

Contoh Class diagram untuk sistem manajemen hotel

Class diagram dapat menunjukkan hubungan antara setiap objek dalam sistem manajemen hotel, termasuk didalamnya informasi tamu, tanggung jawab staf, dan jumlah hunian kamar. Contoh di bawah ini memberikan sebuah gambaran mengenai sistem manajemen hotel.
gambar Contoh Class diagram untuk sistem manajemen hotel

Contoh Class Diagram untuk sistem ATM

ATM jika dilihat memang tampak sederhana, bayangkan seorang pelanggan hanya perlu menekan beberapa tombol untuk mengambil uang tunai. Tetapi, ada banyak lapisan keamanan yang sebenarnya harus dilalui oleh uang di ATM sehingga menjadi aman serta efektif dalam mencegah terjadinya tindak penipuan dan memberikan nilai tambah bagi kepuasan pelanggan perbankan. Berbagai bagian manusia dan benda mati dari sistem ATM diilustrasikan oleh diagram berikut ini
gambar Contoh Class Diagram untuk sistem ATM



sumber
  -----------------------------------------------------------------------------------------------------------------------

Domain Class Diagram

Pendahuluan: Apa itu UML ?
Unified Modeling Language (UML) adalah satu set standar bahasa dalam teknik diagram pengembang untuk object-oriented system development.
Class Diagram? Apakah itu?
Class diagram merupakan salah satu diagram utama dari UML untuk menggambarkan class atau blueprint object pada sebuah sistem. Analisis pembentukan class diagram merupakan aktivitas inti yang sangat mempengaruhi arsitektur piranti lunak yang dirancang hingga ke tahap pengkodean.
Domain Modelling? Apakah itu?
Domain Modelling merupakan teknik pengidentifikasian object-object pada kata benda yang terdapat pada daftar requirement yang diklasifikasikan pada area (domain) permasalahan yang sama untuk dijadikan candidate class pada class diagram.
Notasi Class Diagram
1
Hubungan antar class
Pada class diagram juga digambarkan bagaimana interaksi hubungan antar class dalam sebuah konstruksi piranti lunak seperti hubungan asosiasi, agregasi, komposisi, dan inheritance dan generalization
1. Asosiasi
Asosiasi, yaitu hubungan statis antar class. Umumnya menggambarkan class yang memiliki atribut berupa class lain, atau class yang harus mengetahui eksistensi class lain. Panah navigability menunjukkan arah query antar class.
2
Contoh:
3
Contoh diatas menunjukan domain model class yang simple dimana terdapat 3 class: Member, Sales Order, dan Product. Kita bisa lihat Member class dapat mempunyai minimal 1 dan maksimal banyak Sales Order class. Dan setiap Sales Order class dapat mempunyai minimal 1 dan maksimal 1 Member class. Sales Order class dapat mempunyai minimal 1 dan maksimal banyak Product class. Sedangkan Product class dapat mempunyai minimal 1 dan maksimal banyak Sales Order class.
Jika kita menemukan hubungan antar class seperti Sales Order dengan Product, yang disebut sebagai many-to-many asosiasi. Maka kita harus membuat Detail Class, seperti:
4Mengapa harus dibuat Detail Class? Apabila kita tidak membuat Detail Class maka pada table database tampilannya akan seperti:
5Pada ID Sales Order S002, Product dengan ID P002 dibeli dengan jumlah 2 buah. Tetapi pada table database, datanya tersimpan redudansi (double). Sehingga kita harus membuat Detail Class agar data tidak redudansi.
Sehingga Sales Order class mempunyai minimal 1 dan maksimal banyak Detail SO class. Dan Detail SO class hanya mempunyai 1 Sales Order class. Sedangkan, Product class mempunyai minimal 1 dan maksimal banyak Detail SO class. Dan Detail SO class hanya mempunyai 1 Product class.
Berikut ini tampilan table database pada Detail SO class:
6
Sehingga ID Sales Order dan ID Product pada Detail SO class akan sekaligus menjadi Primary Key dan Foreign Key. Dan terdapat atribut tambahan pada Detail SO class yaitu Quantity
2. Agregasi
Agregasi, yaitu hubungan antar class yang menyatakan hubungan “has-a.”
Contohnya: Mobil dengan kaca spion.
7Bila kita memodelkan sebuah mobil, maka dapat dikatakan bahwa mobil mempunyai kaca spion. Secara logis dapat dikatakan sebuah mobil dapat berfungsi walaupun tanpa kaca spion. Mobil dapat dipisahkan dari kaca spion
3. Komposisi
Komposisi, yaitu hubungan antar class yang menyatakan hubungan “part-of.”
Contohnya: Mobil dengan mesin
8
Bila kita memodelkan sebuah mobil, maka dapat dikatakan bahwa mesin adalah bagian dari mobil. Secara logis dapat dikatakan bahwa mobil tidak dapat dipisahkan dari mesin. Bila mesin tidak ada disebuah mobil maka mobil itu tidak berfungsi sebagai mobil.
4. Inheritance dan Generalization
Inheritance adalah hubungan hirarkis antar classClass dapat diturunkan dari class lain dan mewarisi semua atribut dan metoda class asalnya dan menambahkan fungsionalitas baru, sehingga ia disebut anak dari class yang diwarisinya. Kebalikan dari pewarisan adalah generalisasi.
.9

References

John W. Satzinger, R. B. (2012). Systems Analysis and Design in a Changing World. Joe Sabatino.




----------------------------------------------------------------------------------------------------------------------------

Cara Bikin class diagram

Membuat Class Diagram pada StarUML


saya akan membuat sebuah diagram yang menggunakan program apilkasi Star UML. Diagram yang saya buat ini merupakan diagram yang akan menjelaskan perhitungan gaji pada sebuah perusahaan. Langkah pertama yang harus dilakukan adalah dengan membuka aplikasi Star UML, kemudian akan muncul jendela seperti di bawah ini. Pilih Empty Project, klik OK.

Setelah itu, klik kanan pada Untitled yang berada di sebelah kanan window. Pilih Add Model, maka akan muncul model. Kemudian klik kanan pada Model, pilih Add Diagram lalu klik Class Diagram.

  

Maka akan muncul jendela seperti ini.

Jika sudah selesai, maka kita dapat memulai untuk merancang diagramnya. Untuk memulai membuat sebuah class diagram, kita harus mengetahui persoalan apa yang sedang dihadapi untuk merancang tabelnya.  Langkah pertama adalah membuat sebuah class. Yaitu dengan mengklik Class yang berada pada toolbox di sebelah kiri layar.

Kemudian ketikkan nama class tersebut, misalnya Pegawai.
Buat juga class – class yang lainnya. Yaitu Departemen, Pelanggan, Transaksi, Produk, Makanan, Minuman, Perlengkapan Mandi.



Kemudian berikan atribut – atribut pada class dengan cara mengklik kanan class, lalu pilih Add, Attribute. Seperti gambar dibawah ini :

Untuk class pegawai, memiliki atribut Nama, Alamat, Jabatan, NIP. Class Departemen mempunyai atribut Nama Departemen dan Alamat. Class Pelanggan memiliki atribut Nama Pelanggan, Jenis Transaksi, dan  ID Pelanggan. Untuk class Transaksi memiliki atribut No.Tansaksi, Jumlah Transaksi, dan Tgl Transaksi. Class Produk memiliki atribut Nama Produk, Harga Produk, dan Stok. Class Makanan memiliki atribut Nama Makanan, Tanggal Produksi, Tanggal Kadaluarsa, Harga dan Stok. Untuk class Minuman memiliki atribut Nama Minuman, Tgl Produksi, Tgl Kadaluarsa, Harga dan Stok. Dan yang terakhir adalah class Perlengkapan mandi, class ini memiliki atribut Tgl Produksi, Harga, dan Stok. Lihat gambar dibawah ini :

Selanjutnya adalah membuat relasi dari class – class tersebut. Ada beberapa macam relasi, yaitu,
1.      Association : Sebuah asosiasi merupakan sebuah relationship paling umum antara 2 class dan dilambangkan oleh sebuah garis yang menghubungkan antara 2 class. Garis ini bisa melambangkan tipe-tipe relationship  dan juga dapat menampilkan hukum-hukum multiplisitas pada sebuah relationship.(Contoh:  One-to-one, one-to-many,many-to-many).

2.      Composition: Jika sebuah class tidak bisa berdiri sendiri dan harus merupakan bagian dari class yang lain, maka class tersebut memiliki relasi Composition terhadap class tempat dia bergantung tersebut. Sebuah relationship composition  digambarkan sebagai garis dengan ujung berbentuk jajaran genjang berisi/solid.

3.      Dependency : Kadangkala sebuah class menggunakan class yang lain. Hal ini disebut dependency. Umumnya penggunaan dependency digunakan untuk menunjukkan operasi pada suatu class yang menggunakan class yang lain. Sebuah dependency dilambangkan sebagai sebuah panah bertitik-titik.

4.      Aggregation : Aggregation mengindikasikan keseluruhan bagian relationship dan biasanya disebut sebagai relasi.


Untuk class Pegai dan Departemen terdapat relasi Agregation, karena antara Pegawai dan Departemen saling berketergantungan dan mereka dapat berdiri sendiri. Class Departemen dan Produk diberikan relasi Composition karena class – class ini saling berketergantungan dan tidak dapat berdiri sendiri, jika tidak ada Departemen, maka tidak akan ada Produk. Kemudian untuk class Pelanggan dan Transaksi, terdapat relasi asosiation, yaitu dimana class Pelanggan tidak langsung berhubungan dengan Class transaksi, dan mereka tidak saling berketergantungan. Sedangkan pada class Produk dan Makanan, Minuman, Perlengkapan mandi terdapat relasi Generalization. Karena Makanan, Minuman, dan Perlengkapan mandi merupakan bagian dari produk yang lebih spesifik atau bisa disebut juga kata khusus dari Produk.
            Jika sudah, berikan sebuah text yang berisi simbol dari relasi tersebut, yaitu one to one, one to many, many to one, atau many to many.



OUTPUT


----------------------------------------------------------------------------------------------------------------------------

Class diagram adalah diagam yang digunakan untuk menampilkan beberapa kelas serta paket-paket yang ada dalam sistem/perangkat lunak yang sedang kita gunakan.
Class diagram memberi kita gambaran (diagram statis) tentang sistem/perangkat lunak dan relas-relasi yang ada didalamnya.

Definisi Class DiagramClass adalah kumpulan objek-objek dengan dan yang mempunyai struktur umum, behavior umum, relasi umum, dan semantic/kata yang umum. Class-class ditentukan/ditemukan dengan cara memeriksa objek-objek dalam sequence diagram dan collaboration diagram. Sebuah class digambarkan seperti sebuah bujur sangkar dengan tiga bagian ruangan. Class sebaiknya diberi nama menggunakan kata benda sesuai dengan domain/bagian/kelompoknya (Whitten L. Jeffery et al, 2004).

Class Diagram adalah diagram yang menunjukan class-class yang ada dari sebuah sistem dan hubungannya secara logika. Class diagram menggambarkan struktur statis dari sebuah sistem. Karena itu class diagram merupakan tulang punggung atau kekuatan dasar dari hampir setiap metode berorientasi objek termasuk UML (Henderi, 2008). Sementara menurut (Whitten L. Jeffery et al 2004:432) class diagram adalah gambar grafis mengenai struktur objek statis dari suatu sistem, menunjukan class-class objek yang menyusun sebuah sistem dan juga hubungan antara class objek tersebut.

Elemen-eleman class diagram dalam pemodelan UML terdiri dari: Class-class, struktur class, sifat class (class behavior), perkumpulan/gabungan (association), pengumpulan/kesatuan (agregation), ketergantungan (dependency), relasi-relasi turunannya, keberagaman dan indikator navigasi, dan role name (peranan/tugas nama).
Simbol-simbol class diagram
1. Class: Class adalah blok - blok pembangun pada pemrograman berorientasi obyek.Sebuah class digambarkan sebagai sebuah kotak yang terbagi atas 3 bagian. Bagian atas adalah bagian nama dari class. Bagian tengah mendefinisikan property/atribut class. Bagian akhir mendefinisikan methodmethod dari sebuah clas.


2. Association : Sebuah asosiasi merupakan sebuah relationship paling umum antara 2 class dan dilambangkan oleh sebuah garis yang menghubungkan antara 2 class. Garis ini bisa melambangkan tipe-tipe relationship dan juga dapat menampilkan hukum-hukum multiplisitas pada sebuah relationship.(Contoh: One-to-one, one-to-many,many-to-many).


3. Composition: Jika sebuah class tidak bisa berdiri sendiri dan harus merupakan bagian dari class yang lain, maka class tersebut memiliki relasi Composition terhadap class tempat dia bergantung tersebut. Sebuah relationship composition digambarkan sebagai garis dengan ujung berbentuk jajaran genjang berisi/solid.


4. Dependency : Kadangkala sebuah class menggunakan class yang lain. Hal ini disebut dependency. Umumnya penggunaan dependency digunakan untuk menunjukkan operasi pada suatu class yang menggunakan class yang lain. Sebuah dependency dilambangkan sebagai sebuah panah bertitik-titik. 


5. Aggregation : Aggregation mengindikasikan keseluruhan bagian relationship dan biasanya disebut sebagai relasi.





Keterangan:
• Class / table departemen memiliki ber-Agregasi dengan class / table pegawai,alasannya karena departemen dapat berdiri sendiri tanpa ada pegawai tetapi kinerjanya tidak sempurna. Banyak pegawai dapat bekerja pada satu departemen jadi many to 1.
• Class/table transaksi tidak dapat berdiri sendiri tanpa adanya class/table produk. Begitu juga dengan table produk tidak bisa berdiri sendiri tanpa adanya departemen.
• Banyak pelanggan dapat melakukan banyak tansaksi
• 1 transaksi dapat mencakup banyak produk.

 Penamaan kelas
Masing-masing kelas harus mempunyai nama yang unik. Sebagian besar organisasi mempunyai konvensi penamaan sendiri untuk menamakan kelas-kelas yang dibuatnya. Umumnya kelas-kelas dinamakan menggunakan kata benda tunggal.
Nama kelas tidak menggunkan spasi. Ini dilakukan karena alasan praktis, dimana beberapa bahasa pemrograman tidak membolehkan adanya spasi. Hal lainnya yang perlu diperhatikan adalah bahwa nama kelas hendaknya pendek, cukup untuk menjelaskan apa yang akan kelas lakukan.
Jadi penamaan kelas sangat tergantung pada organisasi kita. Jika kita mempunyai kelas yang digunakan dalam organisasi yang bersangkutan, tetapi yang jelas bahwa hal tersebut harus konsisten digunakan untuk keseluruhan kelas-kelas yang dibuatnya.
-          Visibilitas kelas
Pilihan visibilitas menentukan dapat tidaknya sebuah kelas dilihat dari luar paket. Ada 3 pilihan visibilitas untuk sebuah kelas yaitu :
1.      Public
2.      Menyatakan bahwa sebuah kelas dapat dilihat dari kelas-kelas lainnya dalam system.
3.      Protected atau private
4.      Menyatakan bahwa sebuah kelas dapat dilihat dari kelas-kelas majemuk(nested), friends, atau dari        kelas itu sendiri.
5.      Package atau implementation.
6.      Menyatakan bahwa sebuah kelas dapat dilihat hanya oleh kelas yang lain dalam paket yang sama.
-          Multiplicity kelas
Multiplicity memberikan gambaran ebuah instant yang akan ditampung dalam kelas. Misalnya, dalam kelas pegawai, kita mungkin mempunyai beberapa instant, satu untuk Ani, satu untuk Ina, satu untuk Nana dan seterusnya. Sehingga Multiplicity untuk kelas pegawai diset n. Pada kelas control, Multiplicity diset 1, karena pada saat aplikasi berjalan hanya satu kelas.
Beberapa jenis Multiplicity kelas.
Table Multiplicity untuk kelas :
Multiplicity
Arti
n (default)
Banyak
0..0
Nol
0..1
Nol atau Satu
0..n
Nol atau Banyak
1..1
Tepat satu
1. .n
Satu atau banyak


Table Notasi Multiplicity menggunakan kustomisasi
Format
Arti
Tepat
..
Antara
..
Atau nol
,

, ..
Tepat atau antara dan
.. ,
..
Antara dan atau antara dan

-          Paket
Paket digunakan unruk mengelompokkan kelas-kelas yang mempunyai kesamaan. Dalam UML, digambarkan sebagai berikut :
Ada beberapa cara mengelompokkan kelas-kelas dalam paket, tetapi bagaimanapun juga,  kelas-kelas dapat dikelompokkan dalam paket yang sama tergantung dari keinginan kita sendiri. Salah satu pendekatan yang dapat digunakan adalah berdasarkan Stereotype-nya. Dengan pendekatan ini, dapat dibuat satu paket untuk kelas-kelas entitas, dan satu kelas untuk  kelas-kelas control.
Pendekatan lainnya yang dapat digunakan adalah dengan fungsionalitasnya. Misalnya, kita punya paket security untuk kelas-kelas yang digunakan menangani keamanan system.
Akhirnya, dapat digunakan kombinasi dua pendekatan diatas. Paket dapat dibuat bersarang, dimana satu paket mengandung paket lainnya. Pada level tertinggi, dapat dikelompokkan berdasarkan fungsionalitasnya, kemudian diikuti dengan sub fungsionalitasnya lainnya atau dengan stereotype-nya.
 
----------------------------------------------------------------------------------------------------------------------------
Sebelum kita membahas mengenai diagram kelas mari kita fahami mengenai perbedaan antara kelas dan objek hal ini dimaksudkan agar menghindari kesalahfahaman karena seringkali dalam beberapa materi lain kelas disebutkan sebagai objek itu sendiri. Kelas merupakan blueprint dari object, kelas adalah konsep yang membentuk sebuah object jika dianalogikan maka relevan dengan pernyatan bahwa object “Mobil Ferrari” pada dasarnya adalah termasuk kedalam kelas “mobil” perhatikan diagram berikut:
dalam bahasa java jika kita ingin membangun sebuah objek berdasarkan kelas tertentu maka sebagai berikut :
NamaKelas object = new NamaKelas;
Atau jika disesuaikan dengan kasus diatas menjadi :
Mobil ferarri = new Mobil; // relevan dengan pernyataan buatlah sebuah objek baru dengan nama Ferarri dari kelas Mobil.
Dalam rekayasa perangkat lunak, diagram kelas didalam Unified Modeling Language (UML) adalah jenis diagram struktur statis yang menggambarkan struktur dari suatu sistem dengan menunjukkan kelas sistem, atribut, operasi atau metode, dan hubungan antara kelas.
Sebuah kelas digambarkan sebagai kotak dengan tiga level yakni:
1.       Pada bagian atas judul dicetak tebal dengan text rata tengah dengan huruf pertama kapital,
2.       Pada bagian tengah atribut dicetak rata kiri dengan hurup pertama non kapital dilengkapi dengan tipe data;
3.       Pada bagian bawah adalah metode yang digunakan dalam kelas diakhiri dengan kurung kurawal.
lambang (+/-/#) pada kelas menggambarkan aksesibilitas dari atribut atau metode hal ini senada dengan konsep enkapsulasi  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 dan
·         (#) bermakna protected dimana kelas/atribut hanya bisa diakses oleh kelas yang berada dalam package yang sama atau subclass dari kelas itu sendiri.
Ada berbagai macam jenis relasi dalam diagram kelas yakni:
1.       Asosiasi ini mewakili hubungan statis antara dua kelas bersama dengan multiplisitas. Misalnya seorang karyawan dapat memiliki satu alamat utama, tetapi dapat memiliki beberapa nomor ponsel.
Asosiasi bisa searah (ditunjukkan oleh panah di salah satu ujung) atau dua arah (ditunjukkan oleh panah pada kedua ujung). Multiplisitas mendefinisikan berapa banyak objek yang terlibat berikut ini merupakan table dali jenis multiplisitas berikut contohnya:
·         (0..1)tidak ada atau satu objek .Contoh : Sebuah kursi penerbangan dapat memiliki atau satu penumpang saja.
·         (1) --Tepat satu objek .Contoh:  satu order hanya dapat memiliki satu pelanggan.
·         (0 .. *) atau (*) -- Nol atau lebih objek .Contoh:kelas A dapat memiliki nol atau lebih siswa.
·         (1 .. *) Satu atau lebih objek (setidaknya satu). Contoh: pesawat dapat memiliki satu atau lebih penumpang.
2.       Generalisasi Properti ini merupakan fitur warisan dari konsep berorientasi objek. Dimana child mewarisi atribut dan method dari parentnya namun disisi lain mengalami penambahan atau modifikasi  didalam java dikenal sebagai override.
3.       Realisasi merupakan relasi yang terjadi antara class dan interface. Dimana interface merupakan media penghubung  dianalogikan sebagai sebuah port .
4.       Dependensi merupakan relasi dimana sebuah class membutuhkan class lainnya untuk dapat berjalan dalam hal ini dapat berbentuk parameter object yang dieksekusi dalam method class lainnya
5.       Agregasi merupakan relasi dimana sebuah class merupakan bagian utuh dari class lainya sering digambarkan dengan kata “has a” berarti memiliki contoh sekolah memiliki murid .
6.       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.





----------------------------------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------------------------------

----------------------------------------------------------------------------------------------------------------------------









Related Posts

Tidak ada komentar: