State Chart diagram

5

Click here to load reader

description

State Chart diagram

Transcript of State Chart diagram

Page 1: State Chart diagram

Statechart Diagram adalah teknik yang umum digunakan untuk menggambarkan behaviour

sebuah sistem. Hal ini digunakan untuk membantu analis, perancang dan pengembang untuk

memahami perilaku obyek pada sistem.

Statechart Diagram atau State Machine Diagram adalah Untuk memodelkan behavior/methode

(lifecycle) sebuah kelas atau object dan memperlihatkan urutan kejadian sesaat (state) yang dilalui

sebuah object,transisi dari sebuah state ke state lainnya

A. Simbol

Simbol UML untuk state chart diagram adalah segiempat yang tiap pojoknya dibuat rounded.

Titik awalnya menggunakan lingkaran solid yang diarsir dan diakhiri dengan mata. UML juga

memberi pilihan untuk menambahkan detil ke dalam simbol tersebut dengan membagi 3 area

yaitu nama state, variabel dan aktivitas. State variabel seperti timer dan counter yang

kadangkala sangat membantu.

Activity terdiri atas events dan action, tiga hal yang sering digunakan dalam activity adalah:

1. Entry = Apa yang terjadi ketika sistem masuk ke state

2. Exit = Apa yang terjadi ketika sistem meninggalkan state

3. Do = Apa yang terjadi ketika sistem ada di state

B. State, Event, Transition

Statechart diagram menampilkan state-state yang mungkin dari sebuah obyek, event yang bisa

dideteksi dan respon atas eventevent tersebut. Secara umum, pendeteksian sebuah event dapat

menyebabkan sebuah obyek bergerak dari satu state ke state yang lain yang disebut dengan

transition. Contoh :

Label pada transisi memiliki dua bagian yang dipisahkan dengan garis miring. Yang pertama

adalah nama dari peristiwa yang memicu transisi. Yang kedua adalah nama dari suatu tindakan

yang akan dilakukan setelah transisi telah dipicu. Properties dari Gambar Diagram sebuah PINTU

PUTAR di atas adalah sebagai berikut:

Jika pintu putar dalam keadaan terkunci, dan Coin dimasukkan, maka transisi pintu putar

keUnlocked state, dan tindakan Aktifkan dilakukan.

Jika pintu putar dalam keadaan unlocked, setelah berhasi dibuka, maka transisi pintu putar ke

Lock state, dan tindakan Lock dilakukan.

Page 2: State Chart diagram

Sebuah Statechart Diagram atau State Machine Diagram mempunyai :

a. State (kejadian sesaat) are represented by the values of attributes of an object

b. State digambarkan dengan bentuk Data Kosong

c. “Black Hole” states is state has transition into it but none out

d. Miracle states is state has transition out of it but none

e. Initial state / creation state dengantanda untuk memulai sebuah state diagram ( in western

culture people read from left to right, top to bottom, starting in the top – left corner)

Composite States

Kumpulan dari beberapa state yang yang setidaknya dalam sebuah region

Orthogonal State, jenis composite state yanglebih dari satu region

Submachine State

Sejenis composite state yang isinya didefinisikan oleh state machine lain.

State machine yang berisi submachine state disebut “containing state machine.

Sebuah state yang dihubungkan dengan machine lainnya.

Dihubungkan ke satu / lebih entry point dan satu / lebih exit point

Digunakan untuk mendukung konsep encapsulation

Sebuah state tidak boleh mempunyai region dan submachine secara bersamaan

Nama state mempunyai sintaks

Nama submachine state : referenced state machine

Sub states

Sebuah state yang ada dalam sebuah region

Direct substate, sub state yang tidak berisi state lain

Indirect substate, sub state yang berisi state lain

Region ( kelompok state )

Dipisahkan dengan garis terputus, yang setiap region boleh mempunyai nama yang optional

Sebuah state tidak boleh mempunyai region dan sub machine secarah bersamaan

Page 3: State Chart diagram

Transition

Digambarkan dengan tanda anak panah

