Uml Activity

25
 PEMODELAN SISTEM PERANGKAT LUNAK UML: ACTIVITY DIAGRAM Willy Sudiarto Raharjo Program Studi Teknik Informatika UKDW@2009

Transcript of Uml Activity

PEMODELAN SISTEM PERANGKAT LUNAK UML: ACTIVITY DIAGRAMWilly Sudiarto RaharjoProgram Studi Teknik Informatika UKDW@2009

Activity Diagram

Teknik untuk menjelaskan business process, procedural logic, dan work flow

Bisa dipakai untuk menjelaskan use case text dalam notasi grafis Mirip flow chart, meskipun ada perbedaan notasi

Mengalami banyak perubahan pada setiap versi UML, termasuk 1 ke 2

Versi 1: Dianggap sebagai kasus khusus dari state diagram, sehingga mempersulit orang dalam mendesain work flow

Activity Diagram

Nodes (initial dan final) Bisa lebih dari 1 final node Activity Flow/edge Fork Join Condition Decision Merge Partition

Bisa fisik/elektronik Arah sebuah proses Awal proses paralel Akhir proses paralel Bentuk [text] If ... then .... Salah satu flow harus masuk ke merge dahulu Who/what performing activities

Diawali dengan initial node Fill Order dan Send Invoice terjadi secara bersamaan

Urutan menjadi tidak relevan antara 2 proses tadi Digunakan untuk concurrent algorithm atau threads

Jika terdapat paralelism, diperlukan sinkronisasi

Order tidak akan ditutup sampai barang dikirim dan pembayaran diterima Digunakan operasi join

Diakhiri dengan activity final

Action States

Proses komputasi atau perubahan kondisi yang terjadi ditampilkan pada action state Bisa dianggap kasus khusus dari activity state Bisa berupa kata kerja atau ekspresi Bersifat atomik, tidak dapat didekomposisi

Activity Decomposition

Untuk menyederhanakan diagram, seringkali dilakukan dekomposisi aktivitas Contoh: Proses Pengiriman

SubActivity:DeliverOrder

Transitions

Ketika sebuah aktivitas atau state selesai, maka flow control berganti ke aktivitas atau state berikutnya Dinotasikan dengan garis lurus dan anak panah

Branching

Jalur alternatif sesuai dengan kondisi boolean Dinotasikan dengan diamond Boleh memiliki lebih dari 3 outgoing node Disetiap outgoing node, tambahkan boolean expression

Forking dan Joining

Fork mampu menggambarkan aktivitas yang mungkin terjadi secara concurrent Dinotasikan dengan garis vertikal/horizontal Setelah semua selesai, harus di join kembali

Partitions

Activity Diagram mampu menjelaskan apa yang terjadi, tetapi tidak mampu memberikan informasi siapa melakukan apa Untuk bisa melihat siapa yang bertugas melakukan sebuah proses, activity diagram bisa dipartisi Pada UML 1, partisi hanya bisa dilakukan secara satu dimensi (swim lane atau nodebased), sedangkan untuk UML 2, partisi bisa dilakukan grid dua dimensi

Swim lane

Node Based

Object Flow

Seringkali obyek terlibat dalam flow control State dari sebuah obyek disebutkan diantara kurung kurawal Transisi object flow digambarkan dalam garis putus-putus

Signal

Tanda untuk memulai sebuah aktivitas tidak harus melalui pemanggilan fungsi, tetapi juga bisa melalui sinyal, misalnya sinyal waktu atau kejadian lain yang bisa menjadi trigger

Flow dan Edge

UML 2 menggunakan istilah flow dan edge untuk menjelaskan hubungan antara 2 aktivitas Terdapat 4 cara penggambaran

Pins dan Transformasi

Seringkali sebuah aktivitas memerlukan parameter, seperti pada fungsi Jika ingin ditampilkan, bisa menggunakan pin Transformasi digunakan untuk konversi input parameter dan output parameter

Join Specification

Untuk memastikan bahwa dua atau lebih proses sudah selesai sebelum melanjutkan ke proses selanjutnya, digunakan join specification Notasinya adalah semacam pipa

Kapan Menggunakan Activity Diagram

Activity Diagram cocok untuk menggambarkan aktivitas yang terjadi secara parallel

Parallel algorithm Concurrent program Memodelkan workflow

Activity Diagram dipakai dalam 2 cara

Fokus pada aktivitas seperti yang dilihat oleh aktor pada use case diagram Mirip cara kerja flowchart untuk memperjelas use case text

Memodelkan operasi

Contoh Workflow

Reading

http://www.agilemodeling.com/style/activityDiag ram.htm http://www.agilemodeling.com/artifacts/activityD iagram.htm http://www.jot.fm/issues/issue_2003_07/column 3/

Next Class

UML: Class Diagram Pelajari Object Oriented Programming

Latihan

Buatlah activity diagram dari proses penerimaan mahasiswa baru Studi kasus: UKDW