SEQUENCE
DIAGRAM tinoDWIANTORO
5
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
• 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
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>>
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>>
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>>
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.
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
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
Contoh:
Contoh:
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
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.
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.
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 ..
Belajar Membuat Sequence Diagram … Lanjutan
Note: Gambar dibuat dengan menggunakan software ArgoUML
MULAI MEMBUAT
SEQUENCE DIAGRAM
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
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)
Contoh
STUDI KASUS
-- PENYEWAAN MOBIL--
<<lihat slide studi kasus>>
LATIHAN
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
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
5. Sebuah objek yang mempunyai sebuah operation kepada dirinya
sendiri disebut:
A. Sequence D. Loop
B. Message E. Recursive
C. Participant
TERIMA KASIH

TD-635-05-PSBO

  • 1.
  • 2.
    Sequence Diagram • Sequencediagram 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 diagrambiasa 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 NoNama 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 NoNama 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 NoNama 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 danLike • 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 danLike 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 ofa 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
  • 10.
  • 11.
  • 12.
    TIPS MEMBUAT SEQUENCEDIAGRAM • 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 SequenceDiagram • 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 SequenceDiagram … 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 SequenceDiagram … 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 SequenceDiagram … Lanjutan Note: Gambar dibuat dengan menggunakan software ArgoUML
  • 17.
  • 18.
    STUDI KASUS: EDITPROFIL • 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
  • 20.
    CARA LAIN MENGGAMBARPARTISIPAN • 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)
  • 21.
  • 22.
    STUDI KASUS -- PENYEWAANMOBIL-- <<lihat slide studi kasus>>
  • 23.
  • 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 dalamsequence 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 objekyang mempunyai sebuah operation kepada dirinya sendiri disebut: A. Sequence D. Loop B. Message E. Recursive C. Participant
  • 27.