MODUL 8 : Object Interaction

dokumen-dokumen yang mirip
Pengembangan Aplikasi Perangkat Lunak

BAB II LANDASAN TEORI Membangun Aplikasi Database Oracle dengan VB. Koneksi database adalah sebuah modul (obyek) yang bekerja untuk

Pemodelan Berorientasi Objek

DAFTAR SIMBOL. Notasi Keterangan Simbol. Actor adalah pengguna sistem. Actor. tidak terbatas hanya manusia saja, jika

DAFTAR SIMBOL. Notasi Keterangan Simbol. Titik awal, untuk memulai suatu aktivitas. Titik akhir, untuk mengakhiri aktivitas.

Komponen. Actor Interface (Boundary) Proses pembacaan (Control) Nama table (Entity)

1. LifeLine Sequence Diagram dibuat dengan banyak lifeline. Setiap lifeline mendapatkan tempat sendiri sendiri. Beberapa jenis lifeline antara lain

12. Component Diagram

11/29/2016. Sequence Diagram. Sequence Diagram. Sequence Diagram. Sequence Diagram. Prodi. Informatika FASILKOM UIGM SHINTA P.

BAB II TINJAUAN PUSTAKA. yang ditandai dengan saling berhubungan dan mempunyai satu fungsi atau tujuan

MODUL 4 Unified Software Development Process (USDP)

SHINTA P. SARI FASILKOM UIGM

Sequence Diagram. Merupakan salah satu diagram interaksi yang

1. SIMULA di perkenalkan pertama kali pada tahun.. a d b e c Hal penting dalampengembangan berorientasi objek

Membuat Sequence Diagram Menggunakan Visual Paradigm

BAB 2 LANDASAN TEORI

Gambar Use Case Diagram

SEQUENCE DIAGRAM Yu l i Pu r wat i, M. Ko m

Unified Modelling Language UML

MODUL 2 CANDIDATE CLASS DAN INTERACTION DIAGRAM

SOAL PRA UTS PSBO. 1.SIMULA di perkenalkan pertama kali pada tahun.. a d b e c. 1970

OOAD (Object Oriented Analysis and Design) UML part 2 (Activity diagram, Class diagram, Sequence diagram)

Sequence Diagram. Mendefinisikan interaksi yang ada di dalam sistem. Mengilustrasikan objek yang berpartisipasi di dalam use case

DAFTAR SIMBOL. case. Dependency 2. Generalization 3. 4 Include. 5 Extend. 6 Associaton

2. Dibawah ini yang bukan merupakan bentuk bentuk objek adalah

Notasi dalam UML. Actor

DAFTAR SIMBOL 1. CLASS DIAGRAM. Nama Komponen Class

DAFTAR SIMBOL. Tabel Notasi Use Case Diagram

Modeling Tools StarUML

DIAGRAM SEQUENCE UML

UNIFIED MODELING LANGUAGE

Lampiran 1. Notasi UML. Generalization. Aggregation. Association 0..* 1..* L.1. Class(generalization) Class(Specialization) Class(Specialization)

2. Fungsi di dalam kelas yang dikombinasikan bentuk tingkah laku kelas dinamakan dengan. c.operasi

Teknik Informatika S1

Program Design Method Rangkuman UAS. Diagram Use Case ( Use Case Diagram ) Use Case. Actor. Administrator. Relationship. Boundary

Kegunaan tahap ini adalah untuk memobilisasi dan mengorganisir g SDM yang akan melakukan Reengineering

Yuli Purwati, M.Kom USE CASE DIAGRAM

ANALISA & PERANCANGAN SISTEM INFORMASI. Sufajar Butsianto, M.Kom

DAFTAR ISTILAH. Activity Diagram

ABSTRAK. Kata kunci : voucher elektronik SMS (Short Message Service)

Sequence Diagram. Pertemuan 5

Pertemuan4. UsecaseDiagram

Unified Modeling Language

Perancangan Sistem Informasi Penjualan dan Inventori pada PT. Oriental Chitra International

Tugas Mandiri Analisis dan Perancangan Sistem II ACTIVITY & SWIMLANE DIAGRAM

