Apa itu Kelas?
Kelas adalah cetak biru yang digunakan untuk membuat Objek. Kelas mendefinisikan apa yang bisa dilakukan objek.
Apa itu Diagram Kelas?
UML CLASS DIAGRAM memberikan gambaran umum sistem perangkat lunak dengan menampilkan kelas, atribut, operasi, dan hubungannya. Diagram ini menyertakan nama kelas, atribut, dan operasi dalam kompartemen terpisah yang ditentukan.
Diagram Kelas mendefinisikan jenis objek dalam sistem dan berbagai jenis hubungan yang ada di antara mereka. Ini memberikan tampilan aplikasi tingkat tinggi. Metode pemodelan ini dapat berjalan dengan hampir semua Metode Berorientasi Objek. Kelas bisa merujuk ke kelas lain. Sebuah kelas dapat memiliki objeknya atau mungkin mewarisi dari kelas lain.
Diagram Kelas membantu menyusun kode untuk pengembangan aplikasi perangkat lunak.
Dalam tutorial ini, Anda akan mempelajari:
- Apa itu Kelas?
- Apa itu Diagram Kelas?
- Manfaat Diagram Kelas
- Elemen penting dari diagram kelas A UML
- Nama kelas
- Atribut:
- Hubungan
- Agregasi vs. Komposisi
- Kelas Abstrak
- Contoh Diagram Kelas UML:
- Diagram Kelas dalam Siklus Hidup Pengembangan Perangkat Lunak:
- Praktik terbaik Mendesain Diagram Kelas
Manfaat Diagram Kelas
- Diagram Kelas Mengilustrasikan model data untuk sistem informasi yang sangat kompleks
- Ini memberikan gambaran umum tentang bagaimana aplikasi disusun sebelum mempelajari kode yang sebenarnya. Ini dapat dengan mudah mengurangi waktu perawatan
- Ini membantu untuk lebih memahami skema umum aplikasi.
- Memungkinkan menggambar grafik rinci yang menyoroti kode yang diperlukan untuk diprogram
- Bermanfaat bagi pengembang dan pemangku kepentingan lainnya.
Elemen penting dari diagram kelas A UML
Elemen penting dari diagram kelas UML adalah:
- Nama kelas
- Atribut
- Operasi
Nama kelas
Nama kelas hanya diperlukan dalam representasi grafis dari kelas tersebut. Itu muncul di kompartemen paling atas. Kelas adalah cetak biru suatu objek yang dapat berbagi hubungan, atribut, operasi, & semantik yang sama. Kelas dirender sebagai persegi panjang, termasuk nama, atribut, dan operasinya di kompartemen terpisah.
Aturan berikut harus diperhatikan saat mewakili kelas:
- Nama kelas harus selalu dimulai dengan huruf kapital.
- Nama kelas harus selalu berada di tengah kompartemen pertama.
- Nama kelas harus selalu ditulis dalam format tebal .
- Nama kelas abstrak harus ditulis dalam format miring.
Atribut:
Atribut dinamai properti kelas yang mendeskripsikan objek yang dimodelkan. Pada diagram kelas, komponen ini ditempatkan tepat di bawah kompartemen nama.
Atribut turunan dihitung dari atribut lain. Misalnya, usia siswa dapat dengan mudah dihitung dari tanggal lahirnya.
Atribut karakteristik
- Atribut umumnya ditulis bersama dengan faktor visibilitas.
- Publik, privat, dilindungi dan paket adalah empat visibilitas yang masing-masing dilambangkan dengan tanda +, -, #, atau ~.
- Visibilitas menggambarkan aksesibilitas atribut kelas.
- Atribut harus memiliki nama yang bermakna yang menjelaskan penggunaannya di kelas.
Hubungan
Ada tiga jenis hubungan dalam UML:
- Dependensi
- Generalisasi
- Asosiasi
Ketergantungan
Ketergantungan berarti hubungan antara dua atau lebih kelas di mana perubahan di satu kelas dapat memaksa perubahan di kelas lainnya. Namun, hal itu akan selalu membuat hubungan menjadi lebih lemah. Ketergantungan menunjukkan bahwa satu kelas bergantung pada yang lain.
Dalam contoh berikut, Student memiliki ketergantungan pada College
Generalisasi:
Generalisasi membantu menghubungkan subclass ke superclass-nya. Sebuah sub-kelas diwarisi dari superclass-nya. Hubungan generalisasi tidak dapat digunakan untuk model implementasi antarmuka. Diagram kelas memungkinkan pewarisan dari beberapa kelas super.
Dalam contoh ini, kelas Student digeneralisasikan dari Person Class.
Asosiasi:
Jenis hubungan ini merepresentasikan hubungan statis antara kelas A dan B. Misalnya; seorang karyawan bekerja untuk suatu organisasi.
Berikut beberapa aturan untuk Asosiasi:
- Asosiasi sebagian besar adalah kata kerja atau frase kata kerja atau kata benda atau frase kata benda.
- Ini harus dinamai untuk menunjukkan peran yang dimainkan oleh kelas yang dilampirkan di akhir jalur asosiasi.
- Wajib untuk asosiasi refleksif
Dalam contoh ini, ditunjukkan hubungan antara mahasiswa dan perguruan tinggi yang merupakan studi.
Beragam
Multiplisitas adalah faktor yang terkait dengan suatu atribut. Ini menentukan berapa banyak contoh atribut yang dibuat ketika kelas diinisialisasi. Jika multiplisitas tidak ditentukan, secara default satu dianggap sebagai multiplisitas default.
Misalkan ada 100 siswa dalam satu perguruan tinggi. Perguruan tinggi dapat memiliki banyak siswa.
Pengumpulan
Agregasi adalah jenis asosiasi khusus yang memodelkan hubungan seluruh bagian antara agregat dan bagian-bagiannya.
Misalnya, kelas perguruan tinggi terdiri dari satu siswa atau lebih. Dalam agregasi, kelas yang tertampung tidak pernah sepenuhnya bergantung pada siklus proses penampung. Di sini, kelas perguruan tinggi akan tetap ada meskipun siswa tidak ada.
Komposisi:
Komposisi adalah jenis agregasi khusus yang menunjukkan kepemilikan yang kuat antara dua kelas ketika satu kelas menjadi bagian dari kelas lain.
Misalnya, jika perguruan tinggi terdiri dari kelas-kelas pelajar. Perguruan tinggi dapat menampung banyak siswa, sedangkan setiap siswa hanya dimiliki satu perguruan tinggi. Jadi, jika perguruan tinggi tidak berfungsi semua siswa juga dikeluarkan.
Agregasi vs. Komposisi
Pengumpulan |
Komposisi |
Agregasi menunjukkan hubungan di mana anak dapat berada secara terpisah dari kelas induknya. Contoh: Mobil (Induk) dan Mobil (Anak). Jadi, Jika Anda menghapus Automobile, Mobil anak masih ada. |
Hubungan tampilan komposisi di mana anak tidak akan pernah ada, terlepas dari induknya. Contoh: Rumah (orang tua) dan Kamar (anak). Kamar tidak akan pernah terpisah menjadi sebuah rumah. |
Kelas Abstrak
Ini adalah kelas dengan prototipe operasi, tetapi bukan implementasinya. Dimungkinkan juga untuk memiliki kelas abstrak tanpa operasi yang dideklarasikan di dalamnya. Abstrak berguna untuk mengidentifikasi fungsionalitas di seluruh kelas. Mari kita pertimbangkan contoh kelas abstrak. Misalkan kita memiliki kelas abstrak yang disebut sebagai gerakan dengan metode atau operasi yang dideklarasikan di dalamnya. Metode yang dideklarasikan di dalam kelas abstrak disebut move () .
Metode kelas abstrak ini dapat digunakan oleh objek apa pun seperti mobil, hewan, robot, dll. Untuk mengubah posisi saat ini. Sangat efisien untuk menggunakan metode kelas abstrak ini dengan sebuah objek karena tidak ada implementasi yang disediakan untuk fungsi yang diberikan. Kita dapat menggunakannya dengan cara apa pun untuk banyak objek.
Dalam UML, kelas abstrak memiliki notasi yang sama dengan kelas. Satu-satunya perbedaan antara kelas dan kelas abstrak adalah bahwa nama kelas ditulis dengan huruf miring.
Kelas abstrak tidak dapat diinisialisasi atau dibuat instance-nya.
Dalam notasi kelas abstrak di atas, hanya ada satu metode abstrak yang dapat digunakan oleh banyak objek kelas.
Contoh Diagram Kelas UML
Membuat diagram kelas adalah proses yang mudah. Ini tidak melibatkan banyak hal teknis. Berikut ini contohnya:
Sistem ATM sangat sederhana karena pelanggan perlu menekan beberapa tombol untuk menerima uang tunai. Namun, ada beberapa lapisan keamanan yang harus dilewati oleh setiap sistem ATM. Ini membantu mencegah penipuan dan memberikan uang tunai atau detail kebutuhan kepada pelanggan perbankan.
Di bawah ini diberikan contoh Diagram Kelas UML:
Diagram Kelas dalam Siklus Hidup Pengembangan Perangkat Lunak
Diagram kelas dapat digunakan dalam berbagai fase pengembangan perangkat lunak. Ini membantu dalam memodelkan diagram kelas dalam tiga perspektif yang berbeda.
1. Perspektif konseptual: Diagram konseptual menggambarkan hal-hal di dunia nyata. Anda harus menggambar diagram yang mewakili konsep dalam domain yang diteliti. Konsep-konsep ini terkait dengan kelas dan selalu tidak bergantung pada bahasa.
2. Perspektif spesifikasi: Perspektif spesifikasi menggambarkan abstraksi perangkat lunak atau komponen dengan spesifikasi dan antarmuka. Namun, itu tidak memberikan komitmen apa pun untuk implementasi khusus.
3. Perspektif Implementasi: Diagram kelas jenis ini digunakan untuk implementasi dalam bahasa atau aplikasi tertentu. Perspektif implementasi, digunakan untuk implementasi perangkat lunak.
Praktik terbaik Mendesain Diagram Kelas
Diagram kelas adalah diagram UML terpenting yang digunakan untuk pengembangan aplikasi perangkat lunak. Ada banyak properti yang harus dipertimbangkan saat menggambar Diagram Kelas. Mereka mewakili berbagai aspek aplikasi perangkat lunak.
Berikut, beberapa poin yang harus diingat saat menggambar diagram kelas:
- Nama yang diberikan ke diagram kelas harus bermakna. Selain itu, harus menggambarkan aspek nyata dari sistem.
- Hubungan antara setiap elemen perlu diidentifikasi terlebih dahulu.
- Tanggung jawab setiap kelas perlu diidentifikasi.
- Untuk setiap kelas, jumlah minimum properti harus ditentukan. Oleh karena itu, properti yang tidak diinginkan dapat dengan mudah membuat diagram menjadi rumit.
- Catatan pengguna harus disertakan setiap kali Anda perlu menentukan beberapa aspek diagram. Di akhir gambar, harus bisa dimengerti oleh tim pengembang perangkat lunak.
- Terakhir, sebelum membuat versi final, diagram perlu digambar di atas kertas biasa. Selain itu, harus dikerjakan ulang hingga siap untuk pengajuan akhir.
Kesimpulan
- UML adalah bahasa standar untuk menentukan, merancang, dan memvisualisasikan artefak sistem perangkat lunak
- Kelas adalah cetak biru untuk suatu objek
- Diagram kelas menjelaskan jenis objek dalam sistem dan berbagai jenis hubungan yang ada di antara objek tersebut
- Ini memungkinkan analisis dan desain tampilan statis dari aplikasi perangkat lunak
- Diagram kelas adalah diagram UML terpenting yang digunakan untuk pengembangan aplikasi perangkat lunak
- Elemen penting dari diagram kelas UML adalah 1) Kelas 2) Atribut 3) Hubungan
- Diagram Kelas memberikan gambaran umum tentang bagaimana aplikasi disusun sebelum mempelajari kode yang sebenarnya. Ini tentu mengurangi waktu perawatan
- Diagram kelas berguna untuk memetakan bahasa pemrograman berorientasi objek seperti Java, C ++, Ruby, Python, dll.