P. 1
3. UML Sequence Diagram

3. UML Sequence Diagram

|Views: 144|Likes:
Published by Lusa Hasana

More info:

Published by: Lusa Hasana on Jun 03, 2012
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PPT, PDF, TXT or read online from Scribd
See more
See less

06/03/2012

pdf

text

original

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

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

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

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

Menunjukkan nilai kembali dari obyek ke obyek yang megirim pesan  Reply ● Sumber : schaum outline .  Asynchronous ● Pesan yang dikirim oleh 1 obyek ke obyek lain dan obyek pertama tidak menunggu sampai hasil aksi selesai.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.

4. 3. 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 . Set konteks (i. 2.Guideline untuk membuat Diagram Sequence UML 1.e. 5. 6.

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 .

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

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

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

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

Guards  Ketika memodelkan interaksi objek." dengan memiliki guard pada message tersebut.  guard adalah text "[pastDueBalance = 0]. 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” .

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

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

Alternatives (cont.) .

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

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

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

Loops (cont.) .

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

Interaction Occurrence .

Interaction Occurrence (cont.) .

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

Gates (cont.) .

Gates (cont.) .

Break  hampir identik dengan setiap cara untuk option combined fragment."  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 . Namebox frame break dengan text "break" bukan "option. dengan dua pengecualian.

.

. beberapa sistem menanganinya dengan pemrosesan sebagian dengan pararel parallel combination fragment digambarkan dengan menggunakan frame. 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.Parallel     Ketika waktu pemrosesan task yang kompleks membutuhkan porsi komplit yang lama dari yang diinginkan.

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

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

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

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. and “Advert” . Hanya pesan panggilan (sinkron) harus digunakan dalam contoh ini dan menggunakan kondisi yang Anda anggap perlu iterasi. Objects to use: “CampainManager”. “Client”. “Campaign”. sequence diagram juga harus menunjukkan kasus ketika baru dibuat iklan.

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 .

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

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

Question .

You're Reading a Free Preview

Download
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->