PEMODELAN PERANGKAT LUNAK

Sequence Diagram

Sequence Diagram

Merupakan suatu diagram interaksi yang memodelkan suatu skenario tunggal yang dijalankan pada sistem Digunakan untuk memperlihatkan interaksi antar obyek dalam perintah yang berurut. Tujuan utama adalah mendefinisikan urutan kejadian yang dapat menghasilkan output yang diinginkan

Sequence Diagram

 

Partisipan : obyek atau entitas yang bertindak dalam sequence diagram Message : komunikasi antar obyek partisipan Terdapat 2 tipe garis yaitu vertikal dan horisontal
: waktu  maju berdasarkan waktu  Horisontal : obyek mana yang beraksi
 Vertikal

0 Digambarkan dalam bentuk frame Bersifat optional untuk menggambarkan batas grafis suatu diagram.Elemen Notasi    Didefinisikan pada UML 2. .

)  Diagram sequence memiliki message datang (input) dan keluar (output) .Elemen Notasi (cont.

 activity = Activity Diagram.Elemen Notasi (Labeling) DiagramType DiagramName  Spesifikasi UML memiliki nilai text khusus untuk tipe diagram  sd = Sequence Diagram.  use case = Use Case Diagram .

Types of Interaction  Creation ● Menunjukkan pesan yang menyebabkan terjadinya pembentukan instan obyek.  Synchronous ● Pesan yang dikirim oleh 1 obyek ke obyek lain dan obyek pertama menunggu sampai hasil aksi selesai.  Asynchronous ● Pesan yang dikirim oleh 1 obyek ke obyek lain dan obyek pertama tidak menunggu sampai hasil aksi selesai. Menunjukkan nilai kembali dari obyek ke obyek yang megirim pesan  Reply ● Sumber : schaum outline .

2. 3.Guideline untuk membuat Diagram Sequence UML 1. 5. lingkup sistem) Identifikasi objek partisipasi Gambarkan sembarang lifeline untuk setiap kelas Gambarkan durasi objek pada lifeline kelas Insert message objek dari atas ke bawah (top to bottom) diagram (time-based) Cek diagram lagi sampai komplit . 6.e. 4. Set konteks (i.

Lifelines    Elemen notasi lifeline terletak pada posisi atas diagram Representasi aturan (role) lain atau instance objek yang berpartisipasi dalam sequence dimodelkan Standar penamaan lifeline :  Instance Name : Class Name .

.Messages   Message pertama pada diagram sequence selalu dimulai dari atas dan tipikalnya diletakkan pada sisi kiri dari diagram untuk mudah. Message Subsequent ditambahkan ke diagram lebih rendah (bawah) dari previous message.

)      Object analyst membuat panggilan ke objek system dimana instance= ReportingSystem class. Object system kemudian memanggil getSecurityClearance method dengan argument= userId pada secSystem object. Object analyst memanggil objek system untuk menjalankan getAvailableReports method. dimana tipe class= SecuritySystem secSystem object mengembalikanreturn userClearance ke system object ketika getSecurityClearance method dipanggil.Message (cont. object system mengembalikan return= availableReports ketika getAvailableReports method dipanggil. .

.)  object system memanggil determineAvailableReports method.Message (cont.

)  Asynchronous Messages : digunakan pada proses konkurensi .Message (cont.

akan ada waktu ketika kondisi bertemunya message yang dikirim ke objek. addStudent message hanya dikirimkan jika accounts receivable system mengembalikan return past due balance bernilai “nol” .  guard adalah text "[pastDueBalance = 0]." dengan memiliki guard pada message tersebut.Guards  Ketika memodelkan interaksi objek.

Spesifikasi UML 2 identifikasi 11 tipe interaksi untuk combined fragment. options. and loops)   combined fragment digunakan untuk mengelompokkan sekumpulan message bersama untuk menggambarkan aliran kondisional pada sequence diagram. .Combined fragments (alternatives.

Alternatives   Alternatives digunakan untuk menggambarkan mutually exclusive memilih dua atau lebih message sequence. contoh logika :  if saya beli 3 item. else saya memperoleh 10% discount dari belanjaan . then saya dapat 20% discount dari belanjaan. Alternatives adalah model klasik "if then else".

Alternatives (cont.) .

. if sedikitnya 5 donat pada rak then buat 2 lusi lagi donut). memberikan kepastian kondisi. akan muncul atau sequence tidak muncul option adalah model sederhana pernyataan "if then" (i.Option   Option combination fragment digunakan untuk model sequence untuk. .e.

. If student's past due balance ≠ zero (nol). getCostOfClass. then sequence skip mengirim beberapa message dalam option combination fragment. then addStudent.Option (Cont.) if a student's past due balance = zero (nol). dan chargeForClass messages dikirim.

memodelkan repeating sequence dengan loop combination fragment.Loops   Occasionally kita membutuhkan model sequence perulangan (repetitive sequence). Pada UML 2. .

Loops (cont.) .

Referencing another sequence diagram    Mulai diperkenalkan pada UML 2. Interaction occurrences menambah kemampuan diagram sequence lama (primitive) ke dalam diagram sequence lebih kompleks. "Interaction Occurrence". dan nama diagram sequence yang direferensikan ditemaptkan pada sepanjang area isi frame dengan beberapa parameter pada diagram sequence. . text "ref" ditempatkan dalam frame namebox.

Interaction Occurrence .

Interaction Occurrence (cont.) .

Gates   Gates cara mudah memodelkan informasi yang dilewatkan antara diagram sequence dengan konteks. Gate adalah hanya sebuah message yang mengilustrasikan satu koneksi akhir edge frame diagram sequence dan koneksi akhir lain ke lifeline .

Gates (cont.) .

Gates (cont.) .

"  Ketika message break combined fragment dieksekusi. message remainder interaksi enclosing tidak berjalan karena sequence dibreak keluar dari interkasi enclosing    break combined fragment adalah seperti kata kunci break dalam bahasa pemrograman seperti C + + atau Java Breaks yang paling umum digunakan untuk penanganan exception model . dengan dua pengecualian. Namebox frame break dengan text "break" bukan "option.Break  hampir identik dengan setiap cara untuk option combined fragment.

.

dan menuliskan text "par" ke dalam namebox frame Pemecahan bagian isi frame kedalam operand2 dipisahkan secara horizontol oleh garis putusputus Setiap operand dalam frame merepresentasikan eksekusi thread dilakukan dalam parallel. beberapa sistem menanganinya dengan pemrosesan sebagian dengan pararel parallel combination fragment digambarkan dengan menggunakan frame.Parallel     Ketika waktu pemrosesan task yang kompleks membutuhkan porsi komplit yang lama dari yang diinginkan. .

Parallel (cont.) A microwave is an example of an object that does two tasks in parallel .

Alasan sequence diagram sangat berguna karena digambarkan logika interaksi antara objek dalam sistem dalam urutan waktu itu terjadinya interaksi .Summary   Diagram sequence adalah diagram yang baik untuk dokumen kebutuhan sistem dan menyamakan desain sistem.

References    UML 2.0 Superstructure Final Adopted Specification UML 2 Sequence Diagram Overview UML 2 Tutorial .

Objects to use: “CampainManager”. sequence diagram juga harus menunjukkan kasus ketika baru dibuat iklan. and “Advert” . “Client”. “Campaign”.Try this yourself… Gambarkan sequence diagram memodelkan kasus ketika seorang manajer kampanye iklan mengambil rincian kampanye iklan klien tertentu dan daftar rinci iklan spesifik dari kampanye. Hanya pesan panggilan (sinkron) harus digunakan dalam contoh ini dan menggunakan kondisi yang Anda anggap perlu iterasi.

A Solution to Previous Slide :CampaignManager :Client :Campaign :Advert getClientName() listCampaigns() [For all client's campaigns]*getCampaignDetails() listAdverts() [For all adverts in campaign]*getAdvertDetails() addNewAdvert() Advert() new Ad:Advert .

Pemboran akan berhenti ketika semua list dicapai atau proses di interrupt user. dimana koordinat paling sedikit satu ko-ordinat. Ko-ordinat dibuat berdasarkan list. . Mesin akan membuat lubang di PCB dengan dimensi ko-ordinat.Try this too… Buat diagram swquence memodelkan perilaku mesin bir PCB.

A Solution to Previous Slide loadFile(file) :Computer :drillController :Driller Drill(coord) initSeq() move(offset) finalSeq() [while not EOF]*Drill(coord) .

Question .

Sign up to vote on this title
UsefulNot useful