USE CASE

                                                       
           Sebuah use case adalah metodologi yang digunakan dalam analisis sistem untuk mengidentifikasi, memperjelas, dan mengatur persyaratan sistem. Kasus penggunaan terdiri dari satu set urutan yang mungkin dari interaksi antara sistem dan pengguna dalam lingkungan tertentu dan terkait dengan tujuan tertentu. Ini terdiri dari sekelompok elemen (misalnya, kelas dan interface) yang dapat digunakan bersama-sama dengan cara yang akan memiliki efek lebih besar daripada jumlah elemen yang terpisah digabungkan. Kasus penggunaan harus berisi kegiatan semua sistem yang memiliki signifikansi bagi pengguna. Sebuah use case dapat dianggap sebagai kumpulan skenario yang mungkin terkait dengan tujuan tertentu, memang, kasus penggunaan dan tujuan kadang-kadang dianggap sinonim.
Sebuah use case (atau set use case) memiliki karakteristik ini:
  • Mengatur kebutuhan fungsional
  • Model tujuan sistem / aktor (user) interaksi
  • Catatan jalan (disebut skenario) dari peristiwa pemicu untuk tujuan
  • Menjelaskan salah satu aliran utama peristiwa (juga disebut kursus dasar tindakan), dan mungkin yang lain, yang disebut arus yang luar biasa dari peristiwa (juga disebut kursus alternatif tindakan)
  • Apakah multi-level, sehingga satu use case dapat menggunakan fungsi satu lagi.
Gunakan kasus dapat digunakan selama beberapa tahap pengembangan perangkat lunak, seperti perencanaan kebutuhan sistem, memvalidasi desain, pengujian perangkat lunak, dan membuat garis besar untuk bantuan online dan manual pengguna.

Memulai dengan metodologi menggunakan kasus
Untuk menjelajahi bagaimana use case digunakan di perusahaan, berikut adalah beberapa sumber daya tambahan untuk belajar tentang metodologi use case:
Pro dan kontra dari diagram use case: Menempatkan terlalu banyak ke dalam diagram use case sering dapat membuat teknik lain yang berguna kasus penggunaan hampir tidak berguna. Kevlin Henney merekomendasikan pendekatan yang lebih seimbang dan terkendali agar tidak kehilangan pembaca dalam berbagai gelembung dan teks mikroskopis.
Dari diagram use case untuk diagram konteks : Ada godaan untuk mempertimbangkan menggunakan diagram kasus sebagai diagram konteks karena mereka melakukan konteks pertunjukan. Tapi memiliki satu diagram untuk kedua akan menghasilkan awan terbaca gelembung.
Lima perangkap kasus gunakan untuk menghindari: Mempekerjakan kasus penggunaan selama analisis persyaratan perangkat lunak membantu Anda meningkatkan kesempatan Anda untuk mengembangkan perangkat lunak yang benar-benar memenuhi kebutuhan mereka. Tapi ada perangkap Anda harus menghindari, kata pakar Karl E. Wiegers.

 =================================================

Deskripsi singkat tentang USE CASE
  •    Perilaku sistem adalah bagaimana sistem beraksi dan bereaksi. Perilaku ini merupakan aktifitas sistem yang bisa dilihat dari luar dan bisa diuji.
  • Perilaku sistem ini dicapture di dalam USE CASE. USE CASE sendiri mendeskripsikan sistem, lingkungan sistem, serta hubungan antara sistem dengan lingkungannya.
              Defenisi Use Case
  • Deskripsi dari sekumpulan aksi sekuensial yang ditampilkan sistem yang menghasilkan yang tampak dari nilai ke actor khusus. Use Case digunakan untuk menyusun behavioral things dalam sebuah model. Use case direalisasikan dengan sebuah collaboration. Secara gambar, sebuah use case digambarkan dengan sebuah ellips dengan garis penuh, biasanya termasuk hanya namanya.
  •  Representasi atau model yang digunakan dalam Rekayasa Perangkat Lunak untuk menggambarkanfungsional requirement suatu sistem.
  • Sekelompok skenario pengguna yang menggambarkan alur penggunaan sistem.
  • Setiap skenario digambarkan dari sudut pandang “aktor”, seseorang atau piranti yang berinteraksi dengan perangkat lunak dalam berbagai cara.
  •  Suatu Use Case adalah suatu sekuensial aksi yang dilakukan oleh sistem, yang akan secara bersama-sama, memproduksi hasil yang dibutuhkan oleh pengguna sistem. Use Case mendefinisikan alur proses sepanjang sistem berbasis pada kegunaan sebagaimana yang biasa dilakukan (secara manual).
Kegunaan Use Case adalah untuk menspesifikasikan konteks sistem, menggambarkan kebutuhan sistem, memvalidasikan arsitektur sistem, menjalankan implementasi dan meng-generate test case.

