Rekayasa Perangkat Lunak | ratnokustiawan.wordpress.com
1 Rekayasa Perangkat Lunak
Materi 5
Sequence Diagram
Sequence diagram mendeskripsikan bagaimana entitas dalam system berinteraksi, termasuk pesan yang
digunakan saat interaksi. Semua pesan dideskripsikan dalam urutan dari eksekusi. Sequence diagram
berhubungan erat dengan Use Case diagram, dimana 1 Use Case akan menjadi 1 Sequence Diagram.
1. LifeLine
Sequence Diagram dibuat dengan banyak lifeline. Setiap lifeline mendapatkan tempat sendiri –
sendiri. Beberapa jenis lifeline antara lain
Actor Lifeline
Actor merepresentasikan entitas yang berada di luar system. Mereka bisa berupa manusia, perangkat keras atau system lain.
General Lifeline
Merepresentasikan entitas tunggal dalam sequence diagram, digambarkan dengan kotak. Entitas ini memiliki nama, stereotype atau berupa instance (menggunakan instance:class)
Boundary Lifeline
Boundary biasanya berupa tepi dari system, seperti user interface, atau suatu alat yang berinteraksi dengan system lain.
Rekayasa Perangkat Lunak | ratnokustiawan.wordpress.com
2 Rekayasa Perangkat Lunak
Control Lifeline
Control element mengatur aliran dari informasi untuk sebuah scenario. Perilaku dan perilaku bisnis umumnya diatur oleh objek ini
Entity Lifeline
Entity biasanya elemen yang bertanggung jawab menyimpan data atau informasi. Ini dapat berupa beans atau model object
2. Message
Create Digunakan untuk melakukan inisialisasi suatu objek
Synchronous
Relasi ini digunakan untuk memaggil operasi atau ethod yang dimiliki oleh suatu objek. Synchronous mengharuskan kita menyelesaikan 1 proses baru kemudian memanggil proses berikutnya.
Asynchronous
Relasi ini digunakan untuk memanggil operasi atau method yang dimiliki oleh suatu objek. Asynchronous memberikan kita fasilitas untuk menjalankan proses lain ketika proses sebelumnya belum selesai.
Self message Relasi ini menunjukkan bahwa suatu objek hendak menanggil dirinya sendiri
Rekayasa Perangkat Lunak | ratnokustiawan.wordpress.com
3 Rekayasa Perangkat Lunak
3. Fragment
Alt Memodelkan if then else blok
Opt Memodelkan pernyataan switch loop Loop fragment
Ada 2 macam sequence diagram yaitu
1. High Level Sequence Diagram
Disini kita memfokuskan pada usecase, dimana sebuah diagram hanya terdiri dari actor dan
object yang mewakili system. Diagram ini hanya menampilkan 2 atau 3 object yang secara
graphics memperjelas use case.
2. Application Level Sequence Diagram
Untuk level ini, kita mengganti actor dengan controller atau manager semacam device yang
terpasang pada system.
Rekayasa Perangkat Lunak | ratnokustiawan.wordpress.com
4 Rekayasa Perangkat Lunak
Latihan
1. Pada materi Use Case kita pernah membuat Use Case diagram seperti berikut
”
2. Buat 1 buah sequence diagram, beri nama “Mencatat Transaksi Peminjaman”
3. Kembali pada dokumen Mencatat Transaksi Peminjaman, silahkan anda tambahkan Actor
Petugas perpus dari Usecase Petugas Perpus dengan cara drag dari Petugas Perpus di Use Case
Diagram ke Sequence Diagram Mencatat transaksi peminjaman
Rekayasa Perangkat Lunak | ratnokustiawan.wordpress.com
5 Rekayasa Perangkat Lunak
4. Pilih create Boundary Life Line
5. Maka akan tampak seperti gambar berikut
Ubah nama Lifeline menjadi Form Peminjaman, disini menunjukkan bahwa
6. Berikan message dari petugas perpus ke LifeLine, kemudian berinama memasukkan nim
Rekayasa Perangkat Lunak | ratnokustiawan.wordpress.com
6 Rekayasa Perangkat Lunak
7. Tambahkan 1 buah boundary Lifeline dengan nama Tombol Proses
Kemudian tambahkan 1 buah message dari Petugas perpus ke Tombol Proses dan beri nama
menekan tombol proses
8. Pertama tama akan kita hubungkan Sequence diagram Mencatat transaksi peminjaman dengan
Class Diagram Perpustakaan. Klik kanan pada tempat kosong kemudian open specification
Rekayasa Perangkat Lunak | ratnokustiawan.wordpress.com
7 Rekayasa Perangkat Lunak
9. Pilih References, kemudian pilih Add Diagram
10. Pada Diagrams pilih Class Diagram kemudian beri tanda check pada Class Diagram Perpustakaan
lalu OK
Rekayasa Perangkat Lunak | ratnokustiawan.wordpress.com
8 Rekayasa Perangkat Lunak
11.
, kemudian pilih OK
Rekayasa Perangkat Lunak | ratnokustiawan.wordpress.com
9 Rekayasa Perangkat Lunak
12. Kemudian silahkan anda tambahkan Class Transaksi Peminjaman dari Class Diagram ke sequence
diagram yang sedang anda buat, apabila diminta memilih lifeline atau class pilih life line, dengan
cara Drag Transaksi Peminjaman dari Class Diagram Perpustakaan ke Squence Diagram
Mencatat transaksi peminjaman
Apabila anda pilih Lifeline maka tampak seperti gambar berikut
Rekayasa Perangkat Lunak | ratnokustiawan.wordpress.com
10 Rekayasa Perangkat Lunak
Pada toolbox silahkan anda ganti message dengan call message
14. Buat call message dari tombol proses ke lifeline TransaksiPeminjaman
15. Klik kanan pada call message dengan kode 2.1, Select Operation Create Operation
Rekayasa Perangkat Lunak | ratnokustiawan.wordpress.com
11 Rekayasa Perangkat Lunak
16. Maka akan muncul window berikut
Pada Name beri nama cekBolehPinjam, pada Return type isikan Boolean
Rekayasa Perangkat Lunak | ratnokustiawan.wordpress.com
12 Rekayasa Perangkat Lunak
17. Kemudian pilih tab Parameters, tambahkan parameter dengan menekan tombol add
Pada name isikan nim, type isikan string, direction pilih in kemudian OK
18. Maka akan terdapat 1 buah parameter baru, pilih OK
Rekayasa Perangkat Lunak | ratnokustiawan.wordpress.com
13 Rekayasa Perangkat Lunak
19. Maka akan tampak seperti berikut
Untuk menampilkan info lengkap dari method bolehPinjam maka klik kanan pada tempat
kosong kemudian ikuti gambar berikut
Rekayasa Perangkat Lunak | ratnokustiawan.wordpress.com
14 Rekayasa Perangkat Lunak
20. Coba anda perhatikan lagi gambar yang barusan dihasilkan
21. Silahkan klik message dengan kode 2.1, kemudian pilih Create Return Message
Rekayasa Perangkat Lunak | ratnokustiawan.wordpress.com
15 Rekayasa Perangkat Lunak
22. Maka akan menghasilkan gambar berikut
23. Tambahkan message dari Tombol Proses ke Form Peminjaman, kemudian beri nama
“munculkan pesan proses peminjaman tidak bisa dilanjutkan”
24. Klik kanan pada message yang anda buat di nomor 2.3, kemudian pilih Create Combinet
Fragment Alt
Rekayasa Perangkat Lunak | ratnokustiawan.wordpress.com
16 Rekayasa Perangkat Lunak
25. Maka hasilnya akan seperti gambar berikut ini
26. Silahkan anda klik kanan pada fragment kemudian Operand Add Operand, lalu tambahkan 1
buah message lagi dari tombol proses ke form peminjaman, beri nama pesannya “aktifkan input
peminjaman koleksi ” , pastikan bahwa pesan ini terletak di operand yang bawah
Rekayasa Perangkat Lunak | ratnokustiawan.wordpress.com
17 Rekayasa Perangkat Lunak
27. Klik kanan pada Fragment kemudian Open Spesification, pilih Iteraction Operand
Pilih Operand, kemudian Open Specification Guard. Pada Constraint isikan bolehPinjam=false.
Untuk Operand2 klik Open Specification Guard. Pada Constraint isikan bolehPinjam=true
Pada Operand, apabila hasil dari pemanggilan method bolehPinjam adalah false maka akan
memunculkan pesan di form peminjaman yang berisi “Peminjaman tidak bisa dilanjutkan”, bila
true maka akan mengaktifkan input peminjaman koleksi
Rekayasa Perangkat Lunak | ratnokustiawan.wordpress.com
18 Rekayasa Perangkat Lunak
28. Buat message dari Petugas Perpus ke Form Peminjaman, kemudian beri nama “input kode
koleksi”
29. Tambahkan 1 buah Boundary Lifeline dengan nama Tombol Simpan Peminjaman
Rekayasa Perangkat Lunak | ratnokustiawan.wordpress.com
19 Rekayasa Perangkat Lunak
30. Buat message dari Petugas Perpus ke Tombol Simpan Peminjaman dengan nama
31. Tambahkan 1 buah message dari Tombol Simpan Peminjaman ke LifeLine TransaksiPeminjaman
32. Pastikan message 4.1 typenya Call, dengan cara Klik kanan 4.1 Type Call Call
Rekayasa Perangkat Lunak | ratnokustiawan.wordpress.com
20 Rekayasa Perangkat Lunak
33. Klik kanan pada pesan 4.1 kemudian Select Operation Create Operation
34. Berinama operation ini dengan nama simpanPeminjaman, return type boolean
35. Pada parameter buat 2 buah parameter yaitu kodeKoleksi dan npm, kedua parameter bertipe
string, untuk parameter kodeKoleksi multiplicitynya beri nila 1..* dan typeModifiernya []
Rekayasa Perangkat Lunak | ratnokustiawan.wordpress.com
21 Rekayasa Perangkat Lunak
36. Hasil akhirnya seperti berikut