de_DEen_USes_ESfr_FRjapl_PLpt_PTru_RUvizh_CNzh_TW

Panduan Lengkap tentang Hubungan Include dan Extend dalam Diagram Kasus Penggunaan UML

Bahasa Pemodelan Terpadu (UML)diagram kasus penggunaan adalah alat yang kuat untuk memodelkan kebutuhan fungsional suatu sistem. Mereka menggambarkan bagaimana aktor (pengguna atau sistem eksternal) berinteraksi dengan sistem melalui kasus penggunaan, yang mewakili fungsi-fungsi tertentu. Dua hubungan kunci dalam diagram kasus penggunaan—Include dan Extend—membantu mengelola kompleksitas dengan mengatur dan memodularisasi perilaku. Tutorial ini memberikan penjelasan rinci mengenai hubungan-hubungan ini, tujuannya, ciri-cirinya, dan aplikasi praktisnya, dilengkapi contoh untuk memastikan kejelasan.


Apa itu Hubungan Include dan Extend?

Dalam diagram kasus penggunaan UML, Include dan Extendhubungan Include dan Extend memungkinkan Anda memecah kasus penggunaan yang kompleks menjadi komponen-komponen kecil yang dapat digunakan kembali atau opsional. Hubungan-hubungan ini meningkatkan modularity, mengurangi redundansi, dan memperbaiki kejelasan diagram.

Include” and “Extend” Use Cases - Visual Paradigm Blog

  • Hubungan Include (<<include>>): Mewakili perilaku wajib yang selalu dieksekusi sebagai bagian dari kasus penggunaan dasar. Ini mengekstrak fungsi umum yang dibagikan di antara beberapa kasus penggunaan menjadi komponen yang dapat digunakan kembali.

  • Hubungan Extend (<<extend>>): Mewakili perilaku opsional atau kondisional yang memperluas kasus penggunaan dasar dalam kondisi tertentu, sehingga menjaga kasus penggunaan dasar tetap fokus pada fungsionalitas utamanya.

Kedua hubungan ini menggunakan panah putus-putus untuk menghubungkan kasus penggunaan, dengan label yang menunjukkan<<include>> atau <<extend>>. Arah panah sangat penting, karena mencerminkan ketergantungan antara kasus penggunaan.


Hubungan Include (<<include>>)

Tujuan

The SertakanHubungan ini digunakan untuk mengekstrak perilaku umum dan wajib dari beberapa use case ke dalam satu use case yang dapat digunakan kembali. Ini mempromosikan penggunaan kembali dan menyederhanakan use case dasar dengan menghindari fungsi yang digandakan.

Karakteristik

  • Wajib: Use case yang disertakan selalu dieksekusi ketika use case dasar dilakukan.

  • Dapat Digunakan Kembali: Use case yang disertakan adalah fungsi yang mandiri dan koheren yang dapat digunakan oleh beberapa use case dasar.

  • Menyederhanakan Diagram: Dengan mengekstrak langkah-langkah umum, use case dasar tetap ringkas dan fokus.

  • Arah: Panah mengarah dari use case dasar ke use case yang disertakan, menunjukkan bahwa use case dasar bergantung pada use case yang disertakan.

Notasi

  • Panah putus-putus yang diberi label<<sertakan>> menghubungkan use case dasar dengan use case yang disertakan.

Contoh 1: Sistem Belanja Online

Pertimbangkan sistem belanja online di mana pelanggan dapatTempatkan Pesanan atau Batalkan Pesanan. Kedua use case ini mengharuskan pelanggan untukMasuk ke dalam sistem.

  • Use Case Dasar: Tempatkan Pesanan, Batalkan Pesanan

  • Kasus Penggunaan yang Dikandung: Masuk

  • Penjelasan: Masuk adalah langkah wajib baik untuk memesan maupun membatalkan pesanan. Alih-alih menduplikasi fungsi masuk dalam kedua kasus penggunaan, fungsi tersebut diekstrak ke dalam kasus penggunaan terpisahMasuk kasus penggunaan, yang dikandung oleh keduanya.