BAB II TINJAUAN PUSTAKA DAN LANDASAN TEORI

PENGANTAR RUP & UML. Pertemuan 2

UsecaseDiagram. Pertemuan 4

Gambar L.37 Form Print Laporan Absensi Harian Gambar L.38 Form Print Laporan Absensi Periode

Pengantar Analisis dan Desain Berbasis Obyek. Object Oriented Analysis and Design

BAB II TINJAUAN PUSTAKA. lebih berarti bagi yang menerimanya. Definisi atau pengertian sistem secara

Pengantar Analisis dan Desain Berbasis Obyek (Object Oriented Analysis and Design)

BAB 2 LANDASAN TEORI. bersama-sama untuk mencapai tujuan tertentu. bersatu untuk mencapai tujuan yang sama.

Gambar Window Transaksi Pengeluaran Barang Gudang

BAB II TINJAUAN PUSTAKA. uang, dan informasi. Sumber daya tersebut bekerjasama menuju

2.6 Cool Record Edit Pro Adobe Photoshop Star Uml Pengertian Uml BAB III OBJEK DAN METODE PENELITIAN...

Diagram Use Case. Pertemuan 3

BAB II LANDASAN TEORI

Kuliah#3 TSK-612 Sistem Embedded Terdistribusi - TA 2011/2012. Eko Didik Widianto

DAFTAR SIMBOL. Simbol-simbol pada Usecase. No Simbol Nama Keterangan. Fungsionalitas yang disediakan. sistem sebagai unit-unit yang.

Gambar 4.26 : Rancangan Layar Cetak Kwitansi Pemeriksaan Lab Gambar 4.27 : Rancangan Layar Entry Data Pemeriksaan Radiologi Gambar 4.

Requirements Analysis

BAB II LANDASAN TEORI

BAB III ANALISIS DAN PERANCANGAN

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

DAFTAR SIMBOL. Fungsionalitas yang disediakan sistem sebagai unit-unit yang saling bertukar pesan antar unit atau aktor.

Lampiran 1 - Pengenalan terhadap UML (Unified Model Language)

UML & USE CASE DIAGRAM. Oleh : Bambang Hermawan, S.Si

PEMBANGUNAN APLIKASI PENCATATAN PENANGANAN GANGGUAN PT. TELKOM REGIONAL BANDUNG

BAB II LANDASAN TEORI

BAB II LANDASAN TEORI

1. SIMULA di perkenalkan pertama kali pada tahun.. a d b e c. 1970

Teknik Informatika S1

BAB III ANALISA DAN PERANCANGAN

Lampiran 1. Notasi yang digunakan dalam Class Diagram. Class. Association. dua class atau lebih. Multiplicity. instances dari class lain.

Object Oriented Analysis (OOA) dan Object Oriented Design (OOD)

MODUL 9 : Specifying Control

BAB III ANALISA MASALAH DAN PERANCANGAN PROGRAM

DAFTAR ISI. KATA PENGANTAR... i. DAFTAR ISI... iii. DAFTAR GAMBAR... xi. DAFTAR TABEL... xvii. DAFTAR SIMBOL... xx BAB I PENDAHULUAN...

Disain System Berorientasi Objek (Unified Modeling Language) ( Studi Kasus : Sistem Informasi Manajemen Perpustakaan )

LAMPIRAN A. Class. Association. dua class atau lebih. Multiplicity. instances dari class lain. Generalization. lain.

Realisasi Use Case. Nisa ul Hafidhoh

BAB IV ANALISA DAN PERANCANGAN SISTEM

BAB II LANDASAN TEORI. Anindita Dwi Respita,2015. a. Penelitian ini menjelaskan tentang tujuan : menggunakan metode market basket analysis.

BAB II LANDASAN TEORI

BAB IV ANALISIS DAN PERANCANGAN SISTEM. Kegiatan analisis sistem yang berjalan dilakukan dengan analisis yang

BAB II LANDASAN TEORI

BAB II LANDASAN TEORI

Review Rekayasa Perangkat Lunak. Nisa ul Hafidhoh

Pemodelan Berorientasi Objek

