Pengantar State Chart Diagram Dalam Analisa & Desain Sistem Informasi

Contoh state chart diagram
Beberapa class dalam diagram class mewakili satu set object-object yang dinamis karena object-object tersebut melewati berbagai macam state selama keberadaannya. Sebagai contoh, seorang pasien dapat mengalami perubahan state dari waktu ke waktu misalnya dari state pasien baru menjadi pasien saat ini (pasien aktif saat ini) kemudian berubah menjadi pasien lama berdasarkan statusnya pada catatan klinik praktik dokter. State chart diagram ini adalah model dinamis yang menunjukkan keadaan (state) yang berubah-ubah yang dilalui suatu object selama hidupnya dalam merespon events. Biasanya, state ini tidak diterapkan untuk semua object; alih-alih, hanya digunakan pada object yang kompleks untuk lebih mendefinisikan (memperjelas) object-object tersebut dan untuk membantu menyederhanakan desain algoritma object-object tersebut. State chart diagram menunjukkan berbagai state suatu object dan events apa yang menyebabkan object berubah dari satu state (kondisi) ke state (kondisi) lainnya. State chart diagram digunakan untuk membantu memahami aspek dinamis dari satu class dan bagaimana instans-nya berevolusi dari waktu ke waktu.

Di bagian ini, kita membahas tentang states (keadaan), events (peristiwa), transitions (transisi), actions (tindakan), dan activities (aktivitas). Kita juga akan membahas bagaimana state chart diagram memodelkan perubahan state yang dilalui object yang kompleks. Seperti halnya dengan diagram interaksi, ketika kita membuat state chart diagram untuk suatu object, akan selalu ada kemungkinan bahwa kita akan mengungkap events tambahan yang perlu dimasukkan ke dalam model fungsional (misalnya dalam use case) dan operasi tambahan yang perlu dimasukkan dalam model struktural (misalnya operasi dalam diagram class), sehingga diagram interaksi kita mungkin harus di-update lagi. Karena pengembangan berorientasi object bersifat iteratif dan inkremental, maka modifikasi/update yang berkelanjutan dari model yang selalu berevolusi (entah model fungsional, struktural, dan behavioral) dari sistem sangatlah mungkin terjadi.

States (Keadaan)

States (keadaan) suatu object didefinisikan oleh nilai dari atributnya pada suatu titik waktu tertentu. Sebagai contoh, seorang pasien mungkin memiliki state sebagai pasien baru, pasien saat ini, atau pasien lama. Atribut atau properti dari suatu object mempengaruhi state di mana ia berada; Namun, tidak berarti semua atribut atau perubahan atribut akan membuat perbedaan yang signifikan. Misalnya, kita coba pertimbangkan tentang atribut alamat pasien. Atribut seperti ini tidak akan membuat perubahan signifikan pada state seorang pasien. Namun, jika state didasarkan pada lokasi geografis pasien (mis., pasien dalam kota akan mendapatkan treatment yang berbeda dibanding pasien luar kota), maka perubahan pada alamat pasien akan signifikan mempengaruhi perubahan state.

Events (Peristiwa)

Suatu event (peristiwa) adalah sesuatu yang terjadi pada titik waktu tertentu dan mengubah nilai suatu object, yang berarti, mengubah state suatu object. Ini bisa berupa kondisi (misalnya if...then) yang berubah menjadi true, atau bisa juga pemanggilan suatu method oleh suatu object, atau berlalunya periode waktu tertentu yang ditentukan. State suatu object akan menentukan dengan tepat apa yang akan menjadi respons berikutnya.

Transitions (Transisi)

Transitions (Transisi) adalah hubungan yang mewakili perubahan suatu object dari satu state ke state lainnya. Beberapa transisi memiliki suatu kondisi penjaga (guard condition misalnya if....). Kondisi penjaga adalah ekspresi Boolean yang menyertakan nilai atribut, yang memungkinkan transisi terjadi hanya jika kondisinya bernilai true. Suatu object biasanya bergerak dari satu state ke state lain berdasarkan pada hasil dari suatu tindakan yang dipicu oleh suatu peristiwa.

Actions (Tindakan)

Suatu tindakan adalah proses atomik yang tidak dapat di-dekomposi (diurai) lagi dan yang tidak dapat diinterupsi. Dari perspektif praktis, tindakan tidak akan memakan waktu (~0 detik), dan tindakan sangat terkait dengan suatu transisi.

Activities (Aktivitas)

Sebaliknya, suatu aktivitas adalah proses non-atomik yang dapat di-dekomposisi (diurai) dan yang dapat di-interupsi. Aktivitas membutuhkan waktu yang lama untuk diselesaikan, dan aktivitas dapat dimulai dan dihentikan oleh suatu tindakan.

No comments:

Post a Comment