Anda di halaman 1dari 10

REQUIREMENT ENGINEERING (STATE MACHINE DIAGRAM)

SOFTWARE ENGINEERING

Disusun oleh :

Juni Advan
Nisa Fuadina
Putra Nugraha
Teguh Sujana
Yusmanelli

PASCASARJANA MAGISTER ILMU KOMPUTER

UNIVERSITAS PUTRA INDONESIA ”YPTK”

2017
DAFTAR ISI

Unified Modeling Language (UML) .................................................................................. 1


State Machine Diagram ................................................................................................... 4
Self-service Parking System ........................................................................................... 6
Daftar Pustaka ................................................................................................................ 7

i
DAFTAR GAMBAR

Gambar 2.1 Contoh State Machine Diagram ..................................................................4


Gambar 2.2 Contoh Superstate State Machine Diagram ................................................5
Gambar 3.1 Self-service Parking System State Machine Diagram .................................6

ii
1. Unified Modeling Language (UML)
Dalam pembangunan sebuah sistem dikenal sebuah skenario yang dapat
membantu menciptakan gambaran sistem secara abstrak dan juga dapat dilihat dari
beberapa sudut pandang yang dikenal dengan istilah system modeling. Selanjutnya
juga dikenal istilah Unified Modeling Language (UML) yang merupakan sebuah
penggambaran sistem (system modeling) dalam bentuk grafik. UML (Unified Modelling
Language) adalah bahasa pemodelan untuk sistem atau perangkat lunak yang
berparadigma berorientasi objek. Pemodelan (modeling) sesungguhnya digunakan
untuk penyederhanaan permasalahan-permasalahan yang kompleks sedemikian rupa
sehingga lebih mudah dipelajari dan dipahami. (Nugroho, 2010)
Selain itu, juga ada formal (matematis) models dari sebuah sistem, biasanya
sebagai spesifik sistem secara detail. Models digunakan ketika proses requirements
untuk memperoleh kebutuhan dari sistem, ketika proses desain untuk menjelaskan
sistem kepada engineer yang akan membangun sistem dan setelah implementasi untuk
mendokumentasikan struktur dan operasi sistem. Models bisa dibuat baik untuk sistem
yang sudah ada atau sistem yang baru akan dibangun.
a. Models dari sistem yang sudah ada digunakan ketika proses requirements.
Models dapat membantu menjelaskan apa yang bisa dilakukan oleh sistem yang
sudah ada dan models itu juga bisa menjadi media untuk mengetahui kelebihan
dan kekurangan dari sistem yang sudah ada, yang kemudian bisa dijadikan
dasar untuk mengembangkan sistem baru.
b. Models dari sebuah sistem baru yang digunakan ketika requirements untuk
membantu menjelaskan requirements yang diajukan kepada stakeholder.
Engineer menggunakan models ini untuk mendiskusikan desain dan
mendokumentasikan sistem yang akan diimplementasikan.

Aspek yang paling penting dari sebuah model sistem yaitu menjelaskan secara
rinci. Sebuah model adalah sebuah gambaran abstrak dari sistem yang sedang
dipelajari dan bukan merupakan representasi alternatif dari sistem tersebut. Secara
ideal, sebuah representasi dari sebuah sistem harus harus menjaga semua informasi

1
tentang inti dari hal yang sedang direpresentasikan. Sebuah abstraksi dimaksudkan
untuk menyederhanakan dan hanya mengambil karateristik yang menonjol. Sebagai
contoh, trailer untuk sebuah film yang akan ditayangkan di bioskop, trailer dapat
memberikan representasi sebagai gambaran pada penonton tentang film tersebut. Ada
beberapa sistem model yang dapat digunakan untuk merepresentasikan sistem dari
beberapa sudut pandang yang berbeda. Sebagai contoh :
a. Sudut pandang external, yang mana menggambarkan konteks atau environment
(lingkungan) dari sistem.
b. Sudut pandang interaction, yang mana menggambarkan interaksi antara sistem
dengan lingkungan atau antara komponen sistem.
c. Sudut pandang struktural, yang mana menggambarkan pengelompokan sistem
atau struktur dari data yang di proses di sistem.
d. Sudut pandang behavioral, yang mana menggambarkan perilaku dinamis dari
sistem dan bagaimana sistem meresponnya.

Sudut pandang di atas mempunyai banyak kesamaan dengan sudut pandang


Krutchen’s 4 + 1 terhadap arsitektur sistem (Krutchen, 1995), yang mana dia
menyarankan agar mendokumentasikan arsitektur dan organisasi sistem dari sudut
pandang yang berbeda.
UML telah menjadi standar modeling language untuk object-oriented modeling.
UML mempunyai banyak tipe-tipe diagram dan sangat mendukung pembuatan dari
banyak tipe model sistem. Tapi, sebuah survey pada tahun 2007 (Erickson dan Siau,
2007) menunjukan banyak pengguna dari UML beranggapan bahwa 5 diagram berikut
dapat merepresentasikan inti dari sistem.
a. Activity diagram, yang mana menunjukkan aktivitas yang termasuk dalam
sebuah proses atau di dalam pemrosesan data.
b. Use case diagram, yang mana menunjukkan interaksi antara sistem dan
lingkungannya.
c. Sequence diagram, yang mana menunjukkan interaksi antara aktor dan sistem
dan antar komponen sistem.

