Blogger

Rabu, 11 Desember 2013

Diagram Activity



Diagram Activity atau Activity Diagram adalah salah satu cara untuk memodelkan event-event yang terjadi dalam suatu use case. Activity diagram ini dapat digantikan dengan sejumlah teks, namun  penggunaan teks kadang sulit dipahami, terutama jika aliran-aliran event berbelit-belit dan memiliki banyak alternatif. Activity diagram digunakan untuk memodelkan aspek dinamis dari sistem. Activity diagram secara esensial mirip diagram alir (flowchart) dan memperlihatkan aliran kendali dari suatu aktifitas ke aktifitas lainnya.


Dalam pemodelan dinamis suatu sistem (dalam kebanyakan hal) terjadi langkah-langkah berurutan (sequential) serta konkuren dalam proses komputasi. Dengan Activity Diagram, kita juga memodelkan aliran-aliran dari objek pergerakannya dari suatu State ke State lainnya dalam suatu aliran kendali.

Activity Diagram memungkinkan :
Ø Menvisualisasikan
Ø Menspesifikasikan
Ø Mengkonstruksi
Ø Mendokumentasikan sifat dinamis dari sekumpulan objek
Ø Memodelkan aliran kendali dari suatu operasi.

ACTION DAN ACTIVITY State

Aliran kendali dalam Activity Diagram :
Ø Mengevaluasi beberapa ekpresi yang mengubah nilai suatu atribut
Ø Mengembalikan suatu nilai tertentu.

Action State merupakan State dari sistem dimana setiap State mencerminkan eksekusi dari suatu aksi.

Langkah – langkah dari Action State :
Ø Memanggil operasi yang terjadi pada sebuah objek
Ø Mengirim sinyal (signal) pada objek
Ø Sekedar menciptakan atau menghancurkan suatu objek.

State -> pada activity diagram -> aksi (ekpresi) yang terjadi pada suatu objek.

Action State -> ATOMIK :
Ø Tidak dapat didekomposisi lebih lanjut.
Ø Event – event yang mungkin terjadi.
Ø Pekerjaan suatu Action State tidak akan terinterupsi.
Ø Pekerjaan dari suatu Action State secara umum dipertimbangkan mengambil waktu eksekusi yang tidak signifikan dibandingkan waktu kerja sistem secara
Ø keseluruhan.

Activity Diagram  -> tidak bersifat ATOMIK :
Dapat diinterupsi.
Membutuhkan beberapa waktu dari perjalanan sistem/perangkat lunak untuk terselesaikan dengan tuntas.

Action State -> beberapa kasus khusus dari Activity State.

Activity State ->  komposit -> memiliki aliran kendali yang tersusun dari
Activity State serta Action State yang lain.
          Ø Ex : “memproses pesanan” -> acivity state

TRANSITION
Fungsi :
Ø Menspesifikasikan aksi atau aktifitas dari suatu state diselesaikan.
Ø Memperlihatkan lintasan dari satu aksi atau aktifitas ke aksi atau aktifitas berikutnya.

Transisi     semantik     pemicuan (fired atau trigger) :
Ø Karena control dilewatkan dengan segera setelah suatu pekerjaan diselesaikan.
Ø Setelah suatu state diselesaikan, kita dapat mengeksekusi aksi keluar (exit action) – jika ada.
Ø Selanjutnya dan tanpa penundaan, control mengikuti transisi dan dilewatkan ke aksi atau aktifitas berikutnya.

PERCABANGAN (BRANCHING)
Pada dasarnya transisi berurutan adalah umum, tapi transisi tidak selalu terjadi secara berurutan. Seperti dalam diagram alir (flowchart), kita juga dapat
melibatkan percabangan. Percabangan dilukiskan dalam bentuk jajaran genjang. Pada saat transisi berjalan, kita dapat menempatkan ekspresi boolean tertentu, yang dievaluasi sekali saat memasuki percabangan. Kalimat penentu (guard)         untuk menentukan cabang mana yang akan dimasuki.

FORKING DAN JOINING

Dalam UML kita menggunakan garis sinkronisasi untuk menspesifikasikan forking serta joining. Forking merupakan satu aliran yang pada tahap tertentu berubah menjadi beberapa aliran. Sedangkan Joining merupakan beberapa aliran sekaligus yang secara bersamaan masuk pada suatu titik. Garis sinkronisasi digambarkan dengan garis horisontal tebal.

PENGAPLIKASIAN FORKING DAN JOINING

Sebagai contoh, pertimbangkan aliran konkuren yang terlibat pada pengendalian peralatan audio-animatronic, yaitu peralatan  yang mencoba menirukan percakapan serta sikap manusia.
     Ø Forking memisahkan beberapa aliran konkuren dari satu aliran tunggal.
   Ø Join menggambarkan sinkronisasi dari dua atau lebih aliran kendali yang konkuren. Pada join sinkronisasi berarti aliran konkuren yang masuk saling menunggu satu sama lain, baru aliran menuju titik-titik selanjutnya.

0 komentar:

Posting Komentar