Include
Keterhubungan secara include antar use case menunjukkan bahwa use case asal secara eksplisit memasukkan perilaku dari use case lain yang ditunjuk oleh use case tersebut. Included use case tidak pernah berdiri sendiri, tetapi hanya merupakan bagian dari beberapa use case yang lebih besar yang diikutinya. Keterhubungan use case secara include pada dasarnya merupakan sebuah contoh dari pendelegasian - sekumpulan dari tanggung jawab sebuah sistem diambil dan ditangkap di dalam satu tempat (included use case) - kemudian bagian lainnya dari sistem (use case yang lain) memasukkan kumpulan tanggung jawab yang baru setiap saat mereka memerlukan fungsi-fungsi use case tersebut.

Extend
Keterhubungan use case secara extend menunjukkan bahwa use case yang ditunjuk merupakan perluasan perilaku dari use case asal. Use case asal dapat berdiri sendiri, tetapi untuk kondisi tertentu perilaku use case tersebut dapat diperluas oleh perilaku dari use case lain. Hubungan perluasan digunakan untuk memodelkan bagian dari use case yang dapat dilihat oleh user sebagai perilaku yang dapat dipilih dari sistem. Hubungan perluasan juga dapat digunakan untuk memodelkan sub aliran yang terpisah-pisah yang hanya dapat dijalankan dalam kondisi tertentu. Pada akhirnya, hubungan perluasan use case untuk memodelkan beberapa aliran yang dapat dimasukkan dalam titik tertentu.
  • Manfaat Model Use Case
Digunakan untuk berkomunikasi dengan end user dan domain expert
o    Menyediakan buy-in pada tahap awal pengembangan sistem.
o    Memastikan pemahaman yang tepat tentang requirement / kebutuhan sistem.
·         Digunakan untuk mengidentifikasi
o    Siapa yang berinteraksi dengan sistem dan apa yang harus dilakukan sistem.
o    Interface yang harus dimiliki sistem.
·         Digunakan untuk ferifikasi
o    Semua requirement yang telah dicapture.
o    Tim pengembang memahami requirement.

Macam-macam Use Case
  •   Narative Form
  • Bentuk teks bebas dalam format paragraph.
       Scenerio Form
Penjelasan penulisan use case dari sudut pandang actor.
  •  Conversation Form
Dialog antara actor dan sistem yang menunjukkan interaksi antar keduanya.

Format Penulisan Use Case
Tiap Use Case memiliki:
·         Precoditions, yang harus dipertemukan agar use cases dapat bekerja dengan sukses.
·         Postconditions, mendefinisikan kondisi-kondisi dimana use cases berakhir.
·         Postconditions mengidentifikasi hasil yang dapat diobservasi dan status akhir dari sistem setelah use case telah komplit.
·         Flow of events, yang mendefinisikan aksi pengguna dan respon sistem terhadap aksi yang dilakukan. Flow of events merupakan kompresi dari skenario normal, yang mendefinisikan tingkah laku umum dari sistem untuk use case, dan cabang-cabang alternatif, dimana bagian lain yang telah tersedia dapat digunakan oleh use case.
Use Case dan Test Cases akan bekerja dengan baik dalam dua cara, yaitu:
·         Jika use case dari sistem komplit, akurat dan jelas, maka pembuatan test cases dapat dilakukan secara langsung.
·         Jika use case tidak dalam kondisi yang baik, maka pembuata test cases akan membantu dalam melakukan debug terhadap test cases.
Modul Use Case
Mulai dengan kondisi atau kejadian normal biasa:
·         Acuhkan pengecualian, alternatif, dll.
·         Use case harus dinamai dan perspektif pengguna sebagai kata kerja aktif.
·         Menunjukkan deskripsi tujuan dari use case dan defenisi fungsionalitas tingkat
tinggi.



TAMBAHAN MENGENAI USE CASE DIAGRAM

USE CASE DIAGRAM
•Menggambarkan fungsionalitas yang diharapkan dari sebuah sistem.
Yang ditekankan adalah “apa” yang diperbuat sistem, dan bukan “bagaimana”.
•Menggambarkan kebutuhan system dari sudut pandang user
•Mengfokuskan pada proses komputerisasi (automated processes)
•Menggambarkan hubungan antara use case dan actor
•Use case menggambarkan proses system (kebutuhan system dari sudut pandang user)
•Secara umum use case adalah:
   –Pola perilaku system
   –Urutan transaksi yang berhubungan yang dilakukan oleh satu actor
•Use case diagram terdiri dari
   –Use case
   –Actors
   –Relationship
   –System boundary boxes (optional)
   –Packages (optional)

