Diagram Interaksi, Kolaborasi & Urutan dengan Contoh

Apa itu Diagram Interaksi?

Diagram Interaksi digunakan dalam UML untuk menjalin komunikasi antar objek. Itu tidak memanipulasi data yang terkait dengan jalur komunikasi tertentu. Diagram interaksi sebagian besar berfokus pada penyampaian pesan dan bagaimana pesan-pesan ini membentuk satu fungsi sistem. Diagram interaksi dirancang untuk menampilkan bagaimana objek akan mewujudkan kebutuhan tertentu dari suatu sistem. Komponen penting dalam diagram interaksi adalah garis hidup dan pesan.

Berbagai elemen UML biasanya memiliki diagram interaksi. Rincian interaksi dapat ditunjukkan menggunakan beberapa notasi seperti diagram urutan, diagram waktu, diagram komunikasi/kolaborasi. Diagram interaksi menangkap perilaku dinamis dari sistem apa pun.

Diagram Interaksi
Notasi Diagram Interaksi

Berikut ini adalah berbagai jenis diagram interaksi yang didefinisikan dalam UML:

  • diagram urutan
  • Diagram kolaborasi
  • Diagram waktu

Tujuan dari diagram urutan di diagram UML adalah memvisualisasikan urutan aliran pesan dalam sistem. Sequence Diagram dalam Rekayasa Perangkat Lunak menunjukkan interaksi antara dua garis hidup sebagai rangkaian peristiwa yang diurutkan berdasarkan waktu.

Diagram Kolaborasi dalam UML disebut juga diagram komunikasi. Tujuan dari diagram kolaborasi adalah untuk menekankan aspek struktural dari suatu sistem, yaitu bagaimana berbagai jalur kehidupan dalam sistem terhubung.

Diagram waktu fokus pada kejadian di mana pesan dikirim dari satu objek ke objek lainnya.

Tujuan Diagram Interaksi

Diagram interaksi membantu Anda memvisualisasikan perilaku interaktif suatu sistem. Diagram interaksi digunakan untuk mewakili bagaimana satu atau lebih objek dalam sistem terhubung dan berkomunikasi satu sama lain.

Diagram interaksi fokus pada perilaku dinamis suatu sistem. Diagram interaksi memberi kita konteks interaksi antara satu atau lebih jalur hidup dalam sistem.

In UML, diagram interaksi digunakan untuk tujuan berikut:

  • Diagram interaksi digunakan untuk mengamati perilaku dinamis suatu sistem.
  • Diagram interaksi memvisualisasikan komunikasi dan urutan pesan yang lewat dalam sistem.
  • Diagram Pemodelan Interaksi merepresentasikan aspek struktural dari berbagai objek dalam sistem.
  • Diagram interaksi mewakili urutan interaksi dalam suatu sistem.
  • Diagram interaksi menyediakan sarana untuk memvisualisasikan data waktu nyata melalui UML.
  • Diagram Interaksi UML dapat digunakan untuk menjelaskan arsitektur sistem berorientasi objek atau terdistribusi.

Terminologi penting

Diagram interaksi berisi garis hidup, pesan, operator, invarian keadaan, dan batasan.

Lifeline

Garis hidup mewakili satu peserta dalam suatu interaksi. Ini menjelaskan bagaimana sebuah instance dari pengklasifikasi tertentu berpartisipasi dalam interaksi.

Lifeline mewakili peran yang dapat dimainkan oleh instance dari classifier dalam interaksi. Berikut ini adalah berbagai atribut dari lifeline,

  1. Nama
    1. Ini digunakan untuk merujuk garis hidup dalam interaksi tertentu.
    2. Nama garis hidup adalah opsional.
  2. Tipe
    1. Ini adalah nama pengklasifikasi yang mana garis hidup mewakili sebuah instance.
  3. Pemilih
    1. Ini adalah kondisi Boolean yang digunakan untuk memilih instance tertentu yang memenuhi persyaratan.
    2. Atribut pemilih juga opsional.

Notasi garis hidup dijelaskan pada bagian notasi.

Pesan

Pesan adalah jenis komunikasi khusus antara dua jalur kehidupan dalam suatu interaksi. Pesan melibatkan aktivitas berikut,

  1. Pesan panggilan yang digunakan untuk memanggil suatu operasi.
  2. Sebuah pesan untuk membuat sebuah instance.
  3. Sebuah pesan untuk menghancurkan sebuah instance.
  4. Untuk mengirim sinyal.

Ketika lifeline menerima pesan panggilan, ia bertindak sebagai permintaan untuk menjalankan operasi yang memiliki tanda tangan serupa seperti yang ditentukan dalam pesan. Ketika garis hidup mengeksekusi sebuah pesan, ia mempunyai fokus kendali. Seiring kemajuan interaksi dari waktu ke waktu, fokus kendali berpindah di antara berbagai jalur kehidupan. Gerakan ini disebut aliran kendali.

Berikut ini adalah pesan yang digunakan dalam Diagram Interaksi Sistem:

Nama Pesan Arti
Syncpesan yang mengerikan Pengirim pesan terus menunggu penerima mengembalikan kendali dari eksekusi pesan.
Pesan asinkron Pengirim tidak menunggu balasan dari penerima; sebaliknya, ia melanjutkan eksekusi pesan berikutnya.
Kembalikan pesan Penerima pesan sebelumnya mengembalikan fokus kendali ke pengirim.
Pembuatan objek Pengirim membuat instance pengklasifikasi.
Penghancuran objek Pengirim menghancurkan instance yang dibuat.
Pesan ditemukan Pengirim pesan berada di luar lingkup interaksi.
Pesan yang hilang Pesan tersebut tidak pernah mencapai tujuannya, dan hilang dalam interaksi.

Nyatakan invarian dan batasan

Saat sebuah instance atau lifeline menerima pesan, hal ini dapat menyebabkan statusnya berubah. Keadaan adalah suatu kondisi atau situasi selama masa hidup suatu objek yang memenuhi batasan tertentu, melakukan beberapa operasi, dan menunggu suatu kejadian.

Dalam diagram interaksi, tidak semua pesan menyebabkan perubahan status suatu instance. Beberapa pesan tidak memiliki nilai beberapa atribut. Tidak mempunyai efek samping pada keadaan suatu benda.

Operator

Operator menentukan operasi bagaimana operan akan dieksekusi. Operator di UML mendukung operasi pada data dalam bentuk percabangan maupun iterasi. Berbagai operator dapat digunakan untuk memastikan penggunaan iterasi dan percabangan dalam model UML. Operator opt dan alt digunakan untuk operasi percabangan. Operator loop digunakan untuk memastikan operasi iterasi di mana suatu kondisi dijalankan berulang kali hingga diperoleh hasil yang memuaskan. Operator break digunakan di dalam operasi loop atau iterasi. Ini memastikan bahwa loop dihentikan setiap kali operator break ditemui. Jika kondisi break tidak ditentukan, maka loop akan dieksekusi berkali-kali, yang mengakibatkan program crash.

Berikut ini adalah operator yang digunakan dalam diagram interaksi:

Operator Nama Arti
Memilih pilihan Operan dijalankan jika kondisinya benar.
misalnya, Jika lain
lain Alternatif Operan yang kondisinya benar akan dieksekusi.
misalnya, beralih
Lingkaran Lingkaran Ini digunakan untuk mengulang instruksi untuk jangka waktu tertentu.
Istirahat Istirahat Ini memutus perulangan jika suatu kondisi benar atau salah, dan instruksi berikutnya dijalankan.
Ref Referensi Ini digunakan untuk merujuk pada interaksi lain.
oleh Paralel Semua operan dieksekusi secara paralel.

Pengulangan

Dalam diagram interaksi, kita juga dapat menampilkan iterasi menggunakan ekspresi iterasi. Ekspresi iterasi terdiri dari penentu iterasi dan klausa iterasi opsional. Tidak ada sintaks yang ditentukan sebelumnya untuk iterasi UML.

Dalam iterasi untuk menunjukkan bahwa pesan dikirim secara paralel, digunakan penentu iterasi paralel. Penentu iterasi paralel dilambangkan dengan *//. Iterasi dalam UML dicapai dengan menggunakan operator loop.

Bercabang

Dalam diagram interaksi, kita dapat merepresentasikan percabangan dengan menambahkan kondisi penjagaan pada pesan. Kondisi penjagaan digunakan untuk memeriksa apakah suatu pesan dapat diteruskan atau tidak. Sebuah pesan dikirim hanya jika kondisi penjagaannya benar. Sebuah pesan dapat memiliki beberapa kondisi penjagaan, atau beberapa pesan dapat memiliki kondisi penjagaan yang sama. Percabangan dalam UML dicapai dengan bantuan operator alt dan opt.

Ini adalah beberapa yang terpenting terminologi yang digunakan dalam diagram interaksi UML.

Jenis diagram Interaksi dan Notasi

Berikut ini adalah berbagai jenis diagram interaksi yang didefinisikan dalam UML:

  • diagram urutan
  • Diagram kolaborasi
  • Diagram waktu

Notasi dasar interaksi adalah persegi panjang dengan segi lima di sudut kiri atas kotak persegi panjang.

Apa itu Diagram Urutan?

A Diagram Urutan hanya menggambarkan interaksi antar objek dalam urutan berurutan. Tujuan dari diagram urutan dalam UML adalah untuk memvisualisasikan urutan aliran pesan dalam sistem. Diagram urutan menunjukkan interaksi antara dua garis hidup sebagai rangkaian peristiwa yang diurutkan berdasarkan waktu.

  • Diagram urutan menunjukkan implementasi suatu skenario dalam sistem. Jalur hidup dalam sistem mengambil bagian selama eksekusi suatu sistem.
  • Dalam diagram sequence, garis hidup diwakili oleh batang vertikal.
  • Alur pesan antara dua objek atau lebih direpresentasikan menggunakan garis titik-titik vertikal yang membentang di bagian bawah halaman.
  • Dalam diagram urutan, berbagai jenis pesan dan operator digunakan seperti dijelaskan di atas.
  • Dalam diagram urutan, iterasi dan percabangan juga digunakan.
Diagram Urutan
Notasi dalam Sequence Diagram

Diagram sekuens di atas berisi notasi jalur hidup dan notasi berbagai pesan yang digunakan dalam diagram sekuens seperti pesan buat, pesan balasan, pesan asinkron, dan lain-lain.

Contoh diagram urutan

Contoh diagram sekuens berikut menggambarkan sistem pemesanan McDonald's:

Diagram Urutan
Diagram urutan sistem pemesanan Mcdonald

Urutan kejadian dalam diagram sequence yang diberikan adalah sebagai berikut:

  1. Memesan.
  2. Bayar uang ke konter tunai.
  3. Konfirmasi pesanan.
  4. Persiapan pesanan.
  5. Penyajian pesanan.

Jika seseorang mengubah urutan operasi, hal ini dapat mengakibatkan program terhenti. Hal ini juga dapat menyebabkan hasil yang salah atau bermasalah. Setiap urutan dalam diagram urutan yang diberikan di atas dilambangkan dengan menggunakan jenis pesan yang berbeda. Seseorang tidak dapat menggunakan jenis pesan yang sama untuk menunjukkan semua interaksi dalam diagram karena hal itu menimbulkan komplikasi dalam sistem.

Anda harus berhati-hati saat memilih notasi pesan untuk interaksi tertentu. Notasinya harus sesuai dengan urutan tertentu di dalam diagram.

Manfaat Diagram Urutan

  • Diagram urutan digunakan untuk mengeksplorasi aplikasi atau sistem nyata.
  • Diagram urutan digunakan untuk merepresentasikan aliran pesan dari satu objek ke objek lainnya.
  • Diagram urutan lebih mudah dipelihara.
  • Diagram urutan lebih mudah dibuat.
  • Diagram urutan dapat dengan mudah diperbarui sesuai dengan perubahan dalam suatu sistem.
  • Diagram urutan memungkinkan rekayasa mundur dan maju.

Kelemahan diagram urutan

  • Diagram sekuens dapat menjadi rumit ketika terlalu banyak jalur kehidupan terlibat dalam sistem.
  • Jika urutan urutan pesan diubah, maka hasil yang salah akan dihasilkan.
  • Setiap rangkaian perlu direpresentasikan menggunakan notasi pesan yang berbeda, yang mungkin sedikit rumit.
  • Jenis pesan menentukan jenis urutan di dalam diagram.

Apa itu Diagram Kolaborasi?

Diagram Kolaborasi menggambarkan hubungan dan interaksi antar objek perangkat lunak. Diagram ini digunakan untuk memahami arsitektur objek dalam suatu sistem, bukan aliran pesan seperti dalam diagram sekuens. Diagram ini juga dikenal sebagai “Diagram Komunikasi.”

Menurut Pemrograman Berorientasi Objek (OOP), suatu entitas objek memiliki berbagai atribut yang terkait dengannya. Biasanya, terdapat beberapa objek yang ada di dalam sistem berorientasi objek di mana setiap objek dapat dikaitkan dengan objek lain di dalam sistem. Diagram Kolaborasi digunakan untuk mengeksplorasi arsitektur objek di dalam sistem. Alur pesan antara objek dapat direpresentasikan menggunakan diagram kolaborasi.

Manfaat Diagram Kolaborasi

  • Ini juga disebut sebagai diagram komunikasi.
  • Ini menekankan aspek struktural dari diagram interaksi – bagaimana garis hidup terhubung.
  • Sintaksisnya serupa dengan diagram sekuensi kecuali bahwa lifeline tidak memiliki ekor.
  • Pesan yang diteruskan melalui urutan ditunjukkan dengan penomoran setiap pesan secara hierarki.
  • Dibandingkan dengan diagram urutan, diagram komunikasi secara semantik lemah.
  • Diagram objek adalah kasus khusus diagram komunikasi.
  • Hal ini memungkinkan Anda untuk fokus pada elemen daripada berfokus pada aliran pesan seperti yang dijelaskan dalam diagram urutan.
  • Diagram urutan dapat dengan mudah diubah menjadi diagram kolaborasi karena diagram kolaborasi tidak terlalu ekspresif.
  • Saat memodelkan diagram kolaborasi dengan diagram urutan, beberapa informasi mungkin hilang.

Notasi Diagram Kolaborasi
Notasi Diagram Kolaborasi

Notasi diagram kolaborasi di atas berisi garis hidup beserta konektor, loop mandiri, pesan maju, dan mundur yang digunakan dalam diagram kolaborasi.

Kelemahan Diagram Kolaborasi

  • Diagram kolaborasi dapat menjadi rumit ketika terlalu banyak objek hadir dalam sistem.
  • Sulit untuk mengeksplorasi setiap objek di dalam sistem.
  • Diagram kolaborasi memakan waktu.
  • Objek dihancurkan setelah penghentian suatu program.
  • Keadaan suatu objek berubah sesaat, sehingga sulit untuk melacak setiap perubahan yang terjadi dalam objek suatu sistem.

Contoh diagram kolaborasi

Diagram berikut menggambarkan urutan sistem manajemen siswa:

Diagram Kolaborasi

Diagram kolaborasi untuk sistem manajemen siswa

Diagram kolaborasi di atas mewakili sistem manajemen informasi siswa. Alur komunikasi pada diagram di atas diberikan oleh,

  1. Seorang siswa meminta login melalui sistem login.
  2. Mekanisme otentikasi perangkat lunak memeriksa permintaan tersebut.
  3. Jika entri siswa ada dalam basis data, maka akses diizinkan; jika tidak, kesalahan akan ditampilkan.

Apa itu Diagram Waktu?

Diagram Waktu adalah bentuk gelombang atau grafik yang digunakan untuk menggambarkan keadaan garis hidup pada waktu tertentu. Ini digunakan untuk menunjukkan transformasi suatu objek dari satu bentuk ke bentuk lain. Diagram waktu tidak memuat notasi seperti yang dipersyaratkan dalam diagram urutan dan kolaborasi. Aliran antara program perangkat lunak pada berbagai waktu direpresentasikan menggunakan bentuk gelombang.

  • Ini adalah representasi interaksi yang tepat yang berfokus pada waktu spesifik pesan yang dikirim antara berbagai objek.
  • Diagram waktu digunakan untuk menjelaskan detail waktu pemrosesan suatu objek tertentu.
  • Diagram waktu digunakan untuk menjelaskan bagaimana suatu objek berubah dalam masa hidupnya.
  • Diagram waktu sebagian besar digunakan dengan sistem terdistribusi dan tertanam.
  • Dalam UML, diagram waktu dibaca dari kiri ke kanan sesuai dengan nama garis hidup yang ditentukan di tepi kiri.
  • Diagram waktu digunakan untuk mewakili berbagai perubahan yang terjadi dalam suatu garis hidup dari waktu ke waktu.
  • Diagram waktu digunakan untuk menampilkan representasi grafis dari berbagai keadaan garis hidup per satuan waktu.
  • UML menyediakan berbagai notasi untuk menyederhanakan keadaan transisi antara dua garis hidup per satuan waktu.