BAB IV ANALISIS DAN PERANCANGAN SISTEM

NOTASI UML CITRA N., S.SI, MT SISFO - UNIKOM

II.3.5 Statechart Diagram... II-14 II.3.6 Activity Diagram... II-15 II.3.7 Component Diagram... II-16 II.3.8 Deployment Diagram... II-16 II.3.

BAB II LANDASAN TEORI

BAB II LANDASAN TEORI

MODUL 7 : Refining Requirement Model

BAB II LANDASAN TEORI. pendekatan komponen.dengan pendekatan prosedur, sistem dapat didefinisikan

BAB III ANALISIS DAN PERANCANGAN SISTEM

Transkripsi:

MODUL 8 : Object Interaction Contents 8.1 Pendahuluan... 2 8.2 Elemen pada Sequence Diagram... 3 8.2.1 Partisipant... 3 Interaksi Object dan Collaborasi... 3 8.3 Interaksi Sequence Diagram... 4 8.3.1 Konsep dan Notasi... 5 Boundary dan control Class... 7 Object Destruction... 7 Refrexive Message... 8 Focus of Control... 9 Replay Message... 10 Object Selector... 10 Interaction Operation... 12 8.3.2 Menangani Kompleksitas... 13 Interaction fragment... 14 Lifelines untuk subsystems atau kumpulan Object... 16 Continuations... 19 8.4 Petunjuk pembuatan Sequence Diagram... 19 Referensi... 21 1