Representasi Diagram:

[Pesanan] ----<<kandung>>----> [Masuk]
[Batalkan Pesanan] ----<<kandung>>----> [Masuk]

Contoh 2: Sistem Manajemen Perpustakaan

Dalam sistem perpustakaan, pengguna dapatMeminjam Buku atau Mengembalikan Buku. Kedua proses ini memerlukanVerifikasi Pengguna.

  • Kasus Penggunaan Dasar: Meminjam Buku, Mengembalikan Buku

  • Kasus Penggunaan yang Dikandung: Verifikasi Pengguna

  • Penjelasan: Memverifikasi identitas pengguna (misalnya, memeriksa kartu perpustakaan mereka) adalah langkah wajib dalam meminjam dan mengembalikan buku. Kasus penggunaanVerifikasi Pengguna use case disertakan untuk menghindari pengulangan.

Representasi Diagram:

[Pinjam Buku] ----<<include>>----> [Verifikasi Pengguna]
[Kembalikan Buku] ----<<include>>----> [Verifikasi Pengguna]

Kapan Menggunakan

  • Ketika beberapa use case berbagi langkah yang umum dan wajib.

  • Ketika Anda ingin menyederhanakan deskripsi use case dengan mengekstrak fungsi yang dapat digunakan kembali.

  • Ketika use case yang disertakan memiliki makna secara mandiri (misalnya, Masuk atau Verifikasi Penggunadapat dipahami sebagai fungsi mandiri).


Hubungan Extend (<<extend>>)

Tujuan

Hubungan ExtendHubungan Extend digunakan untuk memodelkan perilaku opsional atau kondisional yang hanya dieksekusi dalam keadaan tertentu. Ini memungkinkan use case dasar tetap fokus pada fungsionalitas intinya sambil menambahkan perilaku opsional secara modular.

Karakteristik

  • Opsional/Kondisional: Use case yang diperluas dieksekusi hanya jika kondisi tertentu terpenuhi.

  • Terikat: Use case yang diperluas tidak memiliki makna secara mandiri dan bergantung pada use case dasar.

  • Titik Ekstensi: Use case dasar dapat menentukan titik-titik tertentu di mana perilaku perluasan dapat dimasukkan.

  • Arah: Panah mengarah dari use case yang diperluas ke use case dasar, menunjukkan bahwa use case yang diperluas menambahkan perilaku ke use case dasar.

Notasi

  • Panah putus-putus yang diberi label <<extend>> menghubungkan use case yang diperluas dengan use case dasar, sering kali dengan catatan yang menentukan kondisi atau titik perluasan.

Contoh 1: Sistem ATM

Dalam sistem ATM, use case dasar adalahTarik Uang. Suatu perilaku opsional,Cetak Kwitansi, dapat terjadi jika pengguna meminta kwitansi.

  • Use Case Dasar: Tarik Uang

  • Use Case Perluas: Cetak Kwitansi

  • Kondisi: Pengguna memilih untuk mencetak kwitansi setelah menarik uang.

  • Penjelasan: Mencetak kwitansi tidak wajib dan hanya terjadi jika pengguna secara eksplisit memintanya. Use caseCetak Kwitansi memperluasTarik Uang pada titik perluasan ‘Pengguna meminta kwitansi.’

Representasi Diagram:

[Cetak Kwitansi] ----<<extend>>----> [Tarik Uang]rn(Catatan: Kondisi = Pengguna meminta kwitansi)

Contoh 2: Platform Kursus Online

Dalam platform kursus online, pengguna dapatIkuti Kuis. Suatu perilaku opsional,Minta Petunjuk, terjadi jika pengguna mengalami kesulitan dengan pertanyaan.

  • Kasus Penggunaan Dasar: Ambil Kuis

  • Kasus Penggunaan Perluasan: Minta Petunjuk

  • Kondisi: Pengguna meminta petunjuk selama kuis.

  • Penjelasan: Meminta petunjuk bersifat opsional dan tergantung pada kebutuhan pengguna. Kasus Minta Petunjuk kasus penggunaan diperluas oleh Ambil Kuis pada titik perluasan ‘Pengguna membutuhkan bantuan.’

Representasi Diagram:

[Minta Petunjuk] ----<<extend>>----> [Ambil Kuis]
(Catatan: Kondisi = Pengguna membutuhkan bantuan)

Kapan Harus Menggunakan

  • Ketika perilaku bersifat opsional atau tergantung pada kondisi tertentu.

  • Ketika Anda ingin menjaga kasus penggunaan dasar tetap fokus pada fungsionalitas utamanya.

  • Ketika kasus penggunaan perluasan tidak bermakna tanpa kasus penggunaan dasar (misalnya, Cetak Kwitansi tidak relevan tanpa Tarik Uang).


Perbedaan Utama Antara Include dan Extend

Tabel di bawah ini merangkum perbedaan antara Include dan Perluas hubungan untuk membimbing penggunaannya:

Kriteria

Sertakan (<<sertakan>>)

Perluas (<<perluas>>)

Apakah perilaku tersebut wajib?

Ya, selalu dieksekusi sebagai bagian dari use case dasar

Tidak, dieksekusi hanya dalam kondisi tertentu

Apakah perilaku tersebut dapat berdiri sendiri?

Ya, merupakan fungsi yang koheren dan dapat digunakan kembali

Tidak, tergantung pada use case dasar

Apakah terjadi dalam beberapa use case?

Ya, dibagikan di antara beberapa use case

Biasanya spesifik untuk satu use case

Tujuan

Mendorong penggunaan kembali dan menyederhanakan use case dasar

Menambahkan perilaku opsional atau eksplisit secara modular

Arah Panah

Dasar → Use case yang disertakan

Memperluas → Use case dasar


Contoh Praktis: Sistem Manajemen Restoran

Mari kita terapkan kedua hubungan ini dalam sistem manajemen restoran untuk menggambarkan penggunaannya dalam skenario dunia nyata.

Skenario

Sistem restoran memungkinkan pelanggan untukPesanan Makanan dan Pesankan Meja. Sistem juga menangani perilaku tambahan seperti Bayar Tagihan dan Permintaan Bawa Pulang.

Kasus Penggunaan

  • Pesanan Makanan: Pelanggan memesan makanan dari menu.

  • Pesankan Meja: Pelanggan memesan meja untuk makan.

  • Autentikasi Pelanggan: Memverifikasi identitas pelanggan (misalnya melalui akun loyalitas).

  • Bayar Tagihan: Pelanggan membayar pesanan mereka (wajib untuk Pesanan Makanan).

  • Permintaan Bawa Pulang: Permintaan opsional untuk membungkus pesanan untuk dibawa pulang.

Hubungan

  • Termasuk: Keduanya Pesanan Makanan dan Pesankan Meja memerlukan Autentikasi Pelanggan untuk memverifikasi identitas pelanggan. Pesanan Makanan juga mencakup Bayar Tagihan karena pembayaran wajib dilakukan setelah pemesanan.

  • Perpanjang: Pesanan Makanan dapat diperpanjang olehPermintaan Bawa Pulang jika pelanggan memilih membawa makanan pulang.

Representasi Diagram

[Pesanan Makanan] ----<<include>>----> [Autentikasi Pelanggan]
[Pesanan Makanan] ----<<include>>----> [Bayar Tagihan]
[Reservasi Meja] ----<<include>>----> [Autentikasi Pelanggan]
[Permintaan Bawa Pulang] ----<<extend>>----> [Pesanan Makanan]
(Catatan: Kondisi = Pelanggan meminta bawa pulang)