USE CASE
• Use case dibuat berdasar keperluan actor, merupakan “apa” yang dikerjakan system, bukan “bagaimana”   system mengerjakannya
• Use case diberi nama yang menyatakan apa hal yang dicapai dari hasil interaksinya dengan actor.
• Use case dinotasikan dengan gambar (horizontal ellipse)
• Use case biasanya menggunakan kata kerja
• Nama use case boleh terdiri dari beberapa kata dan tidak boleh ada 2 use case yang memiliki nama yang sama

ACTOR
• Actor menggambarkan orang, system atau external entitas / stakeholder yang menyediakan atau menerima informasi dari system
• Actor menggambarkan sebuah tugas/peran dan bukannya posisi sebuah jabatan
• Actor memberi input atau menerima informasi dari system
• Actor biasanya menggunakan Kata benda
• Tidak boleh ada komunikasi langsung antar actor
• Indikasi <<system>> untuk sebuah actor yang merupakan sebuah system
• Adanya actor bernama “Time” yang mengindikasikan scheduled events (suatu kejadian yang terjadi secara periodik/bulanan)
• Letakkan actor utama anda pada pojok kiri atas dari diagram

ASSOCIATION

• Associations bukan menggambarkan aliran data/informasi
• Associations digunakan untuk menggambarkan bagaimana actor terlibat dalam use case
• Ada 4 jenis relasi yang bisa timbul pada use case diagram
   1. Association antara actor dan use case
   2. Association antara use case
   3. Generalization/Inheritance antara use case
   4. Generalization/Inheritance antara actors


ASSOCIATION ANTARA ACTOR DAN USE CASE

• Ujung panah pada association antara actor dan use case mengindikasikan siapa/apa yang meminta interaksi dan bukannya mengindikasikan aliran data
• Sebaiknya gunakan Garis tanpa panah untuk association antara actor dan use case
• association antara actor dan use case yang menggunakan panah terbuka untuk mengindikasikan bila actor berinteraksi secara pasif dengan system anda
 
ASSOCIATION ANTARA USE CASE (LANJUT)
• <<extend>> perluasan dari use case lain jika kondisi atau syarat terpenuhi
– Kurangi penggunaan association Extend ini, terlalu banyak pemakaian association ini membuat diagram sulit dipahami.
– Tanda panah terbuka harus terarah ke parent/base use case
– Gambarkan association extend secara vertical
                                                                        
GENERALIZATION/INHERITANCE ANTARA ACTOR
• Gambarkan generalization/inheritance antara actors secara vertical dengan inheriting actor dibawah base/parent use case



USE CASE SYSTEM BOUNDARY BOXES

• Digambarkan dengan kotak disekitar use case, untuk menggambarkan jangkauan system anda (scope of of your system).
• Biasanya digunakan apabila memberikan beberapa alternative system yang dapat dijadikan pilihan
• System boundary boxes dalam penggunaannya optional


Contoh Kasus Usecase

CONTOH KASUS USE CASE PADA GALLERY VCD
VCD House adalah sebuah gallery yang bergerak di bidang retail dan menjual produk-produk hiburan seperti VCD,DVD,CD playstation, accessories dan lain-lain. VCD house saat ini mempunyai beberapa cabang yang tersebar diberbagai mal di Jakarta dan bekasi.
Pada setiap cabang, VCD house menemparkan 2 orang petugas untuk menjaga tokonya. Biasanya kedua orang ini bertugas secara bergiliran dengan system shift. Untuk mengendalikan keseluruhan cabangnya, pemilik VCD House mempekerjakan 2 or ang bagian keuangan, 3 orang bagian pengontrolan stok dan 3 orang supervisor.
Proses penjualan dimulai saat seorang pelanggan menanyakan tentang suatu produk kepada petugas toko. Oleh petugas toko, permintaan tersebut akan ditulis dalam bentuk bon. Selanjutnya atas dasar bon tersebut, petugas toko akan mengecek dan mengambil barang yang dipesan. Bilamana barang tidak ada atau jumlah permintaan tidak sesuai, petugas akan bertanya kepada pelanggan apakah transaksi akan tetap dilakukan. Bila transaksi tetap dilakukan dengan cara mengambil barang jenis lain atau mengubah jumlah barang yang dipesan, maka petugas akan melaporkan perhitungan pembayaran. Saat pembayaran dilakukan petugas akan menanyakan kembali kategori pembayaran yang akan dilakukan oleh pelanggan. Pembayaran bisa dilakukan secara tunai(cash) , dengan kartu kredit atau dengan kartu debit. Jika pembayaran dilakukan secaraa tunai, transaksi akan langsung dicatat pada buku penjualan. Namun bila dilakukan dengan kartu kredit atau kartu debit, akan dilakukan otorisasi terlebih dahulu dengan mesin otorisasi yang telah disediakan oleh bank. Setelah semua prose situ selesai, barula proses penjualan itu dicatat di buku penjualan

  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • RSS