Apa itu Diagram Kasus Penggunaan?
UML diagram kasus penggunaan adalah bentuk utama dari persyaratan sistem/perangkat lunak untuk program perangkat lunak baru yang sedang dikembangkan. Tujuan dari diagram kasus penggunaan adalah untuk memvisualisasikan apa yang harus dilakukan sistem (apa); pada tahap ini, tidak mempertimbangkan bagaimana (bagaimana) melakukannya.
Setelah sebuah kasus penggunaan ditentukan, itu dapat direpresentasikan dalam representasi tekstual dan visual (yaitu, diagram kasus). Konsep kunci dari pemodelan kasus penggunaan adalah bahwa itu membantu kita merancang sistem dari perspektif pengguna akhir. Ini adalah teknik yang efektif untuk mengkomunikasikan perilaku sistem dalam istilah pengguna dengan menentukan semua perilaku sistem yang terlihat secara eksternal.
Dengan kata lain, penggunaan sistem harus dilihat dari luar, yaitu, sistem tidak boleh dilihat dari dalam, tetapi dari tingkat yang lebih tinggi untuk menentukan fungsionalitas yang harus disediakan sistem kepada aktor eksternal.
Tujuan dari diagram kasus penggunaan
Diagram kasus penggunaan biasanya dikembangkan pada tahap awal pengembangan, dan orang-orang sering menggunakan pemodelan kasus penggunaan untuk tujuan berikut.
- Menentukan konteks sistem
- Menangkap persyaratan sistem
- Memvalidasi arsitektur sistem
- Menggerakkan implementasi dan menghasilkan kasus uji
- Dikembangkan oleh analis, ahli domain, dan pengguna akhir target bersama-sama
Bentuk standar dari diagram kasus penggunaan didefinisikan dalam Bahasa Pemodelan Terpadu, seperti yang ditunjukkan dalam contoh diagram kasus penggunaan di bawah ini.
Edit contoh Diagram Kasus Penggunaan ini
Elemen Diagram Kasus Penggunaan
Aktor
Setiap kasus penggunaan akan memiliki setidaknya satu aktor, yang dapat dipahami sebagai setidaknya satu peserta (peran), yang tidak harus merupakan orang, tetapi bisa jadi sistem atau perangkat lain. Seorang aktor dapat berinteraksi dengan lebih dari satu kasus penggunaan, dan sebuah kasus penggunaan dapat berinteraksi dengan lebih dari satu aktor.
Aktor tidak selalu merupakan orang, yaitu pengguna, tetapi mereka sebenarnya bisa jadi bukan orang, yaitu sistem atau waktu.
Paling sering, pengguna adalah orang, yang terlibat dalam diagram kasus penggunaan, seperti pelanggan, karyawan, pengawas, dll.
Aktor Manusia vs Non-Manusia
Dari waktu ke waktu, sistem dipengaruhi oleh berbagai peristiwa untuk melakukan fungsi tertentu dalam situasi tertentu. Misalnya, ketika audit dilalui, sistem secara proaktif mengirimkan surat untuk memberitahu orang; begitu juga pengiriman surat dilakukan secara otomatis oleh sistem? Kasus penggunaan ini sebenarnya dipicu oleh waktu, maka aktornya adalah Timer; misalnya, kasus penggunaan ini dapat dilihat sebagai “mengirim surat secara otomatis pada pukul 5:00 setiap hari”, maka aktor yang memicu peristiwa ini – pengiriman surat – bukanlah sistem, tetapi sebenarnya adalah Aktor Timer.
Aktor Utama vs Sekunder
Aktor utama adalah aktor yang menggunakan sistem untuk mencapai tujuan. Kasus penggunaan mendokumentasikan interaksi antara sistem dan aktor untuk mencapai tujuan aktor utama. Aktor sekunder adalah aktor yang perlu dibantu oleh sistem untuk mencapai tujuan aktor utama.
- Aktor dapat berupa utama atau sekunder. Aktor utama memulai interaksi dengan sistem.
- Aktor sekunder biasanya dipanggil oleh sistem untuk bantuan dan aktor sekunder tidak pernah memulai kasus penggunaan.
Perhatikan bahwa: Simbol untuk seorang aktor tidak membedakan antara aktor utama dan aktor sekunder; perbedaan tersebut harus disimpulkan dari deskripsi kasus penggunaan (juga disebut narasi kasus penggunaan).
Contoh:
Seorang petugas pinjaman bank ingin meninjau aplikasi pinjaman pelanggan, dan bagian dari proses tersebut melibatkan pemeriksaan peringkat kredit secara real-time.
Edit contoh Diagram Kasus Penggunaan ini
- Nama Kasus Penggunaan. Tinjau aplikasi pinjaman
- Aktor Utama. Petugas Pinjaman
- Aktor Sekunder. Sistem penilaian kredit
Bagaimana cara saya mengidentifikasi aktor?
Karena seorang aktor tidak harus merupakan orang, tetapi bisa jadi sistem eksternal, perangkat, atau timer, kita menemukan aktor yang lebih spesifik dengan mengajukan pertanyaan berikut
- Siapa yang akan menggunakan sistem setelah dikembangkan?
- Dari siapa atau sistem lain apa yang perlu diperoleh data oleh sistem?
- Siapa atau sistem lain apa yang akan diberikan data oleh sistem?
- Sistem lain apa yang akan terkait dengan sistem?
- Siapa yang akan memelihara dan mengelola sistem?
Pertanyaan-pertanyaan ini membantu kita mengabstraksi aktor-aktor sistem. Menggunakan ATM sebagai contoh, menjawab pertanyaan-pertanyaan ini memungkinkan kita menemukan lebih banyak aktor, yaitu.
- Operatoroperator bertanggung jawab untuk memelihara dan mengelola sistem ATM
- ATM juga perlu berkomunikasi dengan server backend untuk mendapatkan informasi tentang akun pengguna.
Kasus Penggunaan
Sebuah kasus penggunaan mewakili fungsionalitas (biasanya sebuah persyaratan) yang diharapkan dapat diimplementasikan oleh sistem. Detail dari sebuah kasus penggunaan, selain namanya yang unik, tidak direpresentasikan secara visual dalam diagram; detail ini diberikan dalam narasi (deskripsi tekstual) dari kasus penggunaan.
Sebuah kasus penggunaan adalah daftar tindakan atau langkah-langkah peristiwa yang biasanya mendefinisikan interaksi antara peran aktor dan sistem untuk mencapai tujuan. Kasus penggunaan adalah teknik yang berguna untuk mengidentifikasi, memperjelas, dan mengorganisir persyaratan sistem. Sebuah kasus penggunaan terdiri dari serangkaian urutan interaksi yang mungkin antara sistem dan pengguna yang mendefinisikan fungsionalitas yang harus dicapai dan solusi untuk kesalahan yang mungkin terjadi.
Bagaimana cara Mengidentifikasi Kasus Penggunaan?
Setelah kita menemukan aktor, kita dapat menentukan kasus penggunaan sistem berdasarkan aktor, terutama melihat layanan apa yang dibutuhkan setiap aktor dari sistem, atau bagaimana aktor menggunakan sistem. Identifikasi untuk kasus penggunaan dapat dimulai dengan pertanyaan berikut (untuk setiap peserta).
- Mengapa aktor menggunakan sistem?
- Apakah peserta membuat, memodifikasi, menghapus, mengakses, dan menyimpan data dalam sistem? Jika ya, bagaimana aktor melakukan operasi ini?
- Apakah aktor memberitahu sistem tentang peristiwa eksternal tertentu?
- Apakah sistem memberitahu aktor tentang peristiwa internal tertentu?
Menggabungkan semua di atas, diagram kasus penggunaan dari sistem ATM dapat direpresentasikan sebagai berikut.
Kasus Penggunaan disajikan dengan elips, dari sesuatu yang statis atau dinamis, atau dari sebuah tugas atau sistem.
Batas Sistem
Batas sistem menggambarkan sistem dengan mengelompokkan kasus penggunaan dalam batasan persegi panjang, dan batas sistem dalam Visual Paradigm menyediakan perilaku pengendapan kasus penggunaan.
Aktor adalah peran (aktor manusia atau non-manusia) yang berinteraksi dengan sistem yang sedang dikembangkan. Oleh karena itu, aktor harus ditempatkan di luar batas sistem dan berinteraksi dengan kasus penggunaan yang ditempatkan di dalam batas sistem.
Perhatikan Bahwa:
Seorang aktor didefinisikan oleh batasan sistem. Jika batas sistem yang ingin kita definisikan terbatas pada ATM itu sendiri, maka server backend adalah sistem eksternal dan dapat diabstraksi sebagai aktor.
Jika batas sistem yang ingin kita definisikan meluas ke seluruh sistem perbankan, di mana baik ATM maupun server backend adalah bagian dari seluruh sistem perbankan, maka server backend tidak lagi diabstraksi sebagai aktor.
Hubungan
Setelah mempelajari tentang tiga simbol kunci ini, lanjutkan dengan pengetahuan tentang Hubungan dan menggambar diagram kasus penggunaan. Hubungan langsung antara peserta dan kasus pengguna digambar, dan hubungan tersebut digunakan sebagai garis tanpa panah, menunjukkan hubungan dua arah, yang disebut garis tautan.
Sebuah kasus penggunaan dapat dipecah menjadi beberapa kasus penggunaan yang terhubung oleh hubungan <<include>>, <<extend>> atau <<generalization>> (dijelaskan kemudian dalam pos ini).
Hubungan Tautan Komunikasi
Ini mewakili komunikasi dua arah antara seorang aktor dan sebuah kasus penggunaan dan karenanya merupakan hubungan biner.
Edit contoh Diagram Kasus Penggunaan ini
Hubungan <<Include>>
Sebuah include hubungan berarti bahwa kasus penggunaan akan mencakup kasus penggunaan lainnya. Tujuan dari Hubungan Include adalah untuk menggunakan Hubungan Include untuk mengurangi pengulangan deskripsi kasus penggunaan yang sama. Jika banyak kasus berbagi fungsi bagian yang sama, maka fungsi tersebut dapat dipisahkan dan kasus penggunaan lainnya dapat dimasukkan dalam kasus tersebut.
Sebagai contoh, pustakawan perlu membaca kode untuk mencatat buku yang dipinjam saat buku tersebut dipinjam, dan juga perlu membaca kode untuk mencatat buku yang dikembalikan saat buku tersebut dikembalikan, karena membaca kode adalah bagian tindakan yang berulang, itu dapat dibuat menjadi kasus penggunaan terpisah, dan membiarkan buku yang dipinjam dan buku yang dikembalikan menyertakan kasus ini.
Edit contoh Diagram Kasus Penggunaan ini
Jika sebuah kasus penggunaan A mencakup kasus penggunaan lain B, maka implementasi A memerlukan implementasi B untuk menyelesaikan tugasnya. Namun, B independen dari dirinya sendiri. Artinya, B tidak perlu mengetahui apa pun tentang A. B juga dapat dimasukkan ke dalam kasus penggunaan lainnya.
Hubungan <<Extend>>
Jika sebuah kasus penggunaan B memperluas kasus penggunaan lain A, maka implementasi A dapat secara kondisional menyertakan implementasi B untuk menyelesaikan tugasnya. Artinya, dalam beberapa kasus, A dapat menyelesaikan tugasnya tanpa B. Namun, tergantung pada kondisi yang dijelaskan, A mungkin memerlukan B. Dalam hal ini, B bergantung pada B. Namun, tergantung pada kondisi yang dijelaskan, A mungkin memerlukan B. Dalam hal ini, B bergantung pada A dan tidak dapat ada sendiri. Untuk alasan ini, B tidak dapat diperluas ke lebih dari satu kasus penggunaan. Narasi kasus penggunaan A akan mencakup langkah-langkah eksekusi yang dibutuhkannya dari B; titik ini disebut titik ekstensi.
Edit contoh Diagram Kasus Penggunaan ini
Mari kita lihat contoh lain di mana sistem secara otomatis memesan barang ketika tidak ada persediaan sehingga manajer tidak perlu mengeksekusi pesanan secara langsung. Lihat diagram kasus penggunaan di bawah ini:
Edit contoh Diagram Kasus Penggunaan ini
Hubungan Generalisasi
Hubungan generalisasi mirip dengan hubungan generalisasi dalam bahasa berorientasi objek dalam diagram kelas, dan dapat diterapkan pada generalisasi peran (aktor) dan kasus penggunaan.
Sebagai contoh, dalam sistem pemesanan, ada dua jenis metode pemesanan: “pesan tiket melalui telepon” dan “pesan tiket secara Online”, dan kasus penggunaan dasar “pesan tiket”, sehingga Anda dapat menggunakan generalisasi untuk membentuk kasus, dan menambahkan <<esensial>> ke kasus penggunaan induk (pemesanan) untuk menunjukkan hubungan generalisasi.
Edit contoh Diagram Kasus Penggunaan ini
Diskusikan hubungan dalam diagram kasus penggunaan
- Dalam diagram kasus penggunaan umum, kita hanya mewakili hubungan antara aktor dan kasus penggunaan, yaitu, asosiasi komunikasi antara mereka.
- Selain itu, kita juga dapat menggambarkan generalisasi antara peserta dan aktor, serta hubungan include, extend, dan generalisasi antara kasus penggunaan.
- Kita menggunakan hubungan ini untuk menyesuaikan model kasus penggunaan yang ada dan mengekstrak beberapa informasi umum untuk digunakan kembali, sehingga model kasus penggunaan lebih mudah untuk dipelihara.
- Namun, kita harus berhati-hati dalam memilih hubungan ini dalam aplikasi. Umumnya, hubungan ini meningkatkan jumlah kasus penggunaan dan hubungan, sehingga meningkatkan kompleksitas model kasus penggunaan.
- Selain itu, model kasus penggunaan biasanya disesuaikan setelah selesai, jadi tidak perlu terburu-buru untuk mengabstraksi hubungan antara kasus penggunaan pada tahap awal pemodelan kasus penggunaan.
Kasus Penggunaan – Alur Peristiwa
Diagram kasus penggunaan memberi kita pandangan keseluruhan tentang fungsionalitas sistem, kita dapat mengetahui peserta mana yang akan berinteraksi dengan sistem, dan layanan apa yang dibutuhkan setiap aktor dari sistem.
Kasus penggunaan menggambarkan percakapan antara aktor dan sistem, tetapi detail percakapan ini tidak direpresentasikan dalam diagram kasus penggunaan, jadi untuk setiap kasus penggunaan kita dapat menggambarkan detail percakapan ini dalam bentuk aliran peristiwa.
Skenario Kasus Penggunaan dan Alur Peristiwa – Tarik Uang ATM
Sebagai contoh, kasus “Penarikan” dalam sistem ATM dapat direpresentasikan oleh alur peristiwa sebagai berikut:
Skenario Normal – Penarikan dana – alur dasar kejadian:
- Pengguna memasukkan kartu kredit
- Masukkan PIN
- Masukkan jumlah penarikan
- Menarik uang tunai
- Keluar dari sistem dan ambil kartu kredit
Tetapi ini hanya menggambarkan skenario normal dari kasus penggunaan penarikan. Sebagai sistem ATM yang nyata, kita juga harus mempertimbangkan berbagai skenario lain yang mungkin terjadi, seperti:
- kartu kredit yang tidak valid,
- kata sandi yang salah,
- saldo tunai yang tidak cukup di akun pengguna, dll.
Semua situasi yang mungkin terjadi ini (baik normal maupun abnormal) disebut skenario dari kasus penggunaan dan skenario juga disebut sebagai instansi dari kasus penggunaan. Skenario juga disebut sebagai instansi dari kasus penggunaan. Di antara berbagai skenario dari sebuah kasus penggunaan, skenario yang paling umum dijelaskan oleh proses dasar, sementara skenario lain dijelaskan oleh proses alternatif.
Skenario Alternatif
Untuk kasus penggunaan “Penarikan” dalam sistem ATM, kita dapat memperoleh beberapa proses alternatif sebagai berikut.
Penarikan – proses acara alternatif.
- Skenario alternatif I: Pengguna dapat memilih untuk keluar di langkah mana pun dari proses dasar dan pergi ke langkah 5 dari proses dasar.
- Proses alternatif II: Di langkah 1 dari proses dasar, pengguna memasukkan kartu kredit yang tidak valid, sistem menampilkan kesalahan dan mengeluarkan kartu kredit, dan kasus penggunaan berakhir.
- Proses alternatif III: Di langkah 2 dari proses dasar, pengguna memasukkan kata sandi yang salah, sistem menampilkan kesalahan dan meminta pengguna untuk memasukkan kembali kata sandi dan kembali ke langkah 2 dari proses dasar; setelah tiga kali memasukkan kata sandi yang salah, kartu kredit disita oleh sistem dan kasus penggunaan berakhir.
- …
Dengan menggabungkan skenario dasar dan skenario alternatif, semua situasi yang dapat terjadi dalam sebuah kasus penggunaan dapat dijelaskan dengan jelas. Ketika menggambarkan alur kejadian dari sebuah kasus penggunaan, kita ingin menggambarkan semua skenario yang mungkin ada sebanyak mungkin untuk memastikan kelengkapan persyaratan.
Model Kasus Penggunaan vs Diagram Kasus Penggunaan
Penting untuk menghindari kesalahpahaman bahwa sebuah diagram kasus penggunaanyang terdiri dari aktor dan kasus penggunaan adalah model kasus penggunaan, karena diagram kasus penggunaan hanyalah representasi visual dari layanan yang dapat diberikan oleh sistem, memberikan kita gambaran umum tentang fungsionalitas sistem.
Model kasus penggunaanterdiri dari diagram kasus penggunaan dan deskripsi rinci dari setiap kasus penggunaan, spesifikasi kasus penggunaan, yang disediakan sebagai template dalam RUP.
Deskripsi singkat
Deskripsi singkat tentang peran dan tujuan dari kasus penggunaan.
Alur Kejadian
Alur Kejadian harus mewakili semua skenario, termasuk skenario dasar dan alternatif.
Skenario Kasus Penggunaan
Sertakan skenario keberhasilan dan skenario kegagalan, dan skenario terutama merupakan kombinasi dari alur dasar dan alternatif.
Persyaratan Khusus
Jelaskan persyaratan non-fungsional (termasuk kinerja, keandalan, ketersediaan, skalabilitas, dll.) dan batasan desain (sistem operasi, alat pengembangan, dll.) yang terkait dengan kasus penggunaan.
Kondisi Awal
Keadaan yang harus dimiliki sistem sebelum kasus penggunaan dapat dijalankan.
Kondisi Pasca
Sekumpulan keadaan yang mungkin dimiliki sistem setelah kasus penggunaan dijalankan.
Spesifikasi kasus penggunaan pada dasarnya adalah representasi tekstual, dengan opsi menggunakan diagram keadaan, diagram aktivitas, atau diagram urutan untuk membantu menjelaskan alur kejadian dengan lebih jelas. Setiap representasi grafis dari antarmuka pengguna dan proses, atau grafik lainnya, yaitu wireframe, dapat dilampirkan ke dalam kasus penggunaan selama itu membantu meningkatkan kejelasan representasi.
Sebagai contoh:
- diagram aktivitas berguna untuk menggambarkan proses keputusan yang kompleks,
- diagram transisi keadaan berguna untuk menggambarkan perilaku sistem yang terkait dengan keadaan, dan
- diagram urutan cocok untuk menggambarkan pengiriman pesan berbasis waktu.
Alat Kasus Penggunaan
Versi Daring
Alat gambar gratis Visual Paradigm Daring (VP Daring) versi gratis mendukung UML, ERD, dan diagram organisasi. Anda dapat dengan cepat menggambar diagram kasus penggunaan dengan editor gambar UML yang intuitif. Alat UML gratis ini tidak memiliki iklan, tidak ada periode akses terbatas, dan tidak ada batasan seperti jumlah diagram, jumlah bentuk, dll. Gambar UML dengan bebas. Gambar UML dengan bebas. Anda memiliki diagram yang Anda buat untuk tujuan pribadi dan non-komersial.
Versi Desktop
Model Visual Paradigm Edisi Komunitas, tersedia sejak 2004, menyediakan perangkat lunak UML gratis hanya untuk tujuan non-komersial, mendukung pengguna yang sedang mengambil langkah pertama dalam pemodelan UML, serta mereka yang membutuhkan perangkat lunak pemodelan UML gratis dan lintas platform untuk penggunaan pribadi, seperti menerapkan UML pada proyek mahasiswa.
Referensi
- Apa itu Diagram Kasus Penggunaan?
- Jenis Aktor dalam Model Kasus Penggunaan
- Identifikasi Kebutuhan Pengguna dengan Diagram Kasus Penggunaan
- Apa itu Spesifikasi Kasus Penggunaan?
- Cerita Pengguna vs Kasus Penggunaan untuk Pengembangan Perangkat Lunak Agile
- Pendekatan Berbasis Kasus Penggunaan untuk Pengembangan Agile
Sumber Daya UML
This post is also available in Deutsch, English, Español, فارسی, Français, 日本語, Polski, Portuguese, Ру́сский, Việt Nam, 简体中文 and 繁體中文.