Progressions from one states to another, will be triggered by an event

Transition adalah hasil dari methode yang menyebabkan perubahan state, walaupun tidak

semua methode menyebabkan perubahan state

Label on transition is in the format event [guard][/methode list()]

Event bisa dituliskan dengan past tense

Event menyebabkan sebuah object berpindah dari satu state ke state lain

Guard, condition that nust be true for the transition to be tiggered

Guard harus konsisten dan tidak overlap

Guard harus lengkap logikanya

Methode dijalankan. Ketika object memasuki state diindikasikan dengan methode bernama

entry() dan ketika object keluar state diindikasikan dengan methode bernama exit()

Methode menyebabkan perubahan disebuah state, bisa juga tidak

Join, menggabungkan beberapa transition menjadi sebuah transition

Fork, memecah sebuah transition menjadi beberapa transition yang berkondisi AND

(transition harus dilewati semuanya).

Junction

Menggabungkan sebuah / beberapa trasition dan memecahnya menjadi sebuah / beberapa

trasition yang berkondisi AND ( transition harus dilewati semuanya ). Dimungkinkan transition

ke sebuah state yang berisi beberapa state yang disebut state list

Choice

Mengkondisikan sebuah transition menjadi sebuah / beberapa transition, yang hanya dipilih

salah satu transition ( choice ).

Digunakan lambang diamond

Operand dapat diletakkan di dalam diamond atau pada transition

Entry point

Dilambangkan sebuah lingkaran kecil yang ditaruh pada pinggiran state ( bisa di dalam bisa

juga di luar ), dan berguna sebagai sub machine state.

Exit point

Dilambangkan sebuah lingkaran kecil bersilang yang ditaruh pada pinggiran state ( bisa juga

di dalam atau di luar ), dan berguna sebagai submachine state.

Page 4: State Chart diagram

Statechart Diagram atau State Machine Diagram ada 2 jenis

a. Behavioral State machines

Merupakan Statechart Diagram atau State Machine Diagram umumnya

Digunakan untuk mendefinisikan perilaku sebuah object

b. Protocol State Machine

Digunakan untuk penggunaan protocol pada sebuah system

Dapat didefinisikan ke spesifik Protocol State Machine atau Behavioral State Machines

Didefinisikan sebagai diagram context ( global overview )

Notasi yang digunakan sama dengan Behavioral State Machines dengan penambahan kata

( protocol )

Tidak adanya internal activity seperti entry, exit, do

Transition pada Protocol State Machine harus menggunakan Protocol Transition

Protocol Transition

Sintaks : [pre condition] event / [post condition].

Precondition atau postcondition adalah guard ( Guard is condition that must be true for the

transition to be triggered ).

Precondition, kondisi sebelum transition

Postcondition, kondisi setelah transition

C. Dependencies

Dimodelkan dengan garis terputus dengan panah terbuka

Gambarkan dependencies dari kiri ke kanan

D. Inheritance

Inheriting / child component diletakkan di bawah parent component, dengan arah panah

menuju ke parent component

Dimodelkan dengan garis dengan panah tertutup

E. Interface Component Diagram

Interface adalah kumpulan > =1 methode dan > = 0 attribute yang dapat dipakai pada class

tanpa menjadi behavior suatu class.

Jenis interface ada 2 macam yaitu :

Provide, digambarkan dengan bentuk lollipop pada UML 1. * bisa juga digambarkan

dengan garis terputus dengan panah tertutup

Required, digambarkan dengan bentuk socket

Penggambaran interfaces dapat juga dilakukkan dengan menambah bagian.

F. Port

Adalah bentuk object yang menjelaskan interaksi antara object dan lingkungannya.

Digambarkan sebagai kotak kecil di pinggiran component

Assembly connector penghubung antara 2 atau lebih component dimana sebuah atau

beberapa component provides interfaces dan component lain required interfaces.

Page 5: State Chart diagram

DAFTAR PUSTAKA

1. http://sistemoriented.blogspot.com/2013/06/state-machine-diagram_27.html diakses pada 17 April

2014