Dokumen tersebut membahas mengenai diagram interaksi yang terdiri atas diagram urutan (sequence diagram) dan diagram kolaborasi (collaboration diagram). Diagram urutan menjelaskan interaksi antar obyek yang saling berkolaborasi dengan menggambarkan aliran data dan perilaku yang dikirimkan dan diterima. Sedangkan diagram kolaborasi menekankan organisasi struktural obyek-obyek yang saling mengirim dan menerima pesan.
3. INTRODUCTION
• Use case: menjelaskan fungsionalitas sistem
• Activity diagram: menjelaskan bagaimana sistem
akan menyelesaikan tugasnya (business process)
• Class diagram: menggambarkan bagian-bagian
pembentuk struktur sistem
• Masih diperlukan 1 diagram untuk memodelkan sistem
yang terdiri dari kumpulan obyek yang saling
berhubungan :
Sequence Diagram
5. Sequence Diagram
• Bagian dari Interactions Diagram
Menjelaskan interaksi obyek-obyek yang
saling berkolaborasi (berhubungan
• Mirip dengan activity diagram
* Menggambarkan alur kejadian sebuah aktivitas
* Lebih detail dalam menggambarkan aliran data,
termasuk data atau behaviour yang dikirimkan/diterima
* Namun kurang mampu menjelaskan detail dari
sebuah algoritma (loop, branching)
6. Istilah pada Sequence Diagram
Participant
* Obyek yang terkait dengan sebuah urutan proses
* Pada UML 2, participant dipakai agar lebih umum
Lifeline
* Menggambarkan daur hidup sebuah obyek
Activation
* Suatu titik waktu dimana sebuah obyek mulai
berpartisipasi didalam sebuah sequence
* Ditandai dengan sebuah bar
7. Time
* Elemen penting dalam sequence diagram
* Konteksnya adalah urutan, bukan durasi
Return
* Suatu hasil kembalian sebuah operasi
* Operasi mengembalikan hasil, tetapi boleh tidak
ditulis jika tidak ada perbedaan dengan Getternya
- GetQuantity() mengembalikan Quantity
8. Jenis Sequence Diagram
Centralized Control
* Satu participant melakukan semua pemprosesan
* Participant lain hanya menyediakan data
* Lebih sederhana (pemrosesan terpusat)
* Kurang fleksibel,
- Untuk perhitungan setiap barang harus menggunakan
conditional logic (if else)
- Tidak memanfaatkan konsep polymorphism
9. Distributed Control
* Pemrosesan dipecah pada beberapa participant
* Lokalisasi efek perubahan
* Mampu menawarkan polymorphism
- Buat sub class dari product untuk menangani harga yang
bisa berbeda-beda
- Lihat contoh script
10. Studi Kasus
• Kita mendapatkan sebuah order
• Menghitung total harga yang harus dibayarkan
- Melihat setiap barang yang dibeli pada order
- Menentukan harga masing-masing barang
• Sistem mampu menentukan harga potongan berdasar
kan jenis pelanggan
• Obyek-obyek yang berhubungan?
- order
- order line
- Product
- Customer
29. Collaboration Diagram
- Bersifat dinamis
- Diagram interaksi yang menekankan
organisasi struktural dari objek-objek yang
menerima serta mengirim pesan