sequence diagram - yulhendri.weblog.esaunggul.ac.id

21
Sequence Diagram Mendefinisikan interaksi yang ada di dalam sistem Mengilustrasikan objek yang berpartisipasi di dalam use case Menggambarkan interaksi mana yang dilakukan saat suatu use case dijalankan

Upload: others

Post on 06-Oct-2021

12 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Sequence Diagram - yulhendri.weblog.esaunggul.ac.id

Sequence Diagram

• Mendefinisikan interaksi yang ada di dalamsistem

– Mengilustrasikan objek yang berpartisipasi didalam use case

• Menggambarkan interaksi mana yang dilakukan saat suatu use case dijalankan

Page 2: Sequence Diagram - yulhendri.weblog.esaunggul.ac.id

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 atar dimensi vertikal (waktu) dan dimensi horizontal (objek-objek yang terkait).

• Masing-masing objek, termasuk aktor, memiliki lifeline vertikal.

• Message digambarkan sebagai garis berpanah dari satu objek ke objek lainnya.

• Activation bar menunjukkan lamanya eksekusi sebuah proses, biasanya diawali dengan diterimanya sebuah message.

Source: [BCSPW]

Page 3: Sequence Diagram - yulhendri.weblog.esaunggul.ac.id

Sequence Diagram

• Sequence diagram adalah visual coding ( perancangan form/layar)

• Interaksi object yang tersusun dalam suatu urutan waktu/kejadian

• Diagram ini secara khusus berasosiasi dengan use case diagram– Memperlihatkan tahap demi tahap apa yang seharusnya terjadi

untuk menghasilkan sesuatu didalam use case

• Sequence diagram memodelkan aliran logika dalam sebuah system dalam cara yang visual

• Sequence diagram biasanya dipakai untuk mendeskripsikansebuah/beberapa use case pada use case diagram, yang menggambarkan hubungan antara actor dan use case

Source: [MHGB]

Page 4: Sequence Diagram - yulhendri.weblog.esaunggul.ac.id

Komponen Sequence Diagram

Partisipan

Lifeline Peristiwa eksekusi/

Execution occurrence

Pesan/message

Page 5: Sequence Diagram - yulhendri.weblog.esaunggul.ac.id

Partisipan

• Partisipan berinteraksi satu sama lain sepanjang alursequence diagram.

• Partisipan dapat berupa aktor, objek dari class, tabel dari database, atau apapun yang menjadibagian dari jalannya sistem.

• Partisipan yang akan mengirim/menerima alurpesan (message).

Partisipan

Page 6: Sequence Diagram - yulhendri.weblog.esaunggul.ac.id

Lifeline

• Sebuah lifeline menunjukkan kapan aktifnyasuatu objek partisipan sepanjang sequence.

Lifeline

Page 7: Sequence Diagram - yulhendri.weblog.esaunggul.ac.id

Peristiwa Eksekusi

• Peristiwa eksekusi berbentukpersegi panjang yang diletakkandi garis lifeline untukmenandakan kapan suatu objekmengirim atau menerima pesan.

Peristiwa eksekusi/

Execution occurrence

Page 8: Sequence Diagram - yulhendri.weblog.esaunggul.ac.id

Pesan (message)

• Pesan menyampaikan informasi dari suatu objek keobjek lainnya.

• Pesan yang dikirim (send) digambarkan dengan garispanah yang solid

• Sedangkan pesan yang diterima(receive/return)digambarkan dengan garis putus-putus.

Pesan/message

Page 9: Sequence Diagram - yulhendri.weblog.esaunggul.ac.id

Tipe Pesan (message)

Object Message

Menggambarkan pesan kirim antar objek.

Message to Self

Mengambarkan pesan ke objek itu sendiri.

Page 10: Sequence Diagram - yulhendri.weblog.esaunggul.ac.id

Tipe Pesan (message) – lanj’

Return Message

Menggambarkan pesan kembali antar objek.

Page 11: Sequence Diagram - yulhendri.weblog.esaunggul.ac.id
Page 12: Sequence Diagram - yulhendri.weblog.esaunggul.ac.id

Tips membuat sequence diagram

Buat Flow of event terlebih dahulu ada di UC spesifikasiDari flow of event, cari kata benda yang nantinya

akan menjadi kandidat objek partisipanAktor terletak di paling kiri sequence diagramControl object, biasanya diletakkan setelah aktorSatu use case satu sequence diagramSatu object bisa digunakan pada lebih dari satu

sequence diagram

Source: [DRCW]

Page 13: Sequence Diagram - yulhendri.weblog.esaunggul.ac.id

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.

Source: [BKPPB]

Page 14: Sequence Diagram - yulhendri.weblog.esaunggul.ac.id

Belajar membuat sequence

diagram• 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, makakelas TukangNasiGoreng 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.

Source: [BKPPB]

Page 15: Sequence Diagram - yulhendri.weblog.esaunggul.ac.id

Belajar membuat sequence

diagram

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

Source: [BKPPB]

Page 16: Sequence Diagram - yulhendri.weblog.esaunggul.ac.id

Belajar membuat sequence

diagram

Source: [BKPPB]

buatNasiGoreng()

siapkanBahanNasiGoreng()

kirimBahanBaku()

TukangNasiGoreng TukangBahanBaku Supplier

Pelanggan Waiter

Page 17: Sequence Diagram - yulhendri.weblog.esaunggul.ac.id

Mulai membuat Sequence

Diagram

Page 18: Sequence Diagram - yulhendri.weblog.esaunggul.ac.id

Kasus: 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

Berikut adalah contoh basic flow dari use case: Edit Profile

Page 19: Sequence Diagram - yulhendri.weblog.esaunggul.ac.id

Sequence Diagram

Page 20: Sequence Diagram - yulhendri.weblog.esaunggul.ac.id

Cara lain menggambar

PartisipanBoundary

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)

Source: [MHGB]

Page 21: Sequence Diagram - yulhendri.weblog.esaunggul.ac.id

Contoh

Source: [MHGB]