Modul 5 Activity Diagram
Modul 5 Activity Diagram
ACTIVITY DIAGRAM
Activity Diagram adalah bagian penting dari UML yang menggambarkan aspek dinamis
dari sistem. Logika prosedural, proses bisnis dan aliran kerja suatu bisnis bisa dengan mudah
dideskripsikan dalam activity diagram. Activity diagram mempunyai peran seperti halnya
flowchart, akan tetapi perbedaannya dengan flowchart adalah activity diagram bisa mendukung
perilaku paralel sedangkan flowchart tidak bisa.
5.2. SIMBOLOGI
Berikut adalah simbol-simbol yang sering digunakan pada saat pembuatan activity
diagram.
Simbol Keterangan
Titik awal
Titik Akhir
Activity
Pilihan untuk pengambilan keputusan
Tanda waktu
Tanda pengiriman
Tanda penerimaan
Biasanya activity diagram digambarkan dari level tinggi sehingga memberikan gambaran
level tingkat tinggi dari sistem. Level tinggi ini biasanya digunakan oleh pengguna bisnis atau
orang-orang non teknis. Bentuk lebih rinci dari pemodelan ini adalah pemodelan kebutuhan bisnis.
Dampaknya diagram ini akan lebih berdampak kepada pemahaman bisnis dibanding untuk
implementasi sistem.
Sebelum menggambarkan sebuah activity diagram, perlu adanya pemahaman yang jelas
tentang elemen yang akan digunakan di activity diagram. Elemen utama dalam activity diagram
adalah aktifitas itu sendiri. Aktifitas adalah fungsi yang dilakukan oleh sistem. Setelah aktifitas
teridentifikasi, selanjutnya yang perlu diketahui adalah bagaimana semua elemen tersebut
berasosiasi dengan constraint dan kondisi.
Langkah selanjutnya perlu penjabaran tata letak dari keseluruhan aliran agar bisa
ditransformasikan ke activity diagram. Contoh sederhana activity diagram bisa dilihat pada
gambar 5. Gambar tersebut menjelaskan tentang aliran saat proses penerimaan order.
Kondisi paralel jelas membutuhkan sinkronisasi. Pada kasus diatas, order tidak akan
ditutup sampai barang dikirim dan dibayar. Untuk menunjukkan hal tersebut bisa digunakan join
sebelum action close order. Dengan join, aliran keluar hanya akan dilakukan jika aliran kedatangan
sampai ke join. Dengan demikian order hanya bisa ditutup jika pembayaran sudah dilakukan dan
pengiriman sudah dilakukan.
Node pada activity diagram disebut dengan action bukan activity. Activity menunjuk ke
urutan action, sehingga diagram tersebut menunjukkan activity yang membangun action.
Perilaku bersyarat ditunjukkan dengan decision dan merge decision hanya mempunyai satu
aliran masuk dan beberapa guard untuk aliran keluar. Setiap aliran keluar mempunyai sebuah
quard yaitu boolean yang ditempatkan pada kurung kotak. Setiap kali mencapai decision hanya
bisa mengambil satu keputusan, sehingga guard harus mutually exclusive. Penggunaan [else]
sebagai guard menunjukkan bahwa guard yang lain adalah salah.
Dari gambar 5 juga terlihat bahwa setelah order diisi, ada sebuah decision. Pada saat
pesanan lagi sibuk maka perlu pengiriman hingga larut malam jika tidak pengiriman secara regular
tidak mencukupi.
Sebuah merge mempunyai banyak input dan satu output. Merge menandai akhir perilaku
bersyarat yang dimulai dengan decision.
5.6. PARTITION
Activity diagram menunjukkan apa yang terjadi, tetapi tidak menunjukkan siapa yang
melakukan apa. Dalam pemrograman hal tersebut tidak menunjukkan class mana yang
bertanggungjawab atas setiap action. Pada pemodelan proses bisnis, hal tersebut tidak bisa
menunjukkan organisasi mana yang menjalankan sebuah action. Hal tersebut sebenarnya tidaklah
terlalu penting, karena biasanya orang lebih berkonsentrasi pada apa yang sudah dilakukan
daripada apa / siapa melakukan apa.
Jika diinginkan, activity diagram bisa dibagi dalam partision untuk menunjukkan siapa
melakukan apa. Pada UML versi 1 hal ini disebut Swim Lane. Gambar 5.3 adalah contoh
penerapan partition pada kasus diatas.
Gambar 5. 3. Contoh Penerapan Partition
5.7. SIGNAL
Signal terjadi karena urutan waktu. Contoh pemakaian signal bisa dilihat pada akhir bulan
periode keuangan.
Sebuah signal menunjukkan bahwa sebuah activity menerima sebuah event dari proses
luar. Ini menunjukkan bahwa activity tersebut secara tetap mendengar signal tersebut dan diagram
mendefinisikan bagaimana activity beraksi. Gambar 5.4 adalah contoh pengiriman dan penerimaan
signal
Ada empat cara yang bisa digunakan untuk menghubungkan 2 action. Keempat cara
tersebut bisa dilihat pada Gambar 5.5.
PIN tidak harus ditampilkan pada activity diagram. PIN perlu dimunculkan jika perlu
melihat ke data dan menghasilkan bermacam-macam action. Pada pemodelan proses bisnis PIN
bisa digunakan untuk menunjukkan sumber daya yang dihasilkan dan dipakai oleh action.
Gambar 5.6. Transformasi
Gambar 5.7 menunjukkan action pemilihan topic men-generate sekumpulan topic sebagai
output. Setiap elemen pada daftar isi menjadi masukan saat action penulisan artikel. Hal yang sama
berlaku setiap kali action men-generate sebuah artikel yang ditambahkan kedaftar output dari
expansion region. Ketika semua input pada expansion region sudah muncul pada daftar output,
region men-generate daftar yang akan publikasikan ke koran.
Pada kasus ini, daftar output adalah sama dengan daftar input kecuali pada kasus expansion
region berperan sebagai filter, maka daftar output akan mempunyai item lebih sedikit.
Pada gambar 5.7 semua artikel dapat ditulis dan direview secara parallel dimana hal
tersebut ditandai dengan keyword «concurrent». Expansion region bisa juga dalam bentuk iteratif
dimana setiap elemen input harus diproses pada suatu waktu. Akan tetapi jika hanya dibutuhkan
satu action untuk mewakili beberapa action, maka perlu penyingkatan seperti pada gambar 5.8.
Gambar tersebut mengasumsikan concurrent expansion sebagai hal yang sangat lazim.
Choose Topics
expansion region
keyword
List of topic
<<concurrent>>
Publish
Write Article Review Article Newletter
List of topic
<<concurrent>>
[accept] Publish
[reject] Newletter
flow final