2
d. Class diagram, yang mana menunjukkan objek class dalam sistem dan asosiasi
antar class ini.
e. State diagram atau state machine diagram, yang mana menunjukkan bagaimana
sistem menanggapi event baik dari internal maupun exernal.
Pada laporan ini, akan difokuskan pada State Machine Diagram yang mana
membahas bagaimana respon sistem terhadap peristiwa atau kejadian baik yang terjadi
di dalam sistem maupun dari luar sistem.

3
2. State Machine Diagram
State machine diagram terrmasuk ke dalam event-driven modeling, yang mana
merespon hal-hal yang berasal dari dalam atau luar. State machine diagram terdiri dari
state atau suatu keadaan dan suatu kejadian dapat menyebabkan state tersebut
berubah menjadi state lain. Sebagai contoh, sebuah sistem mengatur katup agar dari
posisi “terbuka” menjadi “tertutup” ketika menerima perintah (stimulus) dari operator.
Event-driven modeling cocok untuk sistem yang bersifat real-time. Modeling ini pertama
dikenalkan dalam metode desain real-time seperti yang ditunjukkan oleh Ward dan
Mellor (1985) dan Harel (1987, 1988).

Gambar 2.1 Contoh State Machine Diagram

Dalam UML state diagrams, persegi yang dibulatkan merepresentasikan state


dari sistem, dan biasanya ditambahkan deskripsi yang diikuti dengan kata-kata “do” dari
aksi yang dilakukan oleh state. Start dan end dari sistem dapat digambarkan dengan
diagram lingkaran seperti pada activity diagram. Kemudian dalam perpindahan antar
state (ada aksi), ditandai dengan panah (stimuli).
Ada sebuah kendala dalam modeling menggunakan state, yaitu state yang ada
bisa mengalami peningkatan dengan cepat, pada sistem yang besar misalnya. Oleh
karena itu, digunakan sebuah superstate yang membungkus beberapa state yang
terpisah.

4
Gambar 2.2 Contoh Superstate State Machine Diagram

Terdapat sub-state yang ada di dalam superstate, yang mana sub-state ini
menunjukkan detail apa saja yang ada di dalam sebuah superstate.

5
3. Self-service Parking System
Self-service parking system adalah sebuah sistem yang berfungsi untuk
melakukan penanganan terhadap user yang akan parkir di sebuah tempat. Dengan
adanya sistem ini dapat menggantikan posisi seorang pengurus loket parkir yang
berperan memberikan tiket dan menangani transaksi pembayaran tiket parkir. Cara
kerja dari sistem ini, dapat dilihat pada state machine diagram berikut, dimana pada
diagram di bawah ini dapat dilihat bagaimana reaksi dari sistem ketika ada input
(stimulan) dari user maupun dari dalam sistem sendiri.

Gambar 3.1 Self-service Parking System State Machine Diagram

Dari diagram dapat dilihat bahwa pada posisi sistem sudah beroperasi yaitu
dimulai pada state waiting, kemudian ketika ada stimulan dari user dengan menekan
tombol pada barrier gate, maka sistem akan melakukan processing untuk menghasilkan
serial number, kemudian sistem mengirimkan stimulan untuk membuka barrier gate.
Jika barrier gate telah tertutup kembali, maka akan kembali lagi ke state waiting. Untuk
proses pembayaran, ketika ada stimulan dari user yaitu pembayaran tiket atau kartu,
maka sistem akan melakukan proses validating dan melakukan pengecekan terhadap
pembayaran, jika tidak ada kesalahan, maka sistem mengirimkan stimulan ke barrier
gate untuk membuka.

6
DAFTAR PUSTAKA

Sommerville, Ian. 2011. Software Engineering. Boston : Pearson Education.

Krutchen, P. 1995. The 4+1 View Model of Software Architecture. IEEE Software, 12
(6), 42-50.

Erickson, J. and Siau, K. 2007. Theoretical and Practical Complexity of Modeling


Methods. Comm. ACM, 50 (8), 46-51.

Ward, P. and Mellor, S. 1985. Structured Development for Real-Time Systems.


Englewood Cliffs, NJ : Prentice Halls.

Harel, D. 1987. Statecharts : A Visual Formalism for Complex Systems. Sci. Comput.
Programming, 8 (3), 231-74.

Harel, D. 1988. On Visual Formalism. Comm. ACM, 31 (5), 514-30.

Anda mungkin juga menyukai