de_DEen_USes_ESfr_FRjapl_PLpt_PTru_RUvizh_CNzh_TW

Menyederhanakan Diagram Kasus Pengguna Besar dengan Hubungan Include

Pendahuluan

Dalam rekayasa perangkat lunak, diagram kasus pengguna membantu memvisualisasikan interaksi antara pengguna (aktor) dan sistem untuk menangkap persyaratan fungsionalnya. Ketika sistem berkembang, diagram kasus pengguna dapat menjadi sulit dikelola, penuh dengan perilaku yang berulang atau kompleks yang menyembunyikan fungsi inti sistem. Hubungan hubungan include dalam UML menangani tantangan ini dengan memungkinkan perilaku umum diekstrak ke dalam kasus pengguna yang dapat digunakan kembali dan modular. Artikel ini membahas bagaimana hubungan include menyederhanakan diagram kasus pengguna, manfaat utamanya, serta contoh praktis untuk menunjukkan manfaatnya.

Apa itu Hubungan Include?

Suatu hubungan include dalam UML menentukan bahwa suatu kasus pengguna dasar mengintegrasikan perilaku dari kasus pengguna lain, yang disebut kasus pengguna yang dimasukkan. Kasus pengguna yang dimasukkan merepresentasikan urutan tindakan yang selalu dieksekusi sebagai bagian dari alur kasus pengguna dasar. Secara visual, hubungan ini digambarkan sebagai panah putus-putus dengan kepala panah terbuka yang mengarah dari kasus pengguna dasar ke kasus pengguna yang dimasukkan, diberi label dengan stereotip «include».

Hubungan include analog dengan pemanggilan subrutin dalam pemrograman: kasus pengguna dasar “memanggil” kasus pengguna yang dimasukkan untuk melakukan tugas tertentu, mendukung pemodelan yang terstruktur dan hierarkis. Dengan mengekstrak perilaku umum atau kompleks ke dalam kasus pengguna terpisah, hubungan include mengurangi duplikasi, meningkatkan kejelasan, dan memperbaiki kemudahan pemeliharaan.

Manfaat Hubungan Include

Hubungan include menawarkan beberapa keunggulan saat memodelkan sistem besar dan kompleks:

  1. Penggunaan Kembali Perilaku Umum: Fungsionalitas bersama di antara beberapa kasus pengguna dapat dikemas dalam satu kasus pengguna yang dimasukkan, menghilangkan redundansi.

  2. Penyederhanaan Kasus Pengguna yang Kompleks: Kasus pengguna besar dapat dibagi menjadi modul yang lebih kecil dan mudah dikelola, membuat diagram menjadi lebih bersih.

  3. Ekseskusi Wajib: Kasus pengguna yang dimasukkan selalu dieksekusi sebagai bagian dari kasus pengguna dasar, memastikan kelengkapan tanpa membebani alur utama dengan detail.

  4. Kemudahan Pemahaman dan Kemudahan Pemeliharaan: Dengan memisahkan aspek-aspek yang berbeda, kasus pengguna dasar berfokus pada perilaku uniknya, sementara kasus pengguna yang dimasukkan menangani urutan yang dapat digunakan kembali, menyederhanakan pembaruan.

  5. Pemodelan Terstruktur: Hubungan include mendukung desain hierarkis, serupa dengan subrutin, membuat sistem lebih mudah dipahami dan diperluas.

Contoh Hubungan Include

Untuk menunjukkan kekuatan hubungan include, mari kita telusuri beberapa contoh praktis di berbagai bidang.

Contoh 1: Sistem Belanja Online

Pertimbangkan suatu platform belanja online di mana pengguna dapat menelusuri produk, menambahkan barang ke keranjang, dan melakukan pembayaran. Banyak kasus pengguna, seperti “Beli Produk,” “Cadangkan Barang,” dan “Hadiahkan Barang,” mengharuskan pengguna untuk terautentikasi sebelum melanjutkan.

  • Kasus Penggunaan Dasar: “Beli Produk,” “Cadangkan Barang,” “Hadiahkan Barang”

  • Kasus Penggunaan yang Dikandung: “Otentikasi Pengguna”