8.1 Pendahuluan Sequence diagram merupakan sebuah diagram yang menggambarkan interaksi antar objek di dalam sebuah system. Interaksi tersebut berupa message yang digambarkan terhadap waktu. Sequence diagram terdiri dari dimensi horizontal (objek-objek) dan dimensi vertical (waktu). Diagram ini juga menggambarkan urutan even yang terjadi. Dan lebih detail dalam menggambarkan aliran data, termasuk data atau behavior yang dikirimkan atau diterima. Namun, diagram ini kurang mampu menjelaskan detail dari sebuah algoritma, seperti loop, branching. Tabel 8.1. Komponen pada Sequence Diagram Actor Object Lifeline Menggambarkan sebuah orang atau entitas eksternal yang berinteraksi dengan sistem Menggambarkan sebuah objek dalam sebuah system atau salah satu komponennya. Objek merupakan sebuah instansi dari sebuah class. Bagian abc merupakan nama objek dan ABC merupakan namaa class Menggambarkan daur hidup sebuah objek Activation bar Menggambarkan durasi/lamanyaa pengerjaan sebuah pesan (message). Message Synchronous Message Sebuah message sederhana antara elemen header (bias berupa synchronous atau asynchronous). Dan juga mengindikasikan komunikasi antara objek. Menggambarkan message ke elemen (objek) lain, dimana message ini mengaktifkan sebuah proses dan sampai selesai, baru bisa mengirimkan sebuah message baru. Return Suatu hasil kembalian sebuah sebuah message) operasi (feedback dari 2

Asynchronous Message Destroy Element Destroy Message Menggambarkan message ke elemen (objek) lain, dimana message ini mengaktifkan sebuah proses dan ditengah- bisa mengirimkan tengah proses, pengirim message message baru. Menggambarkan penghancuran sebuah elemen header (objek) setelah selesai sebuah operasi Menggambarkan penghancuran sebuah elemen header (objek) sebagai akibat dari sebuah message dari elemen/objek lain 8.2 Elemen pada Sequence Diagram 8.2.1 Partisipant Interaksi Object dan Collaborasi Pada saat sebuah objek berkomunikasi dengan mengirimkan pesan ke objek yang lain maka sebuah operasi yang dimiliki oleh objek penerima dipanggil oleh objek pengirim (send message). Misalkan terjadi komunikasi antara class Campaign dan Class Advert. Class Campaign ingin mengetahui berapa cost untuk masing-masing Adverd. Dalam bahasa pemrograman ditulis sebagai berikut. currentadvertcost = anadvert.getcost () sebuah objek dari class adverd di indentifikasi dengan nama anadvert dan respon diidentifikasi sebagai return value yang disimpan dalam variabel currentadvertcost. Satau hal yang mungkin terjadi adalah sulit untuk menentukan apa pesan (message) yang di kirim oleh masing-masing object. Pada kasus diatas jelas bahwa operasi getcost terdapat pada class Adverd. Gambar 8.1. Object Messagin Sumber: Simon Bennet, Steve McRobb and Ray Farmer, Object Oriented Systems Analysis and Design Using UML, Edisi 3. ; McGraw Hill, 2006. 3

Pada analisa berorientasi objek, sebaiknya fungsionalitas dari setiap kelas tersebar merata. Hal tersebut bukan berarti setiap kelas memiliki tanggung jawab yang sama melainkan tergantung dari level class. Pada saat fungsionalitas tersebar merata maka akan memudahkan untuk mengembangkan, melakukan tes serta memelihara. Class yang relatif kecil sangat potensial untuk digunakan kembali dibandingkan dengan class yang besar dan kompleks. Gambar 8.2 Ressilience of a Design Funsionalitas yang merata pada class akan berdampak pada sistem dimana penangannya akan lebih mudah jika ada perubahan requirement sehingga perubahan aplikasi tidak terlalu. Besar. 8.3 Interaksi Sequence Diagram Merupakan salah satu diagram interaksi yang terdapat pada UML. Secara sematik hampir mirip dengan communication diagram jika kasusnya sederhana. Sequence Diagram menggambarkan komunikasi antar objek sesuai dengan urutan waktu. Sequence diagram bisa digambarkan dengan level yang lebih rinci sesuai dengan tujuan yang akan dicapai. 4

8.3.1 Konsep dan Notasi Setiap objek pada diagram sequence direpresentasikan dengan lifeline berupa garis vertikal sebagai simbol objek yang ditempatkan pada bagian atas diagram. Sebuah Message digambarkan dengan garis horisontal berpanah dari satu lifeline ke yang lainnya yang diberi nama sesuai dengan nama messagenya. Setiap message dapat diberi nomor untuk menunjukkan urutan dari pengiriman message namun hal tersebut tidak terlalu penting jika message tersebut ditempatkan sesuai dengan posisinya sesuai dengan urutan waktu. Padaa saat message dikirim ke sebuah objek, maka objek tersebut memanggil sebuah operasi yang dimiliki oleh objek yang dikirim message. Gambar 8.3 Sequence Diagram untuk Use case Add a new advert to a campaign 5

Sebuah pengulangan ditandai dengan kotak persegi panjang yang diberi label loop pada bagian atas. Bagian loop tersebut akan dijalankan jika kondisi dari constraint yang membatasi bernilai benar. Sebuah message Synchronous digambarkan dengan garis panah penuh. Gambar 8.4 Sequence Diagram untuk menunjukkan pesan dan eksekusi event dan state 6

Boundary dan control Class Beberapa UseCase memiliki setidaknya 1 buah object boundary yang mengatur interaksi antara Actor dan system. Padaa sequence diagram di representasikan dengan lifeline AddAdvertUI. Control object direpresentasikan dengan lifeline AddAdvert yang mengatur semua komunikasi object tersebut. Gambar 8.5 Sequence Diagram untuk Use case Add a new advert to a campaign dengan boundary dan control classes Object Destruction Sebuah object bisa sajaa dibentuk atau dihilangkan pada saat terjadi interaksi. Pada sequence diagram untuk menghilangkan object dilakukan dengan menggunakan tanda silang (X). 7

Gambar 8.6 Obejct destructions Refrexive Message Suatu object bisa memanggil untuk meminta operasi pada dirinya sendiri. Pada kasus dibawah ini ketika object Campaignmanager meminta berapa biaya yang dibutuhkan pada setiap campaign (checkcampaignbudget) maka object Campaign meminta pengeluaran dari setiap Adverd (getcost) dengan mencari berapa pengeluaran setiap Adverdd pada Campaign yang dimaksud. Hal ini dilakukan secara iterasi untuk setiap campaign (loop). Selain dari cost setiap adverd, budged dari campaign diperoleh dari overhead dimana overhead adaah operasi yang dimiliki oleh campaign itu sendiri. Proses pemanggilan operasi ke diri sendiri disebut reflexive message. 8

Gambar 8.7 Sequence Diagram dengan Refelexive Message Focus of Control Menunjukkan waktu selama proses yang terjadi pada object. Bagian dari kegiatan yang terdapat pada focus of control ditunjukan dengan garis persegi panjang. 9

Gambar 8.8 Sequence Diagram dengan Refelexive Message Replay Message Sebuah pesan balasan (replay message) ditampilkan dengan menggunakan tanda panah putus- putus. Namun hal tersebut sifatnya optional. Object Selector Sequence diagram dapat digunakan untuk menggambarkan obyek yang dipilih pada iterasi tertentu (dari sebuah loop yang beinterasi dari 1 ke nilai campaign.count. 10

Gambar 8.9 Sequence Diagram dengan Object Slector Notation 11

Interaction Operation Sequence diagram juga dapat menggambarkan operator interaksi loop yang digambarkan dengan parameter. Parameter pertama adalah jumlah minimum iterasii dan paramenter kedua adalah jumlah maksimumm iterasi. Gambar 8.10 Sequence Diagram dengan interaction operator with paramenter Branching Beberapa interakasi pada sequence diagram dapat memiliki dua atau lebih alternative execution pathways. Setiap alternatif menggambarkan suatu cabang pada urutan yang mungkin dari event untuk use case yang diwakilinya. 12

Gambar 8.11 Sequence Diagram yang menunjukkan percabangan (branching) 8.3.2 Menangani Kompleksitas Untuk mengendalikan kompleksitas sequence diagram dapat dilakukan dengan beberapa cara antara lain : Interaction fragments Lifelines untuk subsystems atau kumpulan Object Continuations Interaction Overview Diagrams 13

Interaction fragment Disini interaksi dimodelkan dengan lebih dari satu sequence diagram. Gambar di bawah ini menunjukkan ada dua interkasi yang terjadi, yaitu List client sampaign dan Get campaign budget. Keyword ref menunjukkan interakasi tersebut dan mengacu ke sequence diagram List ckient campaign dan Get campaign budget. Gambar 8.12 Sequence Diagram Check campaign budget dengann interaction occurences 14

Gambar 8.13 Sequence Diagram untuk interaction fragment List client campaign 15

Gambar 8.14 Sequence Diagram untuk interaction fragment Get campaign budget Lifelines untuk subsystems atau kumpulan Object Untuk interaksi yang kompleks kita dapat menggambarkan dengan memisahkannya menggunakan lifeline untuk mewakili sekumpulan obyek dan interaksinya atau mewakili subsistem. Seperti yang digambarkan oleh gambar 8.15 dan gambar 8.16 di bawah ini. 16

Gambar 8.15 Sequence Diagram untuk interactionn Check campaign budget 17

Gambar 8.16 Sequence Diagram untuk interaction fragment List client campaign 18

Continuations UML 2.0 menyediakan notasi untuk menghubungkan sequence diagram. Continuations dapat ditentukan dengan menggabungkan fragment alt untuk menghubungkan kembali ke sequence diagram yang dirujuk. Gambar 8.17 menunjukkan hal tersebut. Gambar 8.17 Sequence Diagram yang menunjukkan penggunaan Continuations 8.4 Petunjuk pembuatan Sequence Diagram Untuk pembuatan sequence diagram dapat dilakukan cara sebagai berikut : 1. Tentukan pada tingkat mana pemodelan interaksi. 2. Mengidentifikasi unsur-unsur utama yang terlibat dalam interaksi. 3. Pertimbangkan alternatif skenario yang mungkin diperluka 4. Identifikasi interaksii yan g sudah di buat sebelumanya. 19

5. Gambarkan outline struktur diagram. 6. Tambahkan interaksi rinci. 7. Periksa konsistensi sesuai dengan urutan diagram 8. Periksa konsistensi dengan diagram UML lain atau model. 20

Referensi 1. Simon Bennet, Steve McRobb and Ray Farmer, Object Oriented Systems Analysis and Design Using UML, Edisi 3. ; McGraw Hill, 2006. (SB) 21