UML Diagram
- Use Case Diagram – Untuk menggambarkan fungsionalitas sistem dan interaksi dengan aktor.
- Class Diagram – Untuk menggambarkan struktur statis sistem, termasuk kelas, atribut, dan relasi.
- Sequence Diagram – Untuk menggambarkan urutan pesan antara objek dalam waktu.
- State Diagram – Untuk menggambarkan perubahan status objek.
- Activity Diagram – Untuk menggambarkan alur aktivitas dalam proses.
- Component Diagram – Untuk menggambarkan struktur perangkat lunak pada level komponen.
- Deployment Diagram – Untuk menggambarkan distribusi perangkat lunak di perangkat keras.
Praktik Baik dalam Menggunakan UML:
- Mulai dengan Use Case: Mengidentifikasi kebutuhan fungsional adalah langkah pertama yang baik, karena ini memberikan gambaran tingkat tinggi tentang bagaimana sistem harus berfungsi.
- Iterasi dan Refinement: UML harus digunakan secara iteratif. Anda mungkin perlu memperbarui diagram saat proyek berkembang.
- Keterlibatan Stakeholder: Gunakan UML sebagai alat komunikasi antara tim pengembang dan stakeholder non-teknis untuk memastikan bahwa semua pihak memahami bagaimana sistem akan bekerja.
Berikut adalah langkah-langkah umum untuk mengembangkan perangkat lunak dengan menggunakan UML:
1. Identifikasi Kebutuhan Sistem (Requirement Analysis)
- Tujuan: Memahami apa yang diinginkan oleh pengguna akhir dan stakeholder.
- UML yang digunakan:
- Use Case Diagram: Membantu menggambarkan interaksi antara pengguna (aktor) dan sistem. Ini memberikan gambaran tentang fungsionalitas yang harus disediakan sistem.
- Activity Diagram: Menggambarkan alur kerja atau proses bisnis yang lebih detail untuk setiap use case.
Contoh: Jika Anda membuat aplikasi perbankan, use case-nya bisa mencakup “Menarik uang” atau “Melihat saldo”.
2. Desain Sistem (System Design)
- Tujuan: Mengonseptualisasikan bagaimana sistem akan dibangun.
- UML yang digunakan:
- Class Diagram: Menunjukkan struktur sistem dengan menggambarkan kelas-kelas utama, atribut, metode, dan relasi antar kelas (seperti asosiasi, pewarisan, dan agregasi).
- Component Diagram: Menyediakan gambaran tentang bagaimana perangkat lunak dibagi menjadi komponen-komponen fungsional dan bagaimana mereka saling berinteraksi.
- Deployment Diagram: Menunjukkan bagaimana perangkat lunak akan dideploy pada perangkat keras atau server, serta hubungan antara node perangkat keras.
Contoh: Di aplikasi perbankan, diagram kelas bisa mencakup kelas-kelas seperti Account
, Transaction
, dan Customer
.
3. Rancang Interaksi Sistem (Interaction Design)
- Tujuan: Mendesain bagaimana berbagai komponen sistem saling berinteraksi satu sama lain.
- UML yang digunakan:
- Sequence Diagram: Menggambarkan urutan pesan atau interaksi antara objek dalam sistem berdasarkan waktu.
- Communication Diagram: Fokus pada interaksi antara objek, tetapi lebih berfokus pada hubungan antar objek daripada urutan pesan.
Contoh: Sequence diagram untuk proses "Melakukan Transfer Uang" dapat menggambarkan bagaimana objek Account
berinteraksi dengan objek Transaction
dan sistem lain untuk menyelesaikan transaksi.
4. Rancang Perilaku Sistem (Behavioral Design)
- Tujuan: Mendesain bagaimana sistem merespons peristiwa dan bagaimana objek bergerak melalui status yang berbeda.
- UML yang digunakan:
- State Diagram: Menunjukkan perubahan status objek selama siklus hidupnya.
- Activity Diagram: Dapat digunakan untuk menggambarkan alur aktivitas dalam proses bisnis yang lebih besar.
Contoh: State diagram untuk kelas Account
dapat menunjukkan perubahan status akun, seperti “Active”, “Frozen”, dan “Closed” setelah transaksi tertentu.
5. Implementasi Sistem
- Tujuan: Mengimplementasikan kode sesuai dengan desain yang telah dibuat.
- UML yang digunakan:
- Pada tahap ini, UML lebih berfungsi sebagai panduan, tetapi beberapa diagram seperti Class Diagram dan Sequence Diagram dapat digunakan sebagai referensi dalam mengimplementasikan kode.
6. Pengujian dan Verifikasi (Testing and Validation)
- Tujuan: Menguji apakah sistem berfungsi sesuai dengan spesifikasi yang telah ditentukan.
- UML yang digunakan:
- Activity Diagram dan Sequence Diagram dapat digunakan untuk memverifikasi alur proses atau interaksi sistem yang diinginkan.
7. Pemeliharaan Sistem (Maintenance)
- Tujuan: Melakukan perbaikan atau pembaruan terhadap perangkat lunak setelah sistem diluncurkan.
- UML yang digunakan:
- Selama tahap pemeliharaan, diagram seperti Class Diagram dan Activity Diagram bisa diperbarui untuk mencerminkan perubahan yang telah dilakukan pada sistem.