USE CASE DIAGRAM
E. Haodudin Nurkifli
Analisis dan perancangan berorientasi Obyek
Kuliah : 4 Use Case Diagram
16 Oktober 2010
USE CASE DIAGRAM
Usecase Diagram digunakan untuk mengambarkan interaksi antara pengguna sistem (actor) dengan kasus (use case) yang disesuaikan dengan langkah-langkah (scenario) yang telah ditentukan. Sejak tahun 1992, dengan adanya pengembang UML, yaitu Jacob Et All, menjadikan Use case sebagai model utama atau yang dibutuhkan (Requeirment Model) pada UML.
LAMBANG USE CASE
Aktor Usecase
CatatanRelasi Aktif
<<include>> Include <<extend>> extend
Relasi Pasif
Generalisasi
USE CASE DIAGRAM 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)
Beli Barang
Konsumen BayarKasir
Beli Barang
KonsumenBayar
Kasir
JualBarang
KonsumenTerimaBayaran
Kasir
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 DIAGRAM
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 verb Nama use case boleh terdiri dari beberapa kata dan tidak
boleh ada 2 use case yang memiliki nama yang sama Sebuah use case bisa mempunyai dokumentasi Letakkan use case utama anda pada pojok kiri atas dari
diagram (in western culture people read from left to right, top to bottom, starting in the top-left corner)
Use case diagram tidak terpengaruh urutan waktu, meskipun demikian supaya mudah dibaca perlu penyusunan use case
USE CASE DIAGRAM
B uk a R ek en ing
S im pan U ang
A m bil U ang
T u tupR ek en ing
N asabah
S im pan uangharus d ia tas R p .
200 .000 ,-
B uk a R ek en ing
S im pan U ang
A m b il U ang
T u tupR ek en ing
N asabah
ACTOR-USE CASE DIAGRAM Actor menggambarkan orang, system atau external entitas / stakeholder yang menyediakan atau
menerima informasi dari system
Actor memberi input atau menerima informasi dari system
Actor biasanya menggunakan Noun
Actor digambarkan dengan gambar stick figure atau dengan gambar visual
atau atau dll
Tidak boleh ada komunikasi langsung antar actor (Actors don’t interact with one another )
Indikasi <<system>> untuk sebuah actor yang merupakan sebuah system
Adanya actor bernama “Time” yang mengindikasikan scheduled events (suatu kejadian yang terjadi secara periodik/bulanan)
KonsumenKasir
Time
<<System Keuangan>>
ACTOR-USE CASE DIAGRAM
Letakkan actor utama anda pada pojok kiri atas dari diagram (in western culture people read from left to right, top to bottom)
Actor jangan digambarkan ditengah-tengah use cases (actors are placed to the outside of the diagram, and not the middle of it)
Nasabah
BukaRekening
Nabung
Ambil
TutupRekening
Teller
BukaRekening
Nabung
Nasabah
ASSOCIATION - USE CASE DIAGRAM
Ada 4 jenis relasi yang bisa timbul pada use case diagramAssociation antara actor dan use caseAssociation antara use caseGeneralization/Inheritance antara use caseGeneralization/Inheritance antara actors
Associations bukan menggambarkan aliran data/informasi
Associations digunakan untuk menggambarkan bagaimana actor terlibat dalam use case
ASSOCCIATION – USE CASE DIAGRAM
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.
Beli Barang
Konsumen BayarKasir
Beli Barang
Konsumen BayarKasir
ASSOCIATION - USE CASE DIAGRAM<<include>>
termasuk didalam use case lain (required) / (diharuskan) Pemanggilan use case oleh use case lain contohnya adalah Pemanggilan sebuah fungsi program Gambarkan association <<include>> secara horizontal Tanda panah terbuka harus terarah ke sub use case Tidak boleh actor dihubungkan pada use case <<include>>
Nasabah
BukaRekening
B uk aR ek en ing
< < inc lude> >
ca ta tda ta p ribad i
N asabah
B uk aR ek en ing
< < inc lude> > ca ta tda ta p ribad i
N asabah
B uk aR ek en ing
< < inc lude> > ca ta tda ta p ribad i
N asabah
CatatData Pribadi
<<include>><<include>>
BukaRekening
<<include>> catatdata
pribadi
Nasabah
BukaRekening
<<include>> catatdata
pribadi
Nasabah
ASSOCIATION - USE CASE DIAGRAMAssociation antara use case <<extend>>
Perluasan dari use case lain jika kondisi atau syarat terpenuhi (Optional Behaviour)
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 (picture extending use
case below than base/parent use case) Tidak boleh actor dihubungkan pada use case <<extend>>
BukaDeposito
B uk aR ek en ing
N asabah
< < ex tend> > B uk aD epos ito
B uk aR ek en ing
< < ex tend> >
B uk aD epos ito
N asabahNasabah
BukaRekening
<<extend>><<extend>>
BukaRekening
<<extend>>
BukaDeposito
Nasabah
ASSOCIATION - USE CASE DIAGRAM
Generalization/inheritance Generalization/inheritance digambarkan dengan sebuah garis berpanah tertutup pada
salah satu ujungnya yang menunjukkan lebih umum Harus digambarkan secara vertikal
Generalization/inheritance antara use case Dibuat ketika ada sebuah keadaan yang lain/perlakuan khusus Inheriting use case dibawah base/parent use case
Generalization/inheritance antara actor Dibuat ketika ada sebuah actor baru terbentuk dan mempunyai atribut dan methode
yang sama dengan actor yang sudah ada Inheriting actor dibawah base/parent actor
BayarPembayaran
Khusus
Bayar
PembayaranKhusus
Bayar
PembayaranKhusus
NasabahNasabahKhusus
Nasabah NasabahKhusus
Nasabah
NasabahKhusus
Nasabah
NasabahKhusus
SYSTEM BOUNDARY BOXES - USE CASE DIAGRAM
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 are optional Contoh:
LAIN-LAIN USE CASE DIAGRAM Association <<uses>>,<<includes>> atau <<extends>> yang
digunakan pada versi UML sebelumnya, sudah tidak terpakai lagi. <<uses>> dan <<includes>> keduanya digantikan <<include>> <<extends>> dikembangkan ke <<include>> dan generalization Avoid more than 2 level of use case association
BukaRekening
<<extend>>Buka
DepositoNasabah
<<extend>>
CatatAlamat
B uk aR ek en ing
N asabah
< < inc lude> > ca ta tda ta p ribad i
< < inc lude> > ca ta ta lam at
CONTOH