Alih-alih menduplikasi langkah-langkah otentikasi dalam setiap kasus penggunaan, kami mengekstraknya ke dalam satu kasus penggunaan tunggal yaitu “Otentikasi Pengguna”. Kasus penggunaan yang dikandung ini menangani tugas-tugas seperti meminta kredensial masuk dan memverifikasinya. Diagram kasus penggunaan akan menunjukkan:

  • Panah putus-putus dari “Beli Produk” ke “Otentikasi Pengguna” dengan «include».

  • Panah serupa dari “Cadangkan Barang” dan “Hadiahkan Barang” ke “Otentikasi Pengguna”.

Pendekatan ini mengurangi redundansi, karena logika otentikasi didefinisikan sekali dan digunakan kembali di berbagai kasus penggunaan, menjaga diagram tetap bersih dan mudah dikelola.

Contoh 2: Sistem Perbankan

Dalam sistem perbankan, pelanggan dapat melakukan tindakan seperti “Tarik Tunai,” “Setor Uang,” dan “Transfer Dana”. Setiap kasus penggunaan ini memerlukan validasi akun pelanggan sebelum melanjutkan.

  • Kasus Penggunaan Dasar: “Tarik Tunai,” “Setor Uang,” “Transfer Dana”

  • Kasus Penggunaan yang Dikandung: “Validasi Akun”

Kasus penggunaan “Validasi Akun” memeriksa status akun, saldo, dan izin. Dengan menyertakan kasus penggunaan ini dalam setiap kasus penggunaan dasar, diagram menghindari pengulangan logika validasi. Representasi visual mencakup panah putus-putus bertanda «include» dari setiap kasus penggunaan dasar ke “Validasi Akun”. Pemodularan ini menyederhanakan diagram dan memastikan validasi akun diterapkan secara konsisten.

Contoh 3: Sistem Manajemen Perpustakaan

Dalam sistem perpustakaan, pengguna dapat “Pinjam Buku,” “Kembalikan Buku,” atau “Cadangkan Buku”. Setiap tindakan ini memerlukan pengecekan ketersediaan buku.

  • Kasus Penggunaan Dasar: “Pinjam Buku,” “Kembalikan Buku,” “Cadangkan Buku”

  • Kasus Penggunaan yang Dikandung: “Periksa Ketersediaan Buku”

Kasus penggunaan “Periksa Ketersediaan Buku” memverifikasi apakah buku tersedia dan tidak dicadangkan. Dengan menyertakan kasus penggunaan ini dalam kasus penggunaan dasar, diagram tetap bersih, dan pembaruan terhadap logika pengecekan ketersediaan (misalnya, mengintegrasikan sistem persediaan baru) hanya perlu dilakukan di satu tempat.

Contoh 4: Sistem Manajemen Rumah Sakit

Dalam sistem manajemen rumah sakit, pasien dapat “Jadwalkan Janji Temu,” “Batalkan Janji Temu,” atau “Ubah Jadwal Janji Temu”. Setiap kasus penggunaan ini memerlukan verifikasi identitas pasien.

  • Kasus Penggunaan Dasar: “Jadwalkan Janji Temu,” “Batalkan Janji Temu,” “Ubah Jadwal Janji Temu”

  • Kasus Penggunaan yang Dikandung: “Verifikasi Identitas Pasien”

Kasus penggunaan “Verifikasi Identitas Pasien” menangani tugas-tugas seperti memeriksa ID pasien atau detail asuransi. Dengan menyertakan kasus penggunaan ini dalam kasus penggunaan dasar, memastikan verifikasi identitas dilakukan secara konsisten tanpa mengulangi langkah-langkah dalam diagram. Panah putus-putus bertanda «include» menghubungkan setiap kasus penggunaan dasar ke “Verifikasi Identitas Pasien”, meningkatkan kejelasan.

Contoh 5: Platform Pembelajaran Elektronik

Pada platform pembelajaran daring, siswa dapat melakukan “Kerjakan Kuis,” “Kumpulkan Tugas,” atau “Lihat Nilai.” Setiap tindakan ini mengharuskan siswa untuk masuk ke sistem.

  • Kasus Penggunaan Dasar: “Kerjakan Kuis,” “Kumpulkan Tugas,” “Lihat Nilai”

  • Kasus Penggunaan yang Dimasukkan: “Masuk Sistem”

Kasus penggunaan “Masuk Sistem” menggabungkan langkah-langkah otentikasi pengguna. Dengan memasukkannya ke dalam kasus penggunaan dasar, diagram menghindari pengulangan langkah masuk, sehingga lebih mudah dipahami dan dipelihara. Representasi visual menunjukkan panah putus-putus bertanda «include» dari setiap kasus penggunaan dasar ke “Masuk Sistem”.

