Home > UML > Sequence Diagram

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.
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

 

  1. 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
  1. 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.

Latihan

  1. Pada materi Use Case kita pernah membuat Use Case diagram seperti berikut

    Sebuah use case akan menjadi 1 buah Sequence Diagram, oleh karena itu kita coba untuk mengambil use case “Mencatat transaksi peminjaman

  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

  4. Pilih create Boundary Life Line

  5. Maka akan tampak seperti gambar berikut

    Ubah nama Lifeline menjadi Form Peminjaman, disini menunjukkan bahwa petugas perpus akan berhadapan dengan form peminjaman untuk mencatat proses peminjaman

  6. Berikan message dari petugas perpus ke LifeLine, kemudian berinama memasukkan nim

    Dapat dibaca bahwa petugas perpus akan memasukkan nim ke form peminjaman

  1. 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

    Dibaca bahwa petugas perpus akan memasukkan nim kemudian menekan tombol proses yang terletak di form peminjaman

  2. Pertama tama akan kita hubungkan
    Sequence diagram
    Mencatat transaksi peminjaman dengan Class Diagram
    Perpustakaan. Klik kanan pada tempat kosong kemudian open specification

  3. Pilih References, kemudian pilih Add Diagram

  4. Pada Diagrams pilih Class Diagram kemudian beri tanda check pada Class Diagram Perpustakaan lalu OK

  5. Maka class Diagram perpustakaan akan menjadi reference document dari Sequence Diagram Mencatat Peminjaman, kemudian pilih OK

  1. 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

  1. Disini kita akan coba menggambarkan alur ketika petugas perpus melakukan proses pencatatan peminjaman, alur yang kita buat ini nantinya akan mempengaruhi Class Diagram dan kode program yang nantinya akan diimplementasikan oleh programmer.

    Pada toolbox silahkan anda ganti message dengan call message

  2. Buat call message dari tombol proses ke lifeline TransaksiPeminjaman

  3. Klik kanan pada call message dengan kode 2.1, Select à Operation à Create Operation

  4. Maka akan muncul window berikut

    Pada Name beri nama cekBolehPinjam, pada Return type isikan Boolean

  5. Kemudian pilih tab Parameters, tambahkan parameter dengan menekan tombol add

    Pada name isikan nim, type isikan string, direction pilih in kemudian OK

  6. Maka akan terdapat 1 buah parameter baru, pilih OK

  7. Maka akan tampak seperti berikut

    Untuk menampilkan info lengkap dari method bolehPinjam maka klik kanan pada tempat kosong kemudian ikuti gambar berikut

  1. Coba anda perhatikan lagi gambar yang barusan dihasilkan

    Dari gambar diatas dapat dibaca

    1. Petugas perpus akan memasukkan nim ke form peminjaman
    2. Setelah memasukkan nim ke form peminjaman maka akan menekan tombol proses
    3. Saat tombol proses ditekan maka akan memanggil method bolehPinjam dari objek transaksiPeminjaman yang merupakan objek yang berasal dari kelas TransaksiPeminjaman dan mengisi parameter nim dari hasil yang didapat dari form peminjaman
  2. Silahkan klik message dengan kode 2.1, kemudian pilih Create Return Message

  1. Maka akan menghasilkan gambar berikut

  2. Tambahkan message dari Tombol Proses ke Form Peminjaman, kemudian beri nama “munculkan pesan proses peminjaman tidak bisa dilanjutkan”

  1. Klik kanan pada message yang anda buat di nomor 2.3, kemudian pilih Create Combinet Fragment à Alt

  1. Maka hasilnya akan seperti gambar berikut ini

  2. 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

  1. 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

  2. Buat message dari Petugas Perpus ke Form Peminjaman, kemudian beri nama “input kode koleksi”

Dari gambar diatas dapat dibaca bahwa message nomor 2.4 dan 3 akan dilaksanakan ketika status bolehPinjam bernilai true, bila false maka muncul pesan proses peminjaman tidak bisa dilanjutkan (message nomor 2.3)

  1. Tambahkan 1 buah Boundary Lifeline dengan nama Tombol Simpan Peminjaman

  2. Buat message dari Petugas Perpus ke Tombol Simpan Peminjaman dengan nama

  3. Tambahkan 1 buah message dari Tombol Simpan Peminjaman ke LifeLine TransaksiPeminjaman

  4. Pastikan message 4.1 typenya Call, dengan cara Klik kanan 4.1 à Type à Call à Call

  5. Klik kanan pada pesan 4.1 kemudian Select Operation àCreate Operation

  6. Berinama operation ini dengan nama simpanPeminjaman, return type boolean

  7. Pada parameter buat 2 buah parameter yaitu kodeKoleksi dan npm, kedua parameter bertipe string, untuk parameter kodeKoleksi multiplicitynya beri nila 1..* dan typeModifiernya []

  8. Hasil akhirnya seperti berikut

