State Chart diagram
-
Upload
universitas-islam-negeri-uin-sunan-kalijaga-yogyakarta -
Category
Software
-
view
81 -
download
0
Embed Size (px)
description
Transcript of 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.

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

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.

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.

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