Penjelasan

  • Autentikasi Pelanggan termasuk dalam keduaPesanan Makanan danReservasi Meja karena merupakan langkah wajib untuk mengakses sistem.

  • Bayar Tagihan termasuk dalamPesanan Makanan karena pembayaran diperlukan untuk menyelesaikan pesanan.

  • Permintaan Bawa Pulang memperpanjangPesanan Makanan karena merupakan perilaku opsional yang hanya terjadi jika pelanggan meminta bawa pulang.


Praktik Terbaik dalam Menggunakan Include dan Extend

  1. Gunakan Include Secara Bijak: Hanya ekstrak perilaku ke dalam use case yang diinclude jika perilaku tersebut dibagikan oleh beberapa use case atau secara signifikan menyederhanakan use case utama. Penggunaan include yang berlebihan dapat membuat diagram menjadi kusut.

  2. Tentukan Titik Perpanjangan yang Jelas untuk Extend: Tentukan kondisi atau titik dalam use case utama di mana perilaku perpanjangan berlaku untuk menghindari ambiguitas.

  3. Jaga Fokus Kasus Penggunaan: Pastikan kasus penggunaan dasar tetap sederhana dan fokus pada tujuan utamanya, dengan menggunakan Sertakan untuk langkah-langkah wajib dan Perluas untuk yang opsional.

  4. Validasi Kemampuan Digunakan Kembali untuk Sertakan: Kasus penggunaan yang disertakan harus bermakna dan dapat digunakan kembali di berbagai konteks.

  5. Hindari Memperumit Diagram: Gunakan Sertakan dan Perluas hanya bila mereka menambah kejelasan. Hubungan yang kompleks dapat membingungkan pemangku kepentingan.


Rintangan Umum dan Cara Menghindarinya

  1. Mengaburkan Sertakan dengan Perluas:

    • Rintangan: Menggunakan Sertakan untuk perilaku opsional atau Perluas untuk perilaku wajib.

    • Solusi: Selalu periksa apakah perilaku bersifat wajib (gunakan Sertakan) atau bersyarat (gunakan Perluas).

  2. Terlalu Sering Menggunakan Hubungan:

    • Rintangan: Menciptakan terlalu banyak Sertakan atau Perluas hubungan, sehingga membuat diagram sulit dibaca.

    • Solusi: Hanya gunakan hubungan ini ketika mereka mengurangi redundansi atau meningkatkan kejelasan.

  3. Kondisi Perluasan yang Tidak Jelas:

    • Rintangan: Tidak menentukan kondisi untuk hubungan Perluas hubungan, yang menyebabkan kebingungan.

    • Solusi: Selalu sertakan catatan atau deskripsi kondisi atau titik perluasan.

  4. Menyertakan Perilaku yang Tidak Dapat Digunakan Kembali:

    • Rintangan: Menciptakan use case yang disertakan yang hanya digunakan oleh satu use case dasar.

    • Solusi: Pastikan use case yang disertakan dapat digunakan kembali atau secara signifikan menyederhanakan use case dasar.


Kesimpulan

Hubungan Sertakan dan Perluas hubungan dalam diagram use case UML sangat penting untuk mengelola kompleksitas dan memastikan modularity. Hubungan Sertakan hubungan mempromosikan penggunaan kembali dengan mengekstrak perilaku wajib dan bersama, sementara Perluas hubungan menjaga use case dasar tetap fokus dengan memodelkan perilaku opsional atau kondisional. Dengan memahami tujuan, karakteristik, dan praktik terbaiknya, Anda dapat membuat diagram use case yang jelas, dapat dipelihara, dan efektif yang menyampaikan fungsi sistem kepada pemangku kepentingan.

Referensi

Follow
Loading

Signing-in 3 seconds...

Signing-up 3 seconds...