About these ads
Categories: UML
  1. December 19, 2012 at 6:28 am | #1

    Tutorial bagus nih..
    Tapi saya mau tanya gimana caranya membuat sequence diagram dengan memanggil data dari 2 entity. Entity Buku dan dan Category. Mohon Masukannya.. Disini lifeline yang digunakan hanya boundary, control dan entity. Terima kasih banyak sebelumnya..

  2. January 29, 2013 at 11:39 am | #3

    terimakasih ini sangat bermanfaat

  3. joseph
    January 30, 2013 at 12:33 pm | #4

    kalau untuk use case yang ada include atau exclude juga dibuat sequence nya kah??

    • February 1, 2013 at 3:38 am | #5

      Sequence itu kan menggambarkan proses yang terjadi pada suatu use case, jadi mau ada include atau tidak ya tetep digambar sequencenya, kan rumusnya 1 use diagram terdiri dari banyak use case dimana setiap use case akan menjadi sequence diagram

  4. advent
    April 21, 2013 at 9:01 am | #6

    program diatas untuk membuat diagram sequence namanya apa ya?

  5. ella twist calm
    May 27, 2013 at 1:12 pm | #8

    contoh sequence diagram yang transaksi pengembalian dan mencatat denda pengembalian tolong dibantu yaa??mksih sblomnya…

  6. iam
    June 19, 2013 at 2:23 am | #9

    nice thx

  7. samidt
    June 27, 2013 at 3:21 pm | #10

    tutorialnya bagus, tapi mau tanya.
    kenapa kok tombol proses harus di bikin boundary lifeline baru.? kenapa gak jadi satu sama boundary form peminjaman.?
    yang namanya form kan terdiri dari beberapa komponen, bisa komponen edit, bisa button, kenapa tombol prosesnya di sendirikan.? kalo gitu bisa juga komponen edit di bikin boundary lifeline sendiri.?
    :(

    • June 27, 2013 at 7:46 pm | #11

      Karena form itu berinteraksi dgn user, tombol proses juga berinteraksi so harus beda

  8. samidt
    June 27, 2013 at 3:27 pm | #12

    mohon pencerahan ..

    • June 27, 2013 at 7:47 pm | #13

      Karena form berintetaksi dgn user begitu pula tombol, dan event2 di tombol tidak ada di form dan sebaliknya jadi harus digambarkan jadi dua

  9. July 4, 2013 at 11:53 am | #14

    Klo ada drop down,berarti ada boundary sndr ya pak?

    • July 4, 2013 at 11:59 am | #15

      Yoi, karena boundary itu mewakili setiap element ui yg berinteraksi dgn user

  10. iim
    September 18, 2013 at 2:01 am | #16

    nama aplikasi utk buat diagramnya apa ya pak??

  11. January 2, 2014 at 3:58 am | #18

    makasih tutorialnya …
    mau nanya nih, klo dalam sequence diagram apa boleh antara aktor yang berbeda memberikan message, misalnya antara aktor pasien ke petugas ?
    misalnya dalam laporan yang lagi saya bikin tentang proses pendaftaran pasien :
    pasien (aktor) –> memberikan identitas pasien untuk registrasi (message) –> kepada petugas (aktor)
    kemudian baru :
    petugas (aktor) –> input id pasien (boundary lifline)

    makasih sebelumnya, mohon pencerahannya ^^

    • January 6, 2014 at 2:59 am | #19

      Message tidak dapat terjadi antar aktor, karena message menggambarkan apa yang aktor lakukan dengan sistem bukan dengan aktor yang lain

  12. rikoy
    January 8, 2014 at 2:23 pm | #20

    keren info nya gan, agan pake visual paradigm yang versi apa? saya pake versi community setiap export ke image ada watermarknya, klo pake yang full version tolong di share juga dong, thanks

    • January 9, 2014 at 4:20 am | #21

      Sama, saya juga pake yang community edition gan, kalo pake eclipse ada plugin yang gratis plus bisa generate ke java juga, coba cek dan untuk generate nya

  1. No trackbacks yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Follow

Get every new post delivered to your Inbox.

%d bloggers like this: