10- Collaboration Diagram
Sama halnya dengan sequence diagram, collaboration diagram menujukkan hubungan antar objek-objek. Hunbungan objek-objek ini ditunjukkan dengan memperlihatkan pengiriman message dari suatu objek ke objek yang lain. Sequence diagram dan collaboration diagram mempunyai tipe yang sama, yakni merepresentasikan informasi yang sama, dan sequence diagram dapat ditransformasikan ke collaboration diagram atau sebaliknya. Dalam sequence diagram lebih menekankan pada urutan-urutan waktu proses atau interaksi antar objek-objek. Collaboration diagram lebih menekankan pada konteks dan keseluruhan objek-objek yang berinteraksi. Dengan demikian, sequence diagram direpresentasikan menurut urutan waktu, collaboration diagram menurut ruang.
Collaboration diagram merupakan perluasan dari diagram objek, yaitu memberikan tambahan assosiasi antar objek, collaboration diagram menunjukkan objek mengirimkan message ke objek-objek yang lain.
Untuk mereprensentasikan suatu message, digambarkan dengan suatu garis berarah dari suatu objek ke objek yang lain. Label yang dekat garis berarah menunjukkan apa message yang dikirimkan objek pengirim dan yang diterima objek penerima. Message ini biasanya menyatakan objek penerima mengeksekusi suatu operasi. Vissualisasi dari message dibagi atas tiga bagian seperti yang dimiliki oleh sequence diagram.
Gambar 10.1 Simbol Collaboration diagram
Dalam collaboration diagram untuk merepresentasikan urutan-urutan proses dilakukan dengan cara pemberian nomor pada label setiap message, dimana nomor tersebut berhubungan dengan urutan waktu proses, seperti yang ditunjukkan pada gambar 10.1.
Contoh Visualisasi Collaboration Diagram
Gambar 10.2 use case DisplayAlphanumeric
Gambar 10.3 Collaboration diagram GUI
Misalkan user menekan sembarang tombol huruf pada keyboard, dimana yang menggunakan suatu aplikasi word processor. Langkah-langkah pengolahan kata yang ditekan user didalam menampilkan ke user dengan cara berikut :
- GUI me-request sistem operasi dalam menangani tombol yang ditekan
- Sistem operasi meminta CPU untuk mengolah huruf yang bersesuaian
- Siatem oprasi melakukan peng-update-an pada GUI user
- CPU meminta Video card untuk dapat memvisualisasikannya
- Video card mengirimkan message ke Monitor untuk ditampilkan
- Monitor manampilkan huruf yang diketik user.
Maka Collaboration diagramnya dapat diperlihatikan seperti yang ditunjukkan pada gambar 10.3
Sekenario pembelian soda adalah sebagai berikut :
- Pembeli memasukkan uang kedalam aplikasi MM dari port yang telah disediakan dalam Front MM
- Pembeli melakukan pemilihan jenis barang
- Uang dikirimkan ke Register untuk dihitung jumlah uang yang dimasukkan
- Register mencek untuk melihat barang yang dipilih ada pada Dispenser
- Asumsikan bahwa barang ada pada stok dan register mengupdate uang yang dimasukkan pembeli
- Register memintak Dispenser untuk mengeluarkan barang yang dipilih pembeli.
Gambar 10.4 Use case BuyController
Maka Collaboration diagramnya dapat diperlihatikan seperti yang ditunjukkan pada gambar 10.5
Gambar 10.5 Collaboration diagram BuyController
Untuk merepresentasikan kondisi “if” di dalam collaboration diagram dinyatakan dengan menambahkan message-label yang diberi nomor terhadap message-label. Misalkan dalam pembelian suatu jenis barang tertentu aplikasi akan selalu mencek jumlah uang yang dimasukkan dengan dengan jenis barang yang dipilih customer, maka dalam hal ini aplikasi menggunakan kondisi pengecekan “if”, maka collaboration diagram dapat dinyatakan seperti yang ditunjukkan pada gambar 10.6.
Gambar 10.6 Collaboration diagram BuyController
Untuk membuat collaboration diagram dimana saat message yang dikirimkan ke suatu objek diperuntukkan untuk menciptakan suatu objek baru dinyatakan dengan label “create”.
Misalkan suatu konsultan akan membuat suatu file proposal dengan urutan-urutan sebagai berikut :
- konsultan mencari file proposal, yang bersesuaian untuk digunakan kembali, dari pusat repository.
- jika konsultan menemukan file proposal yang dimaksud, buka file tersebut. Konsultan menyimpan file tersebut dengan nama yang berbeda sebagai file proposal baru.
- jika konsultan tidak menemukan file proposal, buat proposal baru dengan mencipatakan file baru.
- selama mengerjakan isi proposal, konsultan menggunakan aplikasi office.
- simpan proposal yang telah dikerjakan pada pusat repository.
Gambar 10.7 Collaboration diagram penciptaan file proposal
Untuk visualisasi dari suatu objek yang mengirimkan suatu message ke beberapa objek yang sama dilakukan dengan segi empat bersarang “back-ward” dan menambahkan tanda arterisk (*) untuk menunjukkan bahwa message tersebut adalah message ke semua objek, seperti yang ditunjukkan pada gambar 10.8.
Gambar 10.8 suatu objek menggirimkan message pada beberapa objek dalam urutan tertentu.
Untuk visualisasi pengembalian nilai direpresentasikan dengan atribut nilai yang dikembalikan disebelah kiri dan diikuti oleh tanda “:=” kemudian nama operasi yang akan menghasilkan nilai yang dimaksud. Contoh, untuk mengekspresikan totalPrice := compute(itemPrice, salesTax) dinyatakan seperti pada gambar 10.9.
Gambar 10.9 Collaboration diagram dengan pengembalian nilai
Untuk merepresentasikan suatu objek yang dapat mengirimkan message dari suatu objek ke beberapa objek secara bersamaan dan objek objek-objek tersebut dapat melakukan operasinya masing-masing secara bersamaan atau yang disebut dengan concurrency, dapat direpresentasikan dengan kotak segi empat tembal. Contoh, suatu sensor gedung saat menangkat suatu event asap maka objek sensor akan mengirimkan message ke objek Telepon untuk melakukan dealing ke nomor pemadam kebakaran dan juga megirimkan message ke objek alarm untuk membangkitkan bunyi alarm, seperti yang ditunjukkan pada gambar 10.10.
Gambar 10.10 Collaboration diagram dalam visualisasi concurrency
Tidak ada komentar:
Posting Komentar