Contoh diagram waktu

Diagram waktu yang diberikan di bawah ini mewakili beberapa fase a siklus hidup pengembangan perangkat lunak.

Diagram Waktu

Contoh Diagram Waktu

Pada diagram di atas, pertama-tama, perangkat lunak melewati fase persyaratan, kemudian fase desain, dan kemudian fase pengembangan. Output dari fase sebelumnya pada waktu tertentu diberikan ke fase kedua sebagai input. Dengan demikian, diagram waktu dapat digunakan untuk menggambarkan SDLC (Software Development Life Cycle) dalam UML.

Manfaat Diagram Waktu

  • Diagram waktu digunakan untuk mewakili keadaan suatu objek pada waktu tertentu.
  • Diagram waktu memungkinkan rekayasa mundur dan maju.
  • Diagram waktu dapat digunakan untuk melacak setiap perubahan di dalam sistem.

Kelemahan Diagram Waktu

  • Diagram waktu sulit untuk dipahami.
  • Diagram waktu sulit untuk dipertahankan.

Bagaimana cara menggambar diagram interaksi?

Diagram interaksi digunakan untuk mewakili perilaku interaktif suatu sistem. Diagram interaksi fokus pada perilaku dinamis suatu sistem. Diagram interaksi memberi kita konteks interaksi antara satu atau lebih jalur hidup dalam sistem.

Untuk menggambar diagram interaksi, pertama-tama Anda harus menentukan skenario yang akan Anda gambar diagram interaksinya. Setelah memutuskan situasinya, identifikasi berbagai jalur kehidupan yang akan terlibat dalam interaksi tersebut. Kategorikan semua elemen jalur kehidupan dan jelajahi untuk mengidentifikasi kemungkinan koneksi dan bagaimana jalur kehidupan tersebut saling terkait. Untuk menggambar diagram interaksi, hal-hal berikut diperlukan:

  1. Jumlah total jalur kehidupan yang akan menjadi bagian dari suatu interaksi
  2. adalah urutan aliran pesan dalam berbagai objek suatu sistem.
  3. Berbagai operator untuk memudahkan fungsionalitas diagram interaksi.
  4. Berbagai jenis pesan untuk menampilkan interaksi dengan lebih jelas dan tepat.
  5. Urutan pesan yang diurutkan.
  6. Organisasi dan struktur suatu objek.
  7. Berbagai konstruksi waktu suatu objek.

Penggunaan diagram interaksi

Diagram interaksi terdiri dari diagram urutan, diagram kolaborasi, dan diagram waktu. Berikut ini adalah tujuan khusus dari diagram interaksi:

  • Diagram urutan digunakan untuk mengeksplorasi aplikasi atau sistem nyata.
  • Diagram interaksi digunakan untuk mengeksplorasi dan membandingkan penggunaan diagram urutan, kolaborasi, dan timing.
  • Diagram interaksi digunakan untuk menangkap perilaku suatu sistem. Ini menampilkan struktur dinamis suatu sistem.
  • Diagram urutan digunakan untuk merepresentasikan aliran pesan dari satu objek ke objek lainnya.
  • Diagram kolaborasi digunakan untuk memahami arsitektur objek suatu sistem, bukan aliran pesan.
  • Diagram interaksi digunakan untuk memodelkan suatu sistem sebagai rangkaian peristiwa yang diurutkan berdasarkan waktu.
  • Diagram interaksi digunakan dalam rekayasa terbalik dan maju.
  • Diagram interaksi digunakan untuk mengatur struktur elemen interaktif.

Kesimpulan

  • Interaksi hanyalah unit perilaku pengklasifikasi.
  • Elemen penting dalam diagram interaksi adalah garis hidup dan pesan.
  • Diagram interaksi sebagian besar berfokus pada penyampaian pesan.
  • Diagram interaksi menangkap perilaku dinamis sistem apa pun.
  • Diagram interaksi berisi diagram urutan, diagram waktu, diagram komunikasi/kolaborasi.
  • Diagram UML urutan adalah untuk memvisualisasikan urutan aliran pesan dalam sistem.
  • Tujuan diagram kolaborasi adalah untuk menekankan aspek struktural.
  • Diagram waktu fokus pada kejadian di mana pesan dikirim dari satu objek ke objek lainnya.