Sequence diagram menggambarkan interaksi antar objek berupa pesan yang ditunjukkan terhadap waktu. Diagram ini mendefinisikan interaksi dalam sistem dengan mengilustrasikan objek yang berpartisipasi dalam use case dan menggambarkan tahapan yang terjadi untuk menghasilkan output.
2. Sequence Diagram
• Sequence diagram menggambarkan interaksi antar objek di
dalam dan di sekitar sistem (termasuk pengguna, display, dan
sebagainya) berupa message yang digambarkan terhadap
waktu. Sequence diagram terdiri atas dimensi vertikal (waktu)
dan dimensi horizontal (objek-objek yang terkait).
• Diagram ini secara khusus berasosiasi dengan use case
diagram
• Mendefinisikan interaksi yang ada di dalam sistem
– Mengilustrasikan objek yang berpartisipasi didalam use case
3. • Sequence diagram biasa digunakan untuk menggambarkan
skenario atau rangkaian langkah-langkah yang dilakukan
sebagai respons dari sebuah event untuk menghasilkan
output tertentu. Diawali dari apa yang men-trigger aktivitas
tersebut, proses dan perubahan apa saja yang terjadi secara
internal dan output apa yang dihasilkan.
• Memperlihatkan tahap demi tahap apa yang seharusnya
terjadi untuk menghasilkan sesuatu didalam use case
4. SIMBOL SEQUENCE DIAGRAM
No Nama Simbol Keterangan Simbol
1 Object
(Partisipan)
Object atau biasa juga disebut
partisipan merupakan instance dari
sebuah class dan dituliskan tersusun
secara horizontal. Digambarkan sebagai
sebuah class (kotak) dengan nama objek
didalamnya yang diawali dengan sebuah
titik koma atau garis miring
2 Actor Actor juga dapat berkomunikasi dengan
object, maka actor juga dapat diurutkan
sebagai kolom.
3 Lifeline Lifeline mengindikasikan keberadaan
sebuah object dalam basis waktu. Notasi
untuk Lifeline adalah garis putus-putus
vertikal yang ditarik dari sebuah objek.
/Object1
; Object1
<<actor>>
5. SIMBOL … Lanjutan
No Nama Simbol Keterangan Simbol
4 Activation Activation mengindikasikan sebuah objek
yang akan melakukan sebuah aksi.
5 Boundary Boundary terletak di antara sistem dengan
dunia sekelilingnya. Semua form, laporan-
laporan, antar muka ke perangkat keras
seperti printer atau scanner dan antar muka
ke sistem lainnya adalah termasuk dalam
kategori.
6 Control Control berhubungan dengan fungsionalitas
seperti pemanfaatan sumber daya,
pemrosesan terdistribusi, atau penanganan
kesalahan.
<<boundary>>
<<contol>>
6. SIMBOL … Lanjutan
No Nama Simbol Keterangan Simbol
7 Entity Entity digunakan menangani informasi yang
mungkin akan disimpan secara permanen.
Entity bisa juga merupakan sebuah tabel
pada struktur basis data.
8 Message Message, digambarkan dengan anak panah
horizontal antara Activation. Message
mengindikasikan komunikasi antara object-
object.
9 Self-message Self-message atau panggilan mandiri
mengindikasikan komunikasi kembali
kedalam sebuah objek itu sendiri.
10 Loop Operator loop adalah fragmen yang dapat
mengeksekusi berulang kali dan guard
menunjukkan dasar iterasi.
<<entity>>
7. Looping, Syarat dan Like
• Loop dan conditional menggunakan kerangka interaksi
(interaction frame), yaitu frame untuk memberi tanda pada
sequence diagram (lihat gambar pada slide berikutnya).
• Umumnya frame terdiri dari beberapa region pada sequence
diagram, yang dibagi menjadi satu atau lebih fragmen. Setiap
frame mempunyai sebuah operator. Sebuah fragmen mungkin
mempunyai satu guard.
8. Looping, Syarat dan Like
Operator Keterangan
alt Alternatif dari banyak fragmen. Hanya yang kondisinya true yang
akan dijalankan
opt Optional; fragmen akan dijalankan jika kondisi yang
mendukungnya true
par Paralel; setiap fragmen dijalankan secara paralel
loop Looping, fragmen mungkin dijalankan berulang kali dan guard
menunjukkan basis iterasi
region Critical region; fragmen hanya dapat mempunyai satu thread
untuk menjalankannya
neg Negatif; fragmen menunjukkan interaction yang salah
ref Reference; menunjukkan ke sebuah interaction yang didefinisikan
pada diagram yang lain
sd Sequence diagram
9. Simple example of a sequence diagram
:Customer :ATM :Server
1: Insert Card
2: ok=checkCard(cardData)
3:
4:
sd Identify Authorized Person
log()
ok:Boolean
Only 1 interactionLocal attribute
Lifelines
12. TIPS MEMBUAT SEQUENCE DIAGRAM
• Buat Flow of event terlebih dahulu
• Dari flow of event, cari kata benda yang nantinya akan
menjadi kandidat objek partisipan
• Aktor terletak dipaling kiri sequence diagram
• Control object, biasanya diletakkan setelah aktor
• Satu usecase satu sequence diagram
• Satu object bisa digunakan pada lebih dari satu sequence
diagram
13. Belajar Membuat Sequence Diagram
• Misalnya ada seorang pelanggan ingin makan nasi goreng.
Maka pelanggan akan menemui waiter.
• Waiter mencatat pesanan pelanggan. Karena waiter tidak bisa
memasak nasi goreng,maka dia meminta bantuan pada
TukangNasiGoreng.
• Jika bahan nasi goreng habis, maka TukangNasiGoreng akan
meminta TukangBahanBaku, untuk menyediakan bahan baku.
• Jika bahan baku habis,maka TukangBahanBaku akan meminta
supplier mengirimkan bahan baku.
14. Belajar Membuat Sequence Diagram … Lanjutan
• Terlihat bahwa suatu pernyataan yang membutuhkan kelas
sangat dipentingkan disini. Yang bisa membuat nasi goreng
adalah tukang nasi goreng,maka waiter mengirimkan pesan
buatNasiGoreng yang arahnya menuju kelas
TukangNasiGoreng.
• Begitu juga jika bahannya berasal dari kelas lain,
makakelasTukangNasiGoreng mengirimkan pesan ke kelas
yang tepat, yaitu kelas TukangBahanBaku.
• Jika TukangBahanBaku perlu bahan baku,maka ia akan
meminta kelas yang punya metode kirimkan bahan baku
untuk bekerja.
15. Belajar Membuat Sequence Diagram … Lanjutan
• Contoh diatas berasumsi bahwa TukangNasiGoreng,
TukangBahanBaku dan Supplier adalah sesuatu yang akan
dikoding. Walaupun dalam kenyataanya mereka sebenarnya
tidak bisa dikoding, contoh ini hanya untuk memudahkan
pemahaman konsep saja.
Jika dibuatkan Sequence Diagram-nya, maka akan jadi seperi ini ..
16. Belajar Membuat Sequence Diagram … Lanjutan
Note: Gambar dibuat dengan menggunakan software ArgoUML
18. STUDI KASUS: EDIT PROFIL
• Berikut adalah contoh basic flow dari use case: Edit Profile
Aktor Sistem
1. Memilih menu edit
2. Menampilkan field untuk
mengganti profile
3. Mengganti profile yang diinginkan
4. Mengganti profile dan menyimpan
ke dalam database
19.
20. CARA LAIN MENGGAMBAR PARTISIPAN
• Boundary
Mengambarkan interaksi antara satu atau lebih actor dengan
sistem, memodelkan bagian darisistem yang bergantung pada
pihak lain disekitarnya dan merupakan pembatas sistem
dengan dunia luar.
• Control
Menggambarkan “perilaku mengatur”, mengkoordinasikan
perilaku sistem dan dinamika dari suatu sistem, menangani
tugas utama dan mengontrol alur kerja suatu sistem
• Entity
Menggambarkan informasi yang harus disimpan oleh sistem
(struktur data dari sebuah sistem)
24. 1. Setiap objek / participant terhubung dengan garis titik-titik yang
disebut:
A. Message D. Sequence
B. Lifeline E. Time
C. Recursive
2. Diagram yang menunjukkan sejumlah contoh objek dan message
yang diletakkan diantara objek-objek didalam use case disebut:
A. Class diagram D. Package
B. Sequence Diagram E. Use Case
C. Statechart Diagram
25. 3. Waktu dalam sequence diagram ditunjukkan dengan:
A. Garis Vertikal D. Tanda panah tertutup
B. Garis Horisontal E. Kotak
C. Tanda panah
4. Operator dalam sebuah frame yang berarti bahwa fragmen
mungkin dijalankan berulang kali dan guard menunjukkan basis
iterasi
A. alt D. loop
B. opt E. region
C. par
26. 5. Sebuah objek yang mempunyai sebuah operation kepada dirinya
sendiri disebut:
A. Sequence D. Loop
B. Message E. Recursive
C. Participant