Anda di halaman 1dari 7

State Machine Diagram (Statechart diagram in versi 1.

x)

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

 Sebuah state machine diagram mempunyai :


 state (kejadian sesaat) are represented by the values of attributes of an object
 State digambarkan dengan bentukData Kosong

Data Kosong

Data Kosong atau

 “Black Hole” states

is state has transitions into it but none out

 Miracle states

is state has transitions out of it but none into it

 initial state / creation state dengan tanda

Untuk memulai sebuah state machine diagram

(in western culture people read from left to right, top to bottom, starting in the top-left
corner)
 Final state dengan tanda

Untuk mengakhiri sebuah state machine diagram

Letakkan pada pojok kanan bawah(in western culture people read from left to right, top
to bottom, starting in the top-left corner)Simple State State 1

 Composite State State 2 State 3


 Kumpulan dari beberapa states yang setidaknya dalam sebuah region
 Orthogonal State, jenis composite state lebih dari 1 region
State 1

State 4
State 2

 Submachine State State 5


State 3

 Sejenis composite state yang isinya didefinisikan oleh state machine lain
 State Machine yang berisi submachine state disebut “Containing state machine
 Sebuah state yang dihubungkan ke state machine lainnya
 Dihubungkan ke satu/lebih entry point dan satu/lebih exit point

NamaSubMachine:
Nama State machine
Masuk
Batalkan
 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

State 1

State 4
Sub States State 2
State 5
 Sebuah state yang ada dalam sebuah region
 Direct Substate, Sub state yang tidak berisi state lain State 3
State 6

 Indirect Substate, Sub state yang berisi state lain

Region (kelompok state)

 Dipisahkan dengan garis terputus, yang setiap region boleh mempunyai nama sebagai optional
 Sebuah state tidak boleh mempunyai region dan submachine secara bersamaan
State terpisah menjadi 3 bagian yaitu

 Activity label bisa berupa Entry, Exit atau do


 Dimana Activity expression adalah penggunaan atribut

NIP Kosong Nama State

Entry/isi NIP Internal Activity, kegiatan yang dilakukan dalam state


Exit/ sintaks : Activity label/activity expression
Help/Tekan F1

Klik Internal transition


Double klik

Transition

 digambarkan dengan tanda anak panah


 progressions from one state 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 biasa dituliskan dengan past tense


 event menyebabkan sebuah object berpindah dari satu state ke state lain
 Guard, condition that must be true for the transition to be triggered
 Guard harus konsisten dan tidak overlap
Contoh: X<0, X=0 dan X>0 konsisten
X<=0 dan X>=0 tidak konsisten
 Guards harus lengkap logikanya
Contoh:X<0 dan X>0 , bagaimana jika X=0 ?
 Methode dijalankan
 ketika object memasuki state diindkasikan dengan methode bernama entry( )
 ketika object keluar state diindikasikan dengan methode bernama exit( )
 Methode menyebabkan perubahan di sebuah 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 transition dan memecahnya menjadi
sebuah/beberapa transition yang berkondisi AND (transition harus dilewati semuanya).
Digunakan tanda lingkaran hitam kecil
Contoh:
State 0 State 1

Event 1 [b<0] Event 2 [b<0]

[a<0] [a>7]
[a=5]

State 2 State 3 State 4

 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).
o Digunakan lambang diamond
o Operand dapat diletakkan didalam diamond atau pada transition

[>5] [A>5]
A atau
[=5] [A=5]
[<5] [A<5]

 Entry point Dilambangkan sebuah lingkaran kecil yang ditaruh pada pinggiran state(bisa juga
didalam atau diluar), dan berguna sebagai submachine state

NamaSubMachine:
Nama State machine

lagi

 Exit pointDilambangkan sebuah lingkaran kecil bersilang yang ditaruh pada pinggiran state (bisa
juga didalam atau diluar), dan berguna sebagai submachine state

NamaSubMachine:
Nama State machine
batalkan
State Machine Diagram ada 2 jenis

 Behavioral State Machines


o Merupakan state machine diagram umumnya
o Digunakan untuk mendefinisikan perilaku sebuah object
 Protocol State Machines
o Digunakan untuk penggunaan protocol pada sebuah system
o Dapat didefinisikan ke spesifik Protocol State Machines atau ke Behavioral State
Machines
o Didefinisikan sebagai diagram context (global overview)
o Notasi yang digunakan sama dengan Behavioral State Machines dengan
penambahan kata {protocol}

Door {protocol}

o Tidak adanya internal activity seperti entry,exit,do


o Transition pada Protocol State Machines harus menggunakan Protocol
Transition
o 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

Component Diagram

 Menggambarkan alokasi semua class dan object kedalam komponen dalam desain fisik system
software, termasuk pengaturan dan kebergantungan antar komponen software
 Component dapat terdiri dari
o logical component, seperti business component, process component, dll
o Physical component (software arsitektur) , seperti Com+, dot NET,CORBA, dll
 Component digambarkan dengan bentuk pada UML versi 1
 Pada UML versi 2 digambarkan dengan bentuk

<<component>>
nama component
<<component>>
Nama component
ATAU Nama component
ATAU ATAU
nama component

 Stereotypes yang dapat digambarkan pada bentuk component

<<application>>,kumpulan aplikasi system

<executable>>,component yang jalan di client

<<file>>, data file


<<infrastructure>>, technical component didalam system
<<source code>>, source file

<<table>>, table data dalam sebuah database


<<UI>>, User interface (screen, pages, report)dll

Dependencies

 dimodelkan dengan garis terputus dengan panah terbuka


 gambarkan dependencies dari kiri ke kanan

Contoh: <<ASP>> Source Code bergantung pada

Student DataAccess
Administration Student Student
<<database>> MySQL <UI>>

Inheritance

 inheriting/child component diletakkan dibawah parent component, dengan arah panah menuju
ke parent component
 dimodelkan dengan garis dengan panah tertutup
Contoh:

Menu Utama
<<UI>>

Penjualan Pembelian
<<application>> <<application>>
Interfaces - Component Diagram
 Interfaces adalah kumpulan >=1 methode dan >=0 attribute yang dapat dipakai pada
class tanpa menjadi behavior suatu class.
 Jenis interface ada 2 macam yaitu :
o Provide, digambarkan dengan bentuk lollipop Pada UML 1.* bisa juga
digambarkan dengan garis terputus dengan panah tertutup
o Required, digambarkan dengan bentuk socket
 Penggambaran interfaces dapat juga dilakukan dengan menambah bagian

Port

 adalah bentuk object yang menjelaskan interaksi antara object dan lingkungannya
 digambarkan sebagai kotak kecil di pinggiran component
<<component>>

Order

 Assembly connector Penghubung antara 2/lebih component dimana


sebuah/beberapa component provides interfaces dan component lain required
interfaces

 Digambarkan dengan gabungan bentuk interfaces


contoh:

Anda mungkin juga menyukai