Representasi Visual dalam UML

Dalam diagram kasus penggunaan UML, hubungan include digambarkan sebagai berikut:

  • Sebuah panah putus-putusdengan kepala panah yang terbukamenunjuk dari kasus penggunaan dasar ke kasus penggunaan yang dimasukkan.

  • Panah ini diberi label dengan stereotip«include».

Sebagai contoh, dalam contoh belanja daring:

  • Beli Produk → «include» → Otentikasi Pengguna

  • Diagram ini dengan jelas menunjukkan bahwa “Otentikasi Pengguna” merupakan bagian wajib dari alur “Beli Produk”.

Konvensi visual ini memastikan bahwa pemangku kepentingan dapat dengan cepat memahami hubungan antar kasus penggunaan dan ketergantungannya.

Perbandingan dengan Hubungan Extend

Perlu dicatat perbedaan antaraincludedanextendhubungan untuk menghindari kebingungan:

  • Include: Kasus penggunaan yang dimasukkan adalahselalu dieksekusi sebagai bagian dari use case dasar (wajib).

  • Perluas: Use case yang diperluas adalahopsional dan hanya dieksekusi dalam kondisi tertentu.

Sebagai contoh, dalam sistem belanja online, ‘Autentikasi Pengguna’ dimasukkan karena bersifat wajib, tetapi use case seperti ‘Terapkan Kode Diskon’ mungkin merupakan hubungan perluas, karena bersifat opsional dan tergantung pada apakah pengguna memiliki kode yang valid.

Praktik Terbaik dalam Menggunakan Hubungan Include

Untuk memaksimalkan manfaat hubungan include, pertimbangkan hal berikut:

  1. Identifikasi Perilaku Umum: Cari urutan tindakan yang diulang di berbagai use case, seperti otentikasi, validasi, atau pencatatan log.

  2. Pertahankan Use Case yang Dimasukkan Fokus: Pastikan use case yang dimasukkan menggabungkan perilaku tertentu yang dapat digunakan kembali, bukan seluruh proses.

  3. Seimbangkan Modularitas dan Kesederhanaan: Hindari memecah use case secara berlebihan, karena terlalu banyak use case yang dimasukkan dapat membuat diagram lebih sulit diikuti.

  4. Gunakan Konvensi Penamaan yang Jelas: Beri nama use case yang dimasukkan untuk mencerminkan tujuannya (misalnya, ‘Autentikasi Pengguna’ alih-alih ‘Proses Login’) agar lebih mudah dibaca.

  5. Validasi Eksekusi Wajib: Konfirmasi bahwa use case yang dimasukkan selalu diperlukan; jika tidak, pertimbangkan hubungan perluas.

Ringkasan Manfaat

Tabel berikut merangkum manfaat utama dari hubungan include:

Manfaat

Penjelasan

Penggunaan Kembali Perilaku Umum

Mengambil fungsi bersama untuk menghindari duplikasi di berbagai use case

Penyederhanaan use case yang kompleks

Memecah use case besar menjadi bagian-bagian kecil yang dapat dikelola

Eksekusi Wajib

Use case yang dimasukkan selalu menjadi bagian dari use case dasar, memastikan kelengkapan

Modularisasi dan Kejelasan

Memisahkan tanggung jawab, meningkatkan keterbacaan dan kemudahan pemeliharaan

Pemodelan Terstruktur

Mirip dengan memanggil subrutin, mendukung desain hierarkis

Kesimpulan

Hubungan include merupakan fondasi penting dalam pemodelan use case yang efektif di UML, memungkinkan penggunaan kembali dan modularisasi perilaku umum dan wajib. Dengan mengekstrak fungsi bersama ke dalam use case yang disertakan, pengembang dapat membuat diagram yang lebih bersih dan lebih mudah dipelihara, yang lebih mudah dipahami dan diperbarui. Contoh yang disediakan—mulai dari belanja online hingga manajemen rumah sakit—menunjukkan keragaman hubungan include di berbagai bidang. Dengan memanfaatkan mekanisme ini, tim dapat memodelkan sistem kompleks dengan kejelasan dan efisiensi yang lebih tinggi, yang pada akhirnya meningkatkan kualitas desain perangkat lunak mereka.

Referensi

Follow
Loading

Signing-in 3 seconds...

Signing-